14 #if !defined(KRATOS_UPDATED_LAGRANGIAN_UP_H_INCLUDED )
15 #define KRATOS_UPDATED_LAGRANGIAN_UP_H_INCLUDED
112 Element::Pointer
Create(
IndexType NewId, GeometryType::Pointer pGeom, PropertiesType::Pointer pProperties)
const override;
194 std::vector<double>& rValues,
199 const std::vector<double>& rValues,
209 std::string
Info()
const override
211 std::stringstream buffer;
212 buffer <<
"MPM Element #" <<
Id();
219 rOStream <<
"MPM Element #" <<
Id();
263 GeneralVariables& rVariables,
264 const double& rIntegrationWeight,
272 GeneralVariables& rVariables,
274 const double& rIntegrationWeight,
283 GeneralVariables& rVariables,
284 const double& rIntegrationWeight)
override;
290 GeneralVariables& rVariables,
291 const double& rIntegrationWeight);
297 GeneralVariables & rVariables,
298 const double& rIntegrationWeight
305 GeneralVariables & rVariables,
306 const double& rIntegrationWeight
313 GeneralVariables & rVariables,
314 const double& rIntegrationWeight
321 GeneralVariables & rVariables,
322 const double& rIntegrationWeight
328 GeneralVariables& rVariables,
330 const double& rIntegrationWeight)
override;
336 GeneralVariables & rVariables,
337 const double& rIntegrationWeight)
override;
343 GeneralVariables & rVariables,
344 const double& rIntegrationWeight
351 GeneralVariables & rVariables,
352 const double& rIntegrationWeight
418 double m_mp_pressure;
442 void save(
Serializer& rSerializer)
const override;
Definition: constitutive_law.h:47
StressMeasure
Definition: constitutive_law.h:69
std::size_t SizeType
Definition: element.h:94
std::vector< DofType::Pointer > DofsVectorType
Definition: element.h:100
Matrix MatrixType
Definition: element.h:90
std::vector< std::size_t > EquationIdVectorType
Definition: element.h:98
std::size_t IndexType
Definition: flags.h:74
GeometryType & GetGeometry()
Returns the reference of the geometry.
Definition: geometrical_object.h:158
IntegrationMethod
Definition: geometry_data.h:76
virtual void PrintData(std::ostream &rOStream) const
Print object's data.
Definition: geometry.h:3834
SizeType WorkingSpaceDimension() const
Definition: geometry.h:1287
IndexType Id() const
Definition: indexed_object.h:107
Large Displacement Lagrangian Element for 3D and 2D geometries. (base class)
Definition: mpm_updated_lagrangian.hpp:55
virtual void CalculateDeformationMatrix(Matrix &rB, const Matrix &rDN_DX, const Matrix &rN, const bool IsAxisymmetric=false)
Definition: mpm_updated_lagrangian.cpp:399
Large Displacement Lagrangian Element for 3D and 2D geometries. (base class)
Definition: mpm_updated_lagrangian_UP.hpp:50
ConstitutiveLaw ConstitutiveLawType
Definition: mpm_updated_lagrangian_UP.hpp:56
virtual void CalculateAndAddKup(MatrixType &rK, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:759
void CalculateAndAddLHS(MatrixType &rLeftHandSideMatrix, GeneralVariables &rVariables, const double &rIntegrationWeight, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:639
int Check(const ProcessInfo &rCurrentProcessInfo) const override
Definition: mpm_updated_lagrangian_UP.cpp:1220
void CalculateAndAddRHS(VectorType &rRightHandSideVector, GeneralVariables &rVariables, Vector &rVolumeForce, const double &rIntegrationWeight, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:414
void GetHistoricalVariables(GeneralVariables &rVariables) override
Definition: mpm_updated_lagrangian_UP.cpp:1135
virtual void CalculateAndAddKppStab(MatrixType &rK, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:865
MPMUpdatedLagrangianUP()
Empty constructor needed for serialization.
Definition: mpm_updated_lagrangian_UP.cpp:42
void CalculateKinematics(GeneralVariables &rVariables, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:242
void GetFirstDerivativesVector(Vector &rValues, int Step=0) const override
Definition: mpm_updated_lagrangian_UP.cpp:1075
void CalculateAndAddInternalForces(VectorType &rRightHandSideVector, GeneralVariables &rVariables, const double &rIntegrationWeight) override
Definition: mpm_updated_lagrangian_UP.cpp:471
MPMUpdatedLagrangianUP & operator=(MPMUpdatedLagrangianUP const &rOther)
Assignment operator.
Definition: mpm_updated_lagrangian_UP.cpp:82
double & CalculateVolumeChange(double &rVolumeChange, GeneralVariables &rVariables) override
Definition: mpm_updated_lagrangian_UP.cpp:929
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: mpm_updated_lagrangian_UP.hpp:217
GeometryData::IntegrationMethod IntegrationMethod
Type definition for integration methods.
Definition: mpm_updated_lagrangian_UP.hpp:62
virtual void CalculateAndAddStabilizedPressure(VectorType &rRightHandSideVector, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:576
void InitializeSolutionStep(const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:346
SizeType GetNumberOfDofs() override
Definition: mpm_updated_lagrangian_UP.hpp:242
Element::Pointer Create(IndexType NewId, NodesArrayType const &ThisNodes, PropertiesType::Pointer pProperties) const override
Definition: mpm_updated_lagrangian_UP.cpp:93
ConstitutiveLawType::StressMeasure StressMeasureType
StressMeasure from constitutive laws.
Definition: mpm_updated_lagrangian_UP.hpp:60
std::string Info() const override
Turn back information as a string.
Definition: mpm_updated_lagrangian_UP.hpp:209
void CalculateAndAddKuugUP(MatrixType &rLeftHandSideMatrix, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:717
ConstitutiveLawType::Pointer ConstitutiveLawPointerType
Pointer type for constitutive laws.
Definition: mpm_updated_lagrangian_UP.hpp:58
virtual double & CalculatePUCoefficient(double &rCoefficient, GeneralVariables &rVariables)
Definition: mpm_updated_lagrangian_UP.cpp:498
virtual void CalculateAndAddPressureForces(VectorType &rRightHandSideVector, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:531
virtual void CalculateAndAddKpu(MatrixType &rK, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:790
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: mpm_updated_lagrangian_UP.hpp:223
void CalculateAndAddKuum(MatrixType &rLeftHandSideMatrix, GeneralVariables &rVariables, const double &rIntegrationWeight) override
Definition: mpm_updated_lagrangian_UP.cpp:678
void EquationIdVector(EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const override
Definition: mpm_updated_lagrangian_UP.cpp:943
void SetValuesOnIntegrationPoints(const Variable< double > &rVariable, const std::vector< double > &rValues, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:1193
void CalculateAndAddExternalForces(VectorType &rRightHandSideVector, GeneralVariables &rVariables, Vector &rVolumeForce, const double &rIntegrationWeight) override
Definition: mpm_updated_lagrangian_UP.cpp:445
~MPMUpdatedLagrangianUP() override
Destructor.
Definition: mpm_updated_lagrangian_UP.cpp:123
void CalculateOnIntegrationPoints(const Variable< double > &rVariable, std::vector< double > &rValues, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:1177
virtual void CalculateDeformationMatrix(Matrix &rB, const Matrix &rDN_DX, const Matrix &rN, const bool IsAxisymmetric=false)
Definition: mpm_updated_lagrangian.cpp:399
Element::Pointer Clone(IndexType NewId, NodesArrayType const &ThisNodes) const override
Definition: mpm_updated_lagrangian_UP.cpp:106
void GetValuesVector(Vector &rValues, int Step=0) const override
Definition: mpm_updated_lagrangian_UP.cpp:1043
void Initialize(const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:131
void FinalizeStepVariables(GeneralVariables &rVariables, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:1144
void UpdateGaussPoint(GeneralVariables &rVariables, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:168
void CalculateMassMatrix(MatrixType &rMassMatrix, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:997
void InitializeGeneralVariables(GeneralVariables &rVariables, const ProcessInfo &rCurrentProcessInfo) override
Definition: mpm_updated_lagrangian_UP.cpp:152
void GetSecondDerivativesVector(Vector &rValues, int Step=0) const override
Definition: mpm_updated_lagrangian_UP.cpp:1104
virtual double & CalculatePUDeltaCoefficient(double &rCoefficient, GeneralVariables &rVariables)
Definition: mpm_updated_lagrangian_UP.cpp:514
void GetDofList(DofsVectorType &rElementalDofList, const ProcessInfo &rCurrentProcessInfo) const override
Definition: mpm_updated_lagrangian_UP.cpp:974
virtual void CalculateAndAddKpp(MatrixType &rK, GeneralVariables &rVariables, const double &rIntegrationWeight)
Definition: mpm_updated_lagrangian_UP.cpp:821
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION(MPMUpdatedLagrangianUP)
Counted pointer of LargeDisplacementElement.
PointerVector is a container like stl vector but using a vector to store pointers to its data.
Definition: pointer_vector.h:72
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307