OGS
SmallDeformation/LocalAssembler/IntegrationPointDataMatrix.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <memory>
7#include <vector>
8
10
11namespace ProcessLib
12{
13namespace LIE
14{
15namespace SmallDeformation
16{
17template <typename ShapeMatricesType, typename BMatricesType,
18 int DisplacementDim>
20{
23 : _solid_material(solid_material),
25 _solid_material.createMaterialStateVariables())
26 {
27 }
28
29 typename BMatricesType::KelvinVectorType _sigma, _sigma_prev;
30 typename BMatricesType::KelvinVectorType _eps, _eps_prev;
31
33 std::unique_ptr<typename MaterialLib::Solids::MechanicsBase<
34 DisplacementDim>::MaterialStateVariables>
36
37 typename BMatricesType::KelvinMatrixType _C;
39
40 typename ShapeMatricesType::NodalRowVectorType N_u;
41 typename ShapeMatricesType::GlobalDimNodalMatrixType dNdx_u;
42
44 {
47 _material_state_variables->pushBackState();
48 }
49
51};
52
53} // namespace SmallDeformation
54} // namespace LIE
55} // namespace ProcessLib
IntegrationPointDataMatrix(MaterialLib::Solids::MechanicsBase< DisplacementDim > &solid_material)
std::unique_ptr< typename MaterialLib::Solids::MechanicsBase< DisplacementDim >::MaterialStateVariables > _material_state_variables