|
typedef IterativeSolver< TSparseSpaceType, TDenseSpaceType, TPreconditionerType, TReordererType > | BaseType |
|
typedef TSparseSpaceType::MatrixType | SparseMatrixType |
|
typedef TSparseSpaceType::VectorType | VectorType |
|
typedef TDenseSpaceType::MatrixType | DenseMatrixType |
|
typedef LinearSolver< UblasSpace< double, CompressedMatrix, Vector >, UblasSpace< double, Matrix, Vector >, Reorderer< UblasSpace< double, CompressedMatrix, Vector >, UblasSpace< double, Matrix, Vector > > > | BaseType |
|
typedef TSparseSpaceType::MatrixType | SparseMatrixType |
|
typedef TSparseSpaceType::VectorType | VectorType |
|
typedef TDenseSpaceType::MatrixType | DenseMatrixType |
|
typedef Preconditioner< UblasSpace< double, CompressedMatrix, Vector >, UblasSpace< double, Matrix, Vector > > | PreconditionerType |
|
typedef TSparseSpaceType::IndexType | IndexType |
| The index type definition to be consistent. More...
|
|
typedef TSparseSpaceType::MatrixType | SparseMatrixType |
|
typedef TSparseSpaceType::MatrixPointerType | SparseMatrixPointerType |
|
typedef TSparseSpaceType::VectorType | VectorType |
|
typedef TSparseSpaceType::VectorPointerType | VectorPointerType |
|
typedef TDenseSpaceType::MatrixType | DenseMatrixType |
|
typedef TDenseSpaceType::VectorType | DenseVectorType |
|
typedef std::size_t | SizeType |
|
typedef TSparseSpaceType::IndexType | IndexType |
| The index type definition to be consistent. More...
|
|
|
| KRATOS_CLASS_POINTER_DEFINITION (EigensystemSolver) |
|
| EigensystemSolver (Parameters param) |
|
| ~EigensystemSolver () override |
|
void | Solve (SparseMatrixType &rK, SparseMatrixType &rM, VectorType &rEigenvalues, DenseMatrixType &rEigenvectors) override |
|
void | PrintInfo (std::ostream &rOStream) const override |
|
void | PrintData (std::ostream &rOStream) const override |
|
| IterativeSolver () |
| Default constructor. More...
|
|
| IterativeSolver (double NewTolerance) |
|
| IterativeSolver (double NewTolerance, unsigned int NewMaxIterationsNumber) |
|
| IterativeSolver (double NewTolerance, unsigned int NewMaxIterationsNumber, typename TPreconditionerType::Pointer pNewPreconditioner) |
|
| IterativeSolver (Parameters settings, typename TPreconditionerType::Pointer pNewPreconditioner=Kratos::make_shared< Preconditioner< UblasSpace< double, CompressedMatrix, Vector >, UblasSpace< double, Matrix, Vector > > >()) |
|
| IterativeSolver (const IterativeSolver &Other) |
| Copy constructor. More...
|
|
| ~IterativeSolver () override |
| Destructor. More...
|
|
IterativeSolver & | operator= (const IterativeSolver &Other) |
| Assignment operator. More...
|
|
void | InitializeSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) override |
|
void | FinalizeSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) override |
|
void | Clear () override |
|
bool | AdditionalPhysicalDataIsNeeded () override |
|
void | ProvideAdditionalData (SparseMatrixType &rA, VectorType &rX, VectorType &rB, typename ModelPart::DofsArrayType &rdof_set, ModelPart &r_model_part) override |
|
virtual TPreconditionerType::Pointer | GetPreconditioner (void) |
|
virtual const TPreconditionerType::Pointer | GetPreconditioner (void) const |
|
virtual void | SetPreconditioner (typename TPreconditionerType::Pointer pNewPreconditioner) |
|
virtual void | SetMaxIterationsNumber (unsigned int NewMaxIterationsNumber) |
|
virtual IndexType | GetMaxIterationsNumber () |
|
virtual void | SetIterationsNumber (unsigned int NewIterationNumber) |
|
IndexType | GetIterationsNumber () override |
|
void | SetTolerance (double NewTolerance) override |
| This method allows to set the tolerance in the linear solver. More...
|
|
double | GetTolerance () override |
| This method allows to get the tolerance in the linear solver. More...
|
|
virtual void | SetResidualNorm (double NewResidualNorm) |
|
virtual double | GetResidualNorm () |
|
virtual bool | IterationNeeded () |
|
virtual bool | IsConverged () |
|
std::string | Info () const override |
| Turn back information as a string. 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...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (IterativeSolver) |
| Pointer definition of IterativeSolver. 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 | PerformSolutionStep (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
|
virtual bool | Solve (SparseMatrixType &rA, VectorType &rX, VectorType &rB) |
|
virtual bool | Solve (SparseMatrixType &rA, DenseMatrixType &rX, DenseMatrixType &rB) |
|
virtual void | Solve (SparseMatrixType &K, SparseMatrixType &M, DenseVectorType &Eigenvalues, DenseMatrixType &Eigenvectors) |
|
virtual TReordererType::Pointer | GetReorderer () |
|
virtual void | SetReorderer (typename TReordererType::Pointer pNewReorderer) |
|
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...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (LinearSolver) |
| Pointer definition of LinearSolver. More...
|
|
template<class TSparseSpaceType = UblasSpace<double, CompressedMatrix, Vector>, class TDenseSpaceType = UblasSpace<double, Matrix, Vector>, class TPreconditionerType = Preconditioner<TSparseSpaceType, TDenseSpaceType>, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
void Kratos::EigensystemSolver< TSparseSpaceType, TDenseSpaceType, TPreconditionerType, TReordererType >::PrintInfo |
( |
std::ostream & |
rOStream | ) |
const |
|
inlineoverridevirtual |
template<class TSparseSpaceType = UblasSpace<double, CompressedMatrix, Vector>, class TDenseSpaceType = UblasSpace<double, Matrix, Vector>, class TPreconditionerType = Preconditioner<TSparseSpaceType, TDenseSpaceType>, class TReordererType = Reorderer<TSparseSpaceType, TDenseSpaceType>>
Solve the generalized eigenvalue problem using an eigen subspace iteration method The implementation follows the code from K. J. Bathe, Finite Element Procedures second Edition, ISBN-13: 978-0979004957 page 954 and following The naming of the variables is chose according to the reference.
K is a symmetric matrix. M is a symmetric positive-definite matrix.