SystemMatrix.h File Reference

#include "Common.h"
#include "SparseMatrix.h"
#include "SystemMatrixPattern.h"
#include "Options.h"
#include "Paso_MPI.h"
#include "Paso.h"
#include "Coupler.h"

Go to the source code of this file.

Classes

struct  Paso_SystemMatrix

Defines

#define MATRIX_FORMAT_DEFAULT   0
#define MATRIX_FORMAT_CSC   1
#define MATRIX_FORMAT_SYM   2
#define MATRIX_FORMAT_BLK1   4
#define MATRIX_FORMAT_OFFSET1   8
#define MATRIX_FORMAT_TRILINOS_CRS   16

Typedefs

typedef int Paso_SystemMatrixType

Functions

Paso_SystemMatrixPaso_SystemMatrix_alloc (Paso_SystemMatrixType, Paso_SystemMatrixPattern *, dim_t, dim_t, const bool_t patternIsUnrolled)
Paso_SystemMatrixPaso_SystemMatrix_getReference (Paso_SystemMatrix *)
void Paso_SystemMatrix_free (Paso_SystemMatrix *)
void Paso_SystemMatrix_MatrixVector (const double alpha, Paso_SystemMatrix *A, const double *in, const double beta, double *out)
void Paso_SystemMatrix_MatrixVector_CSR_OFFSET0 (double alpha, Paso_SystemMatrix *A, const double *in, const double beta, double *out)
void Paso_solve (Paso_SystemMatrix *A, double *out, double *in, Paso_Options *options)
void Paso_solve_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)
void Paso_SystemMatrix_nullifyRowsAndCols (Paso_SystemMatrix *A, double *mask_row, double *mask_col, double main_diagonal_value)
double * Paso_SystemMatrix_borrowNormalization (Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getTotalNumRows (const Paso_SystemMatrix *A)
dim_t Paso_SystemMatrix_getTotalNumCols (const Paso_SystemMatrix *)
dim_t Paso_SystemMatrix_getGlobalNumRows (Paso_SystemMatrix *)
dim_t Paso_SystemMatrix_getGlobalNumCols (Paso_SystemMatrix *)
void Paso_SystemMatrix_saveMM (Paso_SystemMatrix *, char *)
void Paso_SystemMatrix_saveHB (Paso_SystemMatrix *, char *)
Paso_SystemMatrixPaso_SystemMatrix_loadMM_toCSR (char *)
Paso_SystemMatrixPaso_SystemMatrix_loadMM_toCSC (char *)
void Paso_RHS_loadMM_toCSR (char *fileName_p, double *b, dim_t size)
void Paso_SystemMatrix_setDefaults (Paso_Options *)
int Paso_SystemMatrix_getSystemMatrixTypeId (const index_t solver, const index_t preconditioner, const index_t package, const bool_t symmetry, Paso_MPIInfo *mpi_info)
dim_t Paso_SystemMatrix_getNumOutput (Paso_SystemMatrix *A)
void Paso_SystemMatrix_setValues (Paso_SystemMatrix *, double)
void Paso_SystemMatrix_add (Paso_SystemMatrix *, dim_t, index_t *, dim_t, dim_t, index_t *, dim_t, double *)
void Paso_SystemMatrix_rowSum (Paso_SystemMatrix *A, double *row_sum)
void Paso_SystemMatrix_nullifyRows (Paso_SystemMatrix *A, double *mask_row, double main_diagonal_value)
void Paso_SparseMatrix_nullifyRows_CSR (Paso_SparseMatrix *, double *, double)


Define Documentation

#define MATRIX_FORMAT_BLK1   4

#define MATRIX_FORMAT_CSC   1

#define MATRIX_FORMAT_DEFAULT   0

#define MATRIX_FORMAT_OFFSET1   8

#define MATRIX_FORMAT_SYM   2

#define MATRIX_FORMAT_TRILINOS_CRS   16


Typedef Documentation

typedef int Paso_SystemMatrixType


Function Documentation

void Paso_RHS_loadMM_toCSR ( char *  fileName_p,
double *  b,
dim_t  size 
)

void Paso_solve ( Paso_SystemMatrix A,
double *  out,
double *  in,
Paso_Options options 
)

void Paso_solve_free ( Paso_SystemMatrix in  ) 

void Paso_SparseMatrix_nullifyRows_CSR ( Paso_SparseMatrix ,
double *  ,
double   
)

void Paso_SystemMatrix_add ( Paso_SystemMatrix ,
dim_t  ,
index_t ,
dim_t  ,
dim_t  ,
index_t ,
dim_t  ,
double *   
)

Paso_SystemMatrix* Paso_SystemMatrix_alloc ( Paso_SystemMatrixType  ,
Paso_SystemMatrixPattern ,
dim_t  ,
dim_t  ,
const bool_t  patternIsUnrolled 
)

References 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, FALSE, Paso_SystemMatrixPattern::input_distribution, 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_OFFSET1, MATRIX_FORMAT_SYM, MATRIX_FORMAT_TRILINOS_CRS, MEMALLOC, Paso_SystemMatrixPattern::mpi_info, Paso_SystemMatrix::mpi_info, Paso_SystemMatrix::normalizer, Paso_SystemMatrix::normalizer_is_valid, Paso_SparseMatrix::numCols, Paso_SparseMatrix::numRows, Paso_SystemMatrixPattern::output_distribution, Paso_checkPtr(), Paso_Coupler_alloc(), Paso_Distribution_getReference(), Paso_MPIInfo_getReference(), Paso_noError(), PASO_PASO, Paso_resetError(), Paso_setError(), Paso_SparseMatrix_alloc(), Paso_SystemMatrix_free(), Paso_SystemMatrixPattern_getReference(), Paso_SystemMatrixPattern_unrollBlocks(), Paso_TRILINOS_alloc(), Paso_SystemMatrix::pattern, PATTERN_FORMAT_DEFAULT, PATTERN_FORMAT_OFFSET1, Paso_SystemMatrix::reference_counter, 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, Paso_SystemMatrix::solver_package, Paso_SystemMatrix::trilinos_data, TRUE, Paso_SystemMatrix::type, Paso_SystemMatrixPattern::type, TYPE_ERROR, and XNOR.

Referenced by finley::MeshAdapter::newSystemMatrix(), Paso_FCTransportProblem_alloc(), Paso_FCTransportProblem_setLowOrderOperator(), Paso_SolverFCT_solve(), Paso_SystemMatrix_loadMM_toCSC(), and Paso_SystemMatrix_loadMM_toCSR().

double* Paso_SystemMatrix_borrowNormalization ( Paso_SystemMatrix A  ) 

double* Paso_SystemMatrix_finishColCollect ( Paso_SystemMatrix A  ) 

double* Paso_SystemMatrix_finishCollect ( Paso_SystemMatrix A  ) 

double* Paso_SystemMatrix_finishRowCollect ( Paso_SystemMatrix A  ) 

void Paso_SystemMatrix_free ( Paso_SystemMatrix  ) 

dim_t Paso_SystemMatrix_getGlobalNumCols ( Paso_SystemMatrix  ) 

dim_t Paso_SystemMatrix_getGlobalNumRows ( Paso_SystemMatrix  ) 

dim_t Paso_SystemMatrix_getNumOutput ( Paso_SystemMatrix A  ) 

Paso_SystemMatrix* Paso_SystemMatrix_getReference ( Paso_SystemMatrix  ) 

int Paso_SystemMatrix_getSystemMatrixTypeId ( const index_t  solver,
const index_t  preconditioner,
const index_t  package,
const bool_t  symmetry,
Paso_MPIInfo mpi_info 
)

dim_t Paso_SystemMatrix_getTotalNumCols ( const Paso_SystemMatrix  ) 

dim_t Paso_SystemMatrix_getTotalNumRows ( const Paso_SystemMatrix A  ) 

Paso_SystemMatrix* Paso_SystemMatrix_loadMM_toCSC ( char *   ) 

Paso_SystemMatrix* Paso_SystemMatrix_loadMM_toCSR ( char *   ) 

void Paso_SystemMatrix_MatrixVector ( const double  alpha,
Paso_SystemMatrix A,
const double *  in,
const double  beta,
double *  out 
)

void Paso_SystemMatrix_MatrixVector_CSR_OFFSET0 ( double  alpha,
Paso_SystemMatrix A,
const double *  in,
const double  beta,
double *  out 
)

void Paso_SystemMatrix_nullifyRows ( Paso_SystemMatrix A,
double *  mask_row,
double  main_diagonal_value 
)

void Paso_SystemMatrix_nullifyRowsAndCols ( Paso_SystemMatrix A,
double *  mask_row,
double *  mask_col,
double  main_diagonal_value 
)

void Paso_SystemMatrix_rowSum ( Paso_SystemMatrix A,
double *  row_sum 
)

void Paso_SystemMatrix_saveHB ( Paso_SystemMatrix ,
char *   
)

void Paso_SystemMatrix_saveMM ( Paso_SystemMatrix ,
char *   
)

void Paso_SystemMatrix_setDefaults ( Paso_Options  ) 

void Paso_SystemMatrix_setValues ( Paso_SystemMatrix ,
double   
)

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 
)


Generated on Mon Aug 10 10:04:44 2009 for ESYS13 by  doxygen 1.5.6