10template <
typename T,
int Dim>
16template <
typename T,
int Dim>
33template <
typename T,
typename S,
int Dim>
55 return getMatImpl<double, 3>(t_val, t_vec, f);
61 return getMatImpl<FTensor::PackPtr<double *, 1>, 3>(t_val, t_vec, f);
67 return getDiffMatImpl<double, 3>(t_val, t_vec, f, d_f, nb);
74 return getDiffMatImpl<FTensor::PackPtr<double *, 1>, 3>(t_val, t_vec, f, d_f,
83 return getDiffDiffMatImpl<double, FTensor::Tensor2<double, 3, 3>, 3>(
84 t_val, t_vec, f, d_f, dd_f, t_S, nb);
92 return getDiffDiffMatImpl<FTensor::PackPtr<double *, 1>,
94 t_val, t_vec, f, d_f, dd_f, t_S, nb);
101 return getDiffDiffMatImpl<double, FTensor::Tensor2_symmetric<double, 3>, 3>(
102 t_val, t_vec, f, d_f, dd_f, t_S, nb);
108 return getMatImpl<double, 2>(t_val, t_vec, f);
114 return getDiffMatImpl<double, 2>(t_val, t_vec, f, d_f, nb);
122 return getDiffDiffMatImpl<double, FTensor::Tensor2<double, 2, 2>, 2>(
123 t_val, t_vec, f, d_f, dd_f, t_S, nb);
130 return getDiffDiffMatImpl<double, FTensor::Tensor2_symmetric<double, 2>, 2>(
131 t_val, t_vec, f, d_f, dd_f, t_S, nb);
Tensors class implemented by Walter Landry.
#define THROW_MESSAGE(msg)
Throw MoFEM exception.
boost::function< T(const T)> Fun
FTensor::Ddg< double, 3, 3 > getDiffMat(Val< double, 3 > &t_val, Vec< double, 3 > &t_vec, Fun< double > f, Fun< double > d_f, const int nb)
Get the Diff Mat object.
FTensor::Tensor2_symmetric< double, 3 > getMat(Val< double, 3 > &t_val, Vec< double, 3 > &t_vec, Fun< double > f)
Get the Mat object.
FTensor::Ddg< double, Dim, Dim > getDiffDiffMatImpl(Val< T, Dim > &t_val, Vec< T, Dim > &t_vec, Fun< double > f, Fun< double > d_f, Fun< double > dd_f, S &t_S, const int nb)
FTensor::Ddg< double, Dim, Dim > getDiffMatImpl(Val< T, Dim > &t_val, Vec< T, Dim > &t_vec, Fun< double > f, Fun< double > d_f, const int nb)
FTensor::Tensor2_symmetric< double, Dim > getMatImpl(Val< T, Dim > &t_val, Vec< T, Dim > &t_vec, Fun< double > f)
FTensor::Ddg< double, 3, 3 > getDiffDiffMat(Val< double, 3 > &t_val, Vec< double, 3 > &t_vec, Fun< double > f, Fun< double > d_f, Fun< double > dd_f, FTensor::Tensor2< double, 3, 3 > &t_S, const int nb)
auto getMat(Fun f)
Get matrix.
auto getDiffMat(Fun f, Fun d_f)
Get derivative of matrix.
auto getDiffDiffMat(Fun f, Fun d_f, Fun dd_f, T &t_S)
Get second direvarive of matrix.