OGS
MaterialPropertyLib::GetSymmetricTensor< GlobalDim > Struct Template Reference

Detailed Description

template<int GlobalDim>
struct MaterialPropertyLib::GetSymmetricTensor< GlobalDim >

Definition at line 20 of file GetSymmetricTensor.cpp.

Public Member Functions

SymmetricTensor< GlobalDim > operator() (double const &value) const
 
SymmetricTensor< GlobalDim > operator() (Eigen::Vector2d const &values) const
 
SymmetricTensor< GlobalDim > operator() (Eigen::Vector3d const &values) const
 
SymmetricTensor< GlobalDim > operator() (Eigen::Matrix2d const &values) const
 
SymmetricTensor< GlobalDim > operator() (Eigen::Matrix3d const &values) const
 
SymmetricTensor< GlobalDim > operator() (SymmetricTensor< 2 > const &values) const
 
SymmetricTensor< GlobalDim > operator() (SymmetricTensor< 3 > const &values) const
 
SymmetricTensor< GlobalDim > operator() (Eigen::MatrixXd const &values) const
 

Member Function Documentation

◆ operator()() [1/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( double const & value) const
inline

Definition at line 22 of file GetSymmetricTensor.cpp.

23 {
24 SymmetricTensor<GlobalDim> result = SymmetricTensor<GlobalDim>::Zero();
25 result.template head<3>() = Eigen::Vector3d::Constant(value);
26 return result;
27 }
Eigen::Matrix< double, symmetric_tensor_size< GlobalDim >, 1 > SymmetricTensor

◆ operator()() [2/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( Eigen::Matrix2d const & values) const
inline

Definition at line 43 of file GetSymmetricTensor.cpp.

44 {
45 if constexpr (GlobalDim == 2)
46 {
48 result << values(0, 0), values(1, 1), 0., values(0, 1);
49 return result;
50 }
52 "Cannot convert 2d matrix with values [{}] to 3d symmetric Tensor.",
53 values);
54 }
#define OGS_FATAL(...)
Definition Error.h:26

References OGS_FATAL.

◆ operator()() [3/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( Eigen::Matrix3d const & values) const
inline

Definition at line 56 of file GetSymmetricTensor.cpp.

57 {
58 if constexpr (GlobalDim == 3)
59 {
61 result << values(0, 0), values(1, 1), values(2, 2), values(0, 1),
62 values(1, 2), values(0, 2);
63 return result;
64 }
66 "Cannot convert 3d matrix with values [{}] to 2d symmetric "
67 "Tensor.",
68 values);
69 }

References OGS_FATAL.

◆ operator()() [4/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( Eigen::MatrixXd const & values) const
inline

Definition at line 97 of file GetSymmetricTensor.cpp.

98 {
100 "Cannot convert dynamic Eigen {}x{} matrix with values [{}] to "
101 "{:d}d symmetric tensor.",
102 values.rows(), values.cols(), values, GlobalDim);
103 }

References OGS_FATAL.

◆ operator()() [5/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( Eigen::Vector2d const & values) const
inline

Definition at line 29 of file GetSymmetricTensor.cpp.

30 {
31 SymmetricTensor<GlobalDim> result = SymmetricTensor<GlobalDim>::Zero();
32 result.template head<2>() = values;
33 return result;
34 }

◆ operator()() [6/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( Eigen::Vector3d const & values) const
inline

Definition at line 36 of file GetSymmetricTensor.cpp.

37 {
38 SymmetricTensor<GlobalDim> result = SymmetricTensor<GlobalDim>::Zero();
39 result.template head<3>() = values;
40 return result;
41 }

◆ operator()() [7/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( SymmetricTensor< 2 > const & values) const
inline

Definition at line 71 of file GetSymmetricTensor.cpp.

73 {
74 if constexpr (GlobalDim == 2)
75 {
76 return values;
77 }
79 "Cannot convert 3d symmetric tensor with values [{}] to 2d "
80 "symmetric tensor.",
81 values);
82 }

References OGS_FATAL.

◆ operator()() [8/8]

template<int GlobalDim>
SymmetricTensor< GlobalDim > MaterialPropertyLib::GetSymmetricTensor< GlobalDim >::operator() ( SymmetricTensor< 3 > const & values) const
inline

Definition at line 84 of file GetSymmetricTensor.cpp.

86 {
87 if constexpr (GlobalDim == 3)
88 {
89 return values;
90 }
92 "Cannot convert 2d symmetric tensor with values [{}] to 3d "
93 "symmetric tensor.",
94 values);
95 }

References OGS_FATAL.


The documentation for this struct was generated from the following file: