![]() |
KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
Short class definition. More...
#include <gauss_seidel_linear_strategy.h>
Public Member Functions | |
Life Cycle | |
GaussSeidelLinearStrategy (ModelPart &model_part, typename TSchemeType::Pointer pScheme, typename TLinearSolver::Pointer pNewLinearSolver, typename TBuilderAndSolverType::Pointer pNewBuilderAndSolver, bool ReformDofSetAtEachStep=true, bool CalculateNormDxFlag=false) | |
virtual | ~GaussSeidelLinearStrategy () |
void | SetScheme (typename TSchemeType::Pointer pScheme) |
TSchemeType::Pointer | GetScheme () |
void | SetBuilderAndSolver (typename TBuilderAndSolverType::Pointer pNewBuilderAndSolver) |
TBuilderAndSolverType::Pointer | GetBuilderAndSolver () |
void | SetReformDofSetAtEachStepFlag (bool flag) |
bool | GetReformDofSetAtEachStepFlag () |
void | SetEchoLevel (int Level) override |
This sets the level of echo for the solving strategy. More... | |
double | Solve () override |
TSystemMatrixType & | GetSystemMatrix () override |
This method returns the LHS matrix. More... | |
double | GetResidualNorm () override |
Operations to get the residual norm. More... | |
void | CalculateOutputData () override |
![]() | |
ImplicitSolvingStrategy () | |
Default constructor. More... | |
ImplicitSolvingStrategy (ModelPart &rModelPart, Parameters ThisParameters) | |
Default constructor. (with parameters) More... | |
ImplicitSolvingStrategy (ModelPart &rModelPart, bool MoveMeshFlag=false) | |
Default constructor. More... | |
virtual | ~ImplicitSolvingStrategy () |
BaseType::Pointer | Create (ModelPart &rModelPart, Parameters ThisParameters) const override |
Create method. More... | |
void | SetRebuildLevel (int Level) override |
This sets the build level. More... | |
int | GetRebuildLevel () const override |
This returns the build level. More... | |
void | SetStiffnessMatrixIsBuilt (const bool StiffnessMatrixIsBuilt) |
This method sets the flag mStiffnessMatrixIsBuilt. More... | |
bool | GetStiffnessMatrixIsBuilt () const |
This method gets the flag mStiffnessMatrixIsBuilt. More... | |
std::string | Info () const override |
Turn back information as a string. More... | |
KRATOS_CLASS_POINTER_DEFINITION (ImplicitSolvingStrategy) | |
Parameters | GetDefaultParameters () const override |
This method provides the defaults parameters to avoid conflicts between the different constructors. More... | |
![]() | |
SolvingStrategy () | |
Default constructor. More... | |
SolvingStrategy (ModelPart &rModelPart, Parameters ThisParameters) | |
Default constructor. (with parameters) More... | |
SolvingStrategy (ModelPart &rModelPart, bool MoveMeshFlag=false) | |
Default constructor. More... | |
virtual | ~SolvingStrategy () |
virtual void | PrintInfo (std::ostream &rOStream) const |
Print information about this object. More... | |
virtual void | PrintData (std::ostream &rOStream) const |
Print object's data. More... | |
KRATOS_CLASS_POINTER_DEFINITION (SolvingStrategy) | |
virtual void | Predict () |
Operation to predict the solution ... if it is not called a trivial predictor is used in which the values of the solution step of interest are assumed equal to the old values. More... | |
virtual bool | IsConverged () |
This should be considered as a "post solution" convergence check which is useful for coupled analysis. More... | |
virtual void | FinalizeSolutionStep () |
Performs all the required operations that should be done (for each step) after solving the solution step. More... | |
virtual bool | SolveSolutionStep () |
Solves the current step. This function returns true if a solution has been found, false otherwise. More... | |
int | GetEchoLevel () |
This returns the level of echo for the solving strategy. More... | |
void | SetMoveMeshFlag (bool Flag) |
This function sets the flag that says if the mesh is moved. More... | |
bool | MoveMeshFlag () |
This function returns the flag that says if the mesh is moved. More... | |
bool | GetMoveMeshFlag () |
This function returns the flag that says if the mesh is moved. More... | |
virtual void | MoveMesh () |
This function is designed to move the mesh. More... | |
ModelPart & | GetModelPart () |
Operations to get the pointer to the model. More... | |
const ModelPart & | GetModelPart () const |
Operations to get the pointer to the model. More... | |
virtual TSystemVectorType & | GetSystemVector () |
This method returns the RHS vector. More... | |
virtual TSystemVectorType & | GetSolutionVector () |
This method returns the solution vector. More... | |
Type Definitions | |
typedef ImplicitSolvingStrategy< TSparseSpace, TDenseSpace, TLinearSolver > | BaseType |
typedef BaseType::TDataType | TDataType |
typedef TSparseSpace | SparseSpaceType |
typedef BaseType::TSchemeType | TSchemeType |
typedef BaseType::TBuilderAndSolverType | TBuilderAndSolverType |
typedef BaseType::DofsArrayType | DofsArrayType |
typedef BaseType::TSystemMatrixType | TSystemMatrixType |
typedef BaseType::TSystemVectorType | TSystemVectorType |
typedef BaseType::LocalSystemVectorType | LocalSystemVectorType |
typedef BaseType::LocalSystemMatrixType | LocalSystemMatrixType |
typedef BaseType::TSystemMatrixPointerType | TSystemMatrixPointerType |
typedef BaseType::TSystemVectorPointerType | TSystemVectorPointerType |
KRATOS_CLASS_POINTER_DEFINITION (GaussSeidelLinearStrategy) | |
Short class definition.
Detail class definition.
\URL[Example of use html]{ extended_documentation/no_ex_of_use.html}
\URL[Example of use pdf]{ extended_documentation/no_ex_of_use.pdf} \URL[Example of use doc]{ extended_documentation/no_ex_of_use.doc} \URL[Example of use ps]{ extended_documentation/no_ex_of_use.ps} \URL[Extended documentation html]{ extended_documentation/no_ext_doc.html} \URL[Extended documentation pdf]{ extended_documentation/no_ext_doc.pdf} \URL[Extended documentation doc]{ extended_documentation/no_ext_doc.doc} \URL[Extended documentation ps]{ extended_documentation/no_ext_doc.ps}
typedef ImplicitSolvingStrategy<TSparseSpace, TDenseSpace, TLinearSolver> Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::BaseType |
typedef BaseType::DofsArrayType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::DofsArrayType |
typedef BaseType::LocalSystemMatrixType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::LocalSystemMatrixType |
typedef BaseType::LocalSystemVectorType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::LocalSystemVectorType |
typedef TSparseSpace Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::SparseSpaceType |
typedef BaseType::TBuilderAndSolverType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TBuilderAndSolverType |
typedef BaseType::TDataType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TDataType |
typedef BaseType::TSchemeType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TSchemeType |
typedef BaseType::TSystemMatrixPointerType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TSystemMatrixPointerType |
typedef BaseType::TSystemMatrixType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TSystemMatrixType |
typedef BaseType::TSystemVectorPointerType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TSystemVectorPointerType |
typedef BaseType::TSystemVectorType Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::TSystemVectorType |
|
inline |
Constructor.
|
inlinevirtual |
Destructor.
|
inlineoverridevirtual |
this operations should be called before printing the results when non trivial results (e.g. stresses) need to be calculated given the solution of the step
This operations should be called only when needed, before printing as it can involve a non negligible cost
Reimplemented from Kratos::SolvingStrategy< TSparseSpace, TDenseSpace >.
|
inline |
|
inline |
|
inlineoverridevirtual |
Operations to get the residual norm.
Reimplemented from Kratos::SolvingStrategy< TSparseSpace, TDenseSpace >.
|
inline |
|
inlineoverridevirtual |
This method returns the LHS matrix.
Reimplemented from Kratos::SolvingStrategy< TSparseSpace, TDenseSpace >.
Kratos::GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver >::KRATOS_CLASS_POINTER_DEFINITION | ( | GaussSeidelLinearStrategy< TSparseSpace, TDenseSpace, TLinearSolver > | ) |
Counted pointer of ClassName
|
inline |
|
inlineoverridevirtual |
This sets the level of echo for the solving strategy.
Level | of echo for the solving strategy |
{ 0 -> Mute... no echo at all 1 -> Printing time and basic information 2 -> Printing linear solver data 3 -> Print of debug information: Echo of stiffness matrix, Dx, b... }
Reimplemented from Kratos::SolvingStrategy< TSparseSpace, TDenseSpace >.
|
inline |
|
inline |
Destructor.
|
inlineoverridevirtual |
OPERATIONS ACCESSIBLE FROM THE INPUT: operation to predict the solution ... if it is not called a trivial predictor is used in which the values of the solution step of interest are assumed equal to the old values the problem of interest is solved a double containing norm(Dx) is returned if CalculateNormDxFlag == true, else 0 is returned
Reimplemented from Kratos::SolvingStrategy< TSparseSpace, TDenseSpace >.