OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
s20ke3.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| s20ke3 ../engine/source/elements/solid/solide20/s20ke3.F
25!||--- called by ------------------------------------------------------
26!|| imp_glob_k ../engine/source/implicit/imp_glob_k.F
27!|| imp_glob_k0 ../engine/source/implicit/imp_glob_k.f
28!||--- calls -----------------------------------------------------
29!|| assem_s20 ../engine/source/implicit/assem_s20.F
30!|| mmats ../engine/source/elements/solid/solide8z/mmats.F
31!|| mmstifs ../engine/source/elements/solid/solide8z/mmstifs.F
32!|| s20coork ../engine/source/elements/solid/solide20/s20coork.F
33!|| s20cumg3 ../engine/source/elements/solid/solide20/s20cumg3.F
34!|| s20deri3 ../engine/source/elements/solid/solide20/s20deri3.F
35!|| s20eoff ../engine/source/elements/solid/solide20/s20eoff.F
36!|| s20kgeo3 ../engine/source/elements/solid/solide20/s20kgeo3.f
37!|| s20rst ../engine/source/elements/solid/solide20/s20rst.F
38!|| sorthdir3 ../engine/source/elements/solid/solide/sorthdir3.F
39!|| sreploc3 ../engine/source/elements/solid/solide/sreploc3.F
40!||--- uses -----------------------------------------------------
41!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.F90
42!|| element_mod ../common_source/modules/elements/element_mod.F90
43!||====================================================================
44 SUBROUTINE s20ke3(
45 1 PM, GEO, IXS, IXS20,
46 2 X, ELBUF_STR,ETAG, IDDL,
47 3 NDOF, K_DIAG, K_LT, IADK,
48 4 JDIK, NEL, IPM, IGEO,
49 5 IKGEO, BUFMAT, NFT, MTN,
50 6 ISMSTR, JHBE, IREP, IGTYP,
51 7 ISORTH)
52C-----------------------------------------------
53C M o d u l e s
54C-----------------------------------------------
55 USE elbufdef_mod
56 use element_mod , only : nixs
57C-----------------------------------------------
58C I m p l i c i t T y p e s
59C-----------------------------------------------
60#include "implicit_f.inc"
61C-----------------------------------------------
62C G l o b a l P a r a m e t e r s
63C-----------------------------------------------
64#include "mvsiz_p.inc"
65C-----------------------------------------------
66C C o m m o n B l o c k s
67C-----------------------------------------------
68#include "com04_c.inc"
69#include "param_c.inc"
70C-----------------------------------------------
71C D u m m y A r g u m e n t s
72C-----------------------------------------------
73 INTEGER, INTENT(IN) :: NFT
74 INTEGER, INTENT(IN) :: MTN
75 INTEGER, INTENT(IN) :: ISMSTR
76 INTEGER, INTENT(IN) :: JHBE
77 INTEGER, INTENT(IN) :: IREP
78 INTEGER, INTENT(IN) :: IGTYP
79 INTEGER, INTENT(IN) :: ISORTH
80 INTEGER IXS(NIXS,*),IXS20(12,*), IKGEO
81 INTEGER NEL ,IPM(NPROPMI,*),IGEO(NPROPGI,*)
82C
84 . pm(npropm,*), geo(npropg,*), x(*),
85 . k11(9,mvsiz) ,k12(9,mvsiz) ,k13(9,mvsiz) ,
86 . k14(9,mvsiz) ,k15(9,mvsiz) ,
87 . k16(9,mvsiz) ,k17(9,mvsiz) ,k18(9,mvsiz) ,
88 . k19(9,mvsiz) ,k110(9,mvsiz) ,
89 . k111(9,mvsiz) ,k112(9,mvsiz) ,k113(9,mvsiz) ,
90 . k114(9,mvsiz) ,k115(9,mvsiz) ,
91 . k116(9,mvsiz) ,k117(9,mvsiz) ,k118(9,mvsiz) ,
92 . k119(9,mvsiz) ,k120(9,mvsiz) ,
93 . k22(9,mvsiz) ,k23(9,mvsiz) ,k24(9,mvsiz) ,
94 . k25(9,mvsiz) ,k26(9,mvsiz) ,
95 . k27(9,mvsiz) ,k28(9,mvsiz) ,k29(9,mvsiz) ,
96 . k210(9,mvsiz) ,k211(9,mvsiz) ,
97 . k212(9,mvsiz) ,k213(9,mvsiz) ,k214(9,mvsiz) ,
98 . k215(9,mvsiz) ,k216(9,mvsiz) ,
99 . k217(9,mvsiz) ,k218(9,mvsiz) ,k219(9,mvsiz) ,
100 . k220(9,mvsiz) ,k33(9,mvsiz) ,
101 . k34(9,mvsiz) ,k35(9,mvsiz) ,k36(9,mvsiz) ,
102 . k37(9,mvsiz) ,k38(9,mvsiz) ,
103 . k39(9,mvsiz) ,k310(9,mvsiz) ,k311(9,mvsiz) ,
104 . k312(9,mvsiz) ,k313(9,mvsiz) ,
105 . k314(9,mvsiz) ,k315(9,mvsiz) ,k316(9,mvsiz) ,
106 . k317(9,mvsiz) ,k318(9,mvsiz) ,
107 . k319(9,mvsiz) ,k320(9,mvsiz) ,k44(9,mvsiz) ,
108 . k45(9,mvsiz) ,k46(9,mvsiz) ,
109 . k47(9,mvsiz) ,k48(9,mvsiz) ,k49(9,mvsiz) ,
110 . k410(9,mvsiz) ,k411(9,mvsiz) ,
111 . k412(9,mvsiz) ,k413(9,mvsiz) ,k414(9,mvsiz) ,
112 . k415(9,mvsiz) ,k416(9,mvsiz) ,
113 . k417(9,mvsiz) ,k418(9,mvsiz) ,k419(9,mvsiz) ,
114 . k420(9,mvsiz) ,k55(9,mvsiz) ,
115 . k56(9,mvsiz) ,k57(9,mvsiz) ,k58(9,mvsiz) ,
116 . k59(9,mvsiz) ,k510(9,mvsiz) ,
117 . k511(9,mvsiz) ,k512(9,mvsiz) ,k513(9,mvsiz) ,
118 . k514(9,mvsiz) ,k515(9,mvsiz) ,
119 . k516(9,mvsiz) ,k517(9,mvsiz) ,k518(9,mvsiz) ,
120 . k519(9,mvsiz) ,k520(9,mvsiz) ,
121 . k66(9,mvsiz) ,k67(9,mvsiz) ,k68(9,mvsiz) ,
122 . k69(9,mvsiz) ,k610(9,mvsiz) ,
123 . k611(9,mvsiz) ,k612(9,mvsiz) ,k613(9,mvsiz) ,
124 . k614(9,mvsiz) ,k615(9,mvsiz) ,
125 . k616(9,mvsiz) ,k617(9,mvsiz) ,k618(9,mvsiz) ,
126 . k619(9,mvsiz) ,k620(9,mvsiz) ,
127 . k77(9,mvsiz) ,k78(9,mvsiz) ,k79(9,mvsiz) ,
128 . k710(9,mvsiz) ,k711(9,mvsiz) ,
129 . k712(9,mvsiz) ,k713(9,mvsiz) ,k714(9,mvsiz) ,
130 . k715(9,mvsiz) ,k716(9,mvsiz) ,
131 . k717(9,mvsiz) ,k718(9,mvsiz) ,k719(9,mvsiz) ,
132 . k720(9,mvsiz) ,k88(9,mvsiz) ,
133 . k89(9,mvsiz) ,k810(9,mvsiz) ,k811(9,mvsiz) ,
134 . k812(9,mvsiz) ,k813(9,mvsiz) ,
135 . k814(9,mvsiz) ,k815(9,mvsiz) ,k816(9,mvsiz) ,
136 . k817(9,mvsiz) ,k818(9,mvsiz) ,
137 . k819(9,mvsiz) ,k820(9,mvsiz) ,k99(9,mvsiz) ,
138 . k910(9,mvsiz) ,k911(9,mvsiz) ,
139 . k912(9,mvsiz) ,k913(9,mvsiz) ,k914(9,mvsiz) ,
140 . k915(9,mvsiz) ,k916(9,mvsiz) ,
141 . k917(9,mvsiz) ,k918(9,mvsiz) ,k919(9,mvsiz) ,
142 . k920(9,mvsiz) ,k1010(9,mvsiz) ,
143 . k1011(9,mvsiz) ,k1012(9,mvsiz) ,k1013(9,mvsiz) ,
144 . k1014(9,mvsiz) ,k1015(9,mvsiz) ,
145 . k1016(9,mvsiz) ,k1017(9,mvsiz) ,k1018(9,mvsiz) ,
146 . k1019(9,mvsiz) ,k1020(9,mvsiz) ,
147 . k1111(9,mvsiz) ,k1112(9,mvsiz) ,k1113(9,mvsiz) ,
148 . k1114(9,mvsiz) ,k1115(9,mvsiz) ,
149 . k1116(9,mvsiz) ,k1117(9,mvsiz) ,k1118(9,mvsiz) ,
150 . k1119(9,mvsiz) ,k1120(9,mvsiz) ,
151 . k1212(9,mvsiz) ,k1213(9,mvsiz) ,k1214(9,mvsiz) ,
152 . k1215(9,mvsiz) ,k1216(9,mvsiz) ,
153 . k1217(9,mvsiz) ,k1218(9,mvsiz) ,k1219(9,mvsiz) ,
154 . k1220(9,mvsiz) ,k1313(9,mvsiz) ,
155 . k1314(9,mvsiz) ,k1315(9,mvsiz) ,k1316(9,mvsiz) ,
156 . k1317(9,mvsiz) ,k1318(9,mvsiz) ,
157 . k1319(9,mvsiz) ,k1320(9,mvsiz) ,k1414(9,mvsiz) ,
158 . k1415(9,mvsiz) ,k1416(9,mvsiz) ,
159 . k1417(9,mvsiz) ,k1418(9,mvsiz) ,k1419(9,mvsiz) ,
160 . k1420(9,mvsiz) ,k1515(9,mvsiz) ,
161 . k1516(9,mvsiz) ,k1517(9,mvsiz) ,k1518(9,mvsiz) ,
162 . k1519(9,mvsiz) ,k1520(9,mvsiz) ,
163 . k1616(9,mvsiz) ,k1617(9,mvsiz) ,k1618(9,mvsiz) ,
164 . k1619(9,mvsiz) ,k1620(9,mvsiz) ,
165 . k1717(9,mvsiz) ,k1718(9,mvsiz) ,k1719(9,mvsiz) ,
166 . k1720(9,mvsiz) ,k1818(9,mvsiz) ,
167 . k1819(9,mvsiz) ,k1820(9,mvsiz) ,k1919(9,mvsiz) ,
168 . k1920(9,mvsiz) ,k2020(9,mvsiz) ,
169 . bufmat(*)
170
171 INTEGER ETAG(*) , IDDL(*) ,NDOF(*) , IADK(*) ,JDIK(*)
172
173 my_real
174 . K_DIAG(*) , K_LT(*)
175 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
176C-----------------------------------------------
177C L o c a l V a r i a b l e s
178C-----------------------------------------------
179 INTEGER NIPMAX,NPE, NF1, NF2, IADBUF,IBID,
180 . i,n
181 parameter(nipmax=81)
182 parameter(npe=20)
183
184
185 INTEGER NGL(MVSIZ), IR, IS, IT, ILAY, NPTT ,NPTS ,NPTR, NLAY, IP,
186 . mxt(mvsiz),ikorth, nc(mvsiz,20), ngeo(mvsiz),nptg
187 my_real
188 . xx(mvsiz,20), yy(mvsiz,20), zz(mvsiz,20),hh(2,mvsiz),
189 . dnidr(mvsiz,npe),dnids(mvsiz,npe),dnidt(mvsiz,npe),
190 . rx(mvsiz,nipmax) , ry(mvsiz,nipmax) , rz(mvsiz,nipmax) ,
191 . sx(mvsiz,nipmax) , sy(mvsiz,nipmax) , sz(mvsiz,nipmax) ,
192 . tx(mvsiz,nipmax) , ty(mvsiz,nipmax) , tz(mvsiz,nipmax) ,
193 , e1x(mvsiz,nipmax) ,e2x(mvsiz,nipmax) ,e3x(mvsiz,nipmax) ,
194 . e1y(mvsiz,nipmax) ,e2y(mvsiz,nipmax) ,e3y(mvsiz,nipmax) ,
195 . e1z(mvsiz,nipmax) ,e2z(mvsiz,nipmax) ,e3z(mvsiz,nipmax) ,
196 . px(mvsiz,npe,nipmax),py(mvsiz,npe,nipmax),pz(mvsiz,npe,nipmax),
197 . wi, volnp(mvsiz,nipmax),stin(mvsiz,npe),
198 . ni(npe,nipmax), volg(mvsiz),ul(mvsiz,npe),gama(mvsiz,6),
199 . dm(9,mvsiz), dgm(9,mvsiz),gm(9,mvsiz), deltax(mvsiz),bid(1),
200 . dd(9,mvsiz),gg(mvsiz),dg(9,mvsiz),g33(9,mvsiz),offg(mvsiz)
201 TYPE(g_bufel_) ,POINTER :: GBUF
202 TYPE(L_BUFEL_) ,POINTER :: LBUF
203 DOUBLE PRECISION
204 . VOLDP(MVSIZ)
205C----------------
206
207 my_real
208 . w_gauss(9,9),a_gauss(9,9)
209 DATA w_gauss /
210 1 2. ,0. ,0. ,
211 1 0. ,0. ,0. ,
212 1 0. ,0. ,0. ,
213 2 1. ,1. ,0. ,
214 2 0. ,0. ,0. ,
215 2 0. ,0. ,0. ,
216 3 0.555555555555556,0.888888888888889,0.555555555555556,
217 3 0. ,0. ,0. ,
218 3 0. ,0. ,0. ,
219 4 0.347854845137454,0.652145154862546,0.652145154862546,
220 4 0.347854845137454,0. ,0. ,
221 4 0. ,0. ,0. ,
222 5 0.236926885056189,0.478628670499366,0.568888888888889,
223 5 0.478628670499366,0.236926885056189,0. ,
224 5 0. ,0. ,0. ,
225 6 0.171324492379170,0.360761573048139,0.467913934572691,
226 6 0.467913934572691,0.360761573048139,0.171324492379170,
227 6 0. ,0. ,0. ,
228 7 0.129484966168870,0.279705391489277,0.381830050505119,
229 7 0.417959183673469,0.381830050505119,0.279705391489277,
230 7 0.129484966168870,0. ,0. ,
231 8 0.101228536290376,0.222381034453374,0.313706645877887,
232 8 0.362683783378362,0.362683783378362,0.313706645877887,
233 8 0.222381034453374,0.101228536290376,0. ,
234 9 0.081274388361574,0.180648160694857,0.260610696402935,
235 9 0.312347077040003,0.330239355001260,0.312347077040003,
236 9 0.260610696402935,0.180648160694857,0.081274388361574/
237 DATA a_gauss /
238 1 0. ,0. ,0. ,
239 1 0. ,0. ,0. ,
240 1 0. ,0. ,0. ,
241 2 -.577350269189626,0.577350269189626,0. ,
242 2 0. ,0. ,0. ,
243 2 0. ,0. ,0. ,
244 3 -.774596669241483,0. ,0.774596669241483,
245 3 0. ,0. ,0. ,
246 3 0. ,0. ,0. ,
247 4 -.861136311594053,-.339981043584856,0.339981043584856,
248 4 0.861136311594053,0. ,0. ,
249 4 0. ,0. ,0. ,
250 5 -.906179845938664,-.538469310105683,0. ,
251 5 0.538469310105683,0.906179845938664,0. ,
252 5 0. ,0. ,0. ,
253 6 -.932469514203152,-.661209386466265,-.238619186083197,
254 6 0.238619186083197,0.661209386466265,0.932469514203152,
255 6 0. ,0. ,0. ,
256 7 -.949107912342759,-.741531185599394,-.405845151377397,
257 7 0. ,0.405845151377397,0.741531185599394,
258 7 0.949107912342759,0. ,0. ,
259 8 -.960289856497536,-.796666477413627,-.525532409916329,
260 8 -.183434642495650,0.183434642495650,0.525532409916329,
261 8 0.796666477413627,0.960289856497536,0. ,
262 9 -.968160239507626,-.836031107326636,-.613371432700590,
263 9 -.324253423403809,0. ,0.324253423403809,
264 9 0.613371432700590,0.836031107326636,0.968160239507626/
265
266C-----------------------------------------------
267C S o u r c e L i n e s
268C-----------------------------------------------
269 gbuf => elbuf_str%GBUF
270 nf1=nft+1
271 nf2=nf1-(numels8+numels10)
272
273
274 IF (igtyp == 21.OR.igtyp == 22) THEN
275 ikorth=2
276 ELSEIF (isorth>0) THEN
277 ikorth=1
278 ELSE
279 ikorth=0
280 ENDIF
281C-----------
282 CALL s20coork(
283 1 x, ixs(1,nf1), ixs20(1,nf2),npe,
284 2 xx, yy, zz, gbuf%OFF,
285 3 offg, gbuf%SMSTR, nc, ngl,
286 4 mxt, ngeo, nel, k11,
287 5 k12, k13, k14, k15,
288 6 k16, k17, k18, k19,
289 7 k110, k111, k112, k113,
290 8 k114, k115, k116, k117,
291 9 k118, k119, k120, k22,
292 a k23, k24, k25, k26,
293 b k27, k28, k29, k210,
294 c k211, k212, k213, k214,
295 d k215, k216, k217, k218,
296 e k219, k220, k33, k34,
297 f k35, k36, k37, k38,
298 g k39, k310, k311, k312,
299 h k313, k314, k315, k316,
300 i k317, k318, k319, k320,
301 j k44, k45, k46, k47,
302 k k48, k49, k410, k411,
303 l k412, k413, k414, k415,
304 m k416, k417, k418, k419,
305 n k420, k55, k56, k57,
306 o k58, k59, k510, k511,
307 p k512, k513, k514, k515,
308 q k516, k517, k518, k519,
309 r k520, k66, k67, k68,
310 s k69, k610, k611, k612,
311 t k613, k614, k615, k616,
312 u k617, k618, k619, k620,
313 v k77, k78, k79, k710,
314 w k711, k712, k713, k714,
315 x k715, k716, k717, k718,
316 y k719, k720, k88, k89,
317 z k810, k811, k812, k813,
318 1 k814, k815, k816, k817,
319 2 k818, k819, k820, k99,
320 3 k910, k911, k912, k913,
321 4 k914, k915, k916, k917,
322 5 k918, k919, k920, k1010,
323 6 k1011, k1012, k1013, k1014,
324 7 k1015, k1016, k1017, k1018,
325 8 k1019, k1020, k1111, k1112,
326 9 k1113, k1114, k1115, k1116,
327 a k1117, k1118, k1119, k1120,
328 b k1212, k1213, k1214, k1215,
329 c k1216, k1217, k1218, k1219,
330 d k1220, k1313, k1314, k1315,
331 e k1316, k1317, k1318, k1319,
332 f k1320, k1414, k1415, k1416,
333 g k1417, k1418, k1419, k1420,
334 h k1515, k1516, k1517, k1518,
335 i k1519, k1520, k1616, k1617,
336 j k1618, k1619, k1620, k1717,
337 k k1718, k1719, k1720, k1818,
338 l k1819, k1820, k1919, k1920,
339 m k2020, ismstr)
340C-----------------------------
341
342 DO n=1,npe
343 DO i=1,nel
344 ul(i,n) = zero
345 ENDDO
346 ENDDO
347 DO i=1,nel
348 volg(i) = zero
349 ENDDO
350
351C-----------------------------
352C POINTS D' INTEGRATION
353C-----------------------------
354 nlay = elbuf_str%NLAY
355 nptr = elbuf_str%NPTR
356 npts = elbuf_str%NPTS
357 nptt = elbuf_str%NPTT
358 nptg=nptt*npts*nptr*nlay
359 IF(nptg>nipmax)stop 933
360 DO it=1,nptt
361 DO is=1,npts
362 DO ir=1,nptr
363C-----------
364 ip = ir + ( (is-1) + (it-1)*npts )*nptr
365 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
366 CALL s20rst(
367 1 a_gauss(ir,nptr),a_gauss(is,npts),a_gauss(it,nptt),ni(1,ip),
368 2 dnidr ,dnids ,dnidt )
369C
370C
371 CALL s20deri3(
372 1 ngl, offg, a_gauss(ir,nptr),a_gauss(is,npts),
373 2 a_gauss(it,nptt),wi, dnidr, dnids,
374 3 dnidt, rx(1,ip), ry(1,ip), rz(1,ip),
375 4 sx(1,ip), sy(1,ip), sz(1,ip), tx(1,ip),
376 5 ty(1,ip), tz(1,ip), xx, yy,
377 6 zz, px(1,1,ip), py(1,1,ip), pz(1,1,ip),
378 7 volnp(1,ip), deltax, stin, ni(1,ip),
379 8 volg, ul, ir, is,
380 9 it, voldp, nel)
381
382 CALL sreploc3(
383 1 rx(1,ip), ry(1,ip), rz(1,ip), sx(1,ip),
384 2 sy(1,ip), sz(1,ip), tx(1,ip), ty(1,ip),
385 3 tz(1,ip), e1x(1,ip),e2x(1,ip),e3x(1,ip),
386 4 e1y(1,ip),e2y(1,ip),e3y(1,ip),e1z(1,ip),
387 5 e2z(1,ip),e3z(1,ip),nel)
388 IF (isorth == 0) THEN
389 DO i=1,nel
390 gama(i,1) = one
391 gama(i,2) = zero
392 gama(i,3) = zero
393 gama(i,4) = zero
394 gama(i,5) = one
395 gama(i,6) = zero
396 ENDDO
397 ELSE
398 CALL sorthdir3(
399 1 rx(1,ip), ry(1,ip), rz(1,ip), sx(1,ip),
400 2 sy(1,ip), sz(1,ip), tx(1,ip), ty(1,ip),
401 3 tz(1,ip), e1x(1,ip),e2x(1,ip),e3x(1,ip),
402 4 e1y(1,ip),e2y(1,ip),e3y(1,ip),e1z(1,ip),
403 5 e2z(1,ip),e3z(1,ip),gbuf%GAMA,gama,
404 6 nel, irep)
405
406 ENDIF
407C
408 ENDDO
409 ENDDO
410 ENDDO
411
412
413C-----------
414 IF (mtn>=28) THEN
415 iadbuf = ipm(7,mxt(1))
416 ELSE
417 iadbuf = 1
418 ENDIF
419
420 CALL mmats(1 ,nel ,pm ,mxt ,hh ,
421 . mtn ,ikorth ,ipm ,igeo ,gama ,
422 . bufmat(iadbuf) ,dm ,dgm ,gm ,
423 . jhbe ,gbuf%SIG ,bid ,nptg ,nel )
424
425
426 ibid = 0
427C-----------Begin integrating points-----
428 ilay = 1
429 DO ir=1,nptr
430 DO is=1,npts
431 DO it=1,nptt
432 lbuf => elbuf_str%BUFLY(ilay)%LBUF(it,is,it)
433C-----------
434 ip = ir + ( (is-1) + (it-1)*npts )*nptr
435 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
436C
437 CALL mmstifs(
438 1 pm, mxt, hh, volnp(1,ip),
439 2 ibid, dd, gg, dg,
440 3 g33, dm, gm, dgm,
441 4 ikorth, gbuf%SIG, ir, is,
442 5 it, nel, jhbe, mtn)
443
444
445
446 CALL s20cumg3(
447 1 px(1,1,ip),py(1,1,ip),pz(1,1,ip),dd,
448 2 gg, dg, g33, ikorth,
449 3 k11, k12, k13, k14,
450 4 k15, k16, k17, k18,
451 5 k19, k110, k111, k112,
452 6 k113, k114, k115, k116,
453 7 k117, k118, k119, k120,
454 8 k22, k23, k24, k25,
455 9 k26, k27, k28, k29,
456 a k210, k211, k212, k213,
457 b k214, k215, k216, k217,
458 c k218, k219, k220, k33,
459 d k34, k35, k36, k37,
460 e k38, k39, k310, k311,
461 f k312, k313, k314, k315,
462 g k316, k317, k318, k319,
463 h k320, k44, k45, k46,
464 i k47, k48, k49, k410,
465 j k411, k412, k413, k414,
466 k k415, k416, k417, k418,
467 l k419, k420, k55, k56,
468 m k57, k58, k59, k510,
469 n k511, k512, k513, k514,
470 o k515, k516, k517, k518,
471 p k519, k520, k66, k67,
472 q k68, k69, k610, k611,
473 r k612, k613, k614, k615,
474 s k616, k617, k618, k619,
475 t k620, k77, k78, k79,
476 u k710, k711, k712, k713,
477 v k714, k715, k716, k717,
478 w k718, k719, k720, k88,
479 x k89, k810, k811, k812,
480 y k813, k814, k815, k816,
481 z k817, k818, k819, k820,
482 1 k99, k910, k911, k912,
483 2 k913, k914, k915, k916,
484 3 k917, k918, k919, k920,
485 4 k1010, k1011, k1012, k1013,
486 5 k1014, k1015, k1016, k1017,
487 6 k1018, k1019, k1020, k1111,
488 7 k1112, k1113, k1114, k1115,
489 8 k1116, k1117, k1118, k1119,
490 9 k1120, k1212, k1213, k1214,
491 a k1215, k1216, k1217, k1218,
492 b k1219, k1220, k1313, k1314,
493 c k1315, k1316, k1317, k1318,
494 d k1319, k1320, k1414, k1415,
495 e k1416, k1417, k1418, k1419,
496 f k1420, k1515, k1516, k1517,
497 g k1518, k1519, k1520, k1616,
498 h k1617, k1618, k1619, k1620,
499 i k1717, k1718, k1719, k1720,
500 j k1818, k1819, k1820, k1919,
501 k k1920, k2020, nel)
502
503 IF (ikgeo>0) THEN
504 CALL s20kgeo3(
505 1 lbuf%SIG, volnp(1,ip),px(1,1,ip), py(1,1,ip),
506 2 pz(1,1,ip), k11, k12, k13,
507 3 k14, k15, k16, k17,
508 4 k18, k19, k110, k111,
509 5 k112, k113, k114, k115,
510 6 k116, k117, k118, k119,
511 7 k120, k22, k23, k24,
512 8 k25, k26, k27, k28,
513 9 k29, k210, k211, k212,
514 a k213, k214, k215, k216,
515 b k217, k218, k219, k220,
516 c k33, k34, k35, k36,
517 d k37, k38, k39, k310,
518 e k311, k312, k313, k314,
519 f k315, k316, k317, k318,
520 g k319, k320, k44, k45,
521 h k46, k47, k48, k49,
522 i k410, k411, k412, k413,
523 j k414, k415, k416, k417,
524 k k418, k419, k420, k55,
525 l k56, k57, k58, k59,
526 m k510, k511, k512, k513,
527 n k514, k515, k516, k517,
528 o k518, k519, k520, k66,
529 p k67, k68, k69, k610,
530 q k611, k612, k613, k614,
531 r k615, k616, k617, k618,
532 s k619, k620, k77, k78,
533 t k79, k710, k711, k712,
534 u k713, k714, k715, k716,
535 v k717, k718, k719, k720,
536 w k88, k89, k810, k811,
537 x k812, k813, k814, k815,
538 y k816, k817, k818, k819,
539 z k820, k99, k910, k911,
540 1 k912, k913, k914, k915,
541 2 k916, k917, k918, k919,
542 3 k920, k1010, k1011, k1012,
543 4 k1013, k1014, k1015, k1016,
544 5 k1017, k1018, k1019, k1020,
545 6 k1111, k1112, k1113, k1114,
546 7 k1115, k1116, k1117, k1118,
547 8 k1119, k1120, k1212, k1213,
548 9 k1214, k1215, k1216, k1217,
549 a k1218, k1219, k1220, k1313,
550 b k1314, k1315, k1316, k1317,
551 c k1318, k1319, k1320, k1414,
552 d k1415, k1416, k1417, k1418,
553 e k1419, k1420, k1515, k1516,
554 f k1517, k1518, k1519, k1520,
555 g k1616, k1617, k1618, k1619,
556 h k1620, k1717, k1718, k1719,
557 i k1720, k1818, k1819, k1820,
558 j k1919, k1920, k2020, nel)
559 ENDIF
560
561 ENDDO
562 ENDDO
563 ENDDO
564
565
566 IF (neig>0) CALL s20eoff(
567 1 1, nel, ixs(1,nf1),ixs20(1,nf2), etag, offg)
568 CALL assem_s20(
569 1 ixs(1,nf1),ixs20(1,nf2),nel,iddl ,ndof ,
570 2 k_diag,k_lt ,iadk ,jdik ,offg ,
571 . k11 ,k12 ,k13 ,k14 ,k15 ,k16 ,k17 ,k18 ,k19 ,k110 ,
572 . k111 ,k112 ,k113 ,k114 ,k115 ,k116 ,k117 ,k118 ,k119 ,k120 ,
573 . k22 ,k23 ,k24 ,k25 ,k26 ,k27 ,k28 ,k29 ,k210 ,k211 ,
574 . k212 ,k213 ,k214 ,k215 ,k216 ,k217 ,k218 ,k219 ,k220 ,k33 ,
575 . k34 ,k35 ,k36 ,k37 ,k38 ,k39 ,k310 ,k311 ,k312 ,k313 ,
576 . k314 ,k315 ,k316 ,k317 ,k318 ,k319 ,k320 ,k44 ,k45 ,k46 ,
577 . k47 ,k48 ,k49 ,k410 ,k411 ,k412 ,k413 ,k414 ,k415 ,k416 ,
578 . k417 ,k418 ,k419 ,k420 ,k55 ,k56 ,k57 ,k58 ,k59 ,k510 ,
579 . k511 ,k512 ,k513 ,k514 ,k515 ,k516 ,k517 ,k518 ,k519 ,k520 ,
580 . k66 ,k67 ,k68 ,k69 ,k610 ,k611 ,k612 ,k613 ,k614 ,k615 ,
581 . k616 ,k617 ,k618 ,k619 ,k620 ,k77 ,k78 ,k79 ,k710 ,k711 ,
582 . k712 ,k713 ,k714 ,k715 ,k716 ,k717 ,k718 ,k719 ,k720 ,k88 ,
583 . k89 ,k810 ,k811 ,k812 ,k813 ,k814 ,k815 ,k816 ,k817 ,k818 ,
584 . k819 ,k820 ,k99 ,k910 ,k911 ,k912 ,k913 ,k914 ,k915 ,k916 ,
585 . k917 ,k918 ,k919 ,k920 ,k1010,k1011,k1012,k1013,k1014,k1015,
586 . k1016,k1017,k1018,k1019,k1020,k1111,k1112,k1113,k1114,k1115,
587 . k1116,k1117,k1118,k1119,k1120,k1212,k1213,k1214,k1215,k1216,
588 . k1217,k1218,k1219,k1220,k1313,k1314,k1315,k1316,k1317,k1318,
589 . k1319,k1320,k1414,k1415,k1416,k1417,k1418,k1419,k1420,k1515,
590 . k1516,k1517,k1518,k1519,k1520,k1616,k1617,k1618,k1619,k1620,
591 . k1717,k1718,k1719,k1720,k1818,k1819,k1820,k1919,k1920,k2020)
592
593
594C
595 RETURN
596 END
subroutine assem_s20(ixs, ixs20, nel, iddl, ndof, k_diag, k_lt, iadk, jdik, off, k11, k12, k13, k14, k15, k16, k17, k18, k19, k110, k111, k112, k113, k114, k115, k116, k117, k118, k119, k120, k22, k23, k24, k25, k26, k27, k28, k29, k210, k211, k212, k213, k214, k215, k216, k217, k218, k219, k220, k33, k34, k35, k36, k37, k38, k39, k310, k311, k312, k313, k314, k315, k316, k317, k318, k319, k320, k44, k45, k46, k47, k48, k49, k410, k411, k412, k413, k414, k415, k416, k417, k418, k419, k420, k55, k56, k57, k58, k59, k510, k511, k512, k513, k514, k515, k516, k517, k518, k519, k520, k66, k67, k68, k69, k610, k611, k612, k613, k614, k615, k616, k617, k618, k619, k620, k77, k78, k79, k710, k711, k712, k713, k714, k715, k716, k717, k718, k719, k720, k88, k89, k810, k811, k812, k813, k814, k815, k816, k817, k818, k819, k820, k99, k910, k911, k912, k913, k914, k915, k916, k917, k918, k919, k920, k1010, k1011, k1012, k1013, k1014, k1015, k1016, k1017, k1018, k1019, k1020, k1111, k1112, k1113, k1114, k1115, k1116, k1117, k1118, k1119, k1120, k1212, k1213, k1214, k1215, k1216, k1217, k1218, k1219, k1220, k1313, k1314, k1315, k1316, k1317, k1318, k1319, k1320, k1414, k1415, k1416, k1417, k1418, k1419, k1420, k1515, k1516, k1517, k1518, k1519, k1520, k1616, k1617, k1618, k1619, k1620, k1717, k1718, k1719, k1720, k1818, k1819, k1820, k1919, k1920, k2020)
Definition assem_s20.F:57
#define my_real
Definition cppsort.cpp:32
subroutine imp_glob_k(pm, geo, ipm, igeo, elbuf, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, iparg, tf, npc, fr_wave, w16, bufmat, thke, bufgeo, rby, skew, x, wa, iddl, ndof, k_diag, k_lt, iadk, jdik, ikgeo, etag, elbuf_tab, stack, drape_sh4n, drape_sh3n, drapeg)
Definition imp_glob_k.F:63
subroutine imp_glob_k0(pm, geo, ipm, igeo, elbuf, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixtg1, ixs10, ixs20, ixs16, iparg, tf, npc, fr_wave, w16, bufmat, thke, bufgeo, rby, skew, x, wa, iddl, ndof, k_diag, k_lt, iadk, jdik, ikgeo, etag, itask, elbuf_tab, igrouc, iprmes_el, stack, drape_sh4n, drape_sh3n, drapeg)
subroutine mmats(jft, jlt, pm, mat, hh, mtn, iorth, ipm, igeo, gama, uparam, cc, cg, g33, jhbe, sig, eps, nppt, nel)
Definition mmats.F:45
subroutine mmstifs(pm, mat, hh, vol, icsig, dd, gg, dg, g33, dm, gm, dgm, iorth, sig, ir, is, it, nel, jhbe, mtn)
Definition mmstifs.F:44
subroutine s20coork(x, ixs, ixs20, npe, xx, yy, zz, offg, off, sav, nc, ngl, mxt, ngeo, nel, k11, k12, k13, k14, k15, k16, k17, k18, k19, k110, k111, k112, k113, k114, k115, k116, k117, k118, k119, k120, k22, k23, k24, k25, k26, k27, k28, k29, k210, k211, k212, k213, k214, k215, k216, k217, k218, k219, k220, k33, k34, k35, k36, k37, k38, k39, k310, k311, k312, k313, k314, k315, k316, k317, k318, k319, k320, k44, k45, k46, k47, k48, k49, k410, k411, k412, k413, k414, k415, k416, k417, k418, k419, k420, k55, k56, k57, k58, k59, k510, k511, k512, k513, k514, k515, k516, k517, k518, k519, k520, k66, k67, k68, k69, k610, k611, k612, k613, k614, k615, k616, k617, k618, k619, k620, k77, k78, k79, k710, k711, k712, k713, k714, k715, k716, k717, k718, k719, k720, k88, k89, k810, k811, k812, k813, k814, k815, k816, k817, k818, k819, k820, k99, k910, k911, k912, k913, k914, k915, k916, k917, k918, k919, k920, k1010, k1011, k1012, k1013, k1014, k1015, k1016, k1017, k1018, k1019, k1020, k1111, k1112, k1113, k1114, k1115, k1116, k1117, k1118, k1119, k1120, k1212, k1213, k1214, k1215, k1216, k1217, k1218, k1219, k1220, k1313, k1314, k1315, k1316, k1317, k1318, k1319, k1320, k1414, k1415, k1416, k1417, k1418, k1419, k1420, k1515, k1516, k1517, k1518, k1519, k1520, k1616, k1617, k1618, k1619, k1620, k1717, k1718, k1719, k1720, k1818, k1819, k1820, k1919, k1920, k2020, ismstr)
Definition s20coork.F:88
subroutine s20cumg3(px, py, pz, dd, gg, dg, g33, iksup, k11, k12, k13, k14, k15, k16, k17, k18, k19, k110, k111, k112, k113, k114, k115, k116, k117, k118, k119, k120, k22, k23, k24, k25, k26, k27, k28, k29, k210, k211, k212, k213, k214, k215, k216, k217, k218, k219, k220, k33, k34, k35, k36, k37, k38, k39, k310, k311, k312, k313, k314, k315, k316, k317, k318, k319, k320, k44, k45, k46, k47, k48, k49, k410, k411, k412, k413, k414, k415, k416, k417, k418, k419, k420, k55, k56, k57, k58, k59, k510, k511, k512, k513, k514, k515, k516, k517, k518, k519, k520, k66, k67, k68, k69, k610, k611, k612, k613, k614, k615, k616, k617, k618, k619, k620, k77, k78, k79, k710, k711, k712, k713, k714, k715, k716, k717, k718, k719, k720, k88, k89, k810, k811, k812, k813, k814, k815, k816, k817, k818, k819, k820, k99, k910, k911, k912, k913, k914, k915, k916, k917, k918, k919, k920, k1010, k1011, k1012, k1013, k1014, k1015, k1016, k1017, k1018, k1019, k1020, k1111, k1112, k1113, k1114, k1115, k1116, k1117, k1118, k1119, k1120, k1212, k1213, k1214, k1215, k1216, k1217, k1218, k1219, k1220, k1313, k1314, k1315, k1316, k1317, k1318, k1319, k1320, k1414, k1415, k1416, k1417, k1418, k1419, k1420, k1515, k1516, k1517, k1518, k1519, k1520, k1616, k1617, k1618, k1619, k1620, k1717, k1718, k1719, k1720, k1818, k1819, k1820, k1919, k1920, k2020, nel)
Definition s20cumg3.F:89
subroutine s20eoff(jft, jlt, ixs, ixs20, etag, off)
Definition s20eoff.F:31
subroutine s20ke3(pm, geo, ixs, ixs20, x, elbuf_str, etag, iddl, ndof, k_diag, k_lt, iadk, jdik, nel, ipm, igeo, ikgeo, bufmat, nft, mtn, ismstr, jhbe, irep, igtyp, isorth)
Definition s20ke3.F:52
subroutine s20kgeo3(sig, vol, px, py, pz, k11, k12, k13, k14, k15, k16, k17, k18, k19, k110, k111, k112, k113, k114, k115, k116, k117, k118, k119, k120, k22, k23, k24, k25, k26, k27, k28, k29, k210, k211, k212, k213, k214, k215, k216, k217, k218, k219, k220, k33, k34, k35, k36, k37, k38, k39, k310, k311, k312, k313, k314, k315, k316, k317, k318, k319, k320, k44, k45, k46, k47, k48, k49, k410, k411, k412, k413, k414, k415, k416, k417, k418, k419, k420, k55, k56, k57, k58, k59, k510, k511, k512, k513, k514, k515, k516, k517, k518, k519, k520, k66, k67, k68, k69, k610, k611, k612, k613, k614, k615, k616, k617, k618, k619, k620, k77, k78, k79, k710, k711, k712, k713, k714, k715, k716, k717, k718, k719, k720, k88, k89, k810, k811, k812, k813, k814, k815, k816, k817, k818, k819, k820, k99, k910, k911, k912, k913, k914, k915, k916, k917, k918, k919, k920, k1010, k1011, k1012, k1013, k1014, k1015, k1016, k1017, k1018, k1019, k1020, k1111, k1112, k1113, k1114, k1115, k1116, k1117, k1118, k1119, k1120, k1212, k1213, k1214, k1215, k1216, k1217, k1218, k1219, k1220, k1313, k1314, k1315, k1316, k1317, k1318, k1319, k1320, k1414, k1415, k1416, k1417, k1418, k1419, k1420, k1515, k1516, k1517, k1518, k1519, k1520, k1616, k1617, k1618, k1619, k1620, k1717, k1718, k1719, k1720, k1818, k1819, k1820, k1919, k1920, k2020, nel)
Definition s20kgeo3.F:86
subroutine sorthdir3(rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, gama0, gama, nel, irep)
Definition sorthdir3.F:43
subroutine s20deri3(ngl, off, r, s, t, w, dnidr, dnids, dnidt, dxdr, dydr, dzdr, dxds, dyds, dzds, dxdt, dydt, dzdt, xx, yy, zz, px, py, pz, vol, deltax, deltax2, ip, nip, ul, volg, voldp)
Definition s20deri3.F:38
subroutine s20rst(r, s, t, ni, dnidr, dnids, dnidt)
Definition s20deri3.F:505
subroutine sreploc3(rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
Definition sreploc3.F:32