OGS
BMatrixPolicy.h
Go to the documentation of this file.
1
11#pragma once
12
15
16namespace ProcessLib
17{
20template <typename ShapeFunction, int DisplacementDim>
22{
23private:
25 template <int N>
26 using VectorType =
27 typename ShapeMatrixPolicyType<ShapeFunction,
28 DisplacementDim>::template VectorType<N>;
29
31 template <int N, int M>
33 ShapeFunction, DisplacementDim>::template MatrixType<N, M>;
34
35 // Dimensions of specific b-matrix for n-points and displacement dimension.
36 static int const _number_of_dof = ShapeFunction::NPOINTS * DisplacementDim;
37 static int const _kelvin_vector_size =
39
40public:
42
45
49
54
56
58};
59} // namespace ProcessLib
MatrixType< _kelvin_vector_size, _number_of_dof > BMatrixType
static int const _number_of_dof
typename ShapeMatrixPolicyType< ShapeFunction, DisplacementDim >::template VectorType< N > VectorType
Reusing the ShapeMatrixPolicy vector type.
MatrixType< _kelvin_vector_size, _kelvin_vector_size > KelvinMatrixType
typename ShapeMatrixPolicyType< ShapeFunction, DisplacementDim >::template MatrixType< N, M > MatrixType
Reusing the ShapeMatrixPolicy matrix type.
MatrixType< 3, ShapeFunction::NPOINTS > BBarMatrixType
MatrixType< _number_of_dof, _number_of_dof > StiffnessMatrixType
static int const _kelvin_vector_size
VectorType< _number_of_dof > NodalForceVectorType
Rhs residual.
VectorType< _kelvin_vector_size > KelvinVectorType
constexpr int kelvin_vector_dimensions(int const displacement_dim)
Kelvin vector dimensions for given displacement dimension.