ESYS13  Revision_
Functions
SystemMatrix.c File Reference
#include "SystemMatrix.h"
#include "Preconditioner.h"

Functions

Paso_SystemMatrixPaso_SystemMatrix_alloc (Paso_SystemMatrixType type, Paso_SystemMatrixPattern *pattern, int row_block_size, int col_block_size, const bool_t patternIsUnrolled)
Paso_SystemMatrixPaso_SystemMatrix_getReference (Paso_SystemMatrix *in)
void Paso_SystemMatrix_free (Paso_SystemMatrix *in)
void Paso_SystemMatrix_startCollect (Paso_SystemMatrix *A, const double *in)
double * Paso_SystemMatrix_finishCollect (Paso_SystemMatrix *A)
void Paso_SystemMatrix_startColCollect (Paso_SystemMatrix *A, const double *in)
double * Paso_SystemMatrix_finishColCollect (Paso_SystemMatrix *A)
void Paso_SystemMatrix_startRowCollect (Paso_SystemMatrix *A, const double *in)
double * Paso_SystemMatrix_finishRowCollect (Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getNumRows (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getNumCols (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getTotalNumRows (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getTotalNumCols (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getRowOverlap (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getColOverlap (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getGlobalNumRows (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getGlobalNumCols (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getGlobalTotalNumRows (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getGlobalTotalNumCols (const Paso_SystemMatrix *A)
double Paso_SystemMatrix_getGlobalSize (const Paso_SystemMatrix *A)
double Paso_SystemMatrix_getSparsity (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getNumOutput (Paso_SystemMatrix *A)
index_tPaso_SystemMatrix_borrowMainDiagonalPointer (Paso_SystemMatrix *A_p)
void Paso_SystemMatrix_makeZeroRowSums (Paso_SystemMatrix *A_p, double *left_over)
void Paso_SystemMatrix_copyBlockFromMainDiagonal (Paso_SystemMatrix *A_p, double *out)
void Paso_SystemMatrix_copyBlockToMainDiagonal (Paso_SystemMatrix *A_p, const double *in)
void Paso_SystemMatrix_copyFromMainDiagonal (Paso_SystemMatrix *A_p, double *out)
void Paso_SystemMatrix_copyToMainDiagonal (Paso_SystemMatrix *A_p, const double *in)
void Paso_SystemMatrix_setPreconditioner (Paso_SystemMatrix *A, Paso_Options *options)
void Paso_SystemMatrix_solvePreconditioner (Paso_SystemMatrix *A, double *x, double *b)
void Paso_SystemMatrix_freePreconditioner (Paso_SystemMatrix *A)

Function Documentation

Paso_SystemMatrix* Paso_SystemMatrix_alloc ( Paso_SystemMatrixType  type,
Paso_SystemMatrixPattern pattern,
int  row_block_size,
int  col_block_size,
const bool_t  patternIsUnrolled 
)

References Paso_SystemMatrix::balance_vector, Paso_SystemMatrix::block_size, Paso_SystemMatrix::col_block_size, Paso_SystemMatrixPattern::col_connector, Paso_SystemMatrix::col_coupleBlock, Paso_SystemMatrixPattern::col_couplePattern, Paso_SystemMatrix::col_coupler, Paso_SystemMatrix::col_distribution, Esys_checkPtr(), Esys_MPIInfo_getReference(), Esys_noError(), Esys_resetError(), Esys_setError(), FALSE, Paso_SystemMatrix::global_id, Paso_SystemMatrixPattern::input_distribution, Paso_SystemMatrix::is_balanced, Paso_SystemMatrix::logical_col_block_size, Paso_SystemMatrix::logical_row_block_size, Paso_SystemMatrix::mainBlock, Paso_SystemMatrixPattern::mainPattern, MATRIX_FORMAT_BLK1, MATRIX_FORMAT_CSC, MATRIX_FORMAT_DEFAULT, MATRIX_FORMAT_DIAGONAL_BLOCK, MATRIX_FORMAT_OFFSET1, MATRIX_FORMAT_TRILINOS_CRS, MAX, MEMALLOC, MIN, Paso_SystemMatrixPattern::mpi_info, Paso_SystemMatrix::mpi_info, Paso_SparseMatrix::numCols, Paso_SparseMatrix::numRows, Paso_SystemMatrixPattern::output_distribution, Paso_Coupler_alloc(), Paso_Distribution_getReference(), PASO_PASO, Paso_SparseMatrix_alloc(), Paso_SystemMatrix_free(), Paso_SystemMatrixPattern_getReference(), Paso_SystemMatrixPattern_unrollBlocks(), Paso_TRILINOS_alloc(), Paso_SystemMatrix::pattern, Paso_SystemMatrix::reference_counter, Paso_SystemMatrix::remote_coupleBlock, Paso_SystemMatrix::row_block_size, Paso_SystemMatrixPattern::row_connector, Paso_SystemMatrix::row_coupleBlock, Paso_SystemMatrixPattern::row_couplePattern, Paso_SystemMatrix::row_coupler, Paso_SystemMatrix::row_distribution, Paso_SystemMatrix::solver_p, Paso_SystemMatrix::solver_package, Paso_SystemMatrix::trilinos_data, TRUE, Paso_SystemMatrixPattern::type, Paso_SystemMatrix::type, TYPE_ERROR, and XNOR.

Referenced by dudley::MeshAdapter::newSystemMatrix(), finley::MeshAdapter::newSystemMatrix(), Paso_FCT_FluxLimiter_alloc(), Paso_FCT_setLowOrderOperator(), Paso_Preconditioner_AMG_buildInterpolationOperator(), Paso_Preconditioner_AMG_buildInterpolationOperatorBlock(), Paso_Preconditioner_AMG_getProlongation(), Paso_Preconditioner_AMG_getRestriction(), Paso_SystemMatrix_loadMM_toCSC(), Paso_SystemMatrix_loadMM_toCSR(), and Paso_TransportProblem_alloc().

void Paso_SystemMatrix_copyBlockToMainDiagonal ( Paso_SystemMatrix A_p,
const double *  in 
)
void Paso_SystemMatrix_copyFromMainDiagonal ( Paso_SystemMatrix A_p,
double *  out 
)
void Paso_SystemMatrix_copyToMainDiagonal ( Paso_SystemMatrix A_p,
const double *  in 
)
void Paso_SystemMatrix_makeZeroRowSums ( Paso_SystemMatrix A_p,
double *  left_over 
)
void Paso_SystemMatrix_solvePreconditioner ( Paso_SystemMatrix A,
double *  x,
double *  b 
)
void Paso_SystemMatrix_startColCollect ( Paso_SystemMatrix A,
const double *  in 
)
void Paso_SystemMatrix_startCollect ( Paso_SystemMatrix A,
const double *  in 
)
void Paso_SystemMatrix_startRowCollect ( Paso_SystemMatrix A,
const double *  in 
)