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.
List of all members
Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace > Class Template Reference

Predictor-corrector semi imlicit scheme for the Boussinesq element. More...

#include <residual_based_adams_moulton_scheme.h>

Inheritance diagram for Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >:
Collaboration diagram for Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >:

Public Types

Type Definitions
typedef Scheme< TSparseSpace, TDenseSpace > BaseType
 
typedef BaseType::DofsArrayType DofsArrayType
 
typedef BaseType::TSystemMatrixType TSystemMatrixType
 
typedef BaseType::TSystemVectorType TSystemVectorType
 
typedef BaseType::LocalSystemVectorType LocalSystemVectorType
 
typedef BaseType::LocalSystemMatrixType LocalSystemMatrixType
 
typedef ModelPart::NodeType NodeType
 
- 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...
 

Public Member Functions

Pointer definition
 KRATOS_CLASS_POINTER_DEFINITION (ResidualBasedAdamsMoultonScheme)
 
Life Cycle
 ResidualBasedAdamsMoultonScheme ()
 Constructor. More...
 
 ResidualBasedAdamsMoultonScheme (Parameters ThisParameters)
 Constructor. More...
 
 ResidualBasedAdamsMoultonScheme (ResidualBasedAdamsMoultonScheme &rOther)
 Copy Constructor. More...
 
BaseType::Pointer Clone () override
 Clone. More...
 
 ~ResidualBasedAdamsMoultonScheme () override
 Destructor. More...
 
Operations
void Initialize (ModelPart &rModelPart) override
 Initialize the nodal area and the derivatives recovery. More...
 
void Predict (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb) override
 Perform the prediction using the explicit Adams-Bashforth scheme. More...
 
void InitializeSolutionStep (ModelPart &rModelPart, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb) override
 It initializes time step solution. Only for reasons if the time step solution is restarted. More...
 
void InitializeNonLinIteration (ModelPart &rModelPart, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb) override
 Calculate the global projection of the auxiliary fields. More...
 
void Update (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb) override
 Performing the update of the solution. More...
 
void CalculateSystemContributions (Element &rCurrentElement, LocalSystemMatrixType &rLHSContribution, LocalSystemVectorType &rRHSContribution, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) override
 This function is designed to be called in the builder and solver to introduce the selected time integration scheme. More...
 
void CalculateRHSContribution (Element &rCurrentElement, LocalSystemVectorType &rRHSContribution, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) override
 This function is designed to calculate just the RHS contribution. More...
 
void CalculateSystemContributions (Condition &rCurrentCondition, LocalSystemMatrixType &rLHSContribution, LocalSystemVectorType &rRHSContribution, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) override
 Functions totally analogous to the precedent but applied to the "condition" objects. More...
 
void CalculateRHSContribution (Condition &rCurrentCondition, LocalSystemVectorType &rRHSContribution, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) override
 Functions that calculates the RHS of a "condition" object. More...
 
void Clear () override
 Free memory allocated by this class. More...
 
Access
Parameters GetDefaultParameters () const override
 This method provides the defaults parameters to avoid conflicts between the different constructors. More...
 
