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.
List of all members
Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace > Class Template Reference

This is a convergence criteria that employes the residual as criteria, it divides the problem in two dofs, displacement and another one. More...

#include <residual_displacement_and_other_dof_criteria.h>

Inheritance diagram for Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >:
Collaboration diagram for Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >:

Public Member Functions

Life Cycle
 ResidualDisplacementAndOtherDoFCriteria (TDataType RatioTolerance, TDataType AbsoluteTolerance, const std::string &OtherDoFName="ROTATION")
 
 ResidualDisplacementAndOtherDoFCriteria (ResidualDisplacementAndOtherDoFCriteria const &rOther)
 
 ~ResidualDisplacementAndOtherDoFCriteria () override
 
Operators
bool PostCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) override
 
void Initialize (ModelPart &rModelPart) override
 
void InitializeSolutionStep (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb) override
 
- Public Member Functions inherited from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >
 ConvergenceCriteria ()
 
 ConvergenceCriteria (Kratos::Parameters ThisParameters)
 Constructor with Parameters. More...
 
 ConvergenceCriteria (ConvergenceCriteria const &rOther)
 
virtual ~ConvergenceCriteria ()
 
virtual std::string Info () const
 Turn back information as a string. More...
 
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 (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 FinalizeSolutionStep (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &rA, const TSystemVectorType &rDx, const TSystemVectorType &rb)
 This function finalizes the solution step. 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...
 

Type Definitions

typedef ConvergenceCriteria< TSparseSpace, TDenseSpace > BaseType
 
typedef TSparseSpace SparseSpaceType
 
typedef BaseType::TDataType TDataType
 
typedef BaseType::DofsArrayType DofsArrayType
 
typedef BaseType::TSystemMatrixType TSystemMatrixType
 
typedef BaseType::TSystemVectorType TSystemVectorType
 
typedef std::size_t IndexType
 
typedef std::size_t SizeType
 
 KRATOS_CLASS_POINTER_DEFINITION (ResidualDisplacementAndOtherDoFCriteria)
 

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 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...
 
- 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...
 

Detailed Description

template<class TSparseSpace, class TDenseSpace>
class Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >

This is a convergence criteria that employes the residual as criteria, it divides the problem in two dofs, displacement and another one.

The reactions from the RHS are not computed in the residual. Can be used with for example rotations or pressure

Author
Vicente Mataix Ferrandiz

Member Typedef Documentation

◆ BaseType

template<class TSparseSpace , class TDenseSpace >
typedef ConvergenceCriteria< TSparseSpace, TDenseSpace > Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::BaseType

◆ DofsArrayType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::DofsArrayType Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::DofsArrayType

◆ IndexType

template<class TSparseSpace , class TDenseSpace >
typedef std::size_t Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::IndexType

◆ SizeType

template<class TSparseSpace , class TDenseSpace >
typedef std::size_t Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::SizeType

◆ SparseSpaceType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::SparseSpaceType

◆ TDataType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::TDataType Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::TDataType

◆ TSystemMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::TSystemMatrixType Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::TSystemMatrixType

◆ TSystemVectorType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::TSystemVectorType Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::TSystemVectorType

Constructor & Destructor Documentation

◆ ResidualDisplacementAndOtherDoFCriteria() [1/2]

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::ResidualDisplacementAndOtherDoFCriteria ( TDataType  RatioTolerance,
TDataType  AbsoluteTolerance,
const std::string &  OtherDoFName = "ROTATION" 
)
inline

Constructor.

Parameters
RatioToleranceRelative tolerance for error
AbsoluteToleranceAbsolute tolerance for error
OtherDoFNameThe name of the other DoF

◆ ResidualDisplacementAndOtherDoFCriteria() [2/2]

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::ResidualDisplacementAndOtherDoFCriteria ( ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace > const &  rOther)
inline

◆ ~ResidualDisplacementAndOtherDoFCriteria()

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::~ResidualDisplacementAndOtherDoFCriteria ( )
inlineoverride

Member Function Documentation

◆ Initialize()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::Initialize ( ModelPart rModelPart)
inlineoverridevirtual

This function initialize the convergence criteria

Parameters
rModelPartReference to the ModelPart containing the contact problem. (unused)

Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.

◆ InitializeSolutionStep()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::InitializeSolutionStep ( ModelPart rModelPart,
DofsArrayType rDofSet,
const TSystemMatrixType rA,
const TSystemVectorType rDx,
const TSystemVectorType rb 
)
inlineoverridevirtual

This function initializes the solution step

Parameters
rModelPartReference to the ModelPart containing the contact problem.
rDofSetReference to the container of the problem's degrees of freedom (stored by the BuilderAndSolver)
ASystem matrix (unused)
DxVector of results (variations on nodal variables)
bRHS vector (residual)

Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION ( ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >  )

◆ PostCriteria()

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ResidualDisplacementAndOtherDoFCriteria< TSparseSpace, TDenseSpace >::PostCriteria ( ModelPart rModelPart,
DofsArrayType rDofSet,
const TSystemMatrixType rA,
const TSystemVectorType rDx,
const TSystemVectorType rb 
)
inlineoverridevirtual

Compute relative and absolute error.

Parameters
rModelPartReference to the ModelPart containing the contact problem.
rDofSetReference to the container of the problem's degrees of freedom (stored by the BuilderAndSolver)
rASystem matrix (unused)
rDxVector of results (variations on nodal variables)
rbRHS vector (residual)
Returns
true if convergence is achieved, false otherwise

Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.


The documentation for this class was generated from the following file: