Geophysical Inversion and Modelling Library v1.5.4
Loading...
Searching...
No Matches
GIMLI::LinSolver Class Reference
+ Inheritance diagram for GIMLI::LinSolver:
+ Collaboration diagram for GIMLI::LinSolver:

Public Member Functions

 LinSolver (bool verbose=false)
 
 LinSolver (RSparseMatrix &S, bool verbose=false)
 
 LinSolver (RSparseMapMatrix &S, bool verbose=false)
 
 LinSolver (CSparseMatrix &S, bool verbose=false)
 
 LinSolver (RSparseMatrix &S, SolverType solverType, bool verbose=false)
 
 LinSolver (CSparseMatrix &S, SolverType solverType, bool verbose=false)
 
RVector operator() (const RVector &rhs)
 
CVector operator() (const CVector &rhs)
 
void solve (const RVector &rhs, RVector &solution)
 
void solve (const CVector &rhs, CVector &solution)
 
RVector solve (const RVector &rhs)
 
CVector solve (const CVector &rhs)
 
void setSolverType (SolverType solverType=AUTOMATIC)
 
void setMatrix (RSparseMatrix &S, int stype=-2)
 
void setMatrix (CSparseMatrix &S, int stype=-2)
 
SolverType solverType () const
 
std::string solverName () const
 
std::string name () const
 
- Public Member Functions inherited from GIMLI::SolverWrapper
 SolverWrapper (bool verbose=false)
 
virtual void setMatrix (const RSparseMatrix &S)
 
virtual void setMatrix (const CSparseMatrix &S)
 
std::string name () const
 

Protected Member Functions

void init_ ()
 
void initialize_ (RSparseMatrix &S, int stype)
 
void initialize_ (CSparseMatrix &S, int stype)
 

Protected Attributes

MatrixBasecacheMatrix_
 
SolverType solverType_
 
SolverWrappersolver_
 
uint rows_
 
uint cols_
 
- Protected Attributes inherited from GIMLI::SolverWrapper
std::string name_
 
bool dummy_
 
bool verbose_
 
bool isComplex_
 
uint dim_
 
long nVals_
 
double dropTol_
 
double tolerance_
 
double maxiter_
 

Member Function Documentation

◆ setMatrix() [1/2]

void GIMLI::LinSolver::setMatrix ( CSparseMatrix & S,
int stype = -2 )

Verbose level = -1, use Linsolver.verbose().

References setMatrix().

◆ setMatrix() [2/2]

void GIMLI::LinSolver::setMatrix ( RSparseMatrix & S,
int stype = -2 )

Forwarded to the wrapper to overwrite settings within S. stype =-2 -> use S.stype()

References setMatrix().

Referenced by setMatrix(), and setMatrix().

◆ solve() [1/2]

void GIMLI::LinSolver::solve ( const CVector & rhs,
CVector & solution )
virtual

Reimplemented from GIMLI::SolverWrapper.

◆ solve() [2/2]

void GIMLI::LinSolver::solve ( const RVector & rhs,
RVector & solution )
virtual

Implements GIMLI::SolverWrapper.