ESYS13  Revision_
Defines | Functions
LocalAMG.c File Reference
#include "Paso.h"
#include "Preconditioner.h"
#include "Options.h"
#include "PasoUtil.h"
#include "UMFPACK.h"
#include "MKL.h"

Defines

#define SHOW_TIMING   FALSE
#define USE_TRANSPOSE   TRUE
#define SMALL_PANEL   TRUE

Functions

void Paso_Preconditioner_LocalAMG_free (Paso_Preconditioner_LocalAMG *in)
index_t Paso_Preconditioner_LocalAMG_getMaxLevel (const Paso_Preconditioner_LocalAMG *in)
double Paso_Preconditioner_LocalAMG_getCoarseLevelSparsity (const Paso_Preconditioner_LocalAMG *in)
dim_t Paso_Preconditioner_LocalAMG_getNumCoarseUnknwons (const Paso_Preconditioner_LocalAMG *in)
Paso_Preconditioner_LocalAMGPaso_Preconditioner_LocalAMG_alloc (Paso_SparseMatrix *A_p, dim_t level, Paso_Options *options)
void Paso_Preconditioner_LocalAMG_solve (Paso_SparseMatrix *A, Paso_Preconditioner_LocalAMG *amg, double *x, double *b)
void Paso_Preconditioner_LocalAMG_setStrongConnections (Paso_SparseMatrix *A, dim_t *degree_S, index_t *S, const double theta, const double tau)
void Paso_Preconditioner_LocalAMG_setStrongConnections_Block (Paso_SparseMatrix *A, dim_t *degree_S, index_t *S, const double theta, const double tau)
void Paso_Preconditioner_LocalAMG_RungeStuebenSearch (const dim_t n, const index_t *offset_S, const dim_t *degree_S, const index_t *S, index_t *split_marker, const bool_t usePanel)
void Paso_Preconditioner_LocalAMG_enforceFFConnectivity (const dim_t n, const index_t *offset_S, const dim_t *degree_S, const index_t *S, index_t *split_marker)

Define Documentation

#define SHOW_TIMING   FALSE
#define SMALL_PANEL   TRUE
#define USE_TRANSPOSE   TRUE

Function Documentation

References Paso_Preconditioner_LocalAMG::A_C, Paso_Preconditioner_LocalAMG::AMG_C, Paso_Preconditioner_LocalAMG::b_C, Paso_Options::coarse_matrix_refinements, Paso_Options::coarsening_selection_time, Paso_Options::coarsening_threshold, Paso_Options::diagonal_dominance_threshold, Esys_checkPtr(), Esys_noError(), Esys_timer(), Paso_Options::interpolation_method, Paso_Pattern::len, Paso_Preconditioner_LocalAMG::level, Paso_Options::level_max, MATRIX_FORMAT_BLK1, MATRIX_FORMAT_CSC, MATRIX_FORMAT_OFFSET1, MAX, MEMALLOC, Paso_Options::min_coarse_matrix_size, Paso_Options::min_coarse_sparsity, Paso_SparseMatrix::numRows, Paso_Preconditioner_LocalAMG::P, PASO_AMG_IN_F, PASO_CLASSIC_INTERPOLATION_WITH_FF_COUPLING, PASO_JACOBI, PASO_MKL, Paso_Preconditioner_LocalAMG_alloc(), Paso_Preconditioner_LocalAMG_enforceFFConnectivity(), Paso_Preconditioner_LocalAMG_free(), Paso_Preconditioner_LocalAMG_getProlongation(), Paso_Preconditioner_LocalAMG_RungeStuebenSearch(), Paso_Preconditioner_LocalAMG_setStrongConnections(), Paso_Preconditioner_LocalAMG_setStrongConnections_Block(), Paso_Preconditioner_LocalSmoother_alloc(), PASO_SMOOTHER, Paso_SparseMatrix_free(), Paso_SparseMatrix_getSparsity(), Paso_SparseMatrix_getTotalNumRows(), Paso_SparseMatrix_getTranspose(), Paso_SparseMatrix_MatrixMatrix(), Paso_SparseMatrix_MatrixMatrixTranspose(), Paso_SparseMatrix_unroll(), PASO_UMFPACK, Paso_Util_cumsum_maskedFalse(), Paso_Util_cumsum_maskedTrue(), Paso_SparseMatrix::pattern, Paso_Options::post_sweeps, Paso_Preconditioner_LocalAMG::post_sweeps, Paso_Options::pre_sweeps, Paso_Preconditioner_LocalAMG::pre_sweeps, Paso_Pattern::ptr, Paso_Preconditioner_LocalAMG::R, Paso_Preconditioner_LocalAMG::r, Paso_Preconditioner_LocalAMG::refinements, Paso_Options::reordering, Paso_Preconditioner_LocalAMG::reordering, Paso_SparseMatrix::row_block_size, S, SHOW_TIMING, Paso_Options::smoother, Paso_Preconditioner_LocalAMG::Smoother, Paso_SparseMatrix::solver_p, Paso_SparseMatrix::solver_package, TMPMEMALLOC, TMPMEMFREE, USE_TRANSPOSE, Paso_Options::usePanel, Paso_Options::verbose, and Paso_Preconditioner_LocalAMG::x_C.

Referenced by Paso_Preconditioner_AMG_Root_alloc(), and Paso_Preconditioner_LocalAMG_alloc().

void Paso_Preconditioner_LocalAMG_enforceFFConnectivity ( const dim_t  n,
const index_t offset_S,
const dim_t degree_S,
const index_t S,
index_t split_marker 
)
void Paso_Preconditioner_LocalAMG_RungeStuebenSearch ( const dim_t  n,
const index_t offset_S,
const dim_t degree_S,
const index_t S,
index_t split_marker,
const bool_t  usePanel 
)
void Paso_Preconditioner_LocalAMG_setStrongConnections ( Paso_SparseMatrix A,
dim_t degree_S,
index_t S,
const double  theta,
const double  tau 
)
void Paso_Preconditioner_LocalAMG_setStrongConnections_Block ( Paso_SparseMatrix A,
dim_t degree_S,
index_t S,
const double  theta,
const double  tau 
)
void Paso_Preconditioner_LocalAMG_solve ( Paso_SparseMatrix A,
Paso_Preconditioner_LocalAMG amg,
double *  x,
double *  b 
)