Graphviz
2.41.20171026.1811
|
#include "SparseMatrix.h"
Go to the source code of this file.
Data Structures | |
struct | Multilevel_struct |
struct | Multilevel_control_struct |
Macros | |
#define | Multilevel_is_finest(grid) (!((grid)->prev)) |
#define | Multilevel_is_coarsest(grid) (!((grid)->next)) |
Typedefs | |
typedef struct Multilevel_struct * | Multilevel |
typedef struct Multilevel_control_struct * | Multilevel_control |
Functions | |
Multilevel_control | Multilevel_control_new (int scheme, int mode) |
void | Multilevel_control_delete (Multilevel_control ctrl) |
void | Multilevel_delete (Multilevel grid) |
Multilevel | Multilevel_new (SparseMatrix A, SparseMatrix D, real *node_weights, Multilevel_control ctrl) |
Multilevel | Multilevel_get_coarsest (Multilevel grid) |
void | print_padding (int n) |
void | Multilevel_coarsen (SparseMatrix A, SparseMatrix *cA, SparseMatrix D, SparseMatrix *cD, real *node_wgt, real **cnode_wgt, SparseMatrix *P, SparseMatrix *R, Multilevel_control ctrl, int *coarsen_scheme_used) |
#define Multilevel_is_coarsest | ( | grid | ) | (!((grid)->next)) |
Definition at line 68 of file Multilevel.h.
#define Multilevel_is_finest | ( | grid | ) | (!((grid)->prev)) |
Definition at line 67 of file Multilevel.h.
typedef struct Multilevel_struct* Multilevel |
Definition at line 19 of file Multilevel.h.
typedef struct Multilevel_control_struct* Multilevel_control |
Definition at line 53 of file Multilevel.h.
anonymous enum |
Enumerator | |
---|---|
MAX_IND_VTX_SET_U | |
MAX_IND_VTX_SET_F | |
MAX_IND_VTX_SET_C |
Definition at line 36 of file Multilevel.h.
anonymous enum |
Enumerator | |
---|---|
MAX_CLUSTER_SIZE |
Definition at line 38 of file Multilevel.h.
anonymous enum |
Definition at line 40 of file Multilevel.h.
anonymous enum |
Enumerator | |
---|---|
COARSEN_MODE_GENTLE | |
COARSEN_MODE_FORCEFUL |
Definition at line 42 of file Multilevel.h.
void Multilevel_coarsen | ( | SparseMatrix | A, |
SparseMatrix * | cA, | ||
SparseMatrix | D, | ||
SparseMatrix * | cD, | ||
real * | node_wgt, | ||
real ** | cnode_wgt, | ||
SparseMatrix * | P, | ||
SparseMatrix * | R, | ||
Multilevel_control | ctrl, | ||
int * | coarsen_scheme_used | ||
) |
Definition at line 1201 of file Multilevel.c.
References assert, Multilevel_control_struct::coarsen_mode, COARSEN_MODE_FORCEFUL, FREE, Multilevel_control_struct::min_coarsen_factor, SparseMatrix_struct::n, NULL, real, SparseMatrix_delete(), SparseMatrix_multiply(), and Verbose.
void Multilevel_control_delete | ( | Multilevel_control | ctrl | ) |
Definition at line 44 of file Multilevel.c.
References FREE.
Multilevel_control Multilevel_control_new | ( | int | scheme, |
int | mode | ||
) |
Definition at line 22 of file Multilevel.c.
References Multilevel_control_struct::coarsen_mode, Multilevel_control_struct::coarsen_scheme, GNEW, Multilevel_control_struct::maxlevel, Multilevel_control_struct::min_coarsen_factor, Multilevel_control_struct::minsize, Multilevel_control_struct::randomize, and TRUE.
void Multilevel_delete | ( | Multilevel | grid | ) |
Definition at line 66 of file Multilevel.c.
References Multilevel_struct::A, Multilevel_struct::D, Multilevel_struct::delete_top_level_A, FREE, Multilevel_struct::level, Multilevel_delete(), Multilevel_struct::next, Multilevel_struct::node_weights, Multilevel_struct::P, Multilevel_struct::R, and SparseMatrix_delete().
Referenced by Multilevel_delete().
Multilevel Multilevel_get_coarsest | ( | Multilevel | grid | ) |
Definition at line 1312 of file Multilevel.c.
References Multilevel_struct::next.
Multilevel Multilevel_new | ( | SparseMatrix | A, |
SparseMatrix | D, | ||
real * | node_weights, | ||
Multilevel_control | ctrl | ||
) |
Definition at line 1294 of file Multilevel.c.
References Multilevel_struct::delete_top_level_A, FALSE, MATRIX_TYPE_REAL, SparseMatrix_get_real_adjacency_matrix_symmetrized(), SparseMatrix_is_symmetric(), SparseMatrix_symmetrize_nodiag(), TRUE, and SparseMatrix_struct::type.
void print_padding | ( | int | n | ) |
Definition at line 1249 of file Multilevel.c.