9 #ifndef _fei_MatrixTraits_LinSysCore_hpp_
10 #define _fei_MatrixTraits_LinSysCore_hpp_
16 #include <fei_LinearSystemCore.hpp>
26 {
return(
"LinearSystemCore"); }
30 return lsc->getMatrixBeginPointer();
35 return lsc->getMatrixOffset(row,col);
74 int row,
int len,
double* coefs,
int* indices)
77 return( lsc->
getMatrixRow(row, coefs, indices, len, dummy) );
83 int numRows,
const int* rows,
84 int numCols,
const int* cols,
85 const double*
const* values,
90 numCols, cols, values) );
94 numCols, cols, values) );
117 #endif // _fei_MatrixTraits_LinSysCore_hpp_
virtual int sumIntoSystemMatrix(int numPtRows, const int *ptRows, int numPtCols, const int *ptCols, int numBlkRows, const int *blkRows, int numBlkCols, const int *blkCols, const double *const *values)=0
static const char * typeName()
virtual int resetMatrix(double s)=0
static int matvec(T *A, fei::Vector *x, fei::Vector *y)
virtual int getMatrixRowLength(int row, int &length)=0
static int getRowLength(T *mat, int row, int &length)
static int getNumLocalRows(T *mat, int &numRows)
virtual int putIntoSystemMatrix(int numPtRows, const int *ptRows, int numPtCols, const int *ptCols, const double *const *values)=0
virtual int matrixLoadComplete()=0
static int setValues(T *mat, double scalar)
static int copyOutRow(T *mat, int row, int len, double *coefs, int *indices)
virtual int getMatrixRow(int row, double *coefs, int *indices, int len, int &rowLength)=0
static int putValuesIn(T *mat, int numRows, const int *rows, int numCols, const int *cols, const double *const *values, bool sum_into)
static int globalAssemble(T *A)