Amesos Package Browser (Single Doxygen Collection)  Development
Macros | Functions | Variables
amesos_amd.h File Reference
#include <stddef.h>
#include "amesos_UFconfig.h"
Include dependency graph for amesos_amd.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define EXTERN   extern
 
#define AMD_CONTROL   5 /* size of Control array */
 
#define AMD_INFO   20 /* size of Info array */
 
#define AMD_DENSE   0 /* "dense" if degree > Control [0] * sqrt (n) */
 
#define AMD_AGGRESSIVE   1 /* do aggressive absorption if Control [1] != 0 */
 
#define AMD_DEFAULT_DENSE   10.0 /* default "dense" degree 10*sqrt(n) */
 
#define AMD_DEFAULT_AGGRESSIVE   1 /* do aggressive absorption by default */
 
#define AMD_STATUS   0 /* return value of amd_order and amd_l_order */
 
#define AMD_N   1 /* A is n-by-n */
 
#define AMD_NZ   2 /* number of nonzeros in A */
 
#define AMD_SYMMETRY   3 /* symmetry of pattern (1 is sym., 0 is unsym.) */
 
#define AMD_NZDIAG   4 /* # of entries on diagonal */
 
#define AMD_NZ_A_PLUS_AT   5 /* nz in A+A' */
 
#define AMD_NDENSE   6 /* number of "dense" rows/columns in A */
 
#define AMD_MEMORY   7 /* amount of memory used by AMD */
 
#define AMD_NCMPA   8 /* number of garbage collections in AMD */
 
#define AMD_LNZ   9 /* approx. nz in L, excluding the diagonal */
 
#define AMD_NDIV   10 /* number of fl. point divides for LU and LDL' */
 
#define AMD_NMULTSUBS_LDL   11 /* number of fl. point (*,-) pairs for LDL' */
 
#define AMD_NMULTSUBS_LU   12 /* number of fl. point (*,-) pairs for LU */
 
#define AMD_DMAX   13 /* max nz. in any column of L, incl. diagonal */
 
#define AMD_OK   0 /* success */
 
#define AMD_OUT_OF_MEMORY   -1 /* malloc failed, or problem too large */
 
#define AMD_INVALID   -2 /* input arguments are not valid */
 
#define AMD_OK_BUT_JUMBLED
 
#define AMD_DATE   "May 31, 2007"
 
#define AMD_VERSION_CODE(main, sub)   ((main) * 1000 + (sub))
 
#define AMD_MAIN_VERSION   2
 
#define AMD_SUB_VERSION   2
 
#define AMD_SUBSUB_VERSION   0
 
#define AMD_VERSION   AMD_VERSION_CODE(AMD_MAIN_VERSION,AMD_SUB_VERSION)
 

Functions

int amesos_amd_order (int n, const int Ap [], const int Ai [], int P [], double Control [], double Info [])
 
UF_long amesos_amd_l_order (UF_long n, const UF_long Ap [], const UF_long Ai [], UF_long P [], double Control [], double Info [])
 
void amesos_amd_2 (int n, int Pe [], int Iw [], int Len [], int iwlen, int pfree, int Nv [], int Next [], int Last [], int Head [], int Elen [], int Degree [], int W [], double Control [], double Info [])
 
void amesos_amd_l2 (UF_long n, UF_long Pe [], UF_long Iw [], UF_long Len [], UF_long iwlen, UF_long pfree, UF_long Nv [], UF_long Next [], UF_long Last [], UF_long Head [], UF_long Elen [], UF_long Degree [], UF_long W [], double Control [], double Info [])
 
int amesos_amd_valid (int n_row, int n_col, const int Ap [], const int Ai [])
 
UF_long amesos_amd_l_valid (UF_long n_row, UF_long n_col, const UF_long Ap [], const UF_long Ai [])
 
void amesos_amd_defaults (double Control [])
 
void amesos_amd_l_defaults (double Control [])
 
void amesos_amd_control (double Control [])
 
void amesos_amd_l_control (double Control [])
 
void amesos_amd_info (double Info [])
 
void amesos_amd_l_info (double Info [])
 

Variables

EXTERN void *(* amesos_amd_malloc )(size_t)
 
