34
35
36
37#include "implicit_f.inc"
38
39
40
41
42
43
44 INTEGER NEL
45
47 . sig(nel,6),
48 . ax(*),ay(*),az(*),bx(*),by(*),bz(*),cx(*),cy(*),cz(*)
49
51 . t1(*), t2(*), t3(*), t4(*), t5(*), t6(*), d1(*), d2(*),
52 . d3(*), d4(*), d5(*), d6(*), e1(*), e2(*), e3(*), e4(*), e5(*),
53 . e6(*)
54
55
56
57 INTEGER I
58
59 DO 200 i=1,nel
60 e1(i)=ax(i)*ax(i)*d1(i)
61 . +ay(i)*ay(i)*d2(i)
62 . +az(i)*az(i)*d3(i)
63 . +ax(i)*ay(i)*d4(i)
64 . +ay(i)*az(i)*d5(i)
65 . +az(i)*ax(i)*d6(i)
66 e2(i)=bx(i)*bx(i)*d1(i)
67 . +by(i)*by(i)*d2(i)
68 . +bz(i)*bz(i)*d3(i)
69 . +bx(i)*by(i)*d4(i)
70 . +by(i)*bz(i)*d5(i)
71 . +bz(i)*bx(i)*d6(i)
72 e3(i)=cx(i)*cx(i)*d1(i)
73 . +cy(i)*cy(i)*d2(i)
74 . +cz(i)*cz(i)*d3(i)
75 . +cx(i)*cy(i)*d4(i)
76 . +cy(i)*cz(i)*d5(i)
77 . +cz(i)*cx(i)*d6(i)
78 e4(i)=ax(i)*bx(i)*d1(i)
79 . +ay(i)*by(i)*d2(i)
80 . +az(i)*bz(i)*d3(i)
81 . +(ax(i)*by(i)+ay(i)*bx(i))*d4(i)*half
82 . +(ay(i)*bz(i)+az(i)*by(i))*d5(i)*half
83 . +(az(i)*bx(i)+ax(i)*bz(i))*d6(i)*half
84 e5(i)=bx(i)*cx(i)*d1(i)
85 . +by(i)*cy(i)*d2(i)
86 . +bz(i)*cz(i)*d3(i)
87 . +(bx(i)*cy(i)+by(i)*cx(i))*d4(i)*half
88 . +(by(i)*cz(i)+bz(i)*cy(i))*d5(i)*half
89 . +(bz(i)*cx(i)+bx(i)*cz(i))*d6(i)*half
90 e6(i)=cx(i)*ax(i)*d1(i)
91 . +cy(i)*ay(i)*d2(i)
92 . +cz(i)*az(i)*d3(i)
93 . +(cx(i)*ay(i)+cy(i)*ax(i))*d4(i)*half
94 . +(cy(i)*az(i)+cz(i)*ay(i))*d5(i)*half
95 . +(cz(i)*ax(i)+cx(i)*az(i))*d6(i)*half
96 e4(i)=e4(i)*two
97 e5(i)=e5(i)*two
98 e6(i)=e6(i)*two
99 200 CONTINUE
100
101 DO 400 i=1,nel
102 t1(i)=ax(i)*ax(i)*sig(i,1)
103 . +ay(i)*ay(i)*sig(i,2)
104 . +az(i)*az(i)*sig(i,3)
105 . +two*ax(i)*ay(i)*sig(i,4)
106 . +two*ay(i)*az(i)*sig(i,5)
107 . +two*az(i)*ax(i)*sig(i,6)
108 t2(i)=bx(i)*bx(i)*sig(i,1)
109 . +by(i)*by(i)*sig(i,2)
110 . +bz(i)*bz(i)*sig(i,3)
111 . +two*bx(i)*by(i)*sig(i,4)
112 . +two*by(i)*bz(i)*sig(i,5)
113 . +two*bz(i)*bx(i)*sig(i,6)
114 t3(i)=cx(i)*cx(i)*sig(i,1)
115 . +cy(i)*cy(i)*sig(i,2)
116 . +cz(i)*cz(i)*sig(i,3)
117 . +two*cx(i)*cy(i)*sig(i,4)
118 . +two*cy(i)*cz(i)*sig(i,5)
119 . +two*cz(i)*cx(i)*sig(i,6)
120 t4(i)=ax(i)*bx(i)*sig(i,1)
121 . +ay(i)*by(i)*sig(i,2)
122 . +az(i)*bz(i)*sig(i,3)
123 . +(ax(i)*by(i)+ay(i)*bx(i))*sig(i,4)
124 . +(ay(i)*bz(i)+az(i)*by(i))*sig(i,5)
125 . +(az(i)*bx(i)+ax(i)*bz(i))*sig(i,6)
126 t5(i)=bx(i)*cx(i)*sig(i,1)
127 . +by(i)*cy(i)*sig(i,2)
128 . +bz(i)*cz(i)*sig(i,3)
129 . +(bx(i)*cy(i)+by(i)*cx(i))*sig(i,4)
130 . +(by(i)*cz(i)+bz(i)*cy(i))*sig(i,5)
131 . +(bz(i)*cx(i)+bx(i)*cz(i))*sig(i,6)
132 t6(i)=cx(i)*ax(i)*sig(i,1)
133 . +cy(i)*ay(i)*sig(i,2)
134 . +cz(i)*az(i)*sig(i,3)
135 . +(cx(i)*ay(i)+cy(i)*ax(i))*sig(i,4)
136 . +(cy(i)*az(i)+cz(i)*ay(i))*sig(i,5)
137 . +(cz(i)*ax(i)+cx(i)*az(i))*sig(i,6)
138 400 CONTINUE
139
140 RETURN