52 template<
class TSparseSpace,
151 return Kratos::make_shared<ClassType>(ThisParameters);
160 return Kratos::make_shared<Scheme>(*
this) ;
238 EntitiesUtilities::InitializeEntities<Element>(rModelPart);
256 EntitiesUtilities::InitializeEntities<Condition>(rModelPart);
518 const Scheme& r_const_this = *
this;
519 const ModelPart& r_const_model_part = rModelPart;
520 return r_const_this.
Check(r_const_model_part);
672 rElement.
GetDofList(rDofList, rCurrentProcessInfo);
687 rCondition.
GetDofList(rDofList, rCurrentProcessInfo);
699 return default_parameters;
724 virtual std::string
Info()
const
779 return ThisParameters;
Base class for all Conditions.
Definition: condition.h:59
virtual void GetDofList(DofsVectorType &rElementalDofList, const ProcessInfo &rCurrentProcessInfo) const
Definition: condition.h:273
virtual void CalculateLeftHandSide(MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo)
Definition: condition.h:426
virtual void EquationIdVector(EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const
Definition: condition.h:260
virtual void CalculateRightHandSide(VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
Definition: condition.h:440
virtual void CalculateLocalSystem(MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
Definition: condition.h:408
Dof represents a degree of freedom (DoF).
Definition: dof.h:86
Base class for all Elements.
Definition: element.h:60
virtual void CalculateLeftHandSide(MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:423
virtual void CalculateRightHandSide(VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:437
virtual void EquationIdVector(EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const
Definition: element.h:258
std::vector< DofType::Pointer > DofsVectorType
Definition: element.h:100
virtual void GetDofList(DofsVectorType &rElementalDofList, const ProcessInfo &rCurrentProcessInfo) const
Definition: element.h:271
virtual void CalculateLocalSystem(MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:405
std::vector< std::size_t > EquationIdVectorType
Definition: element.h:98
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
MeshType::ConditionsContainerType ConditionsContainerType
Condintions container. A vector set of Conditions with their Id's as key.
Definition: model_part.h:183
MeshType::ElementsContainerType ElementsContainerType
Element container. A vector set of Elements with their Id's as key.
Definition: model_part.h:168
PointerVectorSet< DofType > DofsArrayType
Definition: model_part.h:115
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
void ValidateAndAssignDefaults(const Parameters &rDefaultParameters)
This function is designed to verify that the parameters under testing match the form prescribed by th...
Definition: kratos_parameters.cpp:1306
A sorted associative container similar to an STL set, but uses a vector to store pointers to its data...
Definition: pointer_vector_set.h:72
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
This class provides the implementation of the basic tasks that are needed by the solution strategy.
Definition: scheme.h:56
virtual void Predict(ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b)
Performing the prediction of the solution.
Definition: scheme.h:416
virtual void Clean()
This function is intended to be called at the end of the solution step to clean up memory storage not...
Definition: scheme.h:484
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.
Definition: scheme.h:620
virtual void CalculateLHSContribution(Element &rElement, LocalSystemMatrixType &LHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo)
This function is designed to calculate just the LHS contribution.
Definition: scheme.h:603
virtual void Update(ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b)
Performing the update of the solution.
Definition: scheme.h:437
typename TSparseSpace::MatrixType TSystemMatrixType
Matrix type definition.
Definition: scheme.h:71
virtual void CalculateSystemContributions(Condition &rCondition, LocalSystemMatrixType &LHS_Contribution, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo)
Functions totally analogous to the precedent but applied to the "condition" objects.
Definition: scheme.h:551
bool SchemeIsInitialized()
This method returns if the scheme is initialized.
Definition: scheme.h:179
virtual Parameters GetDefaultParameters() const
This method provides the defaults parameters to avoid conflicts between the different constructors.
Definition: scheme.h:693
virtual void InitializeElements(ModelPart &rModelPart)
This is the place to initialize the elements.
Definition: scheme.h:234
void SetSchemeIsInitialized(bool SchemeIsInitializedFlag=true)
This method sets if the elements have been initialized or not (true by default)
Definition: scheme.h:188
bool mConditionsAreInitialized
Flag taking in account if the elements were initialized correctly or not.
Definition: scheme.h:757
virtual int Check(ModelPart &rModelPart)
Definition: scheme.h:515
static std::string Name()
Returns the name of the class as used in the settings (snake_case format)
Definition: scheme.h:706
virtual void PrintInfo(std::ostream &rOStream) const
Print information about this object.
Definition: scheme.h:730
virtual void CleanOutputData()
Functions that cleans the results data.
Definition: scheme.h:474
virtual void EquationId(const Element &rElement, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo)
This method gets the eqaution id corresponding to the current element.
Definition: scheme.h:636
typename TSparseSpace::VectorType TSystemVectorType
Vector type definition.
Definition: scheme.h:74
typename TDenseSpace::VectorType LocalSystemVectorType
Local system vector type definition.
Definition: scheme.h:80
KRATOS_CLASS_POINTER_DEFINITION(Scheme)
Pointer definition of Scheme.
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 condit...
Definition: scheme.h:681
virtual void InitializeConditions(ModelPart &rModelPart)
This is the place to initialize the conditions.
Definition: scheme.h:250
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 proc...
Definition: scheme.h:294
virtual Parameters ValidateAndAssignParameters(Parameters ThisParameters, const Parameters DefaultParameters) const
This method validate and assign default parameters.
Definition: scheme.h:773
bool ConditionsAreInitialized()
This method returns if the conditions are initialized.
Definition: scheme.h:215
virtual void InitializeSolutionStep(ModelPart &rModelPart, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b)
Function called once at the beginning of each solution step.
Definition: scheme.h:272
virtual void CalculateSystemContributions(Element &rElement, LocalSystemMatrixType &LHS_Contribution, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo)
This function is designed to be called in the builder and solver to introduce the selected time integ...
Definition: scheme.h:532
virtual void Initialize(ModelPart &rModelPart)
This is the place to initialize the Scheme.
Definition: scheme.h:168
typename TSparseSpace::DataType TDataType
Data type definition.
Definition: scheme.h:68
virtual void PrintData(std::ostream &rOStream) const
Print object's data.
Definition: scheme.h:736
typename TDenseSpace::MatrixType LocalSystemMatrixType
Local system matrix type definition.
Definition: scheme.h:77
Scheme(Parameters ThisParameters)
Constructor with Parameters.
Definition: scheme.h:111
void SetElementsAreInitialized(bool ElementsAreInitializedFlag=true)
This method sets if the elements have been initialized or not (true by default)
Definition: scheme.h:206
virtual void AssignSettings(const Parameters ThisParameters)
This method assigns settings to member variables.
Definition: scheme.h:786
bool ElementsAreInitialized()
This method returns if the elements are initialized.
Definition: scheme.h:197
bool mSchemeIsInitialized
Definition: scheme.h:755
Scheme()
Default Constructor.
Definition: scheme.h:102
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 elemen...
Definition: scheme.h:666
void SetConditionsAreInitialized(bool ConditionsAreInitializedFlag=true)
This method sets if the conditions have been initialized or not (true by default)
Definition: scheme.h:224
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....
Definition: scheme.h:508
virtual ClassType::Pointer Create(Parameters ThisParameters) const
Create method.
Definition: scheme.h:149
virtual void EquationId(const Condition &rCondition, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo)
Functions totally analogous to the precedent but applied to the "condition" objects.
Definition: scheme.h:651
virtual void Clear()
Liberate internal storage.
Definition: scheme.h:494
Scheme(Scheme &rOther)
Definition: scheme.h:124
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...
Definition: scheme.h:371
virtual std::string Info() const
Turn back information as a string.
Definition: scheme.h:724
virtual void CalculateRHSContribution(Element &rElement, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo)
This function is designed to calculate just the RHS contribution.
Definition: scheme.h:569
bool mElementsAreInitialized
Flag to be used in controlling if the Scheme has been initialized or not.
Definition: scheme.h:756
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.
Definition: scheme.h:458
virtual void CalculateRHSContribution(Condition &rCondition, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo)
Functions totally analogous to the precedent but applied to the "condition" objects.
Definition: scheme.h:586
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 ...
Definition: scheme.h:393
virtual ~Scheme()
Definition: scheme.h:133
virtual Pointer Clone()
Clone method.
Definition: scheme.h:158
#define KRATOS_CATCH(MoreInfo)
Definition: define.h:110
#define KRATOS_TRY
Definition: define.h:109
#define KRATOS_ERROR_IF_NOT(conditional)
Definition: exception.h:163
void FinalizeNonLinearIterationAllEntities(ModelPart &rModelPart)
This method calls FinalizeNonLinearIteration for all the entities (conditions, elements,...
Definition: entities_utilities.cpp:243
void InitializeSolutionStepAllEntities(ModelPart &rModelPart)
This method calls InitializeSolution for all the entities (conditions, elements, constraints)
Definition: entities_utilities.cpp:210
void FinalizeSolutionStepAllEntities(ModelPart &rModelPart)
This method calls FinalizeSolutionStep for all the entities (conditions, elements,...
Definition: entities_utilities.cpp:221
void InitializeNonLinearIterationAllEntities(ModelPart &rModelPart)
This method calls InitializeNonLinearIteration for all the entities (conditions, elements,...
Definition: entities_utilities.cpp:232
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
b
Definition: generate_total_lagrangian_mixed_volumetric_strain_element.py:31
A
Definition: sensitivityMatrix.py:70