SuperLU  5.0
Macros | Functions
ilu_zpivotL.c File Reference

Performs numerical pivoting. More...

#include <math.h>
#include <stdlib.h>
#include "slu_zdefs.h"
Include dependency graph for ilu_zpivotL.c:

Macros

#define SGN(x)   ((x)>=0?1:-1)
 

Functions

int ilu_zpivotL (const int jcol, const double u, int *usepr, int *perm_r, int diagind, int *swap, int *iswap, int *marker, int *pivrow, double fill_tol, milu_t milu, doublecomplex drop_sum, GlobalLU_t *Glu, SuperLUStat_t *stat)
 

Detailed Description

– SuperLU routine (version 4.0) –
Lawrence Berkeley National Laboratory
June 30, 2009

Macro Definition Documentation

#define SGN (   x)    ((x)>=0?1:-1)

Function Documentation

int ilu_zpivotL ( const int  jcol,
const double  u,
int *  usepr,
int *  perm_r,
int  diagind,
int *  swap,
int *  iswap,
int *  marker,
int *  pivrow,
double  fill_tol,
milu_t  milu,
doublecomplex  drop_sum,
GlobalLU_t Glu,
SuperLUStat_t stat 
)

Purpose

  Performs the numerical pivoting on the current column of L,
  and the CDIV operation.
  Pivot policy:
  (1) Compute thresh = u * max_(i>=j) abs(A_ij);
  (2) IF user specifies pivot row k and abs(A_kj) >= thresh THEN
          pivot row = k;
      ELSE IF abs(A_jj) >= thresh THEN
          pivot row = j;
      ELSE
          pivot row = m;
  Note: If you absolutely want to use a given pivot order, then set u=0.0.
  Return value: 0         success;
           i > 0  U(i,i) is exactly zero.

Here is the call graph for this function: