# Mathematics for mechanical problems

## 1. Preliminaries

Direct notation is adopted throughout. Occasional use is made of index notation, the summation convention for repeated indices being implied. Bold letters are used to denote vectors and tensors in order to distinguish them from scalars. $$\delta_{ij}$$ denotes the Kronecker delta, given by
$\delta_{ij}=\left\{\begin{matrix} 1, & i=j, \\ 0, & i\neq j. \end{matrix}\right.$
The fourth order symmetric identity tensor is defined as $$\mathcal{I}_{ijkl}=\frac{1}{2}(\delta_{ik}\delta_{jl}+\delta_{il}\delta_{jk})$$. The fourth order volumetric identity tensor is defined as $$\mathcal{I}^{\textrm{vol}}_{ijkl}=\frac{1}{3}\delta_{ij}\delta_{kl}$$. The fourth order deviatoric identity tensor is defined as $$\mathcal{I}^{\textrm{dev}}_{ijkl}=\mathcal{I}_{ijkl}-\mathcal{I}^{\textrm{vol}}_{ijkl}$$.

## 2. Tensors conventions

In the small strain elasticity theory, the second order stress and strain tensors are connected with the relations
$\sigma_{ij}=L_{ijkl}\varepsilon_{kl}, ~~~ \varepsilon_{kl}=M_{klij}\sigma_{ij}, \label{eq:mechanical_problem}$
where $$\sigma_{ij}$$ is the stress tensor, $$\varepsilon_{ij}$$ is the strain tensor, $$L_{ijkl}$$ is the elastic stiffness tensor and $$M_{ijkl}$$ is the elastic compliance tensor. Following the Voigt notation, ABAQUS formalism, and the way C++ represents matrices, the stress tensor is written in a vector form as
$\boldsymbol{\sigma}=\left(\begin{matrix} \sigma_{11} \\ \sigma_{22} \\ \sigma_{33} \\ \sigma_{12} \\ \sigma_{13} \\ \sigma_{23} \end{matrix}\right)=\left(\begin{matrix} \sigma_{0} \\ \sigma_{1} \\ \sigma_{2} \\ \sigma_{3} \\ \sigma_{4} \\ \sigma_{5} \end{matrix}\right),$
the strain tensor as
$\widetilde{\boldsymbol{\varepsilon}}=\left(\begin{matrix} \varepsilon_{11} \\ \varepsilon_{22} \\ \varepsilon_{33} \\ 2\varepsilon_{12} \\ 2\varepsilon_{13} \\ 2\varepsilon_{23} \end{matrix}\right)=\left(\begin{matrix} \tilde{\varepsilon}_{0} \\ \tilde{\varepsilon}_{1} \\ \tilde{\varepsilon}_{2} \\ \tilde{\varepsilon}_{3} \\ \tilde{\varepsilon}_{4} \\ \tilde{\varepsilon}_{5} \end{matrix}\right),$
the elastic stiffness tensor as
$\begin{array}{rl} \boldsymbol{L}=&\left(\begin{matrix} L_{1111} & L_{1122} & L_{1133} & L_{1112} & L_{1113} & L_{1123} \\ L_{2211} & L_{2222} & L_{2233} & L_{2212} & L_{2213} & L_{2223} \\ L_{3311} & L_{3322} & L_{3333} & L_{3312} & L_{3313} & L_{3323} \\ L_{1211} & L_{1222} & L_{1233} & L_{1212} & L_{1213} & L_{1223} \\ L_{1311} & L_{1322} & L_{1333} & L_{1312} & L_{1313} & L_{1323} \\ L_{2311} & L_{2322} & L_{2333} & L_{2312} & L_{2313} & L_{2323} \end{matrix}\right) \\ \\ =&\left(\begin{matrix} L_{00} & L_{01} & L_{02} & L_{03} & L_{04} & L_{05} \\ L_{10} & L_{11} & L_{12} & L_{13} & L_{14} & L_{15} \\ L_{20} & L_{21} & L_{22} & L_{23} & L_{24} & L_{25} \\ L_{30} & L_{31} & L_{32} & L_{33} & L_{34} & L_{35} \\ L_{40} & L_{41} & L_{42} & L_{43} & L_{44} & L_{45} \\ L_{50} & L_{51} & L_{52} & L_{53} & L_{54} & L_{55} \end{matrix}\right),\end{array}$
and the elastic compliance tensor as
$\begin{array}{rl}\widehat{\boldsymbol{M}}=&\left(\begin{matrix} M_{1111} & M_{1122} & M_{1133} & 2M_{1112} & 2M_{1113} & 2M_{1123} \\ M_{2211} & M_{2222} & M_{2233} & 2M_{2212} & 2M_{2213} & 2M_{2223} \\ M_{3311} & M_{3322} & M_{3333} & 2M_{3312} & 2M_{3313} & 2M_{3323} \\ 2M_{1211} & 2M_{1222} & 2M_{1233} & 4M_{1212} & 4M_{1213} & 4M_{1223} \\ 2M_{1311} & 2M_{1322} & 2M_{1333} & 4M_{1312} & 4M_{1313} & 4M_{1323} \\ 2M_{2311} & 2M_{2322} & 2M_{2333} & 4M_{2312} & 4M_{2313} & 4M_{2323} \end{matrix}\right) \\ \\ =&\left(\begin{matrix} \widehat{M}_{00} & \widehat{M}_{01} & \widehat{M}_{02} & \widehat{M}_{03} & \widehat{M}_{04} & \widehat{M}_{05} \\ \widehat{M}_{10} & \widehat{M}_{11} & \widehat{M}_{12} & \widehat{M}_{13} & \widehat{M}_{14} & \widehat{M}_{15} \\ \widehat{M}_{20} & \widehat{M}_{21} & \widehat{M}_{22} & \widehat{M}_{23} & \widehat{M}_{24} & \widehat{M}_{25} \\ \widehat{M}_{30} & \widehat{M}_{31} & \widehat{M}_{32} & \widehat{M}_{33} & \widehat{M}_{34} & \widehat{M}_{35} \\ \widehat{M}_{40} & \widehat{M}_{41} & \widehat{M}_{42} & \widehat{M}_{43} & \widehat{M}_{44} & \widehat{M}_{45} \\ \widehat{M}_{50} & \widehat{M}_{51} & \widehat{M}_{52} & \widehat{M}_{53} & \widehat{M}_{54} & \widehat{M}_{55} \end{matrix}\right).\end{array}$
For the micromechanics studies, it is also convenient to identify the Eshelby tensor $$S_{ijkl}$$, the local strain concentration tensor $$T_{ijkl}$$ and the global strain concentration tensors $$A_{ijkl}$$ (for details see Qu and Cherkaoui, 2006). These tensors are expressed in SMART+ in the form
$\begin{array}{rl}\widetilde{\boldsymbol{S}}=&\left(\begin{matrix} S_{1111} & S_{1122} & S_{1133} & S_{1112} & S_{1113} & S_{1123} \\ S_{2211} & S_{2222} & S_{2233} & S_{2212} & S_{2213} & S_{2223} \\ S_{3311} & S_{3322} & S_{3333} & S_{3312} & S_{3313} & S_{3323} \\ 2S_{1211} & 2S_{1222} & 2S_{1233} & 2S_{1212} & 2S_{1213} & 2S_{1223} \\ 2S_{1311} & 2S_{1322} & 2S_{1333} & 2S_{1312} & 2S_{1313} & 2S_{1323} \\ 2S_{2311} & 2S_{2322} & 2S_{2333} & 2S_{2312} & 2S_{2313} & 2S_{2323} \end{matrix}\right) \\ \\ =&\left(\begin{matrix} \tilde{S}_{00} & \tilde{S}_{01} & \tilde{S}_{02} & \tilde{S}_{03} & \tilde{S}_{04} & \tilde{S}_{05} \\ \tilde{S}_{10} & \tilde{S}_{11} & \tilde{S}_{12} & \tilde{S}_{13} & \tilde{S}_{14} & \tilde{S}_{15} \\ \tilde{S}_{20} & \tilde{S}_{21} & \tilde{S}_{22} & \tilde{S}_{23} & \tilde{S}_{24} & \tilde{S}_{25} \\ \tilde{S}_{30} & \tilde{S}_{31} & \tilde{S}_{32} & \tilde{S}_{33} & \tilde{S}_{34} & \tilde{S}_{35} \\ \tilde{S}_{40} & \tilde{S}_{41} & \tilde{S}_{42} & \tilde{S}_{43} & \tilde{S}_{44} & \tilde{S}_{45} \\ \tilde{S}_{50} & \tilde{S}_{51} & \tilde{S}_{52} & \tilde{S}_{53} & \tilde{S}_{54} & \tilde{S}_{55} \end{matrix}\right).\end{array}$

### 2.1 Fourth order tensors in SMART+

In the classical continuum theory, the equations are usually written in tensor notation along with Einstein summation convention. In SMART+, certain ”matrix” notations of a fourth order tensor with minor symmetries is defined. A 6×6 matrix $$\boldsymbol{A}$$ can be written as
$\boldsymbol{A}=\left(\begin{matrix} A_{00} & A_{01} & A_{02} & A_{03} & A_{04} & A_{05} \\ A_{10} & A_{11} & A_{12} & A_{13} & A_{14} & A_{15} \\ A_{20} & A_{21} & A_{22} & A_{23} & A_{24} & A_{25} \\ A_{30} & A_{31} & A_{32} & A_{33} & A_{34} & A_{35} \\ A_{40} & A_{41} & A_{42} & A_{43} & A_{44} & A_{45} \\ A_{50} & A_{51} & A_{52} & A_{53} & A_{54} & A_{55} \end{matrix}\right).$
From $$\boldsymbol{A}$$ the following matrices can also be defined:
$\begin{array}{c}\widetilde{\boldsymbol{A}}=\left(\begin{matrix} A_{00} & A_{01} & A_{02} & A_{03} & A_{04} & A_{05} \\ A_{10} & A_{11} & A_{12} & A_{13} & A_{14} & A_{15} \\ A_{20} & A_{21} & A_{22} & A_{23} & A_{24} & A_{25} \\ 2A_{30} & 2A_{31} & 2A_{32} & 2A_{33} & 2A_{34} & 2A_{35} \\ 2A_{40} & 2A_{41} & 2A_{42} & 2A_{43} & 2A_{44} & 2A_{45} \\ 2A_{50} & 2A_{51} & 2A_{52} & 2A_{53} & 2A_{54} & 2A_{55} \end{matrix}\right),\\ \\ \overline{\boldsymbol{A}}=\left(\begin{matrix} A_{00} & A_{01} & A_{02} & 2A_{03} & 2A_{04} & 2A_{05} \\ A_{10} & A_{11} & A_{12} & 2A_{13} & 2A_{14} & 2A_{15} \\ A_{20} & A_{21} & A_{22} & 2A_{23} & 2A_{24} & 2A_{25} \\ A_{30} & A_{31} & A_{32} & 2A_{33} & 2A_{34} & 2A_{35} \\ A_{40} & A_{41} & A_{42} & 2A_{43} & 2A_{44} & 2A_{45} \\ A_{50} & A_{51} & A_{52} & 2A_{53} & 2A_{54} & 2A_{55} \end{matrix}\right),\\ \\ \widehat{\boldsymbol{A}}=\left(\begin{matrix} A_{00} & A_{01} & A_{02} & 2A_{03} & 2A_{04} & 2A_{05} \\ A_{10} & A_{11} & A_{12} & 2A_{13} & 2A_{14} & 2A_{15} \\ A_{20} & A_{21} & A_{22} & 2A_{23} & 2A_{24} & 2A_{25} \\ 2A_{30} & 2A_{31} & 2A_{32} & 4A_{33} & 4A_{34} & 4A_{35} \\ 2A_{40} & 2A_{41} & 2A_{42} & 4A_{43} & 4A_{44} & 4A_{45} \\ 2A_{50} & 2A_{51} & 2A_{52} & 4A_{53} & 4A_{54} & 4A_{55} \end{matrix}\right).\end{array}$
The following properties hold for these four types of the $$\boldsymbol{A}$$ representation:

#### 2.1.1 Inversion identities

In fourth order tensors that respect minor symmetries (connect second order symmetric tensors) the inverse of $$L_{ijkl}$$ is the tensor $$M_{ijkl}$$, for which it holds
$L_{ijmn}M_{mnkl}=\mathcal{I}_{ijkl},$
where $$\mathcal{I}_{ijkl}$$ is the fourth order symmetric identity tensor. From the above relation the following properties are easily shown in matrix notation:
$\boldsymbol{L}^{-1}=\widehat{\boldsymbol{M}}, ~~~~~ \widehat{\boldsymbol{L}}^{-1}=\boldsymbol{M}, ~~~~~ \widetilde{\boldsymbol{L}}^{-1}=\widetilde{\boldsymbol{M}}, ~~~~~ \overline{\boldsymbol{L}}^{-1}=\overline{\boldsymbol{M}}.$
It is also necessary to be mentioned that
$\widetilde{\mathcal{I}}=\overline{\mathcal{I}}=\boldsymbol{I}= \left(\begin{matrix} 1 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 \end{matrix}\right).$

#### 2.1.2 Multiplication identities

In fourth order tensors that respect minor symmetries (connect second order symmetric tensors) the multiplication of $$A_{ijkl}$$ and $$B_{ijkl}$$ provides the tensor $$C_{ijkl}$$, for which it holds
$C_{ijkl}=A_{ijmn}B_{mnkl}.$
Using this relation it can be shown that all the following properties hold:
$\boldsymbol{A}\widetilde{\boldsymbol{B}}=\overline{\boldsymbol{A}}\boldsymbol{B}=\boldsymbol{C}, ~~~~~ \widetilde{\boldsymbol{A}}\widetilde{\boldsymbol{B}}=\widehat{\boldsymbol{A}}\boldsymbol{B}=\widetilde{\boldsymbol{C}}, ~~~~~ \overline{\boldsymbol{A}}~\overline{\boldsymbol{B}}=\boldsymbol{A}\widehat{\boldsymbol{B}}=\overline{\boldsymbol{C}}, ~~~~~ \widetilde{\boldsymbol{A}}\widehat{\boldsymbol{B}}=\widehat{\boldsymbol{A}}\overline{\boldsymbol{B}}=\widehat{\boldsymbol{C}}.$

#### 2.1.3 Transpose identities

From the structure of the matrices it is easily shown that, if $$\boldsymbol{A}$$ is the transpose of a 6×6 matrix $$\boldsymbol{B}$$, then
$\boldsymbol{B}^T=\boldsymbol{A}, ~~~~~ \widehat{\boldsymbol{B}}^T=\widehat{\boldsymbol{A}}, ~~~~~ \widetilde{\boldsymbol{B}}^T=\overline{\boldsymbol{A}}, ~~~~~ \overline{\boldsymbol{B}}^T=\widetilde{\boldsymbol{A}}.$

### 2.2 Examples of SMART+ formalism

In micromechanics, the following equations hold
$\sigma_{ij}=L_{ijkl}\varepsilon_{kl}, ~~~ \varepsilon_{kl}=M_{klij}\sigma_{ij}, ~~~ \varepsilon^r_{kl}=T_{klij}\varepsilon^0_{ij}, ~~~ \sigma^r_{ij}=H_{ijkl}\sigma^0_{kl},$
where $$^r$$ denotes an inclusion phase variable, $$^0$$ denotes a matrix phase variable, $$T_{ijkl}$$ is the strain interaction tensor and $$H_{ijkl}$$ is the stress interaction tensor. Using the tensor-to-matrix (Voigt-type) convention: $$11\rightarrow0$$, $$22\rightarrow1$$, $$33\rightarrow2$$, $$12\rightarrow3$$, $$13\rightarrow4$$, $$23\rightarrow5$$, these equations can be written in SMART+ convention as
$\boldsymbol{\sigma}=\boldsymbol{L}~\widetilde{\boldsymbol{\varepsilon}}, ~~~\widetilde{\boldsymbol{\varepsilon}}=\widehat{\boldsymbol{M}}~\boldsymbol{\sigma}, ~~~\widetilde{\boldsymbol{\varepsilon}}^r=\widetilde{\boldsymbol{T}}~\widetilde{\boldsymbol{\varepsilon}}^0 ~~~\boldsymbol{\sigma}^r=\overline{\boldsymbol{H}}~\boldsymbol{\sigma}^0.$
These representations respect matrix multiplications and inversions that are useful for micromechanics.

For simplicity it is considered just one inclusion (phase 1) and the matrix (phase 0) in the following micromechanics problem. Additional inclusions are treated with the same way. According to the Mori Tanaka theory, the neccesary equations to obtain the effective elastic stiffness tensor through strain concentration tensors are given by
$\begin{array}{l} {T}^1_{ijkl}=\left(\mathcal{I}_{ijkl}+{S}_{ijmn}{M}_{mnpq}^0({L}_{pqkl}^1-{L}^0_{pqkl})\right)^{-1}\,, \\ {A}^1_{ijkl}=\boldsymbol{T}^1_{ijpq}\left(c^0\mathcal{I}_{pqkl}+c^1{T}^1_{pqkl}\right)^{-1}\,, \\ {L}^e_{ijkl}={L}^0_{ijkl}+c^1\left({L}_{ijpq}^1-{L}_{ijpq}^0\right){A}_{pqkl}^1\,. \end{array}$
On the other hand, the necessary equations to obtain the effective elastic compliance tensor through stress concentration tensors are given by
$\begin{array}{l} {H}_{ijkl}^1={L}_{ijmn}^1{T}^1_{mnpq}{M}_{pqkl}^0\,, \\ {B}_{ijkl}^1={H}_{ijpq}^1\left(c^0\mathcal{I}+c^1{H}_{pqkl}^1\right)^{-1}\,, \\ {M}_{ijkl}^e={M}_{ijkl}^0+c^1\left({M}_{ijpq}^1-{M}_{ijpq}^0\right){B}_{pqkl}^1\,. \end{array}$
Using the SMART+ formalism and the inversion and multiplication properties, yields
$\begin{array}{l} \begin{array}{rl} \left(\boldsymbol{I}+\widetilde{\boldsymbol{S}}\widehat{\boldsymbol{M}}_0(\boldsymbol{L}^1-\boldsymbol{L}^0)\right)^{-1} =& \left(\boldsymbol{I}+\widehat{\boldsymbol{SM}}(\boldsymbol{L}^1-\boldsymbol{L}^0)\right)^{-1} = \left(\boldsymbol{I}+\widetilde{\boldsymbol{SML}}\right)^{-1} \\ =&\left(\widetilde{\boldsymbol{ISML}}\right)^{-1} = \widetilde{\boldsymbol{T}}^1,\end{array} \\ \widetilde{\boldsymbol{T}}^1\left(c_0\boldsymbol{I}+c^1\widetilde{\boldsymbol{T}}^1\right)^{-1}= \widetilde{\boldsymbol{T}}^1\left(\widetilde{\boldsymbol{IT}}\right)^{-1}= \widetilde{\boldsymbol{T}}^1\widetilde{\boldsymbol{IT}}_{\textrm{inv}}=\widetilde{\boldsymbol{A}}^1, \\ \boldsymbol{L}^0+c^1\left(\boldsymbol{L}^1-\boldsymbol{L}^0\right)\widetilde{\boldsymbol{A}}^1= \boldsymbol{L}^0+\boldsymbol{LA}=\boldsymbol{L}^e\,, \\ \boldsymbol{L}^1\widetilde{\boldsymbol{T}}^1\widehat{\boldsymbol{M}}^0=\boldsymbol{L}^1\widehat{\boldsymbol{TM}}=\overline{\boldsymbol{H}}^1\,, \\ \overline{\boldsymbol{H}}^1\left(c^0\boldsymbol{I}+c^1\overline{\boldsymbol{H}}^1\right)^{-1}= \overline{\boldsymbol{H}}^1\left(\overline{\boldsymbol{IH}}\right)^{-1}= \overline{\boldsymbol{H}}^1\overline{\boldsymbol{IH}}_{\textrm{inv}}=\overline{\boldsymbol{B}}^1, \\ \widehat{\boldsymbol{M}}^0+c^1\left(\widehat{\boldsymbol{M}}^1-\widehat{\boldsymbol{M}}^0\right)\overline{\boldsymbol{B}}^1= \widehat{\boldsymbol{M}}^0+\widehat{\boldsymbol{MB}}=\widehat{\boldsymbol{M}}^e.\end{array}$
Obviously, with similar arguments one can show that the special notation respects the transformations occurring in the self consistent method.

## 3. Tensors rotators

In SMART+ the convention that is used for rotating a tensor is the following:
A tensor $$T_{ij}$$ in the global coordinate system can be rotated using a rotator $$Q_{ik}$$ and obtain the tensor $$T’_{ij}$$ in a local coordinate system through the relation
$T’_{ij}=Q_{im}Q_{jn}T_{mn}.$
A usual rotator in mechanics is a second order orthogonal tensor ($$\boldsymbol{Q}^{-1}=\boldsymbol{Q}^T$$) with general form
$\boldsymbol{Q}=\left(\begin{matrix} a & b & c \\ d & e & f \\ g & h & i \end{matrix}\right).$
If a rotation $$\theta$$ is performed around the axis $$i$$ with $$i=$$1, 2 or 3, then the rotator is written
$\begin{array}{cc} \boldsymbol{Q}_1=\left(\begin{matrix} 1 & 0 & 0 \\ 0 & \cos{\theta} & \sin{\theta} \\ 0 &-\sin{\theta} & \cos{\theta} \end{matrix}\right),& \boldsymbol{Q}_2=\left(\begin{matrix} \cos{\theta} & 0 & -\sin{\theta} \\ 0 & 1 & 0 \\ \sin{\theta} & 0 & \cos{\theta} \end{matrix}\right),\\ \boldsymbol{Q}_3=\left(\begin{matrix} \cos{\theta} & \sin{\theta} & 0 \\ -\sin{\theta} & \cos{\theta} & 0 \\ 0 & 0 & 1 \end{matrix}\right)\,, \end{array}$
respectively. Due to the orthogonality of $$\boldsymbol{Q}$$ it holds
$\left(\begin{matrix} a & d & g \\ b & e & h \\ c & f & i \end{matrix}\right)=\frac{1}{aei+cdh-ceg-afh-bdi} \left(\begin{matrix} ei-fh & ch-bi & bf-ce \\ fg-di & ai-cg & cd-af \\ dh-eg & bg-ah & ae-bd \end{matrix}\right).$

If a stress tensor needs to be rotated, then the rotated one is given by
$\boldsymbol{\sigma}’=\boldsymbol{Q}\cdot\boldsymbol{\sigma}\cdot\boldsymbol{Q}^{T}.$
In the SMART+ convention, the stress tensor is written as a 6×1 vector and its rotation can be expressed in the form
$\boldsymbol{\sigma}’=\boldsymbol{Q}^S~\boldsymbol{\sigma},$
where
$\boldsymbol{Q}^S=\left(\begin{matrix} a^2 & b^2 & c^2 & 2ab & 2ac & 2bc\\ d^2 & e^2 & f^2 & 2de & 2df & 2ef\\ g^2 & h^2 & i^2 & 2gh & 2gi & 2hi\\ ad & be & cf & bd+ae & cd+af & ce+bf\\ ag & bh & ci & bg+ah & cg+ai & ch+bi\\ dg & eh & fi & eg+dh & fg+di & fh+ei \end{matrix}\right).$
Using the orthogonality property, it can be shown that
$\left(\boldsymbol{Q}^S\right)^{-1}=\left(\begin{matrix} a^2 & d^2 & g^2 & 2ad & 2ag & 2dg\\ b^2 & e^2 & h^2 & 2be & 2bh & 2eh\\ c^2 & f^2 & i^2 & 2cf & 2ci & 2fi\\ ab & de & gh & bd+ae & bg+ah & eg+dh\\ ac & df & gi & cd+af & cg+ai & fg+di\\ bc & ef & hi & ce+bf & ch+bi & fh+ei \end{matrix}\right).$
In a similar manner, if a strain tensor needs to be rotated, then the rotated one is given by
$\boldsymbol{\varepsilon}’=\boldsymbol{Q}\cdot\boldsymbol{\varepsilon}\cdot\boldsymbol{Q}^{T}.$
In the SMART+ convention, the strain tensor is also written as a 6×1 vector and its rotation can be expressed in the form
$\widetilde{\boldsymbol{\varepsilon}}’=\boldsymbol{Q}^E~\widetilde{\boldsymbol{\varepsilon}},$
where
$\boldsymbol{Q}^E=\left(\begin{matrix} a^2 & b^2 & c^2 & ab & ac & bc\\ d^2 & e^2 & f^2 & de & df & ef\\ g^2 & h^2 & i^2 & gh & gi & hi\\ 2ad & 2be & 2cf & bd+ae & cd+af & ce+bf\\ 2ag & 2bh & 2ci & bg+ah & cg+ai & ch+bi\\ 2dg & 2eh & 2fi & eg+dh & fg+di & fh+ei \end{matrix}\right).$
Using again the orthogonality property, it can be shown that
$\left(\boldsymbol{Q}^E\right)^{-1}=\left(\begin{matrix} a^2 & d^2 & g^2 & ad & ag & dg\\ b^2 & e^2 & h^2 & be & bh & eh\\ c^2 & f^2 & i^2 & cf & ci & fi\\ 2ab & 2de & 2gh & bd+ae & bg+ah & eg+dh\\ 2ac & 2df & 2gi & cd+af & cg+ai & fg+di\\ 2bc & 2ef & 2hi & ce+bf & ch+bi & fh+ei \end{matrix}\right).$
Thus, $$\left(\boldsymbol{Q}^S\right)^{-1}=\left(\boldsymbol{Q}^E\right)^T$$ and $$\left(\boldsymbol{Q}^E\right)^{-1}=\left(\boldsymbol{Q}^S\right)^T$$.
Using this formalism, it holds for an elastic stiffness tensor $$\boldsymbol{L}$$,
$\begin{array}{rl} \boldsymbol{\sigma}=\boldsymbol{L}~\widetilde{\boldsymbol{\varepsilon}} &\Rightarrow~~~ \boldsymbol{\sigma}’=\boldsymbol{Q}^S~\boldsymbol{\sigma}=\boldsymbol{Q}^S~\boldsymbol{L}~\widetilde{\boldsymbol{\varepsilon}}= \boldsymbol{Q}^S~\boldsymbol{L}~\left(\boldsymbol{Q}^E\right)^{-1}\widetilde{\boldsymbol{\varepsilon}}’= \boldsymbol{Q}^S~\boldsymbol{L}~\left(\boldsymbol{Q}^S\right)^T\widetilde{\boldsymbol{\varepsilon}}’\\ &\Rightarrow~~~\boldsymbol{L}’=\boldsymbol{Q}^S~\boldsymbol{L}~\left(\boldsymbol{Q}^S\right)^T.\end{array}$
Similarly, for a compliance tensor $$\boldsymbol{M}$$ holds
$\begin{array}{rl} \widetilde{\boldsymbol{\varepsilon}}=\widehat{\boldsymbol{M}}~\boldsymbol{\sigma} &\Rightarrow~~~ \widetilde{\boldsymbol{\varepsilon}}’=\boldsymbol{Q}^E~\widetilde{\boldsymbol{\varepsilon}}=\boldsymbol{Q}^E~\widehat{\boldsymbol{M}}~\boldsymbol{\sigma}= \boldsymbol{Q}^E~\widehat{\boldsymbol{M}}~\left(\boldsymbol{Q}^S\right)^{-1}\boldsymbol{\sigma}’= \boldsymbol{Q}^E~\widehat{\boldsymbol{M}}~\left(\boldsymbol{Q}^E\right)^T\boldsymbol{\sigma}’\\ &\Rightarrow~~~\widehat{\boldsymbol{M}}’=\boldsymbol{Q}^E~\widehat{\boldsymbol{M}}~\left(\boldsymbol{Q}^E\right)^T.\end{array}$

In SMART+ the tensor rotators can be general, or they can be expressed in terms of the Euler angles. Further details about the Euler angles can be found in Wikipedia.