OGS
MathLib::KelvinVector::KelvinVector_detail Namespace Reference

Functions

template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, KelvinVectorSize > initDeviatoricProjection ()
template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, KelvinVectorSize > initSphericalProjection ()
template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, 1 > initIdentity2 ()
template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, 1 > initOnes2 ()

Function Documentation

◆ initDeviatoricProjection()

template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, KelvinVectorSize > MathLib::KelvinVector::KelvinVector_detail::initDeviatoricProjection ( )

Definition at line 69 of file KelvinVector-impl.h.

70{
71 Eigen::Matrix<double, KelvinVectorSize, KelvinVectorSize> P_dev =
72 Eigen::Matrix<double, KelvinVectorSize, KelvinVectorSize>::Identity();
73
74 P_dev.template topLeftCorner<3, 3>() -=
75 1. / 3. * Eigen::Matrix<double, 3, 3>::Ones();
76 return P_dev;
77}

◆ initIdentity2()

template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, 1 > MathLib::KelvinVector::KelvinVector_detail::initIdentity2 ( )

Definition at line 91 of file KelvinVector-impl.h.

92{
93 Eigen::Matrix<double, KelvinVectorSize, 1> ivec =
94 Eigen::Matrix<double, KelvinVectorSize, 1>::Zero();
95
96 ivec.template topLeftCorner<3, 1>().setConstant(1.);
97 return ivec;
98}

◆ initOnes2()

template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, 1 > MathLib::KelvinVector::KelvinVector_detail::initOnes2 ( )

Definition at line 101 of file KelvinVector-impl.h.

102{
103 Eigen::Matrix<double, KelvinVectorSize, 1> ivec =
104 Eigen::Matrix<double, KelvinVectorSize, 1>::Ones();
105
106 ivec.template bottomLeftCorner<KelvinVectorSize - 3, 1>().setConstant(
107 std::sqrt(2.));
108
109 return ivec;
110}

◆ initSphericalProjection()

template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, KelvinVectorSize > MathLib::KelvinVector::KelvinVector_detail::initSphericalProjection ( )

Definition at line 81 of file KelvinVector-impl.h.

82{
83 Eigen::Matrix<double, KelvinVectorSize, KelvinVectorSize> P_sph =
84 Eigen::Matrix<double, KelvinVectorSize, KelvinVectorSize>::Zero();
85
86 P_sph.template topLeftCorner<3, 3>().setConstant(1. / 3.);
87 return P_sph;
88}