|
typedef Scheme< TSparseSpace, TDenseSpace > | BaseType |
|
typedef BaseType::TDataType | TDataType |
|
typedef BaseType::DofsArrayType | DofsArrayType |
|
typedef Element::DofsVectorType | DofsVectorType |
|
typedef BaseType::TSystemMatrixType | TSystemMatrixType |
|
typedef BaseType::TSystemVectorType | TSystemVectorType |
|
typedef BaseType::LocalSystemVectorType | LocalSystemVectorType |
|
typedef BaseType::LocalSystemMatrixType | LocalSystemMatrixType |
|
typedef ModelPart::ElementsContainerType | ElementsArrayType |
|
typedef ModelPart::ConditionsContainerType | ConditionsArrayType |
|
typedef BaseType::Pointer | BaseTypePointer |
|
typedef ModelPart::NodesContainerType | NodesArrayType |
| The arrays of elements and nodes. More...
|
|
typedef ModelPart::NodeIterator | NodeIterator |
| Definition for the node iterator. More...
|
|
typedef std::size_t | SizeType |
| Definition of the size type. More...
|
|
typedef std::size_t | IndexType |
| Definition of the index type. More...
|
|
static constexpr double | numerical_limit = std::numeric_limits<double>::epsilon() |
| The definition of the numerical limit. More...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (MPMExplicitScheme) |
|
| MPMExplicitScheme (ModelPart &grid_model_part) |
| Default constructor. More...
|
|
virtual | ~MPMExplicitScheme () |
| Destructor. More...
|
|
BaseTypePointer | Clone () override |
|
void | Initialize (ModelPart &rModelPart) override |
| This is the place to initialize the Scheme. This is intended to be called just once when the strategy is initialized. More...
|
|
void | Update (ModelPart &r_model_part, DofsArrayType &rDofSet, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) override |
|
void | UpdateTranslationalDegreesOfFreedom (const ProcessInfo &r_current_process_info, NodeIterator itCurrentNode, const IndexType DisplacementPosition, const double delta_time, const SizeType DomainSize=3) |
|
void | InitializeSolutionStep (ModelPart &r_model_part, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) override |
|
void | calculateGridVelocityAndApplyDirichletBC (const ProcessInfo rCurrentProcessInfo, bool calculateVelocityFromMomenta=false) |
| Apply Dirichlet BCs to nodal velocity field. More...
|
|
void | FinalizeSolutionStep (ModelPart &rModelPart, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) override |
|
void | CalculateUpdatedGridVelocityField (const ProcessInfo &rCurrentProcessInfo, ModelPart &rModelPart) |
|
void | GetDofList (const Element &rCurrentElement, Element::DofsVectorType &ElementalDofList, const ProcessInfo &CurrentProcessInfo) override |
|
void | GetDofList (const Condition &rCurrentCondition, Element::DofsVectorType &rConditionDofList, const ProcessInfo &rCurrentProcessInfo) override |
|
int | Check (const ModelPart &rModelPart) const override |
|
void | CalculateRHSContribution (Element &rCurrentElement, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &rCurrentProcessInfo) override |
| This function is designed to calculate just the RHS contribution. More...
|
|
void | CalculateRHSContribution (Condition &rCurrentCondition, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &rCurrentProcessInfo) override |
| Functions that calculates the RHS of a "condition" object. More...
|
|
|
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...
|
|
| Scheme () |
| Default Constructor. More...
|
|
| Scheme (Parameters ThisParameters) |
| Constructor with Parameters. More...
|
|
| Scheme (Scheme &rOther) |
|
virtual | ~Scheme () |
|
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 (Scheme) |
| Pointer definition of Scheme. More...
|
|
virtual ClassType::Pointer | Create (Parameters ThisParameters) const |
| Create method. 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 | 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 | Predict (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &A, TSystemVectorType &Dx, TSystemVectorType &b) |
| Performing the prediction of the solution. 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 void | Clear () |
| Liberate internal storage. More...
|
|
virtual int | Check (ModelPart &rModelPart) |
|
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 integration scheme. More...
|
|
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. More...
|
|
virtual void | CalculateLHSContribution (Element &rElement, LocalSystemMatrixType &LHS_Contribution, Element::EquationIdVectorType &rEquationIdVector, const ProcessInfo &rCurrentProcessInfo) |
| This function is designed to calculate just the LHS contribution. More...
|
|
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 Parameters | GetDefaultParameters () const |
| 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...
|
|
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...
|
|
template<class TSparseSpace, class TDenseSpace>
class Kratos::MPMExplicitScheme< TSparseSpace, TDenseSpace >
A MPM explicit scheme.
Scheme options include Forward Euler or Central Difference. Stress update options include Update Stress First (USF), Update Stress Last (USL) and Modified Update Stress Last (MUSL).
- Author
- Peter