![]() |
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.
|
Convergence Criterion base class. More...
#include <convergence_criterion.hpp>
Public Member Functions | |
Life Cycle | |
ConvergenceCriterion () | |
Constructor. More... | |
ConvergenceCriterion (ConvergenceCriterion const &rOther) | |
Copy contructor. More... | |
~ConvergenceCriterion () override | |
Destructor. More... | |
Operations | |
virtual void | SetEchoLevel (int Level) |
int | GetEchoLevel () |
virtual bool | PreCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const SystemMatrixType &rA, const SystemVectorType &rDx, const SystemVectorType &rb) |
virtual bool | PostCriteria (ModelPart &rModelPart, DofsArrayType &rDofSet, const SystemMatrixType &rA, const SystemVectorType &rDx, const SystemVectorType &rb) |
virtual void | InitializeSolutionStep (ModelPart &rModelPart, DofsArrayType &rDofSet, const SystemMatrixType &rA, const SystemVectorType &rDx, const SystemVectorType &rb) |
virtual void | FinalizeSolutionStep (ModelPart &rModelPart, DofsArrayType &rDofSet, const SystemMatrixType &rA, const SystemVectorType &rDx, const SystemVectorType &rb) |
virtual int | Check (ModelPart &rModelPart) |
![]() | |
Flags & | operator= (Flags const &rOther) |
Assignment operator. More... | |
operator bool () const | |
Flags | operator~ () const |
bool | operator! () const |
void | AssignFlags (Flags const &rOther) |
void | Set (const Flags ThisFlag) |
void | Set (const Flags ThisFlag, bool Value) |
void | Reset (const Flags ThisFlag) |
void | Flip (const Flags ThisFlag) |
void | SetPosition (IndexType Position, bool Value=true) |
bool | GetPosition (IndexType Position) const |
void | FlipPosition (IndexType Position) |
void | ClearPosition (IndexType Position) |
void | Clear () |
Flags | AsFalse () const |
bool | Is (Flags const &rOther) const |
bool | IsDefined (Flags const &rOther) const |
bool | IsNot (Flags const &rOther) const |
bool | IsNotDefined (Flags const &rOther) const |
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 (Flags) | |
Pointer definition of Flags. More... | |
const Flags & | operator|= (const Flags &Other) |
const Flags & | operator&= (const Flags &Other) |
Flags () | |
Default constructor. More... | |
Flags (Flags const &rOther) | |
Copy constructor. More... | |
virtual | ~Flags () |
Destructor. More... | |
Protected Attributes | |
Protected member Variables | |
int | mEchoLevel |
Type Definitions | |
typedef CriterionLocalFlags | LocalFlagType |
typedef TSparseSpace::DataType | DataType |
typedef ModelPart::DofsArrayType | DofsArrayType |
typedef TSparseSpace::MatrixType | SystemMatrixType |
typedef TSparseSpace::VectorType | SystemVectorType |
typedef TDenseSpace::MatrixType | LocalSystemMatrixType |
typedef TDenseSpace::VectorType | LocalSystemVectorType |
KRATOS_CLASS_POINTER_DEFINITION (ConvergenceCriterion) | |
Pointer definition of ConvergenceCriterion. More... | |
Additional Inherited Members | |
![]() | |
enum | FlagsList { Flag0 = BlockType(1) , Flag1 = BlockType(1) << 1 , Flag2 = BlockType(1) << 2 , Flag3 = BlockType(1) << 3 , Flag4 = BlockType(1) << 4 , Flag5 = BlockType(1) << 5 , Flag6 = BlockType(1) << 6 , Flag7 = BlockType(1) << 7 , Flag8 = BlockType(1) << 8 , Flag9 = BlockType(1) << 9 , Flag10 = BlockType(1) << 10 , Flag11 = BlockType(1) << 11 , Flag12 = BlockType(1) << 12 , Flag13 = BlockType(1) << 13 , Flag14 = BlockType(1) << 14 , Flag15 = BlockType(1) << 15 , Flag16 = BlockType(1) << 16 , Flag17 = BlockType(1) << 17 , Flag18 = BlockType(1) << 18 , Flag19 = BlockType(1) << 19 , Flag20 = BlockType(1) << 20 , Flag21 = BlockType(1) << 21 , Flag22 = BlockType(1) << 22 , Flag23 = BlockType(1) << 23 , Flag24 = BlockType(1) << 24 , Flag25 = BlockType(1) << 25 , Flag26 = BlockType(1) << 26 , Flag27 = BlockType(1) << 27 , Flag28 = BlockType(1) << 28 , Flag29 = BlockType(1) << 29 , Flag30 = BlockType(1) << 30 } |
typedef int64_t | BlockType |
typedef int64_t | FlagType |
typedef std::size_t | IndexType |
![]() | |
static const Flags | AllDefined () |
static const Flags | AllTrue () |
static Flags | Create (IndexType ThisPosition, bool Value=true) |
Convergence Criterion base class.
This is the base class for the convergence criteria
typedef TSparseSpace::DataType Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::DataType |
typedef ModelPart::DofsArrayType Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::DofsArrayType |
typedef CriterionLocalFlags Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::LocalFlagType |
typedef TDenseSpace::MatrixType Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::LocalSystemMatrixType |
typedef TDenseSpace::VectorType Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::LocalSystemVectorType |
typedef TSparseSpace::MatrixType Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::SystemMatrixType |
typedef TSparseSpace::VectorType Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::SystemVectorType |
|
inline |
Constructor.
|
inline |
Copy contructor.
|
inlineoverride |
Destructor.
|
inlinevirtual |
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.
rModelPart |
Reimplemented in Kratos::CompositeCriterion< TSparseSpace, TDenseSpace >.
|
inlinevirtual |
Reimplemented in Kratos::CompositeCriterion< TSparseSpace, TDenseSpace >.
|
inline |
|
inlinevirtual |
Kratos::ConvergenceCriterion< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION | ( | ConvergenceCriterion< TSparseSpace, TDenseSpace > | ) |
Pointer definition of ConvergenceCriterion.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in Kratos::CompositeCriterion< TSparseSpace, TDenseSpace >.
|
inlinevirtual |
level of echo for the convergence criterion 0 -> mute... no echo at all 1 -> print basic informations 2 -> print extra informations
Reimplemented in Kratos::CompositeCriterion< TSparseSpace, TDenseSpace >.
|
protected |