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.
|
Scheme for the solution of problems involving a slip condition. More...
#include <residualbased_incrementalupdate_static_scheme_slip.h>
Public Member Functions | |
Life Cycle | |
ResidualBasedIncrementalUpdateStaticSchemeSlip () | |
Default constructor. More... | |
ResidualBasedIncrementalUpdateStaticSchemeSlip (Parameters ThisParameters) | |
Constructor. The pseudo static scheme (parameters) More... | |
ResidualBasedIncrementalUpdateStaticSchemeSlip (unsigned int DomainSize, unsigned int BlockSize) | |
Constructor. More... | |
ResidualBasedIncrementalUpdateStaticSchemeSlip (RotationToolPointerType pRotationTool) | |
Constructor providing a custom rotation tool. More... | |
~ResidualBasedIncrementalUpdateStaticSchemeSlip () override | |
Destructor. More... | |
Inquiry | |
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::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace > | |
ResidualBasedIncrementalUpdateStaticScheme (Parameters ThisParameters) | |
Constructor. The pseudo static scheme (parameters) More... | |
ResidualBasedIncrementalUpdateStaticScheme () | |
ResidualBasedIncrementalUpdateStaticScheme (ResidualBasedIncrementalUpdateStaticScheme &rOther) | |
~ResidualBasedIncrementalUpdateStaticScheme () override | |
KRATOS_CLASS_POINTER_DEFINITION (ResidualBasedIncrementalUpdateStaticScheme) | |
Pointer definition of ResidualBasedIncrementalUpdateStaticScheme. More... | |
void | Predict (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb) override |
Performing the prediction of the solution. More... | |
void | Clear () override |
Liberate internal storage. More... | |
Parameters | GetDefaultParameters () const override |
This method provides the defaults parameters to avoid conflicts between the different constructors. More... | |
Public Member Functions inherited from Kratos::Scheme< TSparseSpace, TDenseSpace > | |
Scheme () | |
Default Constructor. More... | |
Scheme (Parameters ThisParameters) | |
Constructor with Parameters. More... | |
Scheme (Scheme &rOther) | |
virtual | ~Scheme () |
KRATOS_CLASS_POINTER_DEFINITION (Scheme) | |
Pointer definition of Scheme. More... | |
virtual Pointer | Clone () |
Clone method. More... | |
virtual void | Initialize (ModelPart &rModelPart) |
This is the place to initialize the Scheme. More... | |
bool | SchemeIsInitialized () |
This method returns if the scheme is initialized. More... | |
void | SetSchemeIsInitialized (bool SchemeIsInitializedFlag=true) |
This method sets if the elements have been initialized or not (true by default) More... | |
bool | ElementsAreInitialized () |
This method returns if the elements are initialized. More... | |
void | SetElementsAreInitialized (bool ElementsAreInitializedFlag=true) |
This method sets if the elements have been initialized or not (true by default) More... | |
bool | ConditionsAreInitialized () |
This method returns if the conditions are initialized. More... | |
void | SetConditionsAreInitialized (bool ConditionsAreInitializedFlag=true) |
This method sets if the conditions have been initialized or not (true by default) More... | |
virtual void | InitializeElements (ModelPart &rModelPart) |
This is the place to initialize the elements. More... | |
virtual void | InitializeConditions (ModelPart &rModelPart) |
This is the place to initialize the conditions. More... | |
virtual void | InitializeSolutionStep (ModelPart &rModelPart, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) |
Function called once at the beginning of each solution step. More... | |
virtual void | FinalizeSolutionStep (ModelPart &rModelPart, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) |
Function called once at the end of a solution step, after convergence is reached if an iterative process is needed. More... | |
virtual void | InitializeNonLinIteration (ModelPart &rModelPart, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) |
unction to be called when it is needed to initialize an iteration. It is designed to be called at the beginning of each non linear iteration More... | |
virtual void | FinalizeNonLinIteration (ModelPart &rModelPart, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) |
Function to be called when it is needed to finalize an iteration. It is designed to be called at the end of each non linear iteration. More... | |
virtual void | CalculateOutputData (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) |
Functions to be called to prepare the data needed for the output of results. More... | |
virtual void | CleanOutputData () |
Functions that cleans the results data. More... | |
virtual void | Clean () |
This function is intended to be called at the end of the solution step to clean up memory storage not needed after the end of the solution step. More... | |
virtual int | Check (const ModelPart &rModelPart) const |
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 int | Check (ModelPart &rModelPart) |
virtual void | CalculateLHSContribution (Condition &rCondition, LocalSystemMatrixType &LHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo) |
Functions totally analogous to the precedent but applied to the "condition" objects. More... | |
virtual void | EquationId (const Element &rElement, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) |
This method gets the eqaution id corresponding to the current element. More... | |
virtual void | EquationId (const Condition &rCondition, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) |
Functions totally analogous to the precedent but applied to the "condition" objects. More... | |
virtual void | GetDofList (const Element &rElement, Element::DofsVectorType &rDofList, const ProcessInfo &rCurrentProcessInfo) |
Function that returns the list of Degrees of freedom to be assembled in the system for a Given element. More... | |
virtual void | GetDofList (const Condition &rCondition, Element::DofsVectorType &rDofList, const ProcessInfo &rCurrentProcessInfo) |
Function that returns the list of Degrees of freedom to be assembled in the system for a Given condition. More... | |
Type Definitions | |
typedef Scheme< TSparseSpace, TDenseSpace > | BaseSchemeType |
typedef ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace > | BaseType |
typedef ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace > | ClassType |
typedef BaseType::TDataType | TDataType |
typedef BaseType::DofsArrayType | DofsArrayType |
typedef BaseType::TSystemMatrixType | TSystemMatrixType |
typedef BaseType::TSystemVectorType | TSystemVectorType |
typedef BaseType::LocalSystemVectorType | LocalSystemVectorType |
typedef BaseType::LocalSystemMatrixType | LocalSystemMatrixType |
typedef CoordinateTransformationUtils< LocalSystemMatrixType, LocalSystemVectorType, double > | RotationToolType |
typedef CoordinateTransformationUtils< LocalSystemMatrixType, LocalSystemVectorType, double >::Pointer | RotationToolPointerType |
KRATOS_CLASS_POINTER_DEFINITION (ResidualBasedIncrementalUpdateStaticSchemeSlip) | |
Operations | |
BaseSchemeType::Pointer | Create (Parameters ThisParameters) const override |
Create method. More... | |
void | Update (ModelPart &r_model_part, DofsArrayType &rDofSet, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) override |
Update the degrees of freedom after a solution iteration. More... | |
void | CalculateSystemContributions (Element &rCurrentElement, LocalSystemMatrixType &LHS_Contribution, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override |
Obtain an element's local contribution to the system and apply slip conditions if needed. More... | |
void | CalculateRHSContribution (Element &rCurrentElement, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override |
Obtain an element's local contribution to the RHS and apply slip conditions if needed. More... | |
void | CalculateLHSContribution (Element &rCurrentElement, LocalSystemMatrixType &LHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override |
Obtain an element's local contribution to the system matrix and apply slip conditions if needed. More... | |
void | CalculateSystemContributions (Condition &rCurrentCondition, LocalSystemMatrixType &LHS_Contribution, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override |
Obtain a condition's local contribution to the system and apply slip conditions if needed. More... | |
void | CalculateRHSContribution (Condition &rCurrentCondition, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override |
Obtain a condition's local contribution to the RHS and apply slip conditions if needed. 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::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace > | |
typedef Scheme< TSparseSpace, TDenseSpace > | BaseType |
Base class definition. More... | |
typedef ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace > | ClassType |
typedef BaseType::DofsArrayType | DofsArrayType |
DoF array type definition. More... | |
typedef BaseType::TDataType | TDataType |
Data type definition. More... | |
typedef BaseType::TSystemMatrixType | TSystemMatrixType |
Matrix type definition. More... | |
typedef BaseType::TSystemVectorType | TSystemVectorType |
Vector type definition. More... | |
typedef BaseType::LocalSystemVectorType | LocalSystemVectorType |
Local system matrix type definition. More... | |
typedef BaseType::LocalSystemMatrixType | LocalSystemMatrixType |
Local system vector type definition. More... | |
typedef ModelPart::ElementsContainerType | ElementsArrayType |
Elements containers definition. More... | |
typedef ModelPart::ConditionsContainerType | ConditionsArrayType |
Conditions containers definition. More... | |
typedef Element::EquationIdVectorType | EquationIdVectorType |
The definition of the vector containing the equation ids. More... | |
Public Types inherited from Kratos::Scheme< TSparseSpace, TDenseSpace > | |
using | ClassType = Scheme< TSparseSpace, TDenseSpace > |
The definition of the current class. More... | |
using | TDataType = typename TSparseSpace::DataType |
Data type definition. More... | |
using | TSystemMatrixType = typename TSparseSpace::MatrixType |
Matrix type definition. More... | |
using | TSystemVectorType = typename TSparseSpace::VectorType |
Vector type definition. More... | |
using | LocalSystemMatrixType = typename TDenseSpace::MatrixType |
Local system matrix type definition. More... | |
using | LocalSystemVectorType = typename TDenseSpace::VectorType |
Local system vector type definition. More... | |
using | TDofType = Dof< double > |
DoF type definition. More... | |
using | DofsArrayType = ModelPart::DofsArrayType |
DoF array type definition. More... | |
using | ElementsArrayType = ModelPart::ElementsContainerType |
Elements containers definition. More... | |
using | ConditionsArrayType = ModelPart::ConditionsContainerType |
Conditions containers definition. More... | |
Static Public Member Functions inherited from Kratos::ResidualBasedIncrementalUpdateStaticScheme< 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::Scheme< 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::Scheme< 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::Scheme< TSparseSpace, TDenseSpace > | |
bool | mSchemeIsInitialized |
bool | mElementsAreInitialized |
Flag to be used in controlling if the Scheme has been initialized or not. More... | |
bool | mConditionsAreInitialized |
Flag taking in account if the elements were initialized correctly or not. More... | |
Scheme for the solution of problems involving a slip condition.
This Scheme is a reimplementation of ResidualBasedIncrementalUpdateStaticScheme that can be used to apply slip conditions along the edges of the model. The problem is solved using rotated coordinate axes on the nodes where this condition will be applied, with the first coordinate of the rotated system aligned with the normal to the boundary on each of these nodes.
typedef Scheme<TSparseSpace,TDenseSpace> Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::BaseSchemeType |
typedef ResidualBasedIncrementalUpdateStaticScheme<TSparseSpace,TDenseSpace> Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::BaseType |
typedef ResidualBasedIncrementalUpdateStaticSchemeSlip<TSparseSpace, TDenseSpace> Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::ClassType |
typedef BaseType::DofsArrayType Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::DofsArrayType |
typedef BaseType::LocalSystemMatrixType Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::LocalSystemMatrixType |
typedef BaseType::LocalSystemVectorType Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::LocalSystemVectorType |
typedef CoordinateTransformationUtils<LocalSystemMatrixType,LocalSystemVectorType,double>::Pointer Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::RotationToolPointerType |
typedef CoordinateTransformationUtils<LocalSystemMatrixType,LocalSystemVectorType,double> Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::RotationToolType |
typedef BaseType::TDataType Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::TDataType |
typedef BaseType::TSystemMatrixType Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::TSystemMatrixType |
typedef BaseType::TSystemVectorType Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::TSystemVectorType |
|
inlineexplicit |
Default constructor.
|
inlineexplicit |
Constructor. The pseudo static scheme (parameters)
ThisParameters | Configuration parameters |
|
inlineexplicit |
Constructor.
DomainSize | Number of spatial dimensions (2 or 3). |
BlockSize | Number of matrix and vector rows associated to each node. Only the first DomainSize rows will be rotated. |
|
inlineexplicit |
Constructor providing a custom rotation tool.
pRotationTool | a pointer to the helper class that manages DOF rotation. |
|
inlineoverride |
Destructor.
|
inlineoverridevirtual |
Obtain an element's local contribution to the system matrix and apply slip conditions if needed.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Obtain a condition's local contribution to the RHS and apply slip conditions if needed.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Obtain an element's local contribution to the RHS and apply slip conditions if needed.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Obtain a condition's local contribution to the system and apply slip conditions if needed.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Obtain an element's local contribution to the system and apply slip conditions if needed.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Create method.
ThisParameters | The configuration parameters |
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
Kratos::ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION | ( | ResidualBasedIncrementalUpdateStaticSchemeSlip< TSparseSpace, TDenseSpace > | ) |
|
inlinestatic |
Returns the name of the class as used in the settings (snake_case format)
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.
|
inlineoverridevirtual |
Update the degrees of freedom after a solution iteration.
Reimplemented from Kratos::ResidualBasedIncrementalUpdateStaticScheme< TSparseSpace, TDenseSpace >.