lsd_mkb/lsd_mkb_superlu/superlu_seq/slu_cdefs.h File Reference

Header file for real operations. More...

#include <math.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include "slu_Cnames.h"
#include "supermatrix.h"
#include "slu_util.h"
#include "slu_scomplex.h"
Include dependency graph for slu_cdefs.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  GlobalLU_t

Typedefs

typedef int int_t

Functions

void cgssv (superlu_options_t *, SuperMatrix *, int *, int *, SuperMatrix *, SuperMatrix *, SuperMatrix *, SuperLUStat_t *, int *)
 Driver routines.
void cgssvx (superlu_options_t *, SuperMatrix *, int *, int *, int *, char *, float *, float *, SuperMatrix *, SuperMatrix *, void *, int, SuperMatrix *, SuperMatrix *, float *, float *, float *, float *, GlobalLU_t *, mem_usage_t *, SuperLUStat_t *, int *)
void cgsisv (superlu_options_t *, SuperMatrix *, int *, int *, SuperMatrix *, SuperMatrix *, SuperMatrix *, SuperLUStat_t *, int *)
void cgsisx (superlu_options_t *, SuperMatrix *, int *, int *, int *, char *, float *, float *, SuperMatrix *, SuperMatrix *, void *, int, SuperMatrix *, SuperMatrix *, float *, float *, GlobalLU_t *, mem_usage_t *, SuperLUStat_t *, int *)
void cCreate_CompCol_Matrix (SuperMatrix *, int, int, int, complex *, int *, int *, Stype_t, Dtype_t, Mtype_t)
 Supernodal LU factor related.
void cCreate_CompRow_Matrix (SuperMatrix *, int, int, int, complex *, int *, int *, Stype_t, Dtype_t, Mtype_t)
void cCopy_CompCol_Matrix (SuperMatrix *, SuperMatrix *)
void cCreate_Dense_Matrix (SuperMatrix *, int, int, complex *, int, Stype_t, Dtype_t, Mtype_t)
void cCreate_SuperNode_Matrix (SuperMatrix *, int, int, int, complex *, int *, int *, int *, int *, int *, Stype_t, Dtype_t, Mtype_t)
void cCopy_Dense_Matrix (int, int, complex *, int, complex *, int)
void countnz (const int, int *, int *, int *, GlobalLU_t *)
 Count the total number of nonzeros in factors L and U, and in the symmetrically reduced L.
void ilu_countnz (const int, int *, int *, GlobalLU_t *)
 Count the total number of nonzeros in factors L and U.
void fixupL (const int, const int *, GlobalLU_t *)
 Fix up the data storage lsub for L-subscripts. It removes the subscript sets for structural pruning, and applies permuation to the remaining subscripts.
