Loading...
Searching...
No Matches
43#ifndef IFPACK_IKLU_UTILS_H
44#define IFPACK_IKLU_UTILS_H
68csr *csr_add (
const csr *A,
const csr *B,
double alpha,
double beta) ;
69csr *csr_multiply (
const csr *A,
const csr *B) ;
70double csr_norm (
const csr *A) ;
71int csr_print (
const csr *A,
int brief) ;
72csr *csr_transpose (
const csr *A,
int values) ;
75void *csr_realloc (
void *p,
int n,
size_t size,
int *ok) ;
78csr *csr_spalloc (
int m,
int n,
int nzmax,
int values,
int triplet) ;
80int csr_sprealloc (
csr *A,
int nzmax) ;
117int *csr_amd (
int order,
const csr *A) ;
119int csr_droptol (
csr *A,
double tol);
120int csr_dropzeros (
csr *A);
121int csr_lsolve (
const csr *L,
double *x);
122csrn *csr_lu (
const csr *A,
const css *S,
double tol);
123csr *csr_permute (
const csr *A,
const int *pinv,
const int *q,
int values);
124css *csr_sqr (
int order,
const csr *A);
125int csr_usolve (
const csr *U,
double *x);
135double csr_cumsum (
int *p,
int *c,
int n) ;
136int csr_dfs (
int j,
csr *G,
int top,
int *xi,
int *pstack,
const int *pinv);
137int csr_reach (
csr *G,
const csr *B,
int k,
int *xi,
const int *pinv);
138int csr_scatter (
const csr *A,
int j,
double beta,
int *w,
double *x,
int mark,
141int csr_spsolve (
csr *G,
const csr *B,
int k,
int *xi,
142 double *x,
const int *pinv,
int up);
143int csr_tdfs (
int j,
int k,
int *head,
const int *next,
int *post,
146csrd *csr_dalloc (
int m,
int n);
148csrd *csr_ddone (
csrd *D,
csr *C,
void *w,
int ok) ;
149csr *csr_done (
csr *C,
void *w,
void *x,
int ok) ;
150int *csr_idone (
int *p,
csr *C,
void *w,
int ok) ;
151csrn *csr_ndone (
csrn *N,
csr *C,
void *w,
void *x,
int ok) ;
153int csr_fkeep (
csr *A,
int (*fkeep) (
int,
int,
double,
void *),
void *other);
155#define CS_MAX(a,b) (((a) > (b)) ? (a) : (b))
156#define CS_MIN(a,b) (((a) < (b)) ? (a) : (b))
157#define CS_FLIP(i) (-(i)-2)
158#define CS_UNFLIP(i) (((i) < 0) ? CS_FLIP(i) : (i))
159#define CS_MARKED(w,j) (w [j] < 0)
160#define CS_MARK(w,j) { w [j] = CS_FLIP (w [j]) ; }
161#define CS_CSC(A) (A && (A->nz == -1))
162#define CS_TRIPLET(A) (A && (A->nz >= 0))