lsd_mkb/lsd_mkb_superlu/superlu_seq/colamd.h File Reference

#include <stdlib.h>
Include dependency graph for colamd.h:

Go to the source code of this file.

Classes

struct  Colamd_Col_struct
struct  Colamd_Row_struct

Defines

#define COLAMD_KNOBS   20
#define COLAMD_STATS   20
#define COLAMD_DENSE_ROW   0
#define COLAMD_DENSE_COL   1
#define COLAMD_DEFRAG_COUNT   2
#define COLAMD_STATUS   3
#define COLAMD_INFO1   4
#define COLAMD_INFO2   5
#define COLAMD_INFO3   6
#define COLAMD_OK   (0)
#define COLAMD_OK_BUT_JUMBLED   (1)
#define COLAMD_ERROR_A_not_present   (-1)
#define COLAMD_ERROR_p_not_present   (-2)
#define COLAMD_ERROR_nrow_negative   (-3)
#define COLAMD_ERROR_ncol_negative   (-4)
#define COLAMD_ERROR_nnz_negative   (-5)
#define COLAMD_ERROR_p0_nonzero   (-6)
#define COLAMD_ERROR_A_too_small   (-7)
#define COLAMD_ERROR_col_length_negative   (-8)
#define COLAMD_ERROR_row_index_out_of_bounds   (-9)
#define COLAMD_ERROR_out_of_memory   (-10)
#define COLAMD_ERROR_internal_error   (-999)
#define COLAMD_C(n_col)   ((int) (((n_col) + 1) * sizeof (Colamd_Col) / sizeof (int)))
#define COLAMD_R(n_row)   ((int) (((n_row) + 1) * sizeof (Colamd_Row) / sizeof (int)))
#define COLAMD_RECOMMENDED(nnz, n_row, n_col)

Typedefs

typedef struct Colamd_Col_struct Colamd_Col
typedef struct Colamd_Row_struct Colamd_Row

Functions

int colamd_recommended (int nnz, int n_row, int n_col)
void colamd_set_defaults (double knobs[COLAMD_KNOBS])
int colamd (int n_row, int n_col, int Alen, int A[], int p[], double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS])
int symamd (int n, int A[], int p[], int perm[], double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS], void *(*allocate)(size_t, size_t), void(*release)(void *))
void colamd_report (int stats[COLAMD_STATS])
void symamd_report (int stats[COLAMD_STATS])

Define Documentation

#define COLAMD_C ( n_col   )     ((int) (((n_col) + 1) * sizeof (Colamd_Col) / sizeof (int)))
#define COLAMD_DEFRAG_COUNT   2
#define COLAMD_DENSE_COL   1
#define COLAMD_DENSE_ROW   0
#define COLAMD_ERROR_A_not_present   (-1)
#define COLAMD_ERROR_A_too_small   (-7)
#define COLAMD_ERROR_col_length_negative   (-8)
#define COLAMD_ERROR_internal_error   (-999)
#define COLAMD_ERROR_ncol_negative   (-4)
#define COLAMD_ERROR_nnz_negative   (-5)
#define COLAMD_ERROR_nrow_negative   (-3)
#define COLAMD_ERROR_out_of_memory   (-10)
#define COLAMD_ERROR_p0_nonzero   (-6)
#define COLAMD_ERROR_p_not_present   (-2)
#define COLAMD_ERROR_row_index_out_of_bounds   (-9)
#define COLAMD_INFO1   4
#define COLAMD_INFO2   5
#define COLAMD_INFO3   6
#define COLAMD_KNOBS   20
#define COLAMD_OK   (0)
#define COLAMD_OK_BUT_JUMBLED   (1)
#define COLAMD_R ( n_row   )     ((int) (((n_row) + 1) * sizeof (Colamd_Row) / sizeof (int)))
#define COLAMD_RECOMMENDED ( nnz,
n_row,
n_col   ) 
Value:
(                                                                             \
((nnz) < 0 || (n_row) < 0 || (n_col) < 0)                                     \
?                                                                             \
    (-1)                                                                      \
:                                                                             \
    (2 * (nnz) + COLAMD_C (n_col) + COLAMD_R (n_row) + (n_col) + ((nnz) / 5)) \
)
#define COLAMD_STATS   20
#define COLAMD_STATUS   3

Typedef Documentation

typedef struct Colamd_Col_struct Colamd_Col
typedef struct Colamd_Row_struct Colamd_Row

Function Documentation

int colamd ( int  n_row,
int  n_col,
int  Alen,
int  A[],
int  p[],
double  knobs[COLAMD_KNOBS],
int  stats[COLAMD_STATS] 
)
int colamd_recommended ( int  nnz,
int  n_row,
int  n_col 
)
void colamd_report ( int  stats[COLAMD_STATS]  ) 
void colamd_set_defaults ( double  knobs[COLAMD_KNOBS]  ) 
int symamd ( int  n,
int  A[],
int  p[],
int  perm[],
double  knobs[COLAMD_KNOBS],
int  stats[COLAMD_STATS],
void *(*)(size_t, size_t)  allocate,
void(*)(void *)  release 
)
void symamd_report ( int  stats[COLAMD_STATS]  ) 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1