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.
|
This is a convergence criteria that employes the residual as criteria. More...
#include <femdem_residual_criteria.h>
Public Member Functions | |
Life Cycle | |
FemDemResidualCriteria (Kratos::Parameters Settings) | |
FemDemResidualCriteria (TDataType NewRatioTolerance, TDataType AlwaysConvergedNorm) | |
FemDemResidualCriteria (FemDemResidualCriteria const &rOther) | |
~FemDemResidualCriteria () override | |
Operators | |
bool | PostCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) override |
Criterias that need to be called after getting the solution. More... | |
void | Initialize (ModelPart &rModelPart) override |
This function initialize the convergence criteria. More... | |
void | InitializeSolutionStep (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) override |
This function initializes the solution step. More... | |
void | FinalizeSolutionStep (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) override |
This function finalizes the solution step. More... | |
Input and output | |
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... | |
Public Member Functions inherited from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace > | |
ConvergenceCriteria () | |
ConvergenceCriteria (Kratos::Parameters ThisParameters) | |
Constructor with Parameters. More... | |
ConvergenceCriteria (ConvergenceCriteria const &rOther) | |
virtual | ~ConvergenceCriteria () |
KRATOS_CLASS_POINTER_DEFINITION (ConvergenceCriteria) | |
Pointer definition of ConvergenceCriteria. More... | |
virtual ClassType::Pointer | Create (Parameters ThisParameters) const |
Create method. More... | |
virtual std::vector< TSystemVectorType > & | GetRHS_Element_Components () |
Get component wise element components. More... | |
virtual std::vector< Variable< LocalSystemVectorType > > & | GetRHS_Element_Variables () |
Get component wise element variables. More... | |
virtual std::vector< TSystemVectorType > & | GetRHS_Condition_Components () |
Get component wise condition components. More... | |
virtual std::vector< Variable< LocalSystemVectorType > > & | GetRHS_Condition_Variables () |
Get component wise condition variables. More... | |
virtual void | SetEchoLevel (int Level) |
It sets the level of echo for the solving strategy. More... | |
int | GetEchoLevel () |
This returns the level of echo for the solving strategy. More... | |
void | SetActualizeRHSFlag (bool ActualizeRHSIsNeeded) |
This method sets the flag mActualizeRHSIsNeeded. More... | |
bool | GetActualizeRHSflag () |
This method gets the flag mActualizeRHSIsNeeded. More... | |
virtual bool | PreCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) |
Criterias that need to be called before getting the solution. More... | |
virtual bool | IsInitialized () |
This function returns if the convergence criteria is initialized. More... | |
virtual void | InitializeNonLinearIteration (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) |
This function initializes the non-linear iteration. More... | |
virtual void | FinalizeNonLinearIteration (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) |
This function finalizes the non-linear iteration. More... | |
virtual int | Check (ModelPart &rModelPart) |
This function is designed to be called once to perform all the checks needed on the input provided. Checks can be "expensive" as the function is designed to catch user's errors. More... | |
virtual Parameters | GetDefaultParameters () const |
This method provides the defaults parameters to avoid conflicts between the different constructors. More... | |
Protected Member Functions | |
Protected Operations | |
virtual void | CalculateResidualNorm (ModelPart &rModelPart, TDataType &rResidualSolutionNorm, SizeType &rDofNum, DofsArrayType &rDofSet, const TSystemVectorType &rb) |
This method computes the norm of the residual. More... | |
Protected Member Functions inherited from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace > | |
virtual Parameters | ValidateAndAssignParameters (Parameters ThisParameters, const Parameters DefaultParameters) const |
This method validate and assign default parameters. More... | |
virtual void | AssignSettings (const Parameters ThisParameters) |
This method assigns settings to member variables. More... | |
Type Definitions | |
typedef ConvergenceCriteria< TSparseSpace, TDenseSpace > | BaseType |
The definition of the base ConvergenceCriteria. More... | |
typedef BaseType::TDataType | TDataType |
The data type. More... | |
typedef BaseType::DofsArrayType | DofsArrayType |
The dofs array type. More... | |
typedef BaseType::TSystemMatrixType | TSystemMatrixType |
The sparse matrix type. More... | |
typedef BaseType::TSystemVectorType | TSystemVectorType |
The dense vector type. More... | |
typedef std::size_t | IndexType |
Definition of the IndexType. More... | |
typedef std::size_t | SizeType |
Definition of the size type. More... | |
KRATOS_CLASS_POINTER_DEFINITION (FemDemResidualCriteria) | |
Additional Inherited Members | |
Public Types inherited from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace > | |
typedef ConvergenceCriteria< TSparseSpace, TDenseSpace > | ClassType |
The definition of the current class. More... | |
typedef TSparseSpace::DataType | TDataType |
Data type definition. More... | |
typedef TSparseSpace::MatrixType | TSystemMatrixType |
Matrix type definition. More... | |
typedef TSparseSpace::VectorType | TSystemVectorType |
Vector type definition. More... | |
typedef TDenseSpace::MatrixType | LocalSystemMatrixType |
Local system matrix type definition. More... | |
typedef TDenseSpace::VectorType | LocalSystemVectorType |
Local system vector type definition. More... | |
typedef ModelPart::DofsArrayType | DofsArrayType |
DoF array type definition. More... | |
Static Public Member Functions inherited from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace > | |
static std::string | Name () |
Returns the name of the class as used in the settings (snake_case format) More... | |
Protected Attributes inherited from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace > | |
bool | mActualizeRHSIsNeeded = false |
bool | mConvergenceCriteriaIsInitialized = false |
This "flag" is set in order to know if it is necessary to actualize the RHS. More... | |
int | mEchoLevel |
This "flag" is set in order to know if it is convergence criteria is initialized. More... | |
This is a convergence criteria that employes the residual as criteria.
The reactions from the RHS are not computed in the residual
typedef ConvergenceCriteria< TSparseSpace, TDenseSpace > Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::BaseType |
The definition of the base ConvergenceCriteria.
typedef BaseType::DofsArrayType Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::DofsArrayType |
The dofs array type.
typedef std::size_t Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::IndexType |
Definition of the IndexType.
typedef std::size_t Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::SizeType |
Definition of the size type.
typedef BaseType::TDataType Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::TDataType |
The data type.
typedef BaseType::TSystemMatrixType Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::TSystemMatrixType |
The sparse matrix type.
typedef BaseType::TSystemVectorType Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::TSystemVectorType |
The dense vector type.
|
inlineexplicit |
|
inlineexplicit |
|
inlineexplicit |
|
inlineoverride |
|
inlineprotectedvirtual |
This method computes the norm of the residual.
It checks if the dof is fixed
rModelPart | Reference to the ModelPart containing the problem. |
rResidualSolutionNorm | The norm of the residual |
rDofNum | The number of DoFs |
rDofSet | Reference to the container of the problem's degrees of freedom (stored by the BuilderAndSolver) |
rb | RHS vector (residual + reactions) |
|
inlineoverridevirtual |
This function finalizes the solution step.
rModelPart | Reference to the ModelPart containing the problem. |
rDofSet | Reference to the container of the problem's degrees of freedom (stored by the BuilderAndSolver) |
A | System matrix (unused) |
Dx | Vector of results (variations on nodal variables) |
b | RHS vector (residual + reactions) |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This function initialize the convergence criteria.
rModelPart | Reference to the ModelPart containing the problem. (unused) |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This function initializes the solution step.
rModelPart | Reference to the ModelPart containing the problem. |
rDofSet | Reference to the container of the problem's degrees of freedom (stored by the BuilderAndSolver) |
rA | System matrix (unused) |
rDx | Vector of results (variations on nodal variables) |
rb | RHS vector (residual + reactions) |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
Kratos::FemDemResidualCriteria< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION | ( | FemDemResidualCriteria< TSparseSpace, TDenseSpace > | ) |
|
inlineoverridevirtual |
Criterias that need to be called after getting the solution.
Compute relative and absolute error.
rModelPart | Reference to the ModelPart containing the problem. |
rDofSet | Reference to the container of the problem's degrees of freedom (stored by the BuilderAndSolver) |
rA | System matrix (unused) |
rDx | Vector of results (variations on nodal variables) |
rb | RHS vector (residual + reactions) |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.