Input and output
std::string Info () const override
 Turn back information as a string. 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 ()
 
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 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 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 (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 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...
 

Protected Member Functions

Protected Operations
void PredictDerivatives (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb)
 Performing the prediction of the derivatives. More...
 
template<class TDataType >
void PredictDerivative (NodeType &rNode, const Variable< TDataType > &rPrimitiveVariable, const Variable< TDataType > &rDerivativeVariable, const double DtInverse)
 Performing the prediction of the derivative. More...
 
void UpdateDerivatives (ModelPart &rModelPart, DofsArrayType &rDofSet, TSystemMatrixType &rA, TSystemVectorType &rDx, TSystemVectorType &rb)
 Performing the update of the derivatives. More...
 
template<class TDataType >
void UpdateDerivative (NodeType &rNode, const Variable< TDataType > &rPrimitiveVariable, const Variable< TDataType > &rDerivativeVariable, const double DtInverse)
 Performing the prediction of the derivative. More...
 
void AddDynamicsToLHS (LocalSystemMatrixType &rLHSContribution, LocalSystemMatrixType &rM, const ProcessInfo &rCurrentProcessInfo)
 It adds the dynamic LHS contribution of the elements LHS = 24/dt*M. More...
 
void AddDynamicsToRHS (Element &rCurrentElement, LocalSystemVectorType &rRHSContribution, LocalSystemMatrixType &rM, const ProcessInfo &rCurrentProcessInfo)
 It adds the dynamic RHS contribution of the elements b - M*a - D*v. More...
 
void AddDynamicsToRHS (Condition &rCurrentCondition, LocalSystemVectorType &rRHSContribution, LocalSystemMatrixType &rM, const ProcessInfo &rCurrentProcessInfo)
 It adds the dynamic RHS contribution of the condition RHS = fext - M*an0 - D*vn0 - K*dn0. 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

Protected member Variables
std::vector< MatrixmM
 
std::vector< VectormU0
 First derivative matrix (usually mass matrix) More...
 
std::vector< VectormU1
 Values vector at the current time step. More...
 
std::vector< VectormDU
 Values vector at the previous time step. 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...
 

Additional Inherited Members

- 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...
 

Detailed Description

template<class TSparseSpace, class TDenseSpace>
class Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >

Predictor-corrector semi imlicit scheme for the Boussinesq element.

The element should assemble the RHS according to the scheme.

Template Parameters
TSparseSpaceThe sparse space considered
TDenseSpaceThe dense space considered
Author
Miguel Maso Sotomayor

Member Typedef Documentation

◆ BaseType

template<class TSparseSpace , class TDenseSpace >
typedef Scheme<TSparseSpace,TDenseSpace> Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::BaseType

◆ DofsArrayType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::DofsArrayType Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::DofsArrayType

◆ LocalSystemMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::LocalSystemMatrixType Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::LocalSystemMatrixType

◆ LocalSystemVectorType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::LocalSystemVectorType Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::LocalSystemVectorType

◆ NodeType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::NodeType Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::NodeType

◆ TSystemMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::TSystemMatrixType Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::TSystemMatrixType

◆ TSystemVectorType

template<class TSparseSpace , class TDenseSpace >
typedef BaseType::TSystemVectorType Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::TSystemVectorType

Constructor & Destructor Documentation

◆ ResidualBasedAdamsMoultonScheme() [1/3]

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::ResidualBasedAdamsMoultonScheme ( )
inlineexplicit

Constructor.

◆ ResidualBasedAdamsMoultonScheme() [2/3]

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::ResidualBasedAdamsMoultonScheme ( Parameters  ThisParameters)
inlineexplicit

Constructor.

Parameters
ThisParametersThe configuration parameters

◆ ResidualBasedAdamsMoultonScheme() [3/3]

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::ResidualBasedAdamsMoultonScheme ( ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace > &  rOther)
inlineexplicit

Copy Constructor.

◆ ~ResidualBasedAdamsMoultonScheme()

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::~ResidualBasedAdamsMoultonScheme ( )
inlineoverride

Destructor.

Member Function Documentation

◆ AddDynamicsToLHS()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::AddDynamicsToLHS ( LocalSystemMatrixType rLHSContribution,
LocalSystemMatrixType rM,
const ProcessInfo rCurrentProcessInfo 
)
inlineprotected

It adds the dynamic LHS contribution of the elements LHS = 24/dt*M.

Parameters
rLHSContributionThe dynamic contribution for the LHS
DThe damping matrix
MThe mass matrix
rCurrentProcessInfoThe current process info instance

◆ AddDynamicsToRHS() [1/2]

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::AddDynamicsToRHS ( Condition rCurrentCondition,
LocalSystemVectorType rRHSContribution,
LocalSystemMatrixType rM,
const ProcessInfo rCurrentProcessInfo 
)
inlineprotected

It adds the dynamic RHS contribution of the condition RHS = fext - M*an0 - D*vn0 - K*dn0.

Parameters
rCurrentConditionThe condition to compute
rRHSContributionThe dynamic contribution for the RHS
DThe damping matrix
MThe mass matrix
rCurrentProcessInfoThe current process info instance

◆ AddDynamicsToRHS() [2/2]

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::AddDynamicsToRHS ( Element rCurrentElement,
LocalSystemVectorType rRHSContribution,
LocalSystemMatrixType rM,
const ProcessInfo rCurrentProcessInfo 
)
inlineprotected

It adds the dynamic RHS contribution of the elements b - M*a - D*v.

Parameters
rCurrentElementThe element to compute
rRHSContributionThe dynamic contribution for the RHS
DThe damping matrix
MThe mass matrix
rCurrentProcessInfoThe current process info instance

◆ CalculateRHSContribution() [1/2]

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::CalculateRHSContribution ( Condition rCurrentCondition,
LocalSystemVectorType rRHSContribution,
Element::EquationIdVectorType rEquationId,
const ProcessInfo rCurrentProcessInfo 
)
inlineoverridevirtual

Functions that calculates the RHS of a "condition" object.

Parameters
rCurrentConditionThe condition to compute
rRHSContributionThe RHS vector contribution
rEquationIdThe ID's of the condition degrees of freedom
rCurrentProcessInfoThe current process info instance

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ CalculateRHSContribution() [2/2]

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::CalculateRHSContribution ( Element rCurrentElement,
LocalSystemVectorType rRHSContribution,
Element::EquationIdVectorType rEquationId,
const ProcessInfo rCurrentProcessInfo 
)
inlineoverridevirtual

This function is designed to calculate just the RHS contribution.

Parameters
rCurrentElementThe element to compute
rRHSContributionThe RHS vector contribution
rEquationIdThe ID's of the element degrees of freedom
rCurrentProcessInfoThe current process info instance

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ CalculateSystemContributions() [1/2]

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::CalculateSystemContributions ( Condition rCurrentCondition,
LocalSystemMatrixType rLHSContribution,
LocalSystemVectorType rRHSContribution,
Element::EquationIdVectorType rEquationId,
const ProcessInfo rCurrentProcessInfo 
)
inlineoverridevirtual

Functions totally analogous to the precedent but applied to the "condition" objects.

Parameters
rCurrentConditionThe condition to compute
rLHSContributionThe LHS matrix contribution
rRHSContributionThe RHS vector contribution
rEquationIdThe ID's of the element degrees of freedom
rCurrentProcessInfoThe current process info instance

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ CalculateSystemContributions() [2/2]

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::CalculateSystemContributions ( Element rCurrentElement,
LocalSystemMatrixType rLHSContribution,
LocalSystemVectorType rRHSContribution,
Element::EquationIdVectorType rEquationId,
const ProcessInfo rCurrentProcessInfo 
)
inlineoverridevirtual

This function is designed to be called in the builder and solver to introduce the selected time integration scheme.

It "asks" the matrix needed to the element and performs the operations needed to introduce the selected time integration scheme. This function calculates at the same time the contribution to the LHS and to the RHS of the system

Parameters
rCurrentElementThe element to compute
rLHSContributionThe LHS matrix contribution
rRHSContributionThe RHS vector contribution
EquationIdThe ID's of the element degrees of freedom
rCurrentProcessInfoThe current process info instance

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ Clear()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::Clear ( )
inlineoverridevirtual

Free memory allocated by this class.

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ Clone()

template<class TSparseSpace , class TDenseSpace >
BaseType::Pointer Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::Clone ( )
inlineoverridevirtual

Clone.

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ GetDefaultParameters()

template<class TSparseSpace , class TDenseSpace >
Parameters Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::GetDefaultParameters ( ) const
inlineoverridevirtual

This method provides the defaults parameters to avoid conflicts between the different constructors.

Returns
The default parameters

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ Info()

template<class TSparseSpace , class TDenseSpace >
std::string Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ Initialize()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::Initialize ( ModelPart rModelPart)
inlineoverridevirtual

Initialize the nodal area and the derivatives recovery.

The nodal area is used to apply the explicit prediction.

Parameters
rModelPartThe model part of the problem to solve

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ InitializeNonLinIteration()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::InitializeNonLinIteration ( ModelPart rModelPart,
TSystemMatrixType rA,
TSystemVectorType rDx,
TSystemVectorType rb 
)
inlineoverridevirtual

Calculate the global projection of the auxiliary fields.

Parameters
rModelPartThe model part of the problem to solve
rALHS matrix
rDxIncremental update of primary variables
rbRHS Vector

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ InitializeSolutionStep()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::InitializeSolutionStep ( ModelPart rModelPart,
TSystemMatrixType rA,
TSystemVectorType rDx,
TSystemVectorType rb 
)
inlineoverridevirtual

It initializes time step solution. Only for reasons if the time step solution is restarted.

Parameters
rModelPartThe model of the problem to solve
rALHS matrix
rDxIncremental update of primary variables
rbRHS Vector

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<class TSparseSpace , class TDenseSpace >
Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::KRATOS_CLASS_POINTER_DEFINITION ( ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >  )

◆ Predict()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::Predict ( ModelPart rModelPart,
DofsArrayType rDofSet,
TSystemMatrixType rA,
TSystemVectorType rDx,
TSystemVectorType rb 
)
inlineoverridevirtual

Perform the prediction using the explicit Adams-Bashforth scheme.

Parameters
rModelPartThe model of the problem to solve
rDofSetset of all primary variables
rALHS matrix
rDxIncremental prediction of primary variables
rbRHS Vector

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ PredictDerivative()

template<class TSparseSpace , class TDenseSpace >
template<class TDataType >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::PredictDerivative ( NodeType rNode,
const Variable< TDataType > &  rPrimitiveVariable,
const Variable< TDataType > &  rDerivativeVariable,
const double  DtInverse 
)
inlineprotected

Performing the prediction of the derivative.

Parameters
rNodeThe node
rPrimitiveVariableThe primitive variable
rDerivativeVariableThe variable to predict
DtInverseThe inverse time step

◆ PredictDerivatives()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::PredictDerivatives ( ModelPart rModelPart,
DofsArrayType rDofSet,
TSystemMatrixType rA,
TSystemVectorType rDx,
TSystemVectorType rb 
)
inlineprotected

Performing the prediction of the derivatives.

Parameters
rModelPartThe model of the problem to solve
rDofSetSet of all primary variables
rALHS matrix
rDxincremental update of primary variables
rbRHS Vector

◆ Update()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::Update ( ModelPart rModelPart,
DofsArrayType rDofSet,
TSystemMatrixType rA,
TSystemVectorType rDx,
TSystemVectorType rb 
)
inlineoverridevirtual

Performing the update of the solution.

Parameters
rModelPartThe model of the problem to solve
rDofSetSet of all primary variables
rALHS matrix
rDxincremental update of primary variables
rbRHS Vector

Reimplemented from Kratos::Scheme< TSparseSpace, TDenseSpace >.

◆ UpdateDerivative()

template<class TSparseSpace , class TDenseSpace >
template<class TDataType >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::UpdateDerivative ( NodeType rNode,
const Variable< TDataType > &  rPrimitiveVariable,
const Variable< TDataType > &  rDerivativeVariable,
const double  DtInverse 
)
inlineprotected

Performing the prediction of the derivative.

Parameters
rNodeThe node
rPrimitiveVariableThe primitive variable
rDerivativeVariableThe variable to predict
DtInverseThe inverse time step

◆ UpdateDerivatives()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::UpdateDerivatives ( ModelPart rModelPart,
DofsArrayType rDofSet,
TSystemMatrixType rA,
TSystemVectorType rDx,
TSystemVectorType rb 
)
inlineprotected

Performing the update of the derivatives.

Parameters
rModelPartThe model of the problem to solve
rDofSetSet of all primary variables
rALHS matrix
rDxincremental update of primary variables
rbRHS Vector

Member Data Documentation

◆ mDU

template<class TSparseSpace , class TDenseSpace >
std::vector< Vector > Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::mDU
protected

Values vector at the previous time step.

◆ mM

template<class TSparseSpace , class TDenseSpace >
std::vector< Matrix > Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::mM
protected

◆ mU0

template<class TSparseSpace , class TDenseSpace >
std::vector< Vector > Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::mU0
protected

First derivative matrix (usually mass matrix)

◆ mU1

template<class TSparseSpace , class TDenseSpace >
std::vector< Vector > Kratos::ResidualBasedAdamsMoultonScheme< TSparseSpace, TDenseSpace >::mU1
protected

Values vector at the current time step.


The documentation for this class was generated from the following file: