64 template <
int Dimension>
71 template <
int Dimension>
72 Eigen::Matrix<double, Dimension, Dimension>
rotateTensor(
75 template <
int Dimension,
typename Derived>
76 Eigen::Matrix<double, Dimension, Dimension>
rotateTensor(
77 Eigen::MatrixBase<Derived>
const& tensor,
80 template <
int Dimension>
85 std::array<Parameter<double>
const*, 3>
_base;
92template <
int Dimension,
typename Derived>
94 Eigen::MatrixBase<Derived>
const& tensor,
SpatialPosition const& pos)
const
97 return R * tensor * R.transpose();
104extern template Eigen::Matrix<double, 2, 2>
107extern template Eigen::Matrix<double, 3, 3>
A local coordinate system used for tensor transformations.
std::array< Parameter< double > const *, 3 > _base
Eigen::Matrix< double, Dimension, Dimension > transformation(SpatialPosition const &pos) const
Eigen::Matrix< double, 3, 3 > transformationFromSingleBase_3d(SpatialPosition const &pos) const
Eigen::Matrix< double, 3, 3 > transformation_3d(SpatialPosition const &pos) const
Eigen::Matrix< double, Dimension, Dimension > rotateTensor(std::vector< double > const &values, SpatialPosition const &pos) const
Eigen::Matrix< double, Dimension, Dimension > rotateDiagonalTensor(std::vector< double > const &values, SpatialPosition const &pos) const
CoordinateSystem(Parameter< double > const &unit_direction)