OGS
BMatrixPolicy.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
8
9namespace ProcessLib
10{
13template <typename ShapeFunction, int DisplacementDim>
15{
16private:
18 template <int N>
19 using VectorType =
21 DisplacementDim>::template VectorType<N>;
22
24 template <int N, int M>
26 ShapeFunction, DisplacementDim>::template MatrixType<N, M>;
27
28 // Dimensions of specific b-matrix for n-points and displacement dimension.
29 static int const _number_of_dof = ShapeFunction::NPOINTS * DisplacementDim;
30 static int const _kelvin_vector_size =
32
33public:
35
38
42
47
49
51};
52} // namespace ProcessLib
EigenFixedShapeMatrixPolicy< ShapeFunction, GlobalDim > ShapeMatrixPolicyType
MatrixType< _kelvin_vector_size, _number_of_dof > BMatrixType
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
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.