void callocateA (int, int, complex **, int **, int **)
void cgstrf (superlu_options_t *, SuperMatrix *, int, int, int *, void *, int, int *, int *, SuperMatrix *, SuperMatrix *, GlobalLU_t *, SuperLUStat_t *, int *)
int csnode_dfs (const int, const int, const int *, const int *, const int *, int *, int *, GlobalLU_t *)
int csnode_bmod (const int, const int, const int, complex *, complex *, GlobalLU_t *, SuperLUStat_t *)
void cpanel_dfs (const int, const int, const int, SuperMatrix *, int *, int *, complex *, int *, int *, int *, int *, int *, int *, int *, GlobalLU_t *)
void cpanel_bmod (const int, const int, const int, const int, complex *, complex *, int *, int *, GlobalLU_t *, SuperLUStat_t *)
int ccolumn_dfs (const int, const int, int *, int *, int *, int *, int *, int *, int *, int *, int *, GlobalLU_t *)
int ccolumn_bmod (const int, const int, complex *, complex *, int *, int *, int, GlobalLU_t *, SuperLUStat_t *)
int ccopy_to_ucol (int, int, int *, int *, int *, complex *, GlobalLU_t *)
int cpivotL (const int, const double, int *, int *, int *, int *, int *, GlobalLU_t *, SuperLUStat_t *)
void cpruneL (const int, const int *, const int, const int, const int *, const int *, int *, GlobalLU_t *)
void creadmt (int *, int *, int *, complex **, int **, int **)
void cGenXtrue (int, int, complex *, int)
void cFillRHS (trans_t, int, complex *, int, SuperMatrix *, SuperMatrix *)
void cgstrs (trans_t, SuperMatrix *, SuperMatrix *, int *, int *, SuperMatrix *, SuperLUStat_t *, int *)
void cgsitrf (superlu_options_t *, SuperMatrix *, int, int, int *, void *, int, int *, int *, SuperMatrix *, SuperMatrix *, GlobalLU_t *, SuperLUStat_t *, int *)
int cldperm (int, int, int, int[], int[], complex[], int[], float[], float[])
int ilu_csnode_dfs (const int, const int, const int *, const int *, const int *, int *, GlobalLU_t *)
void ilu_cpanel_dfs (const int, const int, const int, SuperMatrix *, int *, int *, complex *, float *, int *, int *, int *, int *, int *, int *, GlobalLU_t *)
int ilu_ccolumn_dfs (const int, const int, int *, int *, int *, int *, int *, int *, int *, int *, GlobalLU_t *)
int ilu_ccopy_to_ucol (int, int, int *, int *, int *, complex *, int, milu_t, double, int, complex *, int *, GlobalLU_t *, float *)
int ilu_cpivotL (const int, const double, int *, int *, int, int *, int *, int *, int *, double, milu_t, complex, GlobalLU_t *, SuperLUStat_t *)
int ilu_cdrop_row (superlu_options_t *, int, int, double, int, int *, double *, GlobalLU_t *, float *, float *, int)
void cgsequ (SuperMatrix *, float *, float *, float *, float *, float *, int *)
 Driver related.
void claqgs (SuperMatrix *, float *, float *, float, float, float, char *)
void cgscon (char *, SuperMatrix *, SuperMatrix *, float, float *, SuperLUStat_t *, int *)
float cPivotGrowth (int, SuperMatrix *, int *, SuperMatrix *, SuperMatrix *)
void cgsrfs (trans_t, SuperMatrix *, SuperMatrix *, SuperMatrix *, int *, int *, char *, float *, float *, SuperMatrix *, SuperMatrix *, float *, float *, SuperLUStat_t *, int *)
int sp_ctrsv (char *, char *, char *, SuperMatrix *, SuperMatrix *, complex *, SuperLUStat_t *, int *)
int sp_cgemv (char *, complex, SuperMatrix *, complex *, int, complex, complex *, int)
int sp_cgemm (char *, char *, int, int, int, complex, SuperMatrix *, complex *, int, complex, complex *, int)
float slamch_ (char *)
float smach (char *)
int cLUMemInit (fact_t, void *, int, int, int, int, int, float, SuperMatrix *, SuperMatrix *, GlobalLU_t *, int **, complex **)
 Memory-related.
void cSetRWork (int, int, complex *, complex **, complex **)
void cLUWorkFree (int *, complex *, GlobalLU_t *)
int cLUMemXpand (int, int, MemType, int *, GlobalLU_t *)
complexcomplexMalloc (int)
complexcomplexCalloc (int)
float * floatMalloc (int)
float * floatCalloc (int)
int cmemory_usage (const int, const int, const int, const int)
int cQuerySpace (SuperMatrix *, SuperMatrix *, mem_usage_t *)
int ilu_cQuerySpace (SuperMatrix *, SuperMatrix *, mem_usage_t *)
void creadhb (FILE *, int *, int *, int *, complex **, int **, int **)
 Auxiliary routines.
