8 if (!M || !sym || !work)
return FAIL;
14 for (col = 0; col < M->
ncol; col++)
21 for (; row < col; row = next)
37#ifdef LADEL_SIMPLE_COL_COUNTS
40 if (!M || !sym || !work)
return FAIL;
47 for (col = 0; col < ncol; col++)
53 for (col = 0; col < ncol; col++)
60 for (; row < col && touched[row] != col; row = next)
74 for (col = 1; col < ncol; col++) col_counts[col] += col_counts[col-1];
75 return col_counts[ncol-1];
#define NONE
Indicates a root (a node without parent), or an untouched node.
#define SUCCESS
For status returns.
#define FAIL
For status returns.
#define LADEL_FOR(index, M, col)
Loop through a column of a sparse matrix.
Constants and macros used in LADEL.
Routines to print out matrices and vectors.
ladel_int ladel_etree_and_col_counts(ladel_sparse_matrix *M, ladel_symbolics *sym, ladel_work *work)
Computes the elimination tree and column counts of a matrix.
ladel_int ladel_etree(ladel_sparse_matrix *M, ladel_symbolics *sym, ladel_work *work)
Computes the elimination tree of a matrix.
Memory allocation routines.
Structures and types used in LADEL routines.
int64_t ladel_int
Type for integer numbers (default: int64_t)
Sparse matrix in compressed column storage.
ladel_int ncol
number of columns
ladel_int * i
row pointers (size nzmax)
Workspace required for various routines in LADEL.
ladel_int * array_int_ncol1
An array of ncol integers.