|
#define | ALIVE (0) |
|
#define | ASSERT(expression) |
|
#define | CCOLAMD_2 ccolamd2 |
|
#define | CCOLAMD_apply_order ccolamd_apply_order |
|
#define | CCOLAMD_C(n_col, ok) ((t_mult (t_add (n_col, 1, ok), sizeof (CColamd_Col), ok) / sizeof (Int))) |
|
#define | CCOLAMD_fsize ccolamd_fsize |
|
#define | CCOLAMD_MAIN ccolamd |
|
#define | CCOLAMD_post_tree ccolamd_post_tree |
|
#define | CCOLAMD_postorder ccolamd_postorder |
|
#define | CCOLAMD_R(n_row, ok) ((t_mult (t_add (n_row, 1, ok), sizeof (CColamd_Row), ok) / sizeof (Int))) |
|
#define | CCOLAMD_recommended ccolamd_recommended |
|
#define | CCOLAMD_report ccolamd_report |
|
#define | CCOLAMD_set_defaults ccolamd_set_defaults |
|
#define | CMEMBER(c) ((cmember == (Int *) NULL) ? (0) : (cmember [c])) |
|
#define | COL_IS_ALIVE(c) (Col [c].start >= ALIVE) |
|
#define | COL_IS_DEAD(c) (Col [c].start < ALIVE) |
|
#define | COL_IS_DEAD_PRINCIPAL(c) (Col [c].start == DEAD_PRINCIPAL) |
|
#define | CSYMAMD_MAIN csymamd |
|
#define | CSYMAMD_report csymamd_report |
|
#define | DEAD (-1) |
|
#define | DEAD_NON_PRINCIPAL (-2) |
|
#define | DEAD_PRINCIPAL (-1) |
|
#define | DEBUG0(params) ; |
|
#define | DEBUG1(params) ; |
|
#define | DEBUG2(params) ; |
|
#define | DEBUG3(params) ; |
|
#define | DEBUG4(params) ; |
|
#define | DENSE_DEGREE(alpha, n) ((Int) MAX (16.0, (alpha) * sqrt ((double) (n)))) |
|
#define | EMPTY (-1) |
|
#define | FALSE (0) |
|
#define | GLOBAL |
|
#define | ID "%d" |
|
#define | INDEX(i) (i) |
|
#define | Int int |
|
#define | Int_MAX INT_MAX |
|
#define | INT_OVERFLOW(x) |
|
#define | KILL_NON_PRINCIPAL_COL(c) { Col [c].start = DEAD_NON_PRINCIPAL ; } |
|
#define | KILL_PRINCIPAL_COL(c) { Col [c].start = DEAD_PRINCIPAL ; } |
|
#define | KILL_ROW(r) { Row [r].shared2.mark = DEAD ; } |
|
#define | MAX(a, b) (((a) > (b)) ? (a) : (b)) |
|
#define | MIN(a, b) (((a) < (b)) ? (a) : (b)) |
|
#define | NDEBUG |
|
#define | NULL ((void *) 0) |
|
#define | ONES_COMPLEMENT(r) (-(r)-1) |
|
#define | PRIVATE static |
|
#define | PUBLIC |
|
#define | ROW_IS_ALIVE(r) (Row [r].shared2.mark >= ALIVE) |
|
#define | ROW_IS_DEAD(r) ROW_IS_MARKED_DEAD (Row[r].shared2.mark) |
|
#define | ROW_IS_MARKED_DEAD(row_mark) (row_mark < ALIVE) |
|
#define | SCALAR_IS_NAN(x) ((x) != (x)) |
|
#define | TRUE (1) |
|
|
PUBLIC Int | CCOLAMD_2 (Int n_row, Int n_col, Int Alen, Int A [], Int p [], double knobs [CCOLAMD_KNOBS], Int stats [CCOLAMD_STATS], Int Front_npivcol [], Int Front_nrows [], Int Front_ncols [], Int Front_parent [], Int Front_cols [], Int *p_nfr, Int InFront [], Int cmember []) |
|
GLOBAL void | CCOLAMD_apply_order (Int Front [], const Int Order [], Int Temp [], Int nn, Int nfr) |
|
GLOBAL void | CCOLAMD_fsize (Int nn, Int Fsize [], Int Fnrows [], Int Fncols [], Int Parent [], Int Npiv []) |
|
PUBLIC Int | CCOLAMD_MAIN (Int n_row, Int n_col, Int Alen, Int A [], Int p [], double knobs [CCOLAMD_KNOBS], Int stats [CCOLAMD_STATS], Int cmember []) |
|
static size_t | ccolamd_need (Int nnz, Int n_row, Int n_col, int *ok) |
|
GLOBAL Int | CCOLAMD_post_tree (Int root, Int k, Int Child [], const Int Sibling [], Int Order [], Int Stack []) |
|
GLOBAL void | CCOLAMD_postorder (Int nn, Int Parent [], Int Nv [], Int Fsize [], Int Order [], Int Child [], Int Sibling [], Int Stack [], Int Front_cols [], Int cmember []) |
|
PUBLIC size_t | CCOLAMD_recommended (Int nnz, Int n_row, Int n_col) |
|
PUBLIC void | CCOLAMD_report (Int stats [CCOLAMD_STATS]) |
|
PUBLIC void | CCOLAMD_set_defaults (double knobs [CCOLAMD_KNOBS]) |
|
PRIVATE Int | clear_mark (Int tag_mark, Int max_mark, Int n_row, CColamd_Row Row []) |
|
PUBLIC Int | CSYMAMD_MAIN (Int n, Int A [], Int p [], Int perm [], double knobs [CCOLAMD_KNOBS], Int stats [CCOLAMD_STATS], void *(*allocate)(size_t, size_t), void(*release)(void *), Int cmember [], Int stype) |
|
PUBLIC void | CSYMAMD_report (Int stats [CCOLAMD_STATS]) |
|
PRIVATE void | detect_super_cols (CColamd_Col Col [], Int A [], Int head [], Int row_start, Int row_length, Int in_set []) |
|
PRIVATE Int | find_ordering (Int n_row, Int n_col, Int Alen, CColamd_Row Row [], CColamd_Col Col [], Int A [], Int head [], Int max_deg, Int pfree, Int cset [], Int cset_start [], Int cmember [], Int Front_npivcol [], Int Front_nrows [], Int Front_ncols [], Int Front_parent [], Int Front_cols [], Int *p_nfr, Int aggressive, Int InFront [], Int order_for_lu) |
|
PRIVATE Int | garbage_collection (Int n_row, Int n_col, CColamd_Row Row [], CColamd_Col Col [], Int A [], Int *pfree) |
|
PRIVATE Int | init_rows_cols (Int n_row, Int n_col, CColamd_Row Row [], CColamd_Col Col [], Int A [], Int p [], Int stats [CCOLAMD_STATS]) |
|
PRIVATE void | init_scoring (Int n_row, Int n_col, CColamd_Row Row [], CColamd_Col Col [], Int A [], Int head [], double knobs [CCOLAMD_KNOBS], Int *p_n_row2, Int *p_n_col2, Int *p_max_deg, Int cmember [], Int n_cset, Int cset_start [], Int dead_cols [], Int *p_ndense_row, Int *p_nempty_row, Int *p_nnewlyempty_row, Int *p_ndense_col, Int *p_nempty_col, Int *p_nnewlyempty_col) |
|
PRIVATE void | print_report (char *method, Int stats [CCOLAMD_STATS]) |
|
static size_t | t_add (size_t a, size_t b, int *ok) |
|
static size_t | t_mult (size_t a, size_t k, int *ok) |
|