#include <DSSolver.h>
Public Types | |
enum | eState { Initialized = 1, Allocated = 2, Factorized = 3, ErrorInMCN = -1 } |
Public Member Functions | |
virtual BOOL | AddNumbers (double alfa, SparseMatrixF *smtx)=0 |
virtual int | CG (double *b, double *x, double epsilon, int max_iter)=0 |
virtual long | Close ()=0 |
virtual void | condense (double *a, double *lhs, double *rhs, long tc)=0 |
virtual void | Dispose ()=0 |
virtual BOOL | Factorize ()=0 |
virtual void | GetA12block (double *pA12)=0 |
virtual double | GetFactorizationError ()=0 |
virtual SparseMatrixF * | GetSparseMatrix ()=0 |
virtual long | Initialize (unsigned char run_code, eDSSolverType solverType=eDSSFactorizationLDLT, eDSMatrixType matrixType=eDSSparseMatrix)=0 |
virtual BOOL | IsAllocated ()=0 |
virtual BOOL | IsFactorized ()=0 |
virtual BOOL | IsInitialized ()=0 |
virtual BOOL | LoadMatrix (SparseMatrixF *sm, unsigned char block_size)=0 |
virtual BOOL | LoadMatrix (ULONG neq, unsigned char block_size, double *a, ULONG *ci, ULONG *adr)=0 |
virtual BOOL | LoadMCN (ULONG n_blocks, unsigned char block_size, long *mcn, BOOL bIsSchur)=0 |
virtual BOOL | LoadNumbers (SparseMatrixF *sm)=0 |
virtual void | LoadZeros ()=0 |
virtual void | MulMatrixByVector (double *b, double *c)=0 |
virtual int | PreCG (double *b, double *x, double epsilon, int max_iter)=0 |
virtual BOOL | PreFactorize ()=0 |
virtual BOOL | ReFactorize ()=0 |
virtual BOOL | ScaleMatrix (double alfa)=0 |
virtual BOOL | SetMatrixPattern (SparseMatrixF *smt, unsigned char block_size)=0 |
virtual void | SetMT (MathTracer *MT)=0 |
virtual BOOL | SetOrderingType (Ordering::Type otype)=0 |
virtual BOOL | Solve (double *r, double *f)=0 |
virtual | ~ISolver () |
Definition at line 36 of file DSSolver.h.
enum eState |
Definition at line 160 of file DSSolver.h.
virtual ~ISolver | ( | ) | [inline, virtual] |
Definition at line 117 of file DSSolver.h.
virtual BOOL AddNumbers | ( | double | alfa, | |
SparseMatrixF * | smtx | |||
) | [pure virtual] |
Implemented in DSSolver.
virtual int CG | ( | double * | b, | |
double * | x, | |||
double | epsilon, | |||
int | max_iter | |||
) | [pure virtual] |
Implemented in DSSolver.
virtual long Close | ( | ) | [pure virtual] |
Implemented in DSSolver.
virtual void condense | ( | double * | a, | |
double * | lhs, | |||
double * | rhs, | |||
long | tc | |||
) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::condense().
virtual void Dispose | ( | ) | [pure virtual] |
Implemented in DSSolver.
virtual BOOL Factorize | ( | ) | [pure virtual] |
Implemented in DSSolver.
virtual void GetA12block | ( | double * | pA12 | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::a12block().
virtual double GetFactorizationError | ( | ) | [pure virtual] |
Implemented in DSSolver.
virtual SparseMatrixF* GetSparseMatrix | ( | ) | [pure virtual] |
Implemented in DSSolver.
virtual long Initialize | ( | unsigned char | run_code, | |
eDSSolverType | solverType = eDSSFactorizationLDLT , |
|||
eDSMatrixType | matrixType = eDSSparseMatrix | |||
) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::initiate().
virtual BOOL IsAllocated | ( | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::prepmat2().
virtual BOOL IsFactorized | ( | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::back_substitution(), gmatrix::decompose_matrix(), and gmatrix::solve_system().
virtual BOOL IsInitialized | ( | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::initiate().
virtual BOOL LoadMatrix | ( | SparseMatrixF * | sm, | |
unsigned char | block_size | |||
) | [pure virtual] |
Implemented in DSSolver.
virtual BOOL LoadMatrix | ( | ULONG | neq, | |
unsigned char | block_size, | |||
double * | a, | |||
ULONG * | ci, | |||
ULONG * | adr | |||
) | [pure virtual] |
virtual BOOL LoadMCN | ( | ULONG | n_blocks, | |
unsigned char | block_size, | |||
long * | mcn, | |||
BOOL | bIsSchur | |||
) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::initiate().
virtual BOOL LoadNumbers | ( | SparseMatrixF * | sm | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::prepmat2().
virtual void LoadZeros | ( | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::initiate().
virtual void MulMatrixByVector | ( | double * | b, | |
double * | c | |||
) | [pure virtual] |
Implemented in DSSolver.
virtual int PreCG | ( | double * | b, | |
double * | x, | |||
double | epsilon, | |||
int | max_iter | |||
) | [pure virtual] |
Implemented in DSSolver.
virtual BOOL PreFactorize | ( | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::prepmat2().
virtual BOOL ReFactorize | ( | ) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::back_substitution(), gmatrix::decompose_matrix(), and gmatrix::solve_system().
virtual BOOL ScaleMatrix | ( | double | alfa | ) | [pure virtual] |
Implemented in DSSolver.
virtual BOOL SetMatrixPattern | ( | SparseMatrixF * | smt, | |
unsigned char | block_size | |||
) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::initiate().
virtual void SetMT | ( | MathTracer * | MT | ) | [pure virtual] |
Implemented in DSSolver.
virtual BOOL SetOrderingType | ( | Ordering::Type | otype | ) | [pure virtual] |
Implemented in DSSolver.
virtual BOOL Solve | ( | double * | r, | |
double * | f | |||
) | [pure virtual] |
Implemented in DSSolver.
Referenced by gmatrix::back_substitution(), symcomprow::cg_prec(), and gmatrix::solve_system().