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::ExplicitBuilder< TSparseSpace, TDenseSpace > Class Template Reference

Current class provides an implementation for the base explicit builder and solving operations. More...

#include <explicit_builder.h>

Collaboration diagram for Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >:

Public Member Functions

Life Cycle
 ExplicitBuilder (Parameters ThisParameters)
 Construct a new Explicit Builder object Default constructor with Parameters. More...
 
 ExplicitBuilder ()=default
 Construct a new Explicit Builder object Default empty constructor. More...
 
virtual ~ExplicitBuilder ()=default
 Destroy the Explicit Builder object Default destructor. More...
 
virtual ClassType::Pointer Create (Parameters ThisParameters) const
 Create method. More...
 
Input and output
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...
 

Protected Member Functions

Protected Operations
virtual void SetUpDofSet (const ModelPart &rModelPart)
 Builds the list of the DofSets involved in the problem by "asking" to each element and condition its Dofs. More...
 
virtual void SetUpDofSetEquationIds ()
 Set the Up Dof Set Equation Ids object Set up the DOF set equation ids. More...
 
virtual void SetUpLumpedMassVector (const ModelPart &rModelPart)
 Set the Up Lumped Mass Vector object This method sets up the lumped mass vector used in the explicit update. Note that it requires that the equation ids. are already set and the implementation of the mass contributions to be done in the element level in the CalculateLumpedMassVector method. More...
 
virtual void InitializeDofSetReactions ()
 Initialize the DOF set reactions For an already initialized dof set (mDofSet), this method sets to zero the corresponding reaction variable values. Note that in the explicit build the reactions are used as residual container. More...
 
virtual void CalculateReactions ()
 It computes the reactions of the system. 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...
 

Protected Attributes

Protected member Variables
DofsArrayType mDofSet
 
TSystemVectorPointerType mpLumpedMassVector
 The set containing the DoF of the system. More...
 
bool mResetDofSetFlag = false
 
bool mResetLumpedMassVectorFlag = false
 If the DOF set requires to be set at each time step. More...
 
bool mDofSetIsInitialized = false
 If the lumped mass vector requires to be set at each time step. More...
 
bool mLumpedMassVectorIsInitialized = false
 Flag taking care if the dof set was initialized ot not. More...
 
bool mCalculateReactionsFlag = false
 Flag taking care if the lumped mass vector was initialized or not. More...
 
unsigned int mEquationSystemSize
 Flag taking in account if it is needed or not to calculate the reactions. More...
 
int mEchoLevel = 0
 Number of degrees of freedom of the problem to be solve. More...
 

Type Definitions

typedef std::size_t SizeType
 Definition of the size type. More...
 
typedef std::size_t IndexType
 Definition of the index type. More...
 
typedef TSparseSpace::DataType TDataType
 Definition of the data type. More...
 
typedef TSparseSpace::MatrixType TSystemMatrixType
 Definition of the sparse matrix. More...
 
typedef TSparseSpace::VectorType TSystemVectorType
 Definition of the vector size. More...
 
typedef TSparseSpace::MatrixPointerType TSystemMatrixPointerType
 Definition of the pointer to the sparse matrix. More...
 
typedef TSparseSpace::VectorPointerType TSystemVectorPointerType
 Definition of the pointer to the vector. More...
 
typedef TDenseSpace::MatrixType LocalSystemMatrixType
 The local matrix definition. More...
 
typedef TDenseSpace::VectorType LocalSystemVectorType
 The local vector definition. More...
 
typedef ModelPart::DofType DofType
 Definition of the DoF class. More...
 
typedef ModelPart::DofsArrayType DofsArrayType
 Definition of the DoF array type. More...
 
typedef ModelPart::DofsVectorType DofsVectorType
 Definition of the DoF vector type. More...
 
typedef std::unordered_set< DofType::Pointer, DofPointerHasherDofSetType
 The definition of the DoF set type. More...
 
typedef ModelPart::NodesContainerType NodesArrayType
 The containers of the entities. More...
 
typedef ModelPart::ElementsContainerType ElementsArrayType
 
typedef ModelPart::ConditionsContainerType ConditionsArrayType
 
typedef PointerVectorSet< Element, IndexedObjectElementsContainerType
 The definition of the element container type. More...
 
typedef ExplicitBuilder< TSparseSpace, TDenseSpace > ClassType
 The definition of the current class. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (ExplicitBuilder)
 Pointer definition of ExplicitBuilder. More...
 

Operations

bool GetCalculateReactionsFlag () const
 This method returns the flag mCalculateReactionsFlag. More...
 
void SetCalculateReactionsFlag (bool CalculateReactionsFlag)
 This method sets the flag mCalculateReactionsFlag. More...
 
bool GetDofSetIsInitializedFlag () const
 This method returns the flag mDofSetIsInitialized. More...
 
void SetDofSetIsInitializedFlag (bool DofSetIsInitialized)
 This method sets the flag mDofSetIsInitialized. More...
 
bool GetResetDofSetFlag () const
 This method returns the flag mReshapeMatrixFlag. More...
 
void SetResetDofSetFlag (bool ResetDofSetFlag)
 This method sets the flag mResetDofSetFlag. More...
 
bool GetResetLumpedMassVectorFlag () const
 This method returns the flag GetResetLumpedMassVectorFlag. More...
 
void SetResetLumpedMassVectorFlag (bool ResetLumpedMassVectorFlag)
 This method sets the flag mResetLumpedMassVectorFlag. More...
 
unsigned int GetEquationSystemSize () const
 This method returns the value mEquationSystemSize. More...
 
DofsArrayTypeGetDofSet ()
 It allows to get the list of Dofs from the element. More...
 
const DofsArrayTypeGetDofSet () const
 It allows to get the list of Dofs from the element. More...
 
TSystemVectorPointerTypepGetLumpedMassMatrixVector ()
 Get the lumped mass matrix vector pointer It allows to get the lumped mass matrix vector pointer. More...
 
TSystemVectorTypeGetLumpedMassMatrixVector ()
 Get the lumped mass matrix vector It allows to get the lumped mass matrix vector. More...
 
virtual void BuildRHS (ModelPart &rModelPart)
 Function to perform the build of the RHS. The vector could be sized as the total number of dofs or as the number of unrestrained ones. More...
 
virtual void BuildRHSNoDirichlet (ModelPart &rModelPart)
 Function to perform the build of the RHS. The vector could be sized as the total number of dofs or as the number of unrestrained ones. More...
 
virtual void ApplyConstraints (ModelPart &rModelPart)
 Applies the constraints. More...
 
virtual void Initialize (ModelPart &rModelPart)
 It applied those operations that are expected to be executed once. More...
 
virtual void InitializeSolutionStep (ModelPart &rModelPart)
 It applies certain operations at the system of equations at the beginning of the solution step. More...
 
virtual void FinalizeSolutionStep (ModelPart &rModelPart)
 It applies certain operations at the system of equations at the end of the solution step. More...
 
virtual void Clear ()
 This function is intended to be called at the end of the solution step to clean up memory storage not needed. 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 Parameters GetDefaultParameters () const
 This method provides the defaults parameters to avoid conflicts between the different constructors. More...
 
void SetEchoLevel (int Level)
 It sets the level of echo for the solving strategy. More...
 
int GetEchoLevel () const
 It returns the echo level. More...
 
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::ExplicitBuilder< TSparseSpace, TDenseSpace >

Current class provides an implementation for the base explicit builder and solving operations.

The RHS is constituted by the unbalanced loads (residual) Degrees of freedom are reordered putting the restrained degrees of freedom at the end of the system ordered in reverse order with respect to the DofSet.

Author
Ruben Zorrilla

Member Typedef Documentation

◆ ClassType

template<class TSparseSpace , class TDenseSpace >
typedef ExplicitBuilder<TSparseSpace, TDenseSpace> Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ClassType

The definition of the current class.

◆ ConditionsArrayType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::ConditionsContainerType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ConditionsArrayType

◆ DofsArrayType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::DofsArrayType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::DofsArrayType

Definition of the DoF array type.

◆ DofSetType

template<class TSparseSpace , class TDenseSpace >
typedef std::unordered_set<DofType::Pointer, DofPointerHasher> Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::DofSetType

The definition of the DoF set type.

◆ DofsVectorType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::DofsVectorType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::DofsVectorType

Definition of the DoF vector type.

◆ DofType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::DofType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::DofType

Definition of the DoF class.

◆ ElementsArrayType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::ElementsContainerType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ElementsArrayType

◆ ElementsContainerType

template<class TSparseSpace , class TDenseSpace >
typedef PointerVectorSet<Element, IndexedObject> Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ElementsContainerType

The definition of the element container type.

◆ IndexType

template<class TSparseSpace , class TDenseSpace >
typedef std::size_t Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::IndexType

Definition of the index type.

◆ LocalSystemMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef TDenseSpace::MatrixType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::LocalSystemMatrixType

The local matrix definition.

◆ LocalSystemVectorType

template<class TSparseSpace , class TDenseSpace >
typedef TDenseSpace::VectorType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::LocalSystemVectorType

The local vector definition.

◆ NodesArrayType

template<class TSparseSpace , class TDenseSpace >
typedef ModelPart::NodesContainerType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::NodesArrayType

The containers of the entities.

◆ SizeType

template<class TSparseSpace , class TDenseSpace >
typedef std::size_t Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SizeType

Definition of the size type.

◆ TDataType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace::DataType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::TDataType

Definition of the data type.

◆ TSystemMatrixPointerType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace::MatrixPointerType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::TSystemMatrixPointerType

Definition of the pointer to the sparse matrix.

◆ TSystemMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace::MatrixType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::TSystemMatrixType

Definition of the sparse matrix.

◆ TSystemVectorPointerType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace::VectorPointerType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::TSystemVectorPointerType

Definition of the pointer to the vector.

◆ TSystemVectorType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace::VectorType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::TSystemVectorType

Definition of the vector size.

Constructor & Destructor Documentation

◆ ExplicitBuilder() [1/2]

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

Construct a new Explicit Builder object Default constructor with Parameters.

Parameters
ThisParametersThe configuration parameters

◆ ExplicitBuilder() [2/2]

template<class TSparseSpace , class TDenseSpace >
Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ExplicitBuilder ( )
explicitdefault

Construct a new Explicit Builder object Default empty constructor.

◆ ~ExplicitBuilder()

template<class TSparseSpace , class TDenseSpace >
virtual Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::~ExplicitBuilder ( )
virtualdefault

Destroy the Explicit Builder object Default destructor.

Member Function Documentation

◆ ApplyConstraints()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ApplyConstraints ( ModelPart rModelPart)
inlinevirtual

Applies the constraints.

Parameters
rModelPartThe model part to compute
rAThe LHS matrix of the system of equations
rbThe RHS vector of the system of equations

◆ AssignSettings()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::AssignSettings ( const Parameters  ThisParameters)
inlineprotectedvirtual

This method assigns settings to member variables.

Parameters
ThisParametersParameters that are assigned to the member variables

◆ BuildRHS()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::BuildRHS ( ModelPart rModelPart)
inlinevirtual

Function to perform the build of the RHS. The vector could be sized as the total number of dofs or as the number of unrestrained ones.

Parameters
rModelPartThe model part to compute

◆ BuildRHSNoDirichlet()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::BuildRHSNoDirichlet ( ModelPart rModelPart)
inlinevirtual

Function to perform the build of the RHS. The vector could be sized as the total number of dofs or as the number of unrestrained ones.

Parameters
rModelPartThe model part to compute

◆ CalculateReactions()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::CalculateReactions ( )
inlineprotectedvirtual

It computes the reactions of the system.

Parameters
rModelPartThe model part to compute

◆ Check()

template<class TSparseSpace , class TDenseSpace >
virtual int Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::Check ( const ModelPart rModelPart) const
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.

Parameters
rModelPartThe model part to compute
Returns
0 all ok

◆ Clear()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::Clear ( )
inlinevirtual

This function is intended to be called at the end of the solution step to clean up memory storage not needed.

◆ Create()

template<class TSparseSpace , class TDenseSpace >
virtual ClassType::Pointer Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::Create ( Parameters  ThisParameters) const
inlinevirtual

Create method.

Parameters
ThisParametersThe configuration parameters

◆ FinalizeSolutionStep()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::FinalizeSolutionStep ( ModelPart rModelPart)
inlinevirtual

It applies certain operations at the system of equations at the end of the solution step.

Parameters
rModelPartThe model part to compute

