SuperLU Distributed 8.2.1
Distributed memory sparse direct solver
old_colamd.h
Go to the documentation of this file.
1
14/* ========================================================================== */
15/* === colamd prototypes and definitions ==================================== */
16/* ========================================================================== */
17
18/*
19 This is the colamd include file,
20
21 http://www.cise.ufl.edu/~davis/colamd/colamd.h
22
23 for use in the colamd.c, colamdmex.c, and symamdmex.c files located at
24
25 http://www.cise.ufl.edu/~davis/colamd/
26
27 See those files for a description of colamd and symamd, and for the
28 copyright notice, which also applies to this file.
29
30 August 3, 1998. Version 1.0.
31*/
32
33/* ========================================================================== */
34/* === Definitions ========================================================== */
35/* ========================================================================== */
36
37/* size of the knobs [ ] array. Only knobs [0..1] are currently used. */
38#define COLAMD_KNOBS 20
39
40/* number of output statistics. Only A [0..2] are currently used. */
41#define COLAMD_STATS 20
42
43/* knobs [0] and A [0]: dense row knob and output statistic. */
44#define COLAMD_DENSE_ROW 0
45
46/* knobs [1] and A [1]: dense column knob and output statistic. */
47#define COLAMD_DENSE_COL 1
48
49/* A [2]: memory defragmentation count output statistic */
50#define COLAMD_DEFRAG_COUNT 2
51
52/* A [3]: whether or not the input columns were jumbled or had duplicates */
53#define COLAMD_JUMBLED_COLS 3
54
55/* ========================================================================== */
56/* === Prototypes of user-callable routines ================================= */
57/* ========================================================================== */
58
59#ifdef _CRAY
60#define int short
61#elif defined (_LONGINT)
62#define int long
63#endif
64
65int colamd_recommended /* returns recommended value of Alen */
66(
67 int nnz, /* nonzeros in A */
68 int n_row, /* number of rows in A */
69 int n_col /* number of columns in A */
70) ;
71
72void colamd_set_defaults /* sets default parameters */
73( /* knobs argument is modified on output */
74 double knobs [COLAMD_KNOBS] /* parameter settings for colamd */
75) ;
76
77int colamd /* returns TRUE if successful, FALSE otherwise*/
78( /* A and p arguments are modified on output */
79 int n_row, /* number of rows in A */
80 int n_col, /* number of columns in A */
81 int Alen, /* size of the array A */
82 int A [], /* row indices of A, of size Alen */
83 int p [], /* column pointers of A, of size n_col+1 */
84 double knobs [COLAMD_KNOBS] /* parameter settings for colamd */
85) ;
86
int colamd(int n_row, int n_col, int Alen, int A[], int p[], double knobs[COLAMD_KNOBS])
Definition: old_colamd.c:722
int colamd_recommended(int nnz, int n_row, int n_col)
Definition: colamd.c:910
void colamd_set_defaults(double knobs[COLAMD_KNOBS])
Definition: colamd.c:944
#define COLAMD_KNOBS
Definition: old_colamd.h:38