34
35
36
37
38
39#include "implicit_f.inc"
40#include "mvsiz_p.inc"
41
42
43
44 INTEGER JFT,JLT,NPLAT ,IPLAT(*),NPT
46 . vqn(mvsiz,9,4),vf(mvsiz,12,npt),vq(mvsiz,3,3),
47 . corel(mvsiz,3,4),di(mvsiz,6)
49 . f11(mvsiz,npt), f12(mvsiz,npt), f13(mvsiz,npt),
50 . f14(mvsiz,npt), f21(mvsiz,npt), f22(mvsiz,npt),
51 . f23(mvsiz,npt), f24(mvsiz,npt), f31(mvsiz,npt),
52 . f32(mvsiz,npt), f33(mvsiz,npt), f34(mvsiz,npt),
53 . vfi(mvsiz,12,npt) ,off(*)
54
55
56
57 INTEGER I, , K,EP,I_INF,I_SUP,IPLY,NPLAT0
59 . mm(3,4),fl(3,4),ml(2,4),c1,z1,
60 . ar(3),ad(4),alr(3),ald(4),dbad(3),
61 . f1, f2,f3,fac,fac1,fac2,fac3,fl1,fl2,
62 . fl3,e33,g,nu
64 . ml11(mvsiz),ml12(mvsiz),ml13(mvsiz) ,ml14(mvsiz),ml21(mvsiz),
65 . ml22(mvsiz),ml23(mvsiz),ml24(mvsiz) ,ml31(mvsiz),ml32(mvsiz),
66 . ml33(mvsiz),ml34(mvsiz)
67
68
69 nplat0 = nplat
70 DO j=1,npt
71#include "vectorize.inc"
72 DO ep=jft,nplat0
73 k=iplat(ep)
74
75 fl(1,1)= vf(k,1,j) + vf(k,7,j)
76 fl(1,2)= vf(k,4,j) + vf(k,10,j)
77 fl(1,3)= -vf(k,1,j) + vf(k,7,j)
78 fl(1,4)= -vf(k,4,j) + vf(k,10,j)
79
80 fl(2,1)= vf(k,2,j) + vf(k,8,j)
81 fl(2,2)= vf(k,5,j) + vf(k,11,j)
82 fl(2,3)= -vf(k,2,j) + vf(k,8,j)
83 fl(2,4)= -vf(k,5,j) + vf(k,11,j)
84
85 fl(3,1)= vf(k,3,j) + vf(k,9,j)
86 fl(3,2)= vf(k,6,j) + vf
87 fl(3,3)= -vf(k,3,j) + vf(k,9,j)
88 fl(3,4)= -vf(k,6,j) + vf(k,12,j)
89
90
91
92
93
94
95 f11(k,j)= vq(k,1,1)*fl(1,1)+vq(k,1,2)*fl(2,1)+vq(k,1,3)*fl(3,1)
96
97 f21(k,j)= vq(k,2,1)*fl(1,1)+vq(k,2,2)*fl(2,1)+vq(k,2,3)*fl(3,1)
98
99 f31(k,j)= vq(k,3,1)*fl(1,1)+vq(k,3,2)*fl(2,1)+vq(k,3,3)*fl(3,1)
100
101
102
103 f12(k,j)= vq(k,1,1)*fl(1,2)+vq(k,1,2)*fl(2,2)+vq(k,1,3)*fl(3,2)
104
105 f22(k,j)= vq(k,2,1)*fl(1,2)+vq(k,2,2)*fl(2,2)+vq(k,2,3)*fl(3
106
107 f32(k,j)= vq(k,3,1)*fl(1,2)+vq(k,3,2)*fl(2,2)+vq(k,3,3)*fl(3,2)
108
109
110
111 f13(k,j)= vq(k,1,1)*fl(1,3)+vq(k,1,2)*fl(2,3)+vq(k,1,3)*fl(3,3)
112
113 f23(k,j)= vq(k,2,1)*fl(1,3)+vq(k,2,2)*fl(2,3)+vq(k,2,3)*fl(3
114
115 f33(k,j)= vq(k,3,1)*fl(1,3)+vq(k,3,2)*fl(2,3)+vq(k,3,3)*fl
116
117
118
119 f14(k,j)= vq(k,1,1)*fl(1,4)+vq(k,1,2)*fl(2,4)+vq(k,1,3)*fl(3,4)
120
121 f24(k,j)= vq(k,2,1)*fl(1,4)+vq(k,2,2)*fl(2,4)+vq(k,2,3)*fl(3,4)
122
123 f34(k,j)= vq(k,3,1)*fl(1,4)+vq(k,3,2)*fl(2,4)+vq
124
125
126 ENDDO
127#include "vectorize.inc"
128 DO ep=nplat0+1,jlt
129 k=iplat(ep)
130
131 z1 = corel(k,3,1)
132 ar(1)= -z1*(vf(k,2,j) - vf(k,5,j) + vf(k,8,j)-vf(k,11,j))
133 1 + corel(k,2,1)*vf(k,3,j)
134 2 + corel(k,2,2)*vf(k,6,j)
135 3 + corel(k,2,3)*vf(k,9,j)
136 4 + corel(k,2,4)*vf(k,12,j)
137 ar(2)= z1*(vf(k,1,j)-vf(k,4,j)+vf(k,7,j)-vf(k,10,j))
138 1 - corel(k,1,1)*vf(k,3,j)
139 2 - corel(k,1,2)*vf(k,6,j)
140 3 - corel(k,1,3)*vf(k,9,j)
141 4 - corel(k,1,4)*vf(k,12,j)
142 ar(3)=-corel(k,2,1)*vf(k,1,j)+corel(k,1,1)*vf(k,2,j)
143 1 -corel(k,2,2)*vf(k,4,j)+corel(k,1,2)*vf(k,5,j)
144 2 -corel(k,2,3)*vf(k,7,j)+corel(k,1,3)*vf(k,8,j)
145 3 -corel(k,2,4)*vf(k,10,j)+corel(k,1,4)*vf(k,11,j)
146
147 alr(1) =di(k,1)*ar(1)+di(k,4)*ar(2)+di(k,5)*ar(3)
148 alr(2) =di(k,4)*ar(1)+di(k,2)*ar(2)+di(k,6)*ar(3)
149 alr(3) =di(k,5)*ar(1)+di(k,6)*ar(2)+di(k,3)*ar(3)
150
151 c1 =z1*alr(2)
152 vf(k,1,j )= vf(k,1,j) - c1+corel(k,2,1)*alr
153 vf(k,4,j )= vf(k,4,j) + c1+corel(k,2,2)*alr(3)
154 vf(k,7,j )= vf(k,7,j) - c1+corel(k,2,3)*alr
155 vf(k,10,j)= vf(k,10,j) + c1+corel(k,2,4)*alr(3)
156
157 c1 =z1*alr(1)
158 vf(k,2,j)= vf(k,2,j) +c1-corel(k,1,1)*alr(3)
159 vf(k,5,j)= vf(k,5,j) -c1-corel(k,1,2)*alr(3)
160 vf(k,8,j)= vf(k,8,j) +c1-corel(k,1,3)*alr(3)
161 vf(k,11,j)= vf(k,11,j)-c1-corel(k,1,4)*alr(3)
162
163 vf(k,3,j) = vf(k,3,j) -corel(k,2,1)*alr(1)+corel(k,1,1)*alr(2)
164 vf(k,6,j) = vf(k,6,j) -corel(k,2,2)*alr(1)+corel(k,1,2)*alr(2)
165 vf(k,9,j) = vf(k,9,j) -corel(k,2,3)*alr(1)+corel(k,1,3)*alr(2)
166 vf(k,12,j)= vf(k,12,j)-corel(k,2,4)*alr(1)+corel(k,1,4)*alr(2)
167
168
169 f11(k,j)= vq(k,1,1)*vf(k,1,j) + vq(k,1,2)*vf(k,2,j)
170 1 + vq(k,1,3)*vf(k,3,j)
171
172 f21(k,j)= vq(k,2,1)*vf(k,1,j) + vq(k,2,2)*vf(k,2,j)
173 1 + vq(k,2,3)*vf(k,3,j)
174
175 f31(k,j)= vq(k,3,1)*vf(k,1,j) + vq(k,3,2)*vf(k,2,j)
176 1 + vq(k,3,3)*vf(k,3,j)
177
178
179
180 f12(k,j)= vq(k,1,1)*vf(k,4,j) + vq(k,1,2)*vf(k,5,j)
181 1 + vq(k,1,3)*vf(k,6,j)
182
183 f22(k,j)= vq(k,2,1)*vf(k,4,j) + vq(k,2,2)*vf(k,5,j)
184 1 + vq(k,2,3)*vf(k,6,j)
185
186 f32(k,j)= vq(k,3,1)*vf(k,4,j) + vq(k,3,2)*vf(k,5,j)
187 1 + vq(k,3,3)*vf(k,6,j)
188
189
190
191 f13(k,j)= vq(k,1,1)*vf(k,7,j) + vq(k,1,2)*vf(k,8,j)
192 1 + vq(k,1,3)*vf(k,9,j)
193
194 f23(k,j)= vq(k,2,1)*vf(k,7,j) + vq(k,2,2)*vf(k,8,j)
195 1 + vq(k,2,3)*vf(k,9,j)
196
197 f33(k,j)= vq(k,3,1)*vf(k,7,j) + vq(k,3,2)*vf(k,8,j)
198 1 + vq(k,3,3)*vf(k,9,j)
199
200
201
202 f14(k,j)= vq(k,1,1)*vf(k,10,j)+ vq(k,1,2)*vf(k,11,j)
203 1 + vq(k,1,3)*vf(k,12,j)
204
205 f24(k,j)= vq(k,2,1)*vf(k,10,j)+ vq(k,2,2)*vf(k,11,j)
206 1 + vq(k,2,3)*vf(k,12,j)
207
208 f34(k,j)= vq(k,3,1)*vf(k,10,j)+ vq(k,3,2)*vf(k,11,j)
209 1 + vq(k,3,3)*vf(k,12,j)
210 ENDDO
211 ENDDO
212
213
214 DO j = 1 , npt
215#include "vectorize.inc"
216 DO ep=jft,jlt
217 k=iplat(ep)
218
219 fl1 = vfi(k,1,j)
220 fl2 = vfi(k,2,j)
221 fl3 = vfi(k,3,j)
222
223 f1= vq(k,1,1)*fl1 + vq(k,1,2)*fl2
224 1 + vq(k,1,3)*fl3
225 f2= vq(k,2,1)*fl1 + vq(k,2,2)*fl2
226 1 + vq(k,2,3)*fl3
227 f3= vq(k,3,1)*fl1 + vq(k,3,2)*fl2
228 1 + vq(k,3,3)*fl3
229
230 f11(k,j)= f11(k,j) + f1
231 f21(k,j)= f21(k,j) + f2
232 f31(k,j)= f31(k,j) + f3
233
234 fl1 = vfi(k,4,j)
235 fl2 = vfi(k,5,j)
236 fl3 = vfi(k,6,j)
237
238 f1= vq(k,1,1)*fl1 + vq(k,1,2)*fl2
239 1 + vq(k,1,3)*fl3
240 f2= vq(k,2,1)*fl1 + vq(k,2,2)*fl2
241 1 + vq(k,2,3)*fl3
242 f3= vq(k,3,1)*fl1 + vq(k,3,2)*fl2
243 1 + vq(k,3,3)*fl3
244 f12(k,j)= f12(k,j) + f1
245 f22(k,j)= f22(k,j) + f2
246 f32(k,j)= f32(k,j) + f3
247
248 fl1 = vfi(k,7,j)
249 fl2 = vfi(k,8,j)
250 fl3 = vfi(k,9,j)
251
252 f1= vq(k,1,1)*fl1 + vq(k,1,2)*fl2
253 1 + vq(k,1,3)*fl3
254 f2= vq(k,2,1)*fl1 + vq(k,2,2)*fl2
255 1 + vq(k,2,3)*fl3
256 f3= vq(k,3,1)*fl1 + vq(k,3,2)*fl2
257 1 + vq(k,3,3)*fl3
258
259 f13(k,j)= f13(k,j) + f1
260 f23(k,j)= f23(k,j) + f2
261 f33(k,j)= f33(k,j) + f3
262
263 fl1 = vfi(k,10,j)
264 fl2 = vfi(k,11,j)
265 fl3 = vfi(k,12,j)
266
267 f1= vq(k,1,1)*fl1 + vq(k,1,2)*fl2
268 1 + vq(k,1,3)*fl3
269 f2= vq(k,2,1)*fl1 + vq(k,2,2)*fl2
270 1 + vq(k,2,3)*fl3
271 f3= vq(k,3,1)*fl1 + vq(k,3,2)*fl2
272 1 + vq(k,3,3)*fl3
273 f14(k,j)= f14(k,j) + f1
274 f24(k,j)= f24(k,j) + f2
275 f34(k,j)= f34(k,j) + f3
276
277
278 f11(k,j)= f11(k,j)*off(k)
279 f21(k,j)= f21(k,j)*off(k)
280 f31(k,j)= f31(k,j)*off(k)
281
282 f12(k,j)= f12(k,j)*off(k)
283 f22(k,j)= f22(k,j)*off(k)
284 f32(k,j)= f32(k,j)*off(k)
285
286 f13(k,j)= f13(k,j)*off(k)
287 f23(k,j)= f23(k,j)*off(k)
288 f33(k,j)= f33(k,j)*off(k)
289
290 f14(k,j)= f14(k,j)*off(k)
291 f24(k,j)= f24(k,j)*off(k)
292 f34(k,j)= f34(k,j)*off(k)
293
294 ENDDO
295 ENDDO
296 RETURN