EXTERN void(* amesos_amd_free )(void *)
 
EXTERN void *(* amesos_amd_realloc )(void *, size_t)
 
EXTERN void *(* amesos_amd_calloc )(size_t, size_t)
 
EXTERN int(* amesos_amd_printf )(const char *,...)
 

Macro Definition Documentation

◆ EXTERN

#define EXTERN   extern

Definition at line 315 of file amesos_amd.h.

◆ AMD_CONTROL

#define AMD_CONTROL   5 /* size of Control array */

Definition at line 340 of file amesos_amd.h.

◆ AMD_INFO

#define AMD_INFO   20 /* size of Info array */

Definition at line 341 of file amesos_amd.h.

◆ AMD_DENSE

#define AMD_DENSE   0 /* "dense" if degree > Control [0] * sqrt (n) */

Definition at line 344 of file amesos_amd.h.

◆ AMD_AGGRESSIVE

#define AMD_AGGRESSIVE   1 /* do aggressive absorption if Control [1] != 0 */

Definition at line 345 of file amesos_amd.h.

◆ AMD_DEFAULT_DENSE

#define AMD_DEFAULT_DENSE   10.0 /* default "dense" degree 10*sqrt(n) */

Definition at line 348 of file amesos_amd.h.

◆ AMD_DEFAULT_AGGRESSIVE

#define AMD_DEFAULT_AGGRESSIVE   1 /* do aggressive absorption by default */

Definition at line 349 of file amesos_amd.h.

◆ AMD_STATUS

#define AMD_STATUS   0 /* return value of amd_order and amd_l_order */

Definition at line 352 of file amesos_amd.h.

◆ AMD_N

#define AMD_N   1 /* A is n-by-n */

Definition at line 353 of file amesos_amd.h.

◆ AMD_NZ

#define AMD_NZ   2 /* number of nonzeros in A */

Definition at line 354 of file amesos_amd.h.

◆ AMD_SYMMETRY

#define AMD_SYMMETRY   3 /* symmetry of pattern (1 is sym., 0 is unsym.) */

Definition at line 355 of file amesos_amd.h.

◆ AMD_NZDIAG

#define AMD_NZDIAG   4 /* # of entries on diagonal */

Definition at line 356 of file amesos_amd.h.

◆ AMD_NZ_A_PLUS_AT

#define AMD_NZ_A_PLUS_AT   5 /* nz in A+A' */

Definition at line 357 of file amesos_amd.h.

◆ AMD_NDENSE

#define AMD_NDENSE   6 /* number of "dense" rows/columns in A */

Definition at line 358 of file amesos_amd.h.

◆ AMD_MEMORY

#define AMD_MEMORY   7 /* amount of memory used by AMD */

Definition at line 359 of file amesos_amd.h.

◆ AMD_NCMPA

#define AMD_NCMPA   8 /* number of garbage collections in AMD */

Definition at line 360 of file amesos_amd.h.

◆ AMD_LNZ

#define AMD_LNZ   9 /* approx. nz in L, excluding the diagonal */

Definition at line 361 of file amesos_amd.h.

◆ AMD_NDIV

#define AMD_NDIV   10 /* number of fl. point divides for LU and LDL' */

Definition at line 362 of file amesos_amd.h.

◆ AMD_NMULTSUBS_LDL

#define AMD_NMULTSUBS_LDL   11 /* number of fl. point (*,-) pairs for LDL' */

Definition at line 363 of file amesos_amd.h.

◆ AMD_NMULTSUBS_LU

#define AMD_NMULTSUBS_LU   12 /* number of fl. point (*,-) pairs for LU */

Definition at line 364 of file amesos_amd.h.

◆ AMD_DMAX

#define AMD_DMAX   13 /* max nz. in any column of L, incl. diagonal */

Definition at line 365 of file amesos_amd.h.

◆ AMD_OK

#define AMD_OK   0 /* success */

Definition at line 371 of file amesos_amd.h.

◆ AMD_OUT_OF_MEMORY

#define AMD_OUT_OF_MEMORY   -1 /* malloc failed, or problem too large */

Definition at line 372 of file amesos_amd.h.

