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.
|
Custom AND convergence criteria for the mortar condition. More...
#include <mortar_and_criteria.h>
Public Member Functions | |
Life Cycle | |
MortarAndConvergenceCriteria () | |
Default constructor. More... | |
MortarAndConvergenceCriteria (Kratos::Parameters ThisParameters) | |
Default constructor. (with parameters) More... | |
MortarAndConvergenceCriteria (typename ConvergenceCriteriaBaseType::Pointer pFirstCriterion, typename ConvergenceCriteriaBaseType::Pointer pSecondCriterion, const bool PrintingOutput=false, ConditionNumberUtilityPointerType pConditionNumberUtility=nullptr) | |
MortarAndConvergenceCriteria (MortarAndConvergenceCriteria const &rOther) | |
~MortarAndConvergenceCriteria () override=default | |
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::And_Criteria< TSparseSpace, TDenseSpace > | |
And_Criteria () | |
And_Criteria (Kratos::Parameters ThisParameters) | |
Default constructor. (with parameters) More... | |
And_Criteria (ConvergenceCriteriaPointerType pFirstCriterion, ConvergenceCriteriaPointerType pSecondCriterion) | |
Default constructor. More... | |
And_Criteria (And_Criteria const &rOther) | |
Copy constructor. More... | |
~And_Criteria () override | |
KRATOS_CLASS_POINTER_DEFINITION (And_Criteria) | |
void | SetEchoLevel (int Level) override |
It sets the level of echo for the solving strategy. More... | |
bool | PreCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &A, const TSystemVectorType &Dx, const TSystemVectorType &b) override |
Criterias that need to be called before getting the solution. More... | |
void | InitializeNonLinearIteration (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &A, const TSystemVectorType &Dx, const TSystemVectorType &b) override |
This function initializes the non linear iteration. More... | |
void | FinalizeNonLinearIteration (ModelPart &rModelPart, DofsArrayType &rDofSet, const TSystemMatrixType &A, const TSystemVectorType &Dx, const TSystemVectorType &b) override |
This function finalizes the non linear iteration. More... | |
int | Check (ModelPart &rModelPart) override |
This function is designed to be called once to perform all the checks needed on the input provided. 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... | |
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 | IsInitialized () |
This function returns if the convergence criteria is initialized. 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... | |
Type Definitions | |
using | ConvergenceCriteriaBaseType = ConvergenceCriteria< TSparseSpace, TDenseSpace > |
The base convergence criteria class definition. More... | |
using | BaseType = And_Criteria< TSparseSpace, TDenseSpace > |
The base class definition. More... | |
using | ClassType = MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace > |
The definition of the current class. More... | |
using | DofsArrayType = typename BaseType::DofsArrayType |
The dofs array type. More... | |
using | TSystemMatrixType = typename BaseType::TSystemMatrixType |
The sparse matrix type. More... | |
using | TSystemVectorType = typename BaseType::TSystemVectorType |
The dense vector type. More... | |
using | TablePrinterPointerType = TableStreamUtility::Pointer |
The table stream definition TODO: Replace by logger. More... | |
using | IndexType = std::size_t |
The index type definition. More... | |
using | ConditionNumberUtilityPointerType = ConditionNumberUtility::Pointer |
The condition number utility pointer definition. More... | |
KRATOS_CLASS_POINTER_DEFINITION (MortarAndConvergenceCriteria) | |
Pointer definition of MortarAndConvergenceCriteria. More... | |
KRATOS_DEFINE_LOCAL_FLAG (PRINTING_OUTPUT) | |
Local Flags. More... | |
KRATOS_DEFINE_LOCAL_FLAG (TABLE_IS_INITIALIZED) | |
KRATOS_DEFINE_LOCAL_FLAG (CONDITION_NUMBER_IS_INITIALIZED) | |
Operations | |
ConvergenceCriteriaBaseType::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 |
Criteria 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... | |
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::And_Criteria< TSparseSpace, TDenseSpace > | |
typedef ConvergenceCriteria< TSparseSpace, TDenseSpace > | BaseType |
typedef And_Criteria< TSparseSpace, TDenseSpace > | ClassType |
The definition of the current class. More... | |
typedef TSparseSpace | SparseSpaceType |
typedef BaseType::TDataType | TDataType |
typedef BaseType::DofsArrayType | DofsArrayType |
typedef BaseType::TSystemMatrixType | TSystemMatrixType |
typedef BaseType::TSystemVectorType | TSystemVectorType |
typedef ConvergenceCriteria< TSparseSpace, TDenseSpace >::Pointer | ConvergenceCriteriaPointerType |
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::And_Criteria< TSparseSpace, TDenseSpace > | |
static std::string | Name () |
Returns the name of the class as used in the settings (snake_case format) 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... | |
Custom AND convergence criteria for the mortar condition.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::BaseType = And_Criteria<TSparseSpace, TDenseSpace> |
The base class definition.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::ClassType = MortarAndConvergenceCriteria<TSparseSpace, TDenseSpace> |
The definition of the current class.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::ConditionNumberUtilityPointerType = ConditionNumberUtility::Pointer |
The condition number utility pointer definition.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::ConvergenceCriteriaBaseType = ConvergenceCriteria<TSparseSpace, TDenseSpace> |
The base convergence criteria class definition.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::DofsArrayType = typename BaseType::DofsArrayType |
The dofs array type.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::IndexType = std::size_t |
The index type definition.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::TablePrinterPointerType = TableStreamUtility::Pointer |
The table stream definition TODO: Replace by logger.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::TSystemMatrixType = typename BaseType::TSystemMatrixType |
The sparse matrix type.
using Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::TSystemVectorType = typename BaseType::TSystemVectorType |
The dense vector type.
|
inlineexplicit |
Default constructor.
|
inlineexplicit |
Default constructor. (with parameters)
ThisParameters | The configuration parameters |
|
inlineexplicit |
Constructor.
|
inline |
Copy constructor.
|
overridedefault |
Destructor.
|
inlineoverrideprotectedvirtual |
This method assigns settings to member variables.
ThisParameters | Parameters that are assigned to the member variables |
Reimplemented from Kratos::ConvergenceCriteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Create method.
ThisParameters | The configuration parameters |
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This function finalizes the solution step.
rModelPart | Reference to the ModelPart containing the contact 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) |
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This method provides the defaults parameters to avoid conflicts between the different constructors.
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This function initialize the convergence criteria.
rModelPart | The model part of interest |
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
This function initializes the solution step.
rModelPart | Reference to the ModelPart containing the contact 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) |
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION | ( | MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace > | ) |
Pointer definition of MortarAndConvergenceCriteria.
Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::KRATOS_DEFINE_LOCAL_FLAG | ( | CONDITION_NUMBER_IS_INITIALIZED | ) |
Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::KRATOS_DEFINE_LOCAL_FLAG | ( | PRINTING_OUTPUT | ) |
Local Flags.
Kratos::MortarAndConvergenceCriteria< TSparseSpace, TDenseSpace >::KRATOS_DEFINE_LOCAL_FLAG | ( | TABLE_IS_INITIALIZED | ) |
|
inlinestatic |
Returns the name of the class as used in the settings (snake_case format)
|
inlineoverridevirtual |
Criteria that need to be called after getting the solution.
rModelPart | Reference to the ModelPart containing the contact 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) |
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::And_Criteria< TSparseSpace, TDenseSpace >.