42 #ifndef EPETRAEXT_BLOCKJACOBI_LINEARPROBLEM_H 43 #define EPETRAEXT_BLOCKJACOBI_LINEARPROBLEM_H 49 class Epetra_LinearProblem;
50 class Epetra_VbrMatrix;
51 class Epetra_SerialDenseSVD;
52 class Epetra_SerialDenseMatrix;
66 bool removeDiag =
false )
70 thresholding_(thresholding),
73 removeDiag_(removeDiag),
82 void RThresh(
double val ) { rthresh_ = val; }
90 const int thresholding_;
92 const bool removeDiag_;
94 Epetra_LinearProblem * NewProblem_;
95 Epetra_VbrMatrix * NewMatrix_;
97 std::vector<Epetra_SerialDenseMatrix**> VbrBlocks_;
98 std::vector<int> VbrBlockCnt_;
99 std::vector<int> VbrBlockDim_;
100 std::vector<int*> VbrBlockIndices_;
102 std::vector<Epetra_SerialDenseSVD*> SVDs_;
103 std::vector<Epetra_SerialDenseMatrix*> Inverses_;
104 std::vector<Epetra_SerialDenseMatrix*> RHSBlocks_;
111 #endif //EPETRAEXT_BLOCKJACOBI_LINEARPROBLEM_H
bool fwd()
Forward transfer of data from orig object input in the operator() method call to the new object creat...
bool rvs()
Reverse transfer of data from new object created in the operator() method call to the orig object inp...
EpetraExt::BlockCrsMatrix: A class for constructing a distributed block matrix.
~LinearProblem_BlockJacobi()
LinearProblem_BlockJacobi(int verbose=0, int thresholding=0, double rthresh=0.0, double athresh=0.0, bool removeDiag=false)
NewTypeRef operator()(OriginalTypeRef orig)