- #1
Experience111
- 11
- 0
Hi everyone, I am currently working on a subject that involves a lot of 4th order tensors computations including double dot product and inverse of fourth order tensors.
First the definitions so that we are on the same page. What I call the double dot product is :
$$ (A:B)_{ijkl} = A_{ijmn}B_{mnkl} $$
and for the double dot product between a fourth order tensor and a second order tensor :
$$ (A:s)_{ij} = A_{ijkl}s_{kl}$$
Using the convention of sommation over repeating indices.
What I call the identity of the fourth order tensors is the only tensor such that :
$$ A:I = I:A = I $$
it is defined by ## I = \delta_{ik}\delta_{jl} e_{i} \otimes e_{j} \otimes e_{k} \otimes e_{l} ##.
What I call the inverse of a fourth order tensor is the inverse with respect to the double dot product, that is, the inverse of ##A## is the only tensor ##B## such that ##AB = BA = I##.
The double dot product is easy to compute if you don't think about the efficiency of the code, just create an array and loop over the four indices. Computing the inverse is something else. Every tensor I use has the minor symmetries ##A_{ijkl} = A_{jikl} = A_{ijlk}## so I thought I would use the Mandel representation for second order and fourth order tensors mentioned on Wikipedia. The fourth order tensor can be put into a ##6 \times6## matrix with the following components :
$$ [C] =
\begin{bmatrix}
C_{1111} & C_{1122} & C_{1133} & \sqrt{2}C_{1123} & \sqrt{2}C_{1131} & \sqrt{2}C_{1112}\\
C_{2211} & C_{2222} & C_{2233} & \sqrt{2}C_{2223} & \sqrt{2}C_{2231} & \sqrt{2}C_{2212}\\
C_{3311} & C_{3322} & C_{3333} & \sqrt{2}C_{3323} & \sqrt{2}C_{3331} & \sqrt{2}C_{3312}\\
\sqrt{2}C_{2311} & \sqrt{2}C_{2322} & \sqrt{2}C_{2333} & 2C_{2323} & 2C_{2331} & 2C_{2312}\\
\sqrt{2}C_{3111} & \sqrt{2}C_{3122} & \sqrt{2}C_{3133} & 2C_{3123} & 2C_{3131} & 2C_{3112}\\
\sqrt{2}C_{1211} & \sqrt{2}C_{1222} & \sqrt{2}C_{1233} & 2C_{1223} &2C_{1231} & 2C_{1212}
\end{bmatrix}
$$
##C## is a fourth order tensor with minor symmetries and ##[C]## is its Mandel representation. The reason why Mandel's representation exists according to different sources is such that the matrix-matrix and matrix-vector usual products coincide with the fourth order tensors double dot product and the inverse in each respective space (fourth order tensors and ##6\times 6## matrices) coincides as well. But it doesn't work or at least there must be something I don't understand. If I put the identity 4th order tensor defined above into Mandel's notation, I get the following matrix :
$$ I =
\begin{bmatrix}
1&0&0&0&0&0\\
0&1&0&0&0&0\\
0&0&1&0&0&0\\
0&0&0&2&0&0\\
0&0&0&0&2&0\\
0&0&0&0&0&2
\end{bmatrix}
$$which is obviously different from the identity of ##6 \times 6## matrices so if I compute ##[C].I## using the usual matrix-matrix product I won't get the same ##[C]##. What am I missing here ?
Thanks a lot for your help and the discussions to come
First the definitions so that we are on the same page. What I call the double dot product is :
$$ (A:B)_{ijkl} = A_{ijmn}B_{mnkl} $$
and for the double dot product between a fourth order tensor and a second order tensor :
$$ (A:s)_{ij} = A_{ijkl}s_{kl}$$
Using the convention of sommation over repeating indices.
What I call the identity of the fourth order tensors is the only tensor such that :
$$ A:I = I:A = I $$
it is defined by ## I = \delta_{ik}\delta_{jl} e_{i} \otimes e_{j} \otimes e_{k} \otimes e_{l} ##.
What I call the inverse of a fourth order tensor is the inverse with respect to the double dot product, that is, the inverse of ##A## is the only tensor ##B## such that ##AB = BA = I##.
The double dot product is easy to compute if you don't think about the efficiency of the code, just create an array and loop over the four indices. Computing the inverse is something else. Every tensor I use has the minor symmetries ##A_{ijkl} = A_{jikl} = A_{ijlk}## so I thought I would use the Mandel representation for second order and fourth order tensors mentioned on Wikipedia. The fourth order tensor can be put into a ##6 \times6## matrix with the following components :
$$ [C] =
\begin{bmatrix}
C_{1111} & C_{1122} & C_{1133} & \sqrt{2}C_{1123} & \sqrt{2}C_{1131} & \sqrt{2}C_{1112}\\
C_{2211} & C_{2222} & C_{2233} & \sqrt{2}C_{2223} & \sqrt{2}C_{2231} & \sqrt{2}C_{2212}\\
C_{3311} & C_{3322} & C_{3333} & \sqrt{2}C_{3323} & \sqrt{2}C_{3331} & \sqrt{2}C_{3312}\\
\sqrt{2}C_{2311} & \sqrt{2}C_{2322} & \sqrt{2}C_{2333} & 2C_{2323} & 2C_{2331} & 2C_{2312}\\
\sqrt{2}C_{3111} & \sqrt{2}C_{3122} & \sqrt{2}C_{3133} & 2C_{3123} & 2C_{3131} & 2C_{3112}\\
\sqrt{2}C_{1211} & \sqrt{2}C_{1222} & \sqrt{2}C_{1233} & 2C_{1223} &2C_{1231} & 2C_{1212}
\end{bmatrix}
$$
##C## is a fourth order tensor with minor symmetries and ##[C]## is its Mandel representation. The reason why Mandel's representation exists according to different sources is such that the matrix-matrix and matrix-vector usual products coincide with the fourth order tensors double dot product and the inverse in each respective space (fourth order tensors and ##6\times 6## matrices) coincides as well. But it doesn't work or at least there must be something I don't understand. If I put the identity 4th order tensor defined above into Mandel's notation, I get the following matrix :
$$ I =
\begin{bmatrix}
1&0&0&0&0&0\\
0&1&0&0&0&0\\
0&0&1&0&0&0\\
0&0&0&2&0&0\\
0&0&0&0&2&0\\
0&0&0&0&0&2
\end{bmatrix}
$$which is obviously different from the identity of ##6 \times 6## matrices so if I compute ##[C].I## using the usual matrix-matrix product I won't get the same ##[C]##. What am I missing here ?
Thanks a lot for your help and the discussions to come