◆ AMD_INVALID

#define AMD_INVALID   -2 /* input arguments are not valid */

Definition at line 373 of file amesos_amd.h.

◆ AMD_OK_BUT_JUMBLED

#define AMD_OK_BUT_JUMBLED
Value:
1 /* input matrix is OK for amd_order, but
* columns were not sorted, and/or duplicate entries were present. AMD had
* to do extra work before ordering the matrix. This is a warning, not an
* error. */

Definition at line 374 of file amesos_amd.h.

◆ AMD_DATE

#define AMD_DATE   "May 31, 2007"

Definition at line 401 of file amesos_amd.h.

◆ AMD_VERSION_CODE

#define AMD_VERSION_CODE (   main,
  sub 
)    ((main) * 1000 + (sub))

Definition at line 402 of file amesos_amd.h.

◆ AMD_MAIN_VERSION

#define AMD_MAIN_VERSION   2

Definition at line 403 of file amesos_amd.h.

◆ AMD_SUB_VERSION

#define AMD_SUB_VERSION   2

Definition at line 404 of file amesos_amd.h.

◆ AMD_SUBSUB_VERSION

#define AMD_SUBSUB_VERSION   0

Definition at line 405 of file amesos_amd.h.

◆ AMD_VERSION

Definition at line 406 of file amesos_amd.h.

Function Documentation

◆ amesos_amd_order()

int amesos_amd_order ( int  n,
const int  Ap[],
const int  Ai[],
int  P[],
double  Control[],
double  Info[] 
)

◆ amesos_amd_l_order()

UF_long amesos_amd_l_order ( UF_long  n,
const UF_long  Ap[],
const UF_long  Ai[],
UF_long  P[],
double  Control[],
double  Info[] 
)

◆ amesos_amd_2()

void amesos_amd_2 ( int  n,
int  Pe[],
int  Iw[],
int  Len[],
int  iwlen,
int  pfree,
int  Nv[],
int  Next[],
int  Last[],
int  Head[],
int  Elen[],
int  Degree[],
int  W[],
double  Control[],
double  Info[] 
)

◆ amesos_amd_l2()

void amesos_amd_l2 ( UF_long  n,
UF_long  Pe[],
UF_long  Iw[],
UF_long  Len[],
UF_long  iwlen,
UF_long  pfree,
UF_long  Nv[],
UF_long  Next[],
UF_long  Last[],
UF_long  Head[],
UF_long  Elen[],
UF_long  Degree[],
UF_long  W[],
double  Control[],
double  Info[] 
)

◆ amesos_amd_valid()

int amesos_amd_valid ( int  n_row,
int  n_col,
const int  Ap[],
const int  Ai[] 
)

◆ amesos_amd_l_valid()

UF_long amesos_amd_l_valid ( UF_long  n_row,
UF_long  n_col,
const UF_long  Ap[],
const UF_long  Ai[] 
)

◆ amesos_amd_defaults()

void amesos_amd_defaults ( double  Control[])

◆ amesos_amd_l_defaults()

void amesos_amd_l_defaults ( double  Control[])

◆ amesos_amd_control()

void amesos_amd_control ( double  Control[])

◆ amesos_amd_l_control()

void amesos_amd_l_control ( double  Control[])

◆ amesos_amd_info()

void amesos_amd_info ( double  Info[])

◆ amesos_amd_l_info()

void amesos_amd_l_info ( double  Info[])

Variable Documentation

◆ amesos_amd_malloc

EXTERN void*(* amesos_amd_malloc) (size_t)

Definition at line 318 of file amesos_amd.h.

◆ amesos_amd_free

EXTERN void(* amesos_amd_free) (void *)

Definition at line 319 of file amesos_amd.h.

◆ amesos_amd_realloc

EXTERN void*(* amesos_amd_realloc) (void *, size_t)

Definition at line 320 of file amesos_amd.h.

◆ amesos_amd_calloc

EXTERN void*(* amesos_amd_calloc) (size_t, size_t)

Definition at line 321 of file amesos_amd.h.

◆ amesos_amd_printf

EXTERN int(* amesos_amd_printf) (const char *,...)

Definition at line 322 of file amesos_amd.h.