40
41
42
43#include "implicit_f.inc"
44
45
46
47#include "mvsiz_p.inc"
48
49
50
51 INTEGER JFT,JLT,NPT,IHBE,NEL
52
54 .
for(nel,5), mom(nel,3), thk0(*), thk02(*),
55 .
area(*), px1(*), px2(*), py1(*), py2(*), z2(*),
56 . f11(mvsiz), f12(mvsiz), f13(mvsiz), f14(mvsiz),
57 . f21(mvsiz), f22(mvsiz), f23(mvsiz), f24(mvsiz),
58 . f31(mvsiz), f32(mvsiz), f33(mvsiz), f34(mvsiz),
59 . b11(mvsiz), b12(mvsiz), b13(mvsiz), b14(mvsiz),
60 . b21(mvsiz), b22(mvsiz), b23(mvsiz), b24(mvsiz),
61 . h11(mvsiz), h12(mvsiz), h13(mvsiz), h14(mvsiz),
62 . h21(mvsiz), h22(mvsiz), h23(mvsiz), h24(mvsiz),
63 . h31(mvsiz), h32(mvsiz), h33(mvsiz), h34(mvsiz)
65 . m11(mvsiz), m12(mvsiz), m13(mvsiz), m14(mvsiz),
66 . m21(mvsiz), m22(mvsiz), m23(mvsiz), m24(mvsiz),
67 . m31(mvsiz), m32(mvsiz), m33(mvsiz), m34(mvsiz)
69 . e1x(mvsiz), e1y(mvsiz), e1z(mvsiz),
70 . e2x(mvsiz), e2y(mvsiz), e2z(mvsiz),
71 . e3x(mvsiz), e3y(mvsiz), e3z(mvsiz),fzero(3,4,*)
72
73
74
75#include "com01_c.inc"
76#include "com08_c.inc"
77
78
79
80 INTEGER I, J
81
83 . m4(mvsiz), m5(mvsiz), f1(mvsiz), f2(mvsiz), f3(mvsiz),
84 . f4(mvsiz), f5(mvsiz), m1(mvsiz), m2(mvsiz), m3(mvsiz),
85 . g11t(mvsiz), g21t(mvsiz), g12t(mvsiz), g22t(mvsiz),
86 . g13t(mvsiz), g23t(mvsiz), g14t(mvsiz), g24t(mvsiz),
87 . g31t(mvsiz), g32t(mvsiz), g33t(mvsiz), g34t(mvsiz),
88 . f1a,f2a,f3a,f4a,f5a, g11ta, g21ta, g12ta, g22ta,
89 . g13ta, g23ta, g14ta, g24ta, g31ta, g32ta, g33ta, g34ta,
90 . m1a,m2a,m3a,temp1,temp2,temp3
91
92
93
94
95
96 IF(iabs(isigi)==5.AND.ncycle==1.AND.irun==1) THEN
97 DO i=jft,jlt
98 DO j=1,4
99 temp1=fzero(1,j,i)
100 temp2=fzero(2,j,i)
101 temp3=fzero(3,j,i)
102 fzero(1,j,i)=temp1*e1x(i)+temp2*e1y(i)+temp3*e1z(i)
103 fzero(2,j,i)=temp1*e2x(i)+temp2*e2y(i)+temp3*e2z(i)
104 fzero(3,j,i)=temp1*e3x(i)+temp2*e3y(i)+temp3*e3z(i)
105 ENDDO
106 ENDDO
107 ENDIF
108
109
110
111
112
113 IF((iabs(isigi)==5.AND.ncycle>=1.AND.irun==1).OR.
114 . (iabs(isigi)==5.AND.irun>1)) THEN
115 DO i=jft,jlt
116 f1a=
for(i,1)*thk0(i)
117 f2a=
for(i,2)*thk0(i)
118 f3a=
for(i,3)*thk0(i)
119 f4a=
for(i,4)*thk0(i)
120 f5a=
for(i,5)*thk0(i)
123
124 f12(i)= f1a*px2(i)+f3a*py2(i)
125 f22(i)= f2a*py2(i)+f3a*px2(i)
126 f32(i)= f5a*px2(i)+f4a*py2(i)
127 f11(i)= f1a*px1(i)+f3a*py1(i)
128 f21(i)= f2a*py1(i)+f3a*px1(i)
129 f31(i)= f5a*px1(i)+f4a*py1(i)
130
131 g11ta=f11(i)+h11(i)
132 g13ta=h13(i)-f11(i)
133 g21ta=f21(i)+h21(i)
134 g23ta=h23(i)-f21(i)
135 g31ta=f31(i)+h31(i)
136 g33ta=h33(i)-f31(i)
137 g12ta=f12(i)+h12(i)
138 g22ta=f22(i)+h22(i)
139 g32ta=f32(i)+h32(i)
140 g14ta=-g11ta-g12ta-g13ta
141 g24ta=-g21ta-g22ta-g23ta
142 g34ta=-g31ta-g32ta-g33ta
143
144 g11ta=g11ta+fzero(1,1,i)
145 g13ta=g13ta+fzero(1,3,i)
146 g21ta=g21ta+fzero(2,1,i)
147 g23ta=g23ta+fzero(2,3,i)
148 g31ta=g31ta+fzero(3,1,i)
149 g33ta=g33ta+fzero(3,3,i)
150 g12ta=g12ta+fzero(1,2,i)
151 g22ta=g22ta+fzero(2,2,i)
152 g32ta=g32ta+fzero(3,2,i)
153 g14ta=g14ta+fzero(1,4,i)
154 g24ta=g24ta+fzero(2,4,i)
155 g34ta=g34ta+fzero(3,4,i)
156
157 f11(i)=e1x(i)*g11ta+e2x(i)*g21ta+e3x(i)*g31ta
158 f12(i)=e1x(i)*g12ta+e2x(i)*g22ta+e3x(i)*g32ta
159 f13(i)=e1x(i)*g13ta+e2x(i)*g23ta+e3x(i)*g33ta
160 f14(i)=e1x(i)*g14ta+e2x(i)*g24ta+e3x(i)*g34ta
161
162 f21(i)=e1y(i)*g11ta+e2y(i)*g21ta+e3y(i)*g31ta
163 f22(i)=e1y(i)*g12ta+e2y(i)*g22ta+e3y(i)*g32ta
164 f23(i)=e1y(i)*g13ta+e2y(i)*g23ta+e3y(i)*g33ta
165 f24(i)=e1y(i)*g14ta+e2y(i)*g24ta+e3y(i)*g34ta
166
167 f31(i)=e1z(i)*g11ta+e2z(i)*g21ta+e3z(i)*g31ta
168 f32(i)=e1z(i)*g12ta+e2z(i)*g22ta+e3z(i)*g32ta
169 f33(i)=e1z(i)*g13ta+e2z(i)*g23ta+e3z(i)*g33ta
170 f34(i)=e1z(i)*g14ta+e2z(i)*g24ta+e3z(i)*g34ta
171 ENDDO
172 ENDIF
173 IF(iabs(isigi)/=5.OR.tt==0) THEN
174 DO i=jft,jlt
175 f1a=
for(i,1)*thk0(i)
176 f2a=
for(i,2)*thk0(i)
177 f3a=
for(i,3)*thk0(i)
178 f4a=
for(i,4)*thk0(i)
179 f5a=
for(i,5)*thk0(i)
182
183 f12(i)= f1a*px2(i)+f3a*py2(i)
184 f22(i)= f2a*py2(i)+f3a*px2(i)
185 f32(i)= f5a*px2(i)+f4a*py2(i)
186 f11(i)= f1a*px1(i)+f3a*py1(i)
187 f21(i)= f2a*py1(i)+f3a*px1(i)
188 f31(i)= f5a*px1(i)+f4a*py1(i)
189
190 g11ta=f11(i)+h11(i)
191 g13ta=h13(i)-f11(i)
192 g21ta=f21(i)+h21(i)
193 g23ta=h23(i)-f21(i)
194 g31ta=f31(i)+h31(i)
195 g33ta=h33(i)-f31(i)
196 g12ta=f12(i)+h12(i)
197 g22ta=f22(i)+h22(i)
198 g32ta=f32(i)+h32(i)
199 f11(i)=e1x(i)*g11ta+e2x(i)*g21ta+e3x(i)*g31ta
200 f12(i)=e1x(i)*g12ta+e2x(i)*g22ta+e3x(i)*g32ta
201 f13(i)=e1x(i)*g13ta+e2x(i)*g23ta+e3x(i)*g33ta
202 f21(i)=e1y(i)*g11ta+e2y(i)*g21ta+e3y(i)*g31ta
203 f22(i)=e1y(i)*g12ta+e2y(i)*g22ta+e3y(i)*g32ta
204 f23(i)=e1y(i)*g13ta+e2y(i)*g23ta+e3y(i)*g33ta
205 f31(i)=e1z(i)*g11ta+e2z(i)*g21ta+e3z(i)*g31ta
206 f32(i)=e1z(i)*g12ta+e2z(i)*g22ta+e3z(i)*g32ta
207 f33(i)=e1z(i)*g13ta+e2z(i)*g23ta+e3z(i)*g33ta
208 f14(i)=-f11(i)-f12(i)-f13(i)
209 f24(i)=-f21(i)-f22(i)-f23(i)
210 f34(i)=-f31(i)-f32(i)-f33(i)
211 ENDDO
212 ENDIF
213
214 IF((ihbe>=2).AND.iabs(npt)/=1)THEN
215 DO i=jft,jlt
216 m4(i)= m4(i)+(h21(i)+h23(i))*z2(i)
217 m5(i)= m5(i)+(h11(i)+h13(i))*z2(i)
218 ENDDO
219
220 ENDIF
221
222 DO i=jft,jlt
223 m1a= mom(i,1)*thk02(i)
224 m2a= mom(i,2)*thk02(i)
225 m3a= mom(i,3)*thk02(i)
226 m4(i)= m4(i)*fourth
227 m5(i)= m5(i)*fourth
228
229 m11(i)=-m2a*py1(i)-m3a*px1(i)
230 m21(i)= m1a*px1(i)+m3a*py1(i)
231 m12(i)=-m2a*py2(i)-m3a*px2(i)
232 m22(i)= m1a*px2(i)+m3a*py2(i)
233
234 g11ta = m11(i)-m4(i)+b11(i)
235 g13ta =-m11(i)-m4(i)+b13(i)
236 g12ta = m12(i)-m4(i)+b12(i)
237 g14ta =-m12(i)-m4(i)+b14(i)
238 g21ta = m21(i)+m5(i)+b21(i)
239 g23ta =-m21(i)+m5(i)+b23(i)
240 g22ta = m22(i)+m5(i)+b22(i)
241 g24ta =-m22(i)+m5(i)+b24(i)
242
243 m11(i)=e1x(i)*g11ta+e2x(i)*g21ta
244 m12(i)=e1x(i)*g12ta+e2x(i)*g22ta
245 m13(i)=e1x(i)*g13ta+e2x(i)*g23ta
246 m14(i)=e1x(i)*g14ta+e2x(i)*g24ta
247 m21(i)=e1y(i)*g11ta+e2y(i)*g21ta
248 m22(i)=e1y(i)*g12ta+e2y(i)*g22ta
249 m23(i)=e1y(i)*g13ta+e2y(i)*g23ta
250 m24(i)=e1y(i)*g14ta+e2y(i)*g24ta
251 m31(i)=e1z(i)*g11ta+e2z(i)*g21ta
252 m32(i)=e1z(i)*g12ta+e2z(i)*g22ta
253 m33(i)=e1z(i)*g13ta+e2z(i)*g23ta
254 m34(i)=e1z(i)*g14ta+e2z(i)*g24ta
255 ENDDO
256
257 RETURN
subroutine area(d1, x, x2, y, y2, eint, stif0)
for(i8=*sizetab-1;i8 >=0;i8--)