◆ GetCalculateReactionsFlag()

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetCalculateReactionsFlag ( ) const
inline

This method returns the flag mCalculateReactionsFlag.

Returns
The flag that tells if the reactions are computed

◆ GetDefaultParameters()

template<class TSparseSpace , class TDenseSpace >
virtual Parameters Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetDefaultParameters ( ) const
inlinevirtual

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

Returns
The default parameters

◆ GetDofSet() [1/2]

template<class TSparseSpace , class TDenseSpace >
DofsArrayType& Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetDofSet ( )
inline

It allows to get the list of Dofs from the element.

◆ GetDofSet() [2/2]

template<class TSparseSpace , class TDenseSpace >
const DofsArrayType& Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetDofSet ( ) const
inline

It allows to get the list of Dofs from the element.

◆ GetDofSetIsInitializedFlag()

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetDofSetIsInitializedFlag ( ) const
inline

This method returns the flag mDofSetIsInitialized.

Returns
The flag that tells if the dof set is initialized

◆ GetEchoLevel()

template<class TSparseSpace , class TDenseSpace >
int Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetEchoLevel ( ) const
inline

It returns the echo level.

Returns
The echo level of the builder and solver

◆ GetEquationSystemSize()

template<class TSparseSpace , class TDenseSpace >
unsigned int Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetEquationSystemSize ( ) const
inline

This method returns the value mEquationSystemSize.

Returns
Size of the system of equations

◆ GetLumpedMassMatrixVector()

template<class TSparseSpace , class TDenseSpace >
TSystemVectorType& Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetLumpedMassMatrixVector ( )
inline

Get the lumped mass matrix vector It allows to get the lumped mass matrix vector.

Returns
TSystemVectorType& The lumped mass matrix vector

◆ GetResetDofSetFlag()

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetResetDofSetFlag ( ) const
inline

This method returns the flag mReshapeMatrixFlag.

Returns
The flag that tells if we need to reset the DOF set

◆ GetResetLumpedMassVectorFlag()

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::GetResetLumpedMassVectorFlag ( ) const
inline

This method returns the flag GetResetLumpedMassVectorFlag.

Returns
The flag that tells if we need to reset the lumped mass vector

◆ Info()

template<class TSparseSpace , class TDenseSpace >
virtual std::string Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::Info ( ) const
inlinevirtual

Turn back information as a string.

◆ Initialize()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::Initialize ( ModelPart rModelPart)
inlinevirtual

It applied those operations that are expected to be executed once.

Parameters
rModelPart

◆ InitializeDofSetReactions()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::InitializeDofSetReactions ( )
inlineprotectedvirtual

Initialize the DOF set reactions For an already initialized dof set (mDofSet), this method sets to zero the corresponding reaction variable values. Note that in the explicit build the reactions are used as residual container.

◆ InitializeSolutionStep()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::InitializeSolutionStep ( ModelPart rModelPart)
inlinevirtual

It applies certain operations at the system of equations at the beginning of the solution step.

Parameters
rModelPartThe model part to compute

◆ KRATOS_CLASS_POINTER_DEFINITION()

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

Pointer definition of ExplicitBuilder.

◆ Name()

template<class TSparseSpace , class TDenseSpace >
static std::string Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::Name ( )
inlinestatic

Returns the name of the class as used in the settings (snake_case format)

Returns
The name of the class

◆ pGetLumpedMassMatrixVector()

template<class TSparseSpace , class TDenseSpace >
TSystemVectorPointerType& Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::pGetLumpedMassMatrixVector ( )
inline

Get the lumped mass matrix vector pointer It allows to get the lumped mass matrix vector pointer.

Returns
TSystemVectorPointerType& The lumped mass matrix vector pointer

◆ PrintData()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::PrintData ( std::ostream &  rOStream) const
inlinevirtual

Print object's data.

◆ PrintInfo()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::PrintInfo ( std::ostream &  rOStream) const
inlinevirtual

Print information about this object.

◆ SetCalculateReactionsFlag()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetCalculateReactionsFlag ( bool  CalculateReactionsFlag)
inline

This method sets the flag mCalculateReactionsFlag.

Parameters
CalculateReactionsFlagThe flag that tells if the reactions are computed