void creadrb (int *, int *, int *, complex **, int **, int **)
void creadtriple (int *, int *, int *, complex **, int **, int **)
void cCompRow_to_CompCol (int, int, int, complex *, int *, int *, complex **, int **, int **)
void cfill (complex *, int, complex)
void cinf_norm_error (int, SuperMatrix *, complex *)
void PrintPerf (SuperMatrix *, SuperMatrix *, mem_usage_t *, complex, complex, complex *, complex *, char *)
float sqselect (int, float *, int)
void cPrint_CompCol_Matrix (char *, SuperMatrix *)
 Routines for debugging.
void cPrint_SuperNode_Matrix (char *, SuperMatrix *)
void cPrint_Dense_Matrix (char *, SuperMatrix *)
void cprint_lu_col (char *, int, int, int *, GlobalLU_t *)
int print_double_vec (char *, int, double *)
void check_tempv (int, complex *)
int cgemm_ (const char *, const char *, const int *, const int *, const int *, const complex *, const complex *, const int *, const complex *, const int *, const complex *, complex *, const int *)
 BLAS.
int ctrsv_ (char *, char *, char *, int *, complex *, int *, complex *, int *)
int ctrsm_ (char *, char *, char *, char *, int *, int *, complex *, complex *, int *, complex *, int *)
int cgemv_ (char *, int *, int *, complex *, complex *a, int *, complex *, int *, complex *, complex *, int *)

Detailed Description

Header file for real operations.

 
 -- SuperLU routine (version 4.1) --
 Univ. of California Berkeley, Xerox Palo Alto Research Center,
 and Lawrence Berkeley National Lab.
 November, 2010
 Global data structures used in LU factorization -
   nsuper: supernodes = nsuper + 1, numbered [0, nsuper].
   (xsup,supno): supno[i] is the supernode no to which i belongs;
	xsup(s) points to the beginning of the s-th supernode.
	e.g.   supno 0 1 2 2 3 3 3 4 4 4 4 4   (n=12)
	        xsup 0 1 2 4 7 12
	Note: dfs will be performed on supernode rep. relative to the new 
	      row pivoting ordering
   (xlsub,lsub): lsub[*] contains the compressed subscript of
	rectangular supernodes; xlsub[j] points to the starting
	location of the j-th column in lsub[*]. Note that xlsub 
	is indexed by column.
	Storage: original row subscripts
      During the course of sparse LU factorization, we also use
	(xlsub,lsub) for the purpose of symmetric pruning. For each
	supernode {s,s+1,...,t=s+r} with first column s and last
	column t, the subscript set
		lsub[j], j=xlsub[s], .., xlsub[s+1]-1
	is the structure of column s (i.e. structure of this supernode).
	It is used for the storage of numerical values.
	Furthermore,
		lsub[j], j=xlsub[t], .., xlsub[t+1]-1
	is the structure of the last column t of this supernode.
	It is for the purpose of symmetric pruning. Therefore, the
	structural subscripts can be rearranged without making physical
	interchanges among the numerical values.
	However, if the supernode has only one column, then we
	only keep one set of subscripts. For any subscript interchange
	performed, similar interchange must be done on the numerical
	values.
	The last column structures (for pruning) will be removed
	after the numercial LU factorization phase.
   (xlusup,lusup): lusup[*] contains the numerical values of the
	rectangular supernodes; xlusup[j] points to the starting
	location of the j-th column in storage vector lusup[*]
	Note: xlusup is indexed by column.
	Each rectangular supernode is stored by column-major
	scheme, consistent with Fortran 2-dim array storage.
   (xusub,ucol,usub): ucol[*] stores the numerical values of
	U-columns outside the rectangular supernodes. The row
	subscript of nonzero ucol[k] is stored in usub[k].
	xusub[i] points to the starting location of column i in ucol.
	Storage: new row subscripts; that is subscripts of PA.
 

Typedef Documentation

typedef int int_t

Function Documentation

void callocateA ( int  ,
int  ,
complex **  ,
int **  ,
int **   
)
int ccolumn_bmod ( const   int,
const   int,
complex ,
complex ,
int *  ,
int *  ,
int  ,
GlobalLU_t ,
SuperLUStat_t  
)
int ccolumn_dfs ( const   int,
const   int,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
GlobalLU_t  
)
void cCompRow_to_CompCol ( int  ,
int  ,
int  ,
complex ,
int *  ,
int *  ,
complex **  ,
int **  ,
int **   
)
void cCopy_CompCol_Matrix ( SuperMatrix ,
SuperMatrix  
)
void cCopy_Dense_Matrix ( int  ,
int  ,
complex ,
int  ,
complex ,
int   
)
int ccopy_to_ucol ( int  ,
int  ,
int *  ,
int *  ,
int *  ,
complex ,
GlobalLU_t  
)
void cCreate_CompCol_Matrix ( SuperMatrix ,
int  ,
int  ,
int  ,
complex ,
int *  ,
int *  ,
Stype_t  ,
Dtype_t  ,
Mtype_t   
)

Supernodal LU factor related.

void cCreate_CompRow_Matrix ( SuperMatrix ,
int  ,
int  ,
int  ,
complex ,
int *  ,
int *  ,
Stype_t  ,
Dtype_t  ,
Mtype_t   
)
void cCreate_Dense_Matrix ( SuperMatrix ,
int  ,
int  ,
complex ,
int  ,
Stype_t  ,
Dtype_t  ,
Mtype_t   
)
void cCreate_SuperNode_Matrix ( SuperMatrix ,
int  ,
int  ,
int  ,
complex ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
Stype_t  ,
Dtype_t  ,
Mtype_t   
)
void cfill ( complex ,
int  ,
complex   
)
void cFillRHS ( trans_t  ,
int  ,
complex ,
int  ,
SuperMatrix ,
SuperMatrix  
)
int cgemm_ ( const char *  ,
const char *  ,
const int *  ,
const int *  ,
const int *  ,
const complex ,
const complex ,
const int *  ,
const complex ,
const int *  ,
const complex ,
complex ,
const int *   
)

BLAS.

int cgemv_ ( char *  ,
int *  ,
int *  ,
complex ,
complex a,
int *  ,
complex ,
int *  ,
complex ,
complex ,
int *   
)
void cGenXtrue ( int  ,
int  ,
complex ,
int   
)
void cgscon ( char *  ,
SuperMatrix ,
SuperMatrix ,
float  ,
float *  ,
SuperLUStat_t ,
int *   
)
void cgsequ ( SuperMatrix ,
float *  ,
float *  ,
float *  ,
float *  ,
float *  ,
int *   
)

Driver related.

void cgsisv ( superlu_options_t ,
SuperMatrix ,
int *  ,
int *  ,
SuperMatrix ,
SuperMatrix ,
SuperMatrix ,
SuperLUStat_t ,
int *   
)
void cgsisx ( superlu_options_t ,
SuperMatrix ,
int *  ,
int *  ,
int *  ,
char *  ,
float *  ,
float *  ,
SuperMatrix ,
SuperMatrix ,
void ,
int  ,
SuperMatrix ,
SuperMatrix ,
float *  ,
float *  ,
GlobalLU_t ,
mem_usage_t ,
SuperLUStat_t ,
int *   
)
void cgsitrf ( superlu_options_t ,
SuperMatrix ,
int  ,
int  ,
int *  ,
void ,
int  ,
int *  ,
int *  ,
SuperMatrix ,
SuperMatrix ,
GlobalLU_t ,
SuperLUStat_t ,
int *   
)
void cgsrfs ( trans_t  ,
SuperMatrix ,
SuperMatrix ,
SuperMatrix ,
int *  ,
int *  ,
char *  ,
float *  ,
float *  ,
SuperMatrix ,
SuperMatrix ,
float *  ,
float *  ,
SuperLUStat_t ,
int *   
)
void cgssv ( superlu_options_t ,
SuperMatrix ,
int *  ,
int *  ,
SuperMatrix ,
SuperMatrix ,
SuperMatrix ,
SuperLUStat_t ,
int *   
)

