v0.14.0 |
Classes | |
struct | d2MCoefficients |
struct | d2MImpl |
struct | EigenMatrixImp |
struct | Fdd4MImpl |
struct | FirstMatrixDirectiveImpl |
struct | GetDiffDiffMatImpl |
struct | GetDiffDiffMatImpl< E, C, T1, FTensor::Tensor2_symmetric< VT2, DimT2 > > |
struct | GetDiffMatImpl |
struct | GetMatImpl |
struct | ReconstructMatImpl |
struct | SecondMatrixDirectiveImpl |
Typedefs | |
template<typename T , int Dim> | |
using | Val = const FTensor::Tensor1< T, Dim > |
template<typename T , int Dim> | |
using | Vec = const FTensor::Tensor2< T, Dim, Dim > |
template<typename T > | |
using | Fun = boost::function< T(const T)> |
template<int N> | |
using | Number = FTensor::Number< N > |
Functions | |
template<typename T , int Dim> | |
FTensor::Tensor2_symmetric< double, Dim > | getMatImpl (Val< T, Dim > &t_val, Vec< T, Dim > &t_vec, Fun< double > f) |
template<typename T , int Dim> | |
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) |
template<typename T , typename S , int Dim> | |
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::Tensor2_symmetric< double, 3 > | getMat (Val< double, 3 > &t_val, Vec< double, 3 > &t_vec, Fun< double > f) |
Get the Mat object. More... | |
FTensor::Tensor2_symmetric< double, 3 > | getMat (Val< FTensor::PackPtr< double *, 1 >, 3 > &t_val, Vec< FTensor::PackPtr< double *, 1 >, 3 > &t_vec, Fun< double > f) |
Get the Mat object. More... | |
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. More... | |
FTensor::Ddg< double, 3, 3 > | getDiffMat (Val< FTensor::PackPtr< double *, 1 >, 3 > &t_val, Vec< FTensor::PackPtr< double *, 1 >, 3 > &t_vec, Fun< double > f, Fun< double > d_f, const int nb) |
Get the Diff Mat object. More... | |
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) |
FTensor::Ddg< double, 3, 3 > | getDiffDiffMat (Val< FTensor::PackPtr< double *, 1 >, 3 > &t_val, Vec< FTensor::PackPtr< double *, 1 >, 3 > &t_vec, Fun< double > f, Fun< double > d_f, Fun< double > dd_f, FTensor::Tensor2< double, 3, 3 > &t_S, const int nb) |
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_symmetric< double, 3 > &t_S, const int nb) |
Get the Diff Diff Mat object. More... | |
FTensor::Ddg< double, 3, 3 > | getDiffDiffMat (Val< FTensor::PackPtr< double *, 1 >, 3 > &t_val, Vec< FTensor::PackPtr< double *, 1 >, 3 > &t_vec, Fun< double > f, Fun< double > d_f, Fun< double > dd_f, FTensor::Tensor2_symmetric< double, 3 > &t_S, const int nb) |
FTensor::Tensor2_symmetric< double, 2 > | getMat (Val< double, 2 > &t_val, Vec< double, 2 > &t_vec, Fun< double > f) |
Get the Mat object. More... | |
FTensor::Ddg< double, 2, 2 > | getDiffMat (Val< double, 2 > &t_val, Vec< double, 2 > &t_vec, Fun< double > f, Fun< double > d_f, const int nb) |
Get the Diff Mat object. More... | |
FTensor::Ddg< double, 2, 2 > | getDiffDiffMat (Val< double, 2 > &t_val, Vec< double, 2 > &t_vec, Fun< double > f, Fun< double > d_f, Fun< double > dd_f, FTensor::Tensor2< double, 2, 2 > &t_S, const int nb) |
FTensor::Ddg< double, 2, 2 > | getDiffDiffMat (Val< double, 2 > &t_val, Vec< double, 2 > &t_vec, Fun< double > f, Fun< double > d_f, Fun< double > dd_f, FTensor::Tensor2_symmetric< double, 2 > &t_S, const int nb) |
template<int N1, int N2, int Dim> | |
auto | get_sym_index (const Number< N1 > &, const Number< N2 > &, const Number< Dim > &) |
auto | get_sym_index (const int N1, const int N2, const int Dim) |
template<int N1, int N2, int Dim> | |
auto | get_nodiag_index (const Number< N1 > &, const Number< N2 > &, const Number< Dim > &) |
auto | get_nodiag_index (const int N1, const int N2, int Dim) |
using EigenMatrix::Fun = typedef boost::function<T(const T)> |
Definition at line 67 of file MatrixFunction.hpp.
using EigenMatrix::Number = typedef FTensor::Number<N> |
Definition at line 55 of file MatrixFunctionTemplate.hpp.
using EigenMatrix::Val = typedef const FTensor::Tensor1<T, Dim> |
Definition at line 65 of file MatrixFunction.hpp.
using EigenMatrix::Vec = typedef const FTensor::Tensor2<T, Dim, Dim> |
Definition at line 66 of file MatrixFunction.hpp.
|
inline |
Definition at line 83 of file MatrixFunctionTemplate.hpp.
|
inline |
Definition at line 74 of file MatrixFunctionTemplate.hpp.
|
inline |
Definition at line 66 of file MatrixFunctionTemplate.hpp.
|
inline |
Definition at line 58 of file MatrixFunctionTemplate.hpp.
FTensor::Ddg< double, 2, 2 > EigenMatrix::getDiffDiffMat | ( | Val< double, 2 > & | t_val, |
Vec< double, 2 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
Fun< double > | dd_f, | ||
FTensor::Tensor2< double, 2, 2 > & | t_S, | ||
const int | nb | ||
) |
Definition at line 127 of file MatrixFunction.cpp.
FTensor::Ddg< double, 2, 2 > EigenMatrix::getDiffDiffMat | ( | Val< double, 2 > & | t_val, |
Vec< double, 2 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
Fun< double > | dd_f, | ||
FTensor::Tensor2_symmetric< double, 2 > & | t_S, | ||
const int | nb | ||
) |
Definition at line 137 of file MatrixFunction.cpp.
FTensor::Ddg< double, 3, 3 > EigenMatrix::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 | ||
) |
Definition at line 78 of file MatrixFunction.cpp.
FTensor::Ddg< double, 3, 3 > EigenMatrix::getDiffDiffMat | ( | Val< double, 3 > & | t_val, |
Vec< double, 3 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
Fun< double > | dd_f, | ||
FTensor::Tensor2_symmetric< double, 3 > & | t_S, | ||
const int | nb | ||
) |
Get the Diff Diff Mat object.
\[ LS_{klmn} = S_{ij} \frac{\partial^2 B_{ij}}{\partial A_{kl} \partial A_{mn} } \]
t_val | eigen values |
t_vec | eigen vectors |
f | function |
d_f | directive of function |
dd_f | second directive of function |
t_S | S tensor |
nb | number of nonzero eigen values |
Definition at line 98 of file MatrixFunction.cpp.
FTensor::Ddg< double, 3, 3 > EigenMatrix::getDiffDiffMat | ( | Val< FTensor::PackPtr< double *, 1 >, 3 > & | t_val, |
Vec< FTensor::PackPtr< double *, 1 >, 3 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
Fun< double > | dd_f, | ||
FTensor::Tensor2< double, 3, 3 > & | t_S, | ||
const int | nb | ||
) |
Definition at line 88 of file MatrixFunction.cpp.
FTensor::Ddg< double, 3, 3 > EigenMatrix::getDiffDiffMat | ( | Val< FTensor::PackPtr< double *, 1 >, 3 > & | t_val, |
Vec< FTensor::PackPtr< double *, 1 >, 3 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
Fun< double > | dd_f, | ||
FTensor::Tensor2_symmetric< double, 3 > & | t_S, | ||
const int | nb | ||
) |
Definition at line 106 of file MatrixFunction.cpp.
FTensor::Ddg<double, Dim, Dim> EigenMatrix::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 | ||
) |
Definition at line 35 of file MatrixFunction.cpp.
FTensor::Ddg< double, 2, 2 > EigenMatrix::getDiffMat | ( | Val< double, 2 > & | t_val, |
Vec< double, 2 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
const int | nb | ||
) |
Get the Diff Mat object.
\[ P_{ijkl} = \frac{\partial B_{ij}}{\partial A_{kl}} \]
t_val | eigen values |
t_vec | eigen vector |
f | function |
d_f | directive of function |
nb | number of nonequal eigen valuse |
Definition at line 121 of file MatrixFunction.cpp.
FTensor::Ddg< double, 3, 3 > EigenMatrix::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.
\[ P_{ijkl} = \frac{\partial B_{ij}}{\partial A_{kl}} \]
t_val | eigen values |
t_vec | eigen vector |
f | function |
d_f | directive of function |
nb | number of nonequal eigen valuse |
Definition at line 64 of file MatrixFunction.cpp.
FTensor::Ddg< double, 3, 3 > EigenMatrix::getDiffMat | ( | Val< FTensor::PackPtr< double *, 1 >, 3 > & | t_val, |
Vec< FTensor::PackPtr< double *, 1 >, 3 > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
const int | nb | ||
) |
Get the Diff Mat object.
\[ P_{ijkl} = \frac{\partial B_{ij}}{\partial A_{kl}} \]
t_val | eigen values |
t_vec | eigen vector |
f | function |
d_f | directive of function |
nb | number of nonequal eigen valuse |
Definition at line 71 of file MatrixFunction.cpp.
FTensor::Ddg<double, Dim, Dim> EigenMatrix::getDiffMatImpl | ( | Val< T, Dim > & | t_val, |
Vec< T, Dim > & | t_vec, | ||
Fun< double > | f, | ||
Fun< double > | d_f, | ||
const int | nb | ||
) |
Definition at line 17 of file MatrixFunction.cpp.
FTensor::Tensor2_symmetric< double, 2 > EigenMatrix::getMat | ( | Val< double, 2 > & | t_val, |
Vec< double, 2 > & | t_vec, | ||
Fun< double > | f | ||
) |
Get the Mat object.
\[ \mathbf{B} = f(\mathbf{A}) \]
\[ B_{ij} = \sum_{a}^d f(\lambda^a) n^a_i n^a_j \]
where \(a\) is eigen value number.
t_val | eigen values |
t_vec | eigen vector |
f | function |
Definition at line 115 of file MatrixFunction.cpp.
FTensor::Tensor2_symmetric< double, 3 > EigenMatrix::getMat | ( | Val< double, 3 > & | t_val, |
Vec< double, 3 > & | t_vec, | ||
Fun< double > | f | ||
) |
Get the Mat object.
\[ \mathbf{B} = f(\mathbf{A}) \]
\[ B_{ij} = \sum_{a}^d f(\lambda^a) n^a_i n^a_j \]
where \(a\) is eigen value number.
t_val | eigen values |
t_vec | eigen vector |
f | function |
Definition at line 53 of file MatrixFunction.cpp.
FTensor::Tensor2_symmetric< double, 3 > EigenMatrix::getMat | ( | Val< FTensor::PackPtr< double *, 1 >, 3 > & | t_val, |
Vec< FTensor::PackPtr< double *, 1 >, 3 > & | t_vec, | ||
Fun< double > | f | ||
) |
Get the Mat object.
\[ \mathbf{B} = f(\mathbf{A}) \]
\[ B_{ij} = \sum_{a}^d f(\lambda^a) n^a_i n^a_j \]
where \(a\) is eigen value number.
t_val | eigen values |
t_vec | eigen vector |
f | function |
Definition at line 59 of file MatrixFunction.cpp.
FTensor::Tensor2_symmetric<double, Dim> EigenMatrix::getMatImpl | ( | Val< T, Dim > & | t_val, |
Vec< T, Dim > & | t_vec, | ||
Fun< double > | f | ||
) |
Definition at line 12 of file MatrixFunction.cpp.