◆ SetDofSetIsInitializedFlag()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetDofSetIsInitializedFlag ( bool  DofSetIsInitialized)
inline

This method sets the flag mDofSetIsInitialized.

Parameters
DofSetIsInitializedThe flag that tells if the dof set is initialized

◆ SetEchoLevel()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetEchoLevel ( int  Level)
inline

It sets the level of echo for the solving strategy.

Parameters
LevelThe level to set

The different levels of echo are:

  • 0: Mute... no echo at all
  • 1: Printing time and basic information
  • 2: Printing linear solver data
  • 3: Print of debug information: Echo of stiffness matrix, Dx, b...
  • 4: Print of stiffness matrix, b to Matrix Market

◆ SetResetDofSetFlag()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetResetDofSetFlag ( bool  ResetDofSetFlag)
inline

This method sets the flag mResetDofSetFlag.

Parameters
mResetDofSetFlagThe flag that tells if we need to reset the DOF set

◆ SetResetLumpedMassVectorFlag()

template<class TSparseSpace , class TDenseSpace >
void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetResetLumpedMassVectorFlag ( bool  ResetLumpedMassVectorFlag)
inline

This method sets the flag mResetLumpedMassVectorFlag.

Parameters
ResetLumpedMassVectorFlagThe flag that tells if we need to reset the lumped mass vector

◆ SetUpDofSet()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetUpDofSet ( const ModelPart rModelPart)
inlineprotectedvirtual

Builds the list of the DofSets involved in the problem by "asking" to each element and condition its Dofs.

The list of dofs is stores inside the ExplicitBuilder as it is closely connected to the way the matrix and RHS are built

Parameters
rModelPartThe model part to compute

◆ SetUpDofSetEquationIds()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetUpDofSetEquationIds ( )
inlineprotectedvirtual

Set the Up Dof Set Equation Ids object Set up the DOF set equation ids.

◆ SetUpLumpedMassVector()

template<class TSparseSpace , class TDenseSpace >
virtual void Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::SetUpLumpedMassVector ( const ModelPart rModelPart)
inlineprotectedvirtual

Set the Up Lumped Mass Vector object This method sets up the lumped mass vector used in the explicit update. Note that it requires that the equation ids. are already set and the implementation of the mass contributions to be done in the element level in the CalculateLumpedMassVector method.

Parameters
rModelPartThe model part to compute

◆ ValidateAndAssignParameters()

template<class TSparseSpace , class TDenseSpace >
virtual Parameters Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::ValidateAndAssignParameters ( Parameters  ThisParameters,
const Parameters  DefaultParameters 
) const
inlineprotectedvirtual

This method validate and assign default parameters.

Parameters
rParametersParameters to be validated
DefaultParametersThe default parameters
Returns
Returns validated Parameters

Member Data Documentation

◆ mCalculateReactionsFlag

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mCalculateReactionsFlag = false
protected

Flag taking care if the lumped mass vector was initialized or not.

◆ mDofSet

template<class TSparseSpace , class TDenseSpace >
DofsArrayType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mDofSet
protected

◆ mDofSetIsInitialized

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mDofSetIsInitialized = false
protected

If the lumped mass vector requires to be set at each time step.

◆ mEchoLevel

template<class TSparseSpace , class TDenseSpace >
int Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mEchoLevel = 0
protected

Number of degrees of freedom of the problem to be solve.

◆ mEquationSystemSize

template<class TSparseSpace , class TDenseSpace >
unsigned int Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mEquationSystemSize
protected

Flag taking in account if it is needed or not to calculate the reactions.

◆ mLumpedMassVectorIsInitialized

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mLumpedMassVectorIsInitialized = false
protected

Flag taking care if the dof set was initialized ot not.

◆ mpLumpedMassVector

template<class TSparseSpace , class TDenseSpace >
TSystemVectorPointerType Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mpLumpedMassVector
protected

The set containing the DoF of the system.

◆ mResetDofSetFlag

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mResetDofSetFlag = false
protected

◆ mResetLumpedMassVectorFlag

template<class TSparseSpace , class TDenseSpace >
bool Kratos::ExplicitBuilder< TSparseSpace, TDenseSpace >::mResetLumpedMassVectorFlag = false
protected

If the DOF set requires to be set at each time step.


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