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 considers the increment on the solution as criteria. More...
#include <displacement_criteria.h>
Public Member Functions | |
Life Cycle | |
DisplacementCriteria () | |
Default constructor. More... | |
DisplacementCriteria (Kratos::Parameters ThisParameters) | |
Default constructor. (with parameters) More... | |
DisplacementCriteria (TDataType NewRatioTolerance, TDataType AlwaysConvergedNorm) | |
Constructor 2 arguments. More... | |
DisplacementCriteria (DisplacementCriteria const &rOther) | |
Copy constructor. More... | |
~DisplacementCriteria () override | |
Destructor. More... | |
Operators | |
DisplacementCriteria & | operator= (DisplacementCriteria const &rOther)=delete |
Deleted assignment operator. 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 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... | |
Protected Member Functions | |
Protected Operations | |
void | AssignSettings (const Parameters ThisParameters) override |
This method assigns settings to member variables. 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... | |
Protected Attributes | |
Protected member Variables | |
TDataType | mRatioTolerance = 0.0 |
TDataType | mAlwaysConvergedNorm = 0.0 |
The ratio threshold for the norm of the residual. More... | |
TDataType | mReferenceDispNorm = 0.0 |
The absolute value threshold for the norm of the residual. 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... | |
Type Definitions | |
using | BaseType = ConvergenceCriteria< TSparseSpace, TDenseSpace > |
The definition of the base ConvergenceCriteria. More... | |
using | ClassType = DisplacementCriteria< TSparseSpace, TDenseSpace > |
The definition of the current class. More... | |
using | SparseSpaceType = TSparseSpace |
The definition of the sparse space type. More... | |
using | TDataType = typename BaseType::TDataType |
The data type. More... | |
using | DofsArrayType = typename BaseType::DofsArrayType |
The dofs array type. More... | |
using | DofType = typename Node::DofType |
The definition of the DoF data type. More... | |
using | TSystemMatrixType = typename BaseType::TSystemMatrixType |
The sparse matrix type. More... | |
using | TSystemVectorType = typename BaseType::TSystemVectorType |
The dense vector type. More... | |
using | IndexType = std::size_t |
Definition of the IndexType. More... | |
using | SizeType = std::size_t |
Definition of the size type. More... | |
KRATOS_CLASS_POINTER_DEFINITION (DisplacementCriteria) | |
Pointer definition of DisplacementCriteria. More... | |
Operations | |
BaseType::Pointer | Create (Parameters ThisParameters) const override |
Create method. More... | |
bool | PostCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) override |
Compute relative and absolute error. 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... | |
Parameters | GetDefaultParameters () const override |
This method provides the defaults parameters to avoid conflicts between the different constructors. More... | |
static std::string | Name () |
Returns the name of the class as used in the settings (snake_case format) More... | |
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... | |
This is a convergence criteria that considers the increment on the solution as criteria.
The reactions from the RHS are not computed in the solution
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::BaseType = ConvergenceCriteria< TSparseSpace, TDenseSpace > |
The definition of the base ConvergenceCriteria.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::ClassType = DisplacementCriteria< TSparseSpace, TDenseSpace > |
The definition of the current class.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::DofsArrayType = typename BaseType::DofsArrayType |
The dofs array type.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::DofType = typename Node::DofType |
The definition of the DoF data type.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::IndexType = std::size_t |
Definition of the IndexType.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::SizeType = std::size_t |
Definition of the size type.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::SparseSpaceType = TSparseSpace |
The definition of the sparse space type.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::TDataType = typename BaseType::TDataType |
The data type.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::TSystemMatrixType = typename BaseType::TSystemMatrixType |
The sparse matrix type.
using Kratos::DisplacementCriteria< TSparseSpace, TDenseSpace >::TSystemVectorType = typename BaseType::TSystemVectorType |
The dense vector type.
|
inlineexplicit |
Default constructor.
|
inlineexplicit |
Default constructor. (with parameters)
ThisParameters | The configuration parameters |
|
inlineexplicit |
Constructor 2 arguments.
NewRatioTolerance | The ratio tolerance for the convergence. |
AlwaysConvergedNorm | The absolute tolerance for the convergence. |
|
inlineexplicit |
Copy constructor.
rOther | The criteria to be copied |
|
inlineoverride |
Destructor.
|
inlineoverrideprotectedvirtual |
This method assigns settings to member variables.
ThisParameters | Parameters that are assigned to the member variables |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
Reimplemented in Kratos::TrilinosDisplacementCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Create method.
ThisParameters | The configuration parameters |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
Reimplemented in Kratos::TrilinosDisplacementCriteria< TSparseSpace, TDenseSpace >.
|
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) |
rA | System matrix (unused) |
rDx | Vector of results (variations on nodal variables) |
rb | RHS vector (residual + reactions) |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This method provides the defaults parameters to avoid conflicts between the different constructors.
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
Reimplemented in Kratos::TrilinosDisplacementCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
Reimplemented in Kratos::TrilinosDisplacementCriteria< 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::DisplacementCriteria< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION | ( | DisplacementCriteria< TSparseSpace, TDenseSpace > | ) |
Pointer definition of DisplacementCriteria.
|
inlinestatic |
Returns the name of the class as used in the settings (snake_case format)
|
delete |
Deleted assignment operator.
|
inlineoverridevirtual |
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 >.
Reimplemented in Kratos::TrilinosDisplacementCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
Reimplemented in Kratos::TrilinosDisplacementCriteria< TSparseSpace, TDenseSpace >.
|
protected |
The ratio threshold for the norm of the residual.
|
protected |
|
protected |
The absolute value threshold for the norm of the residual.