31
32
33
34#include "implicit_f.inc"
35
36
37
38 INTEGER NEL
39 my_real,
DIMENSION(NEL),
INTENT(IN) :: r11,r12,r13,r21,r22,r23,r31,r32,r33
41
42
43
44 INTEGER I
45 my_real,
DIMENSION(NEL) :: a11,a12,a13,a21,a22,a23,a31,a32,a33
46
47 DO i=1,nel
48 a11(i)=sig(i,1)*r11(i)+sig(i,4)*r12(i)+sig(i,6)*r13(i)
49 a12(i)=sig(i,1)*r21(i)+sig(i,4)*r22(i)+sig(i,6)*r23(i)
50 a13(i)=sig(i,1)*r31(i)+sig(i,4)*r32(i)+sig(i,6)*r33(i)
51 a21(i)=sig(i,4)*r11(i)+sig(i,2)*r12(i)+sig(i,5)*r13(i)
52 a22(i)=sig(i,4)*r21(i)+sig(i,2)*r22(i)+sig(i,5)*r23(i)
53 a23(i)=sig(i,4)*r31(i)+sig(i,2)*r32(i)+sig(i,5)*r33(i)
54 a31(i)=sig(i,6)*r11(i)+sig(i,5)*r12(i)+sig(i,3)*r13(i)
55 a32(i)=sig(i,6)*r21(i)+sig(i,5)*r22(i)+sig(i,3)*r23(i)
56 a33(i)=sig(i,6)*r31(i)+sig(i,5)*r32(i)+sig(i,3)*r33(i)
57 ENDDO
58
59 DO i=1,nel
60 sig(i,1)=r11(i)*a11(i)+r12(i)*a21(i)+r13(i)*a31(i)
61 sig(i,2)=r21(i)*a12(i)+r22(i)*a22(i)+r23(i)*a32(i)
62 sig(i,3)=r31(i)*a13(i)+r32(i)*a23(i)+r33(i)*a33(i)
63 sig(i,4)=r11(i)*a12(i)+r12(i)*a22(i)+r13(i)*a32(i)
64 sig(i,5)=r21(i)*a13(i)+r22(i)*a23(i)+r23(i)*a33(i)
65 sig(i,6)=r11(i)*a13(i)+r12(i)*a23(i)+r13(i)*a33(i)
66 ENDDO
67
68 RETURN