OGS
IntegrationPointDataMatrix.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <memory>
14#include <vector>
15
17
18namespace ProcessLib
19{
20namespace LIE
21{
22namespace HydroMechanics
23{
24template <typename BMatricesType, typename ShapeMatrixTypeDisplacement,
25 typename ShapeMatrixTypePressure, int GlobalDim, unsigned NPoints>
27{
36
37 using GlobalDimVector = Eigen::Matrix<double, GlobalDim, 1>;
38
39 typename ShapeMatrixTypeDisplacement::NodalRowVectorType N_u;
40 typename ShapeMatrixTypeDisplacement::GlobalDimNodalMatrixType dNdx_u;
41 typename ShapeMatrixTypeDisplacement::template MatrixType<
42 GlobalDim, NPoints * GlobalDim>
44 typename BMatricesType::KelvinVectorType sigma_eff, sigma_eff_prev;
45 typename BMatricesType::KelvinVectorType eps, eps_prev;
46
47 typename ShapeMatrixTypePressure::NodalRowVectorType N_p;
48 typename ShapeMatrixTypePressure::GlobalDimNodalMatrixType dNdx_p;
49
51 typename ShapeMatrixTypePressure::GlobalDimVectorType;
52
54 std::unique_ptr<typename MaterialLib::Solids::MechanicsBase<
55 GlobalDim>::MaterialStateVariables>
57
58 typename BMatricesType::KelvinMatrixType C;
60
62
64 {
65 eps_prev = eps;
67 material_state_variables->pushBackState();
68 }
69
71};
72
73} // namespace HydroMechanics
74} // namespace LIE
75} // namespace ProcessLib
MaterialLib::Solids::MechanicsBase< GlobalDim > & solid_material
ShapeMatrixTypeDisplacement::template MatrixType< GlobalDim, NPoints *GlobalDim > H_u
typename ShapeMatrixTypePressure::GlobalDimVectorType GlobalDimVectorType
ShapeMatrixTypeDisplacement::GlobalDimNodalMatrixType dNdx_u
std::unique_ptr< typename MaterialLib::Solids::MechanicsBase< GlobalDim >::MaterialStateVariables > material_state_variables
ShapeMatrixTypePressure::GlobalDimNodalMatrixType dNdx_p
IntegrationPointDataMatrix(MaterialLib::Solids::MechanicsBase< GlobalDim > &solid_material)