Driver routines.

void cgssvx ( superlu_options_t ,
SuperMatrix ,
int *  ,
int *  ,
int *  ,
char *  ,
float *  ,
float *  ,
SuperMatrix ,
SuperMatrix ,
void ,
int  ,
SuperMatrix ,
SuperMatrix ,
float *  ,
float *  ,
float *  ,
float *  ,
GlobalLU_t ,
mem_usage_t ,
SuperLUStat_t ,
int *   
)
void cgstrf ( superlu_options_t ,
SuperMatrix ,
int  ,
int  ,
int *  ,
void ,
int  ,
int *  ,
int *  ,
SuperMatrix ,
SuperMatrix ,
GlobalLU_t ,
SuperLUStat_t ,
int *   
)
void cgstrs ( trans_t  ,
SuperMatrix ,
SuperMatrix ,
int *  ,
int *  ,
SuperMatrix ,
SuperLUStat_t ,
int *   
)
void check_tempv ( int  ,
complex  
)
void cinf_norm_error ( int  ,
SuperMatrix ,
complex  
)
void claqgs ( SuperMatrix ,
float *  ,
float *  ,
float  ,
float  ,
float  ,
char *   
)
int cldperm ( int  ,
int  ,
int  ,
int  [],
int  [],
complex  [],
int  [],
float  [],
float  [] 
)
int cLUMemInit ( fact_t  ,
void ,
int  ,
int  ,
int  ,
int  ,
int  ,
float  ,
SuperMatrix ,
SuperMatrix ,
GlobalLU_t ,
int **  ,
complex **   
)

Memory-related.

int cLUMemXpand ( int  ,
int  ,
MemType  ,
int *  ,
GlobalLU_t  
)

Here is the caller graph for this function:

void cLUWorkFree ( int *  ,
complex ,
GlobalLU_t  
)
int cmemory_usage ( const   int,
const   int,
const   int,
const   int 
)
complex* complexCalloc ( int   ) 
complex* complexMalloc ( int   ) 
void countnz ( const   int,
int *  ,
int *  ,
int *  ,
GlobalLU_t  
)

Count the total number of nonzeros in factors L and U, and in the symmetrically reduced L.

Here is the caller graph for this function:

void cpanel_bmod ( const   int,
const   int,
const   int,
const   int,
complex ,
complex ,
int *  ,
int *  ,
GlobalLU_t ,
SuperLUStat_t  
)
void cpanel_dfs ( const   int,
const   int,
const   int,
SuperMatrix ,
int *  ,
int *  ,
complex ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
GlobalLU_t  
)
float cPivotGrowth ( int  ,
SuperMatrix ,
int *  ,
SuperMatrix ,
SuperMatrix  
)
int cpivotL ( const   int,
const   double,
int *  ,
int *  ,
int *  ,
int *  ,
int *  ,
GlobalLU_t ,
SuperLUStat_t  
)
void cPrint_CompCol_Matrix ( char *  ,
SuperMatrix  
)

Routines for debugging.

void cPrint_Dense_Matrix ( char *  ,
SuperMatrix  
)
void cprint_lu_col ( char *  ,
int  ,
int  ,
int *  ,
GlobalLU_t  
)
void cPrint_SuperNode_Matrix ( char *  ,
SuperMatrix  
)
void cpruneL ( const   int,
const int *  ,
const   int,
const   int,
const int *  ,
const int *  ,
int *  ,
GlobalLU_t  
)
int cQuerySpace ( SuperMatrix ,
SuperMatrix ,
mem_usage_t  
)
void creadhb ( FILE *  ,
int *  ,
int *  ,
int *  ,
complex **  ,
int **  ,
int **   
)

Auxiliary routines.

void creadmt ( int *  ,
int *  ,
int *  ,
complex **  ,
int **  ,
int **   
)
void creadrb ( int *  ,
int *  ,
int *  ,
complex **  ,
int **  ,
int **   
)
void creadtriple ( int *  ,
int *  ,
int *  ,
complex **  ,
int **  ,
int **   
)
void cSetRWork ( int  ,
int  ,
complex ,
complex **  ,
complex **   
)
int csnode_bmod ( const   int,
const   int,
const   int,
complex ,
complex ,
GlobalLU_t ,
SuperLUStat_t  
)
int csnode_dfs ( const   int,
const   int,
const int *  ,
const int *  ,
const int *  ,
int *  ,
int *  ,
GlobalLU_t  
)
int ctrsm_ ( char *  ,
char *  ,
char *  ,
char *  ,
int *  ,
int *  ,
complex ,
complex ,
int *  ,
complex ,
int *   
)
int ctrsv_ ( char *  ,
char *  ,
char *  ,
int *  ,
complex ,
int *  ,
complex ,
int *   
)
void fixupL ( const   int,
const int *  ,
GlobalLU_t  
)

Fix up the data storage lsub for L-subscripts. It removes the subscript sets for structural pruning, and applies permuation to the remaining subscripts.

Here is the caller graph for this function:

float* floatCalloc ( int   ) 

Here is the caller graph for this function:

float* floatMalloc ( int   ) 

Here is the caller graph for this function:

int ilu_ccolumn_dfs ( const int  m,
const int  jcol,
int *  perm_r,
int *  nseg,
int *  lsub_col,
int *  segrep,
int *  repfnz,
int *  marker,
int *  parent,
int *  xplore,
GlobalLU_t Glu 
)
 Purpose
 =======
   ILU_CCOLUMN_DFS performs a symbolic factorization on column jcol, and
   decide the supernode boundary.
   This routine does not use numeric values, but only use the RHS
   row indices to start the dfs.
   A supernode representative is the last column of a supernode.
   The nonzeros in U[*,j] are segments that end at supernodal
   representatives. The routine returns a list of such supernodal
   representatives in topological order of the dfs that generates them.
   The location of the first nonzero in each such supernodal segment
   (supernodal entry location) is also returned.
 Local parameters
 ================
   nseg: no of segments in current U[*,j]
   jsuper: jsuper=EMPTY if column j does not belong to the same
	supernode as j-1. Otherwise, jsuper=nsuper.
   marker2: A-row --> A-row/col (0/1)
   repfnz: SuperA-col --> PA-row
   parent: SuperA-col --> SuperA-col
   xplore: SuperA-col --> index to L-structure
 Return value
 ============
     0  success;
   > 0  number of bytes allocated when run out of space.
 

Here is the call graph for this function:

int ilu_ccopy_to_ucol ( int  ,
int  ,
int *  ,
int *  ,
int *  ,
complex ,
int  ,
milu_t  ,
double  ,
int  ,
complex ,
int *  ,
GlobalLU_t ,
float *   
)

Here is the call graph for this function:

int ilu_cdrop_row ( superlu_options_t ,
int  ,
int  ,
double  ,
int  ,
int *  ,
double *  ,
GlobalLU_t ,
float *  ,
float *  ,
int   
)
void ilu_countnz ( const   int,
int *  ,
int *  ,
GlobalLU_t  
)

Count the total number of nonzeros in factors L and U.

Here is the caller graph for this function:

void ilu_cpanel_dfs ( const int  m,
const int  w,
const int  jcol,
SuperMatrix A,
int *  perm_r,
int *  nseg,
complex dense,
float *  amax,
int *  panel_lsub,
int *  segrep,
int *  repfnz,
int *  marker,
int *  parent,
int *  xplore,
GlobalLU_t Glu 
)
 Purpose
 =======
   Performs a symbolic factorization on a panel of columns [jcol, jcol+w).
   A supernode representative is the last column of a supernode.
   The nonzeros in U[*,j] are segments that end at supernodal
   representatives.
   The routine returns one list of the supernodal representatives
   in topological order of the dfs that generates them. This list is
   a superset of the topological order of each individual column within
   the panel.
   The location of the first nonzero in each supernodal segment
   (supernodal entry location) is also returned. Each column has a
   separate list for this purpose.
   Two marker arrays are used for dfs:
     marker[i] == jj, if i was visited during dfs of current column jj;
     marker1[i] >= jcol, if i was visited by earlier columns in this panel;
   marker: A-row --> A-row/col (0/1)
   repfnz: SuperA-col --> PA-row
   parent: SuperA-col --> SuperA-col
   xplore: SuperA-col --> index to L-structure
 

Here is the call graph for this function:

int ilu_cpivotL ( 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,
complex  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:

int ilu_cQuerySpace ( SuperMatrix ,
SuperMatrix ,
mem_usage_t  
)
int ilu_csnode_dfs ( const int  jcol,
const int  kcol,
const int *  asub,
const int *  xa_begin,
const int *  xa_end,
int *  marker,
GlobalLU_t Glu 
)
 Purpose
 =======
    ilu_csnode_dfs() - Determine the union of the row structures of those
    columns within the relaxed snode.
    Note: The relaxed snodes are leaves of the supernodal etree, therefore,
    the portion outside the rectangular supernode must be zero.
 Return value
 ============
     0   success;
    >0   number of bytes allocated when run out of memory.
 

Here is the call graph for this function:

int print_double_vec ( char *  ,
int  ,
double *   
)
void PrintPerf ( SuperMatrix ,
SuperMatrix ,
mem_usage_t ,
complex  ,
complex  ,
complex ,
complex ,
char *   
)
float slamch_ ( char *  cmach  ) 
 Purpose   
    =======
    SLAMCH determines single precision machine parameters.
    Arguments   
    =========
    CMACH   (input) CHARACTER*1   
            Specifies the value to be returned by SLAMCH:   
            = 'E' or 'e',   SLAMCH := eps   
            = 'S' or 's ,   SLAMCH := sfmin   
            = 'B' or 'b',   SLAMCH := base   
            = 'P' or 'p',   SLAMCH := eps*base   
            = 'N' or 'n',   SLAMCH := t   
            = 'R' or 'r',   SLAMCH := rnd   
            = 'M' or 'm',   SLAMCH := emin   
            = 'U' or 'u',   SLAMCH := rmin   
            = 'L' or 'l',   SLAMCH := emax   
            = 'O' or 'o',   SLAMCH := rmax
            where
            eps   = relative machine precision   
            sfmin = safe minimum, such that 1/sfmin does not overflow   
            base  = base of the machine   
            prec  = eps*base   
            t     = number of (base) digits in the mantissa   
            rnd   = 1.0 when rounding occurs in addition, 0.0 otherwise   
            emin  = minimum exponent before (gradual) underflow   
            rmin  = underflow threshold - base**(emin-1)   
            emax  = largest exponent before overflow   
            rmax  = overflow threshold  - (base**emax)*(1-eps)
   ===================================================================== 
float smach ( char *   ) 

Here is the caller graph for this function:

int sp_cgemm ( char *  ,
char *  ,
int  ,
int  ,
int  ,
complex  ,
SuperMatrix ,
complex ,
int  ,
complex  ,
complex ,
int   
)
int sp_cgemv ( char *  ,
complex  ,
SuperMatrix ,
complex ,
int  ,
complex  ,
complex ,
int   
)
int sp_ctrsv ( char *  ,
char *  ,
char *  ,
SuperMatrix ,
SuperMatrix ,
complex ,
SuperLUStat_t ,
int *   
)
float sqselect ( int  ,
float *  ,
int   
)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1