6 #ifndef TPZSTEPSOLVER_H 7 #define TPZSTEPSOLVER_H 30 void SetSOR(
const int64_t numiterations,
const REAL overrelax,
const REAL
tol,
const int64_t FromCurrent);
32 void SetSSOR(
const int64_t numiterations,
const REAL overrelax,
const REAL
tol,
const int64_t FromCurrent);
34 void SetJacobi(
const int64_t numiterations,
const REAL
tol,
const int64_t FromCurrent);
void SetSOR(const int64_t numiterations, const REAL overrelax, const REAL tol, const int64_t FromCurrent)
int ClassId() const override
Serialization methods.
virtual TPZSolver< TVar > * Clone() const override
Clones the current object returning a pointer of type TPZSolver.
virtual void UpdateFrom(TPZAutoPointer< TPZMatrix< TVar > > matrix) override
Updates the values of the current matrix based on the values of the matrix.
void SetPreconditioner(TPZSolver< TVar > &solve)
Define the preconditioner as a solver object.
Defines a abstract class of solvers which will be used by matrix classes. Solver. ...
Defines step solvers class. Solver.
virtual void ResetMatrix() override
This method will reset the matrix associated with the solver.
Defines a class of matrix solvers. Solver.
virtual TPZMatrixSolver< TVar >::MSolver Solver() override
REAL GetTolerance() const
return the value of tolerance from the solver
void SetSSOR(const int64_t numiterations, const REAL overrelax, const REAL tol, const int64_t FromCurrent)
void Write(TPZStream &buf, int withclassid) const override
Writes this object to the TPZStream buffer. Include the classid if withclassid = true.
TPZSkylMatrix< REAL > matrix
void SetJacobi(const int64_t numiterations, const REAL tol, const int64_t FromCurrent)
std::list< int64_t > & Singular()
returns the equations for which the equations had zero pivot
void SetCG(const int64_t numiterations, const TPZMatrixSolver< TVar > &pre, const REAL tol, const int64_t FromCurrent)
MSolver
Defines a series of solvers available in PZ.
virtual void Decompose() override
Decompose the system of equations if a direct solver is used.
virtual void UpdateFrom(TPZAutoPointer< TPZMatrix< TVar > > matrix) override
Updates the values of the current matrix based on the values of the matrix.
Contains TPZMatrixclass which implements full matrix (using column major representation).
TPZMatrixSolver< TVar >::MSolver fSolver
void SetTolerance(REAL tol)
void SetBiCGStab(const int64_t numiterations, const TPZMatrixSolver< TVar > &pre, const REAL tol, const int64_t FromCurrent)
TPZStepSolver(TPZAutoPointer< TPZMatrix< TVar > > refmat=0)
Full matrix class. Matrix.
void Solve(const TPZFMatrix< TVar > &F, TPZFMatrix< TVar > &result, TPZFMatrix< TVar > *residual=0) override
Solves the system of linear equations.
int32_t Hash(std::string str)
int64_t fNumIterations
Number of iterations of last solve.
int64_t fMaxIterations
Maximum number of iterations.
TPZSolver< TVar > * PreConditioner()
access method to the preconditioner
int NumIterations()
Number of iterations of last solve.
Contains TPZSolver class which defines a abstract class of solvers which will be used by matrix class...
TPZSolver< TVar > * fPrecond
Solver using preconditioner matrix.
int ClassId() const override
Saveable specific methods.
Contains declaration of the abstract TPZStream class. TPZStream defines the interface for saving and ...
Defines the interface for saving and reading data. Persistency.
void Read(TPZStream &buf, void *context) override
read objects from the stream
void SetDirect(const DecomposeType decomp)
std::list< int64_t > fSingular
void ResetSolver()
reset the data structure of the solver object
DecomposeType
Defines decomposition type for any matrix classes.
void SetGMRES(const int64_t numiterations, const int numvectors, const TPZMatrixSolver< TVar > &pre, const REAL tol, const int64_t FromCurrent)
Root matrix class (abstract). Matrix.
This class implements a reference counter mechanism to administer a dynamically allocated object...