#include "Paso.h"
#include "Solver.h"
#include "Options.h"
#include "PasoUtil.h"
#include "UMFPACK.h"
#include "MKL.h"
#include "SystemMatrix.h"
#include "Pattern_coupling.h"
Functions | |
void | Paso_Solver_AMG_free (Paso_Solver_AMG *in) |
Paso_Solver_AMG * | Paso_Solver_getAMG (Paso_SparseMatrix *A_p, dim_t level, Paso_Options *options) |
void | Paso_Solver_solveAMG (Paso_Solver_AMG *amg, double *x, double *b) |
void Paso_Solver_AMG_free | ( | Paso_Solver_AMG * | in | ) |
References Paso_Solver_AMG::A, Paso_Solver_AMG::A_CF, Paso_Solver_AMG::A_FC, Paso_Solver_AMG::A_FF_pivot, Paso_Solver_AMG::AMG_of_Schur, Paso_Solver_AMG::b_C, Paso_Solver_AMG::b_F, Paso_Solver_AMG::GS, Paso_Solver_AMG::inv_A_FF, Paso_Solver_AMG::mask_C, Paso_Solver_AMG::mask_F, MEMFREE, Paso_Solver_AMG_free(), Paso_Solver_Jacobi_free(), Paso_SparseMatrix_free(), Paso_UMFPACK1_free(), Paso_Solver_AMG::rows_in_C, Paso_Solver_AMG::rows_in_F, Paso_Solver_AMG::solver, Paso_Solver_AMG::x_C, and Paso_Solver_AMG::x_F.
Referenced by Paso_Preconditioner_free(), Paso_Solver_AMG_free(), and Paso_Solver_getAMG().
Paso_Solver_AMG* Paso_Solver_getAMG | ( | Paso_SparseMatrix * | A_p, | |
dim_t | level, | |||
Paso_Options * | options | |||
) |
References Paso_Solver_AMG::A, Paso_Solver_AMG::A_CF, Paso_Solver_AMG::A_FC, Paso_Solver_AMG::A_FF_pivot, Paso_Solver_AMG::AMG_of_Schur, Paso_Solver_AMG::b_C, Paso_Solver_AMG::b_F, Paso_Options::coarsening_method, Paso_Options::coarsening_threshold, Paso_Solver_AMG::coarsest_level, Paso_SparseMatrix::col_block_size, FALSE, Paso_Solver_AMG::GS, Paso_Pattern::index, Paso_Solver_AMG::inv_A_FF, Paso_Solver_AMG::level, Paso_Solver_AMG::mask_C, Paso_Solver_AMG::mask_F, MEMALLOC, Paso_Solver_AMG::n, Paso_Solver_AMG::n_block, Paso_Solver_AMG::n_C, Paso_Solver_AMG::n_F, Paso_SparseMatrix::numRows, PASO_AGGREGATION_COARSENING, Paso_checkPtr(), Paso_comparIndex(), Paso_noError(), Paso_Pattern_Aggregiation(), Paso_Pattern_binop(), Paso_Pattern_coup(), Paso_Pattern_free(), Paso_Pattern_multiply(), Paso_Pattern_RS(), PASO_RUGE_STUEBEN_COARSENING, Paso_setError(), Paso_Solver_AMG_free(), Paso_Solver_getAMG(), Paso_Solver_getJacobi(), Paso_Solver_updateIncompleteSchurComplement(), Paso_SparseMatrix_alloc(), Paso_SparseMatrix_free(), Paso_SparseMatrix_getReference(), Paso_SparseMatrix_getSubmatrix(), Paso_SparseMatrix_saveMM(), Paso_Util_cumsum(), PASO_YAIR_SHAPIRA_COARSENING, Paso_SparseMatrix::pattern, PATTERN_FORMAT_DEFAULT, Paso_Pattern::ptr, Paso_SparseMatrix::row_block_size, Paso_Solver_AMG::rows_in_C, Paso_Solver_AMG::rows_in_F, S, Paso_Solver_AMG::solver, TMPMEMALLOC, TMPMEMFREE, TRUE, Paso_SparseMatrix::type, TYPE_ERROR, Paso_SparseMatrix::val, Paso_Options::verbose, Paso_Solver_AMG::x_C, and Paso_Solver_AMG::x_F.
Referenced by Paso_Solver_getAMG(), and Paso_Solver_setPreconditioner().
void Paso_Solver_solveAMG | ( | Paso_Solver_AMG * | amg, | |
double * | x, | |||
double * | b | |||
) |
References Paso_Solver_AMG::A, Paso_Solver_AMG::A_CF, Paso_Solver_AMG::A_FC, Paso_Solver_AMG::A_FF_pivot, Paso_Solver_AMG::AMG_of_Schur, Paso_Solver_AMG::b_C, Paso_Solver_AMG::b_F, Paso_Solver_AMG::coarsest_level, FALSE, Paso_Solver_AMG::GS, Paso_Solver_AMG::inv_A_FF, Paso_SparseMatrix::len, Paso_Solver_AMG::mask_C, Paso_Solver_AMG::mask_F, MATRIX_FORMAT_BLK1, MATRIX_FORMAT_OFFSET1, MEMALLOC, MEMFREE, Paso_Solver_AMG::n, Paso_Solver_AMG::n_C, Paso_Solver_AMG::n_F, Paso_MKL1(), Paso_Solver_applyBlockDiagonalMatrix(), Paso_Solver_solveAMG(), Paso_Solver_solveJacobi(), Paso_SparseMatrix_alloc(), Paso_SparseMatrix_free(), Paso_SparseMatrix_MatrixVector_CSR_OFFSET0(), Paso_timer(), Paso_UMFPACK1(), Paso_SparseMatrix::pattern, Paso_Solver_AMG::rows_in_C, Paso_Solver_AMG::rows_in_F, Paso_Solver_AMG::solver, Paso_SparseMatrix::val, Paso_Solver_AMG::x_C, and Paso_Solver_AMG::x_F.
Referenced by Paso_Solver_solveAMG(), and Paso_Solver_solvePreconditioner().