|
| | KRATOS_CLASS_POINTER_DEFINITION (EigenDenseDirectSolver) |
| |
| | EigenDenseDirectSolver () |
| |
| | EigenDenseDirectSolver (Parameters settings) |
| |
| | ~EigenDenseDirectSolver () override |
| |
| void | InitializeSolutionStep (MatrixType &rA, VectorType &rX, VectorType &rB) override |
| |
| void | PerformSolutionStep (MatrixType &rA, VectorType &rX, VectorType &rB) override |
| |
| bool | Solve (MatrixType &rA, VectorType &rX, VectorType &rB) override |
| |
| bool | Solve (MatrixType &rA, MatrixType &rX, MatrixType &rB) override |
| |
| void | PrintInfo (std::ostream &rOStream) const override |
| |
| void | PrintData (std::ostream &rOStream) const override |
| |
| | KRATOS_CLASS_POINTER_DEFINITION (DirectSolver) |
| | Counted pointer of DirectSolver. More...
|
| |
| | DirectSolver () |
| | Default constructor. More...
|
| |
| | DirectSolver (Parameters settings) |
| |
| | DirectSolver (const DirectSolver &Other) |
| | Copy constructor. More...
|
| |
| | ~DirectSolver () override |
| | Destructor. More...
|
| |
| void | PrintInfo (std::ostream &rOStream) const override |
| | Print information about this object. More...
|
| |
| void | PrintData (std::ostream &rOStream) const override |
| | Print object's data. More...
|
| |
| | LinearSolver () |
| | Default constructor. More...
|
| |
| | LinearSolver (TReordererType 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 | FinalizeSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
| |
| virtual void | Clear () |
| |
| virtual bool | Solve (SparseMatrixType &rA, DenseMatrixType &rX, DenseMatrixType &rB) |
| |
| virtual void | Solve (SparseMatrixType &K, SparseMatrixType &M, DenseVectorType &Eigenvalues, DenseMatrixType &Eigenvectors) |
| |
| virtual bool | AdditionalPhysicalDataIsNeeded () |
| |
| virtual void | ProvideAdditionalData (SparseMatrixType &rA, VectorType &rX, VectorType &rB, typename ModelPart::DofsArrayType &rDoFSet, ModelPart &rModelPart) |
| |
| 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 TSolverType , class TSparseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TDenseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
This function is designed to be called every time the coefficients change in the system that is, normally at the beginning of each solve. For example if we are implementing a direct solver, this is the place to do the factorization so that then the backward substitution can be performed effectively more than once
- Parameters
-
| rA | System matrix |
| rX | Solution vector |
| rB | Right hand side vector |
Reimplemented from Kratos::LinearSolver< TSparseSpaceType, TDenseSpaceType, TReordererType >.
template<class TSolverType , class TSparseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TDenseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
template<class TSolverType , class TSparseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TDenseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
template<class TSolverType , class TSparseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TDenseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
Multi solve method for solving a set of linear systems with same coefficient matrix. Solves the linear system AX=B and puts the result on SystemMatrix& rX.
- Parameters
-
| rA. | System matrix |
| rX. | Solution matrix. |
| rB. | Right hand side matrix. |
template<class TSolverType , class TSparseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TDenseSpaceType = typename SpaceType<typename TSolverType::Scalar>::Local, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>