|
| KRATOS_CLASS_POINTER_DEFINITION (AMGCL_NS_Solver) |
|
| AMGCL_NS_Solver (Parameters rParameters) |
|
| ~AMGCL_NS_Solver () override |
|
bool | Solve (SparseMatrixType &rA, VectorType &rX, VectorType &rB) override |
|
std::tuple< size_t, double > | scalar_solve (SparseMatrixType &rA, VectorType &rX, VectorType &rB) const |
|
template<int UBlockSize> |
std::tuple< size_t, double > | block_solve (SparseMatrixType &rA, VectorType &rX, VectorType &rB) const |
|
bool | Solve (SparseMatrixType &rA, DenseMatrixType &rX, DenseMatrixType &rB) override |
|
void | PrintInfo (std::ostream &rOStream) const override |
|
void | PrintData (std::ostream &rOStream) const override |
|
bool | AdditionalPhysicalDataIsNeeded () override |
|
void | ProvideAdditionalData (SparseMatrixType &rA, VectorType &rX, VectorType &rB, typename ModelPart::DofsArrayType &rDofSet, ModelPart &rModelPart) override |
|
| LinearSolver () |
| Default constructor. More...
|
|
| LinearSolver (Reorderer< TSparseSpaceType, TDenseSpaceType > NewReorderer) |
| Constructor with specific reorderer. More...
|
|
| LinearSolver (const LinearSolver &Other) |
| Copy constructor. More...
|
|
virtual | ~LinearSolver () |
| Destructor. More...
|
|
LinearSolver & | operator= (const LinearSolver &Other) |
| Assignment operator. More...
|
|
virtual void | Initialize (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
|
virtual void | InitializeSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
|
virtual void | PerformSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
|
virtual void | FinalizeSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
|
virtual void | Clear () |
|
virtual void | Solve (SparseMatrixType &K, SparseMatrixType &M, DenseVectorType &Eigenvalues, DenseMatrixType &Eigenvectors) |
|
virtual TReordererType::Pointer | GetReorderer () |
|
virtual void | SetReorderer (typename TReordererType::Pointer pNewReorderer) |
|
virtual void | SetTolerance (double NewTolerance) |
| This method allows to set the tolerance in the linear solver. More...
|
|
virtual double | GetTolerance () |
| This method allows to get the tolerance in the linear solver. More...
|
|
virtual IndexType | GetIterationsNumber () |
|
virtual bool | IsConsistent (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
| This method checks if the dimensions of the system of equations are consistent. More...
|
|
virtual bool | IsConsistent (SparseMatrixType &rA, DenseMatrixType &rX, DenseMatrixType &rB) |
| This method checks if the dimensions of the system of equations are consistent (dense matrix for RHS and unknowns version) More...
|
|
virtual bool | IsNotConsistent (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
| This method checks if the dimensions of the system of equations are not consistent. More...
|
|
virtual bool | IsNotConsistent (SparseMatrixType &rA, DenseMatrixType &rX, DenseMatrixType &rB) |
| This method checks if the dimensions of the system of equations are not consistent. More...
|
|
virtual std::string | Info () const |
| Turn back information as a string. More...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (LinearSolver) |
| Pointer definition of LinearSolver. More...
|
|
template<class TSparseSpaceType , class TDenseSpaceType , class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
Some solvers may require a minimum degree of knowledge of the structure of the matrix. To make an example when solving a mixed u-p problem, it is important to identify the row associated to v and p. another example is the automatic prescription of rotation null-space for smoothed-aggregation solvers which require knowledge on the spatial position of the nodes associated to a given dof. This function tells if the solver requires such data
Reimplemented from Kratos::LinearSolver< TSparseSpaceType, TDenseSpaceType, Reorderer< TSparseSpaceType, TDenseSpaceType > >.
template<class TSparseSpaceType , class TDenseSpaceType , class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
Some solvers may require a minimum degree of knowledge of the structure of the matrix. To make an example when solving a mixed u-p problem, it is important to identify the row associated to v and p. another example is the automatic prescription of rotation null-space for smoothed-aggregation solvers which require knowledge on the spatial position of the nodes associated to a given dof. This function is the place to eventually provide such data
Reimplemented from Kratos::LinearSolver< TSparseSpaceType, TDenseSpaceType, Reorderer< TSparseSpaceType, TDenseSpaceType > >.