OGS
GetSymmetricTensor.h
Go to the documentation of this file.
1 /*
2  * \file
3  * \copyright
4  * Copyright (c) 2012-2021, OpenGeoSys Community (http://www.opengeosys.org)
5  * Distributed under a Modified BSD License.
6  * See accompanying file LICENSE.txt or
7  * http://www.opengeosys.org/project/license
8  *
9  * Created on March 04, 2020, 5:20 PM
10  */
11 
12 #pragma once
13 
14 #include <Eigen/Dense>
15 
17 #include "MathLib/KelvinVector.h"
18 
19 namespace MaterialPropertyLib
20 {
21 template <int GlobalDim>
22 constexpr int symmetric_tensor_size =
24 
25 template <int GlobalDim>
27  Eigen::Matrix<double, symmetric_tensor_size<GlobalDim>, 1>;
28 
29 template <int GlobalDim>
32 } // namespace MaterialPropertyLib
constexpr int symmetric_tensor_size
Eigen::Matrix< double, symmetric_tensor_size< GlobalDim >, 1 > SymmetricTensor
std::variant< double, Eigen::Matrix< double, 2, 1 >, Eigen::Matrix< double, 3, 1 >, Eigen::Matrix< double, 2, 2 >, Eigen::Matrix< double, 3, 3 >, Eigen::Matrix< double, 4, 1 >, Eigen::Matrix< double, 6, 1 > > PropertyDataType
Definition: Property.h:35
SymmetricTensor< GlobalDim > getSymmetricTensor(MaterialPropertyLib::PropertyDataType const &values)
constexpr int kelvin_vector_dimensions(int const displacement_dim)
Kelvin vector dimensions for given displacement dimension.
Definition: KelvinVector.h:23