Ifpack_IKLU_Utils.h File Reference

#include <stdlib.h>
#include <limits.h>
#include <math.h>
#include <stdio.h>

Include dependency graph for Ifpack_IKLU_Utils.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  row_matrix
struct  cs_symbolic
struct  csr_numeric
struct  csr_dmperm_results

Defines

#define CS_MAX(a, b)   (((a) > (b)) ? (a) : (b))
#define CS_MIN(a, b)   (((a) < (b)) ? (a) : (b))
#define CS_FLIP(i)   (-(i)-2)
#define CS_UNFLIP(i)   (((i) < 0) ? CS_FLIP(i) : (i))
#define CS_MARKED(w, j)   (w [j] < 0)
#define CS_MARK(w, j)   { w [j] = CS_FLIP (w [j]) ; }
#define CS_CSC(A)   (A && (A->nz == -1))
#define CS_TRIPLET(A)   (A && (A->nz >= 0))

Typedefs

typedef struct row_matrix csr
typedef struct cs_symbolic css
typedef struct csr_numeric csrn
typedef struct csr_dmperm_results csrd

Functions

csrcsr_add (const csr *A, const csr *B, double alpha, double beta)
csrcsr_multiply (const csr *A, const csr *B)
double csr_norm (const csr *A)
int csr_print (const csr *A, int brief)
csrcsr_transpose (const csr *A, int values)
void * csr_realloc (void *p, int n, size_t size, int *ok)
csrcsr_spalloc (int m, int n, int nzmax, int values, int triplet)
csrcsr_spfree (csr *A)
int csr_sprealloc (csr *A, int nzmax)
int * csr_amd (int order, const csr *A)
int csr_droptol (csr *A, double tol)
int csr_dropzeros (csr *A)
int csr_lsolve (const csr *L, double *x)
csrncsr_lu (const csr *A, const css *S, double tol)
csrcsr_permute (const csr *A, const int *pinv, const int *q, int values)
csscsr_sqr (int order, const csr *A)
int csr_usolve (const csr *U, double *x)
csscsr_sfree (css *S)
csrdcsr_dfree (csrd *D)
csrncsr_nfree (csrn *N)
double csr_cumsum (int *p, int *c, int n)
int csr_dfs (int j, csr *G, int top, int *xi, int *pstack, const int *pinv)
int csr_reach (csr *G, const csr *B, int k, int *xi, const int *pinv)
int csr_scatter (const csr *A, int j, double beta, int *w, double *x, int mark, csr *C, int nz)
csrdcsr_scc (csr *A)
int csr_spsolve (csr *G, const csr *B, int k, int *xi, double *x, const int *pinv, int up)
int csr_tdfs (int j, int k, int *head, const int *next, int *post, int *stack)
csrdcsr_dalloc (int m, int n)
csrdcsr_ddone (csrd *D, csr *C, void *w, int ok)
csrcsr_done (csr *C, void *w, void *x, int ok)
int * csr_idone (int *p, csr *C, void *w, int ok)
csrncsr_ndone (csrn *N, csr *C, void *w, void *x, int ok)
int csr_fkeep (csr *A, int(*fkeep)(int, int, double, void *), void *other)


Define Documentation

#define CS_CSC (  )     (A && (A->nz == -1))

#define CS_FLIP (  )     (-(i)-2)

#define CS_MARK ( w,
 )     { w [j] = CS_FLIP (w [j]) ; }

#define CS_MARKED ( w,
 )     (w [j] < 0)

#define CS_MAX ( a,
 )     (((a) > (b)) ? (a) : (b))

#define CS_MIN ( a,
 )     (((a) < (b)) ? (a) : (b))

#define CS_TRIPLET (  )     (A && (A->nz >= 0))

#define CS_UNFLIP (  )     (((i) < 0) ? CS_FLIP(i) : (i))


Typedef Documentation

typedef struct row_matrix csr

typedef struct csr_dmperm_results csrd

typedef struct csr_numeric csrn

typedef struct cs_symbolic css


Function Documentation

csr* csr_add ( const csr A,
const csr B,
double  alpha,
double  beta 
)

int* csr_amd ( int  order,
const csr A 
)

double csr_cumsum ( int *  p,
int *  c,
int  n 
)

csrd* csr_dalloc ( int  m,
int  n 
)

csrd* csr_ddone ( csrd D,
csr C,
void *  w,
int  ok 
)

csrd* csr_dfree ( csrd D  ) 

int csr_dfs ( int  j,
csr G,
int  top,
int *  xi,
int *  pstack,
const int *  pinv 
)

csr* csr_done ( csr C,
void *  w,
void *  x,
int  ok 
)

int csr_droptol ( csr A,
double  tol 
)

int csr_dropzeros ( csr A  ) 

int csr_fkeep ( csr A,
int(*)(int, int, double, void *)  fkeep,
void *  other 
)

int* csr_idone ( int *  p,
csr C,
void *  w,
int  ok 
)

int csr_lsolve ( const csr L,
double *  x 
)

csrn* csr_lu ( const csr A,
const css S,
double  tol 
)

csr* csr_multiply ( const csr A,
const csr B 
)

csrn* csr_ndone ( csrn N,
csr C,
void *  w,
void *  x,
int  ok 
)

csrn* csr_nfree ( csrn N  ) 

double csr_norm ( const csr A  ) 

csr* csr_permute ( const csr A,
const int *  pinv,
const int *  q,
int  values 
)

int csr_print ( const csr A,
int  brief 
)

int csr_reach ( csr G,
const csr B,
int  k,
int *  xi,
const int *  pinv 
)

void* csr_realloc ( void *  p,
int  n,
size_t  size,
int *  ok 
)

int csr_scatter ( const csr A,
int  j,
double  beta,
int *  w,
double *  x,
int  mark,
csr C,
int  nz 
)

csrd* csr_scc ( csr A  ) 

css* csr_sfree ( css S  ) 

csr* csr_spalloc ( int  m,
int  n,
int  nzmax,
int  values,
int  triplet 
)

csr* csr_spfree ( csr A  ) 

int csr_sprealloc ( csr A,
int  nzmax 
)

int csr_spsolve ( csr G,
const csr B,
int  k,
int *  xi,
double *  x,
const int *  pinv,
int  up 
)

css* csr_sqr ( int  order,
const csr A 
)

int csr_tdfs ( int  j,
int  k,
int *  head,
const int *  next,
int *  post,
int *  stack 
)

csr* csr_transpose ( const csr A,
int  values 
)

int csr_usolve ( const csr U,
double *  x 
)


Generated on Thu Dec 17 11:06:37 2009 for IFPACK Robust Algebraic Preconditioner Package by  doxygen 1.5.9