OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
s8cke3.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!|| s8cke3 ../engine/source/elements/thickshell/solide8c/s8cke3.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_s8 ../engine/source/implicit/assem_s8.F
30!|| mmat_h1 ../engine/source/elements/solid/solide8z/mmat_h1.F
31!|| mmats ../engine/source/elements/solid/solide8z/mmats.F
32!|| mmstifs ../engine/source/elements/solid/solide8z/mmstifs.F
33!|| s8eoff ../engine/source/elements/solid/solide8/s8eoff.F
34!|| s8zcumg3 ../engine/source/elements/solid/solide8z/s8zcumg3.f
35!|| s8zderi3 ../engine/source/elements/solid/solide8z/s8zderi3.f
36!|| s8zderict3 ../engine/source/elements/solid/solide8z/s8zderict3.F
37!|| s8zkgei3 ../engine/source/elements/solid/solide8z/s8zkgei3.F
38!|| s8zkgeo3 ../engine/source/elements/solid/solide8z/s8zkgeo3.F
39!|| s8zlke3 ../engine/source/elements/solid/solide8z/s8zlke3.f
40!|| s8zlkep3 ../engine/source/elements/solid/solide8z/s8zlkep3.F
41!|| s8zsigp3 ../engine/source/elements/solid/solide8z/s8zsigp3.F
42!|| srcoork ../engine/source/elements/solid/solide8z/srcoork.F
43!||--- uses -----------------------------------------------------
44!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.F90
45!||====================================================================
46 SUBROUTINE s8cke3(
47 1 PM, GEO, IXS, X,
48 2 ELBUF_STR,NEL, ICP, ICSIG,
49 3 ETAG, IDDL, NDOF, K_DIAG,
50 4 K_LT, IADK, JDIK, IPM,
51 5 IGEO, IKGEO, BUFMAT, NFT,
52 6 MTN, JHBE, JCVT, IGTYP,
53 7 ISORTH, IREP, ISMSTR)
54C-----------------------------------------------
55C M o d u l e s
56C-----------------------------------------------
57 USE elbufdef_mod
58C-----------------------------------------------
59C I m p l i c i t T y p e s
60C-----------------------------------------------
61#include "implicit_f.inc"
62C-----------------------------------------------
63C G l o b a l P a r a m e t e r s
64C-----------------------------------------------
65#include "mvsiz_p.inc"
66C-----------------------------------------------
67C C o m m o n B l o c k s
68C-----------------------------------------------
69#include "com04_c.inc"
70#include "param_c.inc"
71C-----------------------------------------------
72C D u m m y A r g u m e n t s
73C-----------------------------------------------
74 INTEGER, INTENT(IN) :: IREP
75 INTEGER, INTENT(IN) :: ISMSTR
76 INTEGER, INTENT(IN) :: NFT
77 INTEGER, INTENT(IN) :: MTN
78 INTEGER, INTENT(IN) :: JHBE
79 INTEGER, INTENT(IN) :: JCVT
80 INTEGER, INTENT(IN) :: IGTYP
81 INTEGER, INTENT(IN) :: ISORTH
82 INTEGER NEL ,ICP, ICSIG,IKGEO
83 INTEGER NDOF(*) ,IADK(*) ,JDIK(*),
84 . ixs(nixs,*),ipm(npropmi,*),igeo(npropgi,*),etag(*),iddl(*)
85C
87 . pm(npropm,*), geo(npropg,*), x(*),
88 . k11(9,mvsiz) , k12(9,mvsiz) ,k13(9,mvsiz) ,k14(9,mvsiz) ,
89 . k15(9,mvsiz) , k16(9,mvsiz) ,k17(9,mvsiz) ,k18(9,mvsiz) ,
90 . k22(9,mvsiz) ,k23(9,mvsiz) ,k24(9,mvsiz) ,k25(9,mvsiz) ,
91 . k26(9,mvsiz) ,k27(9,mvsiz) ,k28(9,mvsiz) ,k33(9,mvsiz) ,
92 . k34(9,mvsiz) ,k35(9,mvsiz) ,k36(9,mvsiz) ,k37(9,mvsiz) ,
93 . k38(9,mvsiz) ,k44(9,mvsiz) ,k45(9,mvsiz) ,k46(9,mvsiz) ,
94 . k47(9,mvsiz) ,k48(9,mvsiz) ,k55(9,mvsiz) ,k56(9,mvsiz) ,
95 . k57(9,mvsiz) ,k58(9,mvsiz) ,k66(9,mvsiz) ,k67(9,mvsiz) ,
96 . k68(9,mvsiz) ,k77(9,mvsiz) ,k78(9,mvsiz) ,k88(9,mvsiz) ,
97 . offg(mvsiz) ,bufmat(*) ,k_diag(*) ,k_lt(*)
98 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
99C-----------------------------------------------
100C L o c a l V a r i a b l e s
101C-----------------------------------------------
102 INTEGER LCO,NF1,IFLAG,NB3S,I,J,IKSUP,IKORTH,IADBUF,IPREDU
103 INTEGER IR, IS, IT,IL,IP,ICR,ICS,ICT,ICPG,PID,
104 . NPTR,NPTS,NPTT,NLAY,IAD0,NPPT,MX
105 INTEGER MXT(MVSIZ),NGL(MVSIZ),NGEO(MVSIZ),IDEG(MVSIZ)
106 my_real
107 . VOLN(MVSIZ), DELTAX(MVSIZ),
108 . AJC1(MVSIZ) , AJC2(MVSIZ) , AJC3(MVSIZ) ,
109 . ajc4(mvsiz) , ajc5(mvsiz) , ajc6(mvsiz) ,
110 . ajc7(mvsiz) , ajc8(mvsiz) , ajc9(mvsiz) ,
111 . aj1(mvsiz) , aj2(mvsiz) , aj3(mvsiz) ,
112 . aj4(mvsiz) , aj5(mvsiz) , aj6(mvsiz) ,
113 . aj7(mvsiz) , aj8(mvsiz) , aj9(mvsiz)
114C----------------
115 INTEGER NC1(MVSIZ), NC2(MVSIZ), NC3(MVSIZ), NC4(MVSIZ),
116 . NC5(MVSIZ), NC6(MVSIZ), NC7(MVSIZ), NC8(MVSIZ)
117 my_real
118 . OFF(MVSIZ) , RHOO(MVSIZ),
119 . X1(MVSIZ), X2(MVSIZ), X3(MVSIZ), X4(MVSIZ),
120 . X5(MVSIZ), X6(MVSIZ), X7(MVSIZ), X8(MVSIZ),
121 . Y1(MVSIZ), Y2(MVSIZ), Y3(MVSIZ), Y4(MVSIZ),
122 . y5(mvsiz), y6(mvsiz), y7(mvsiz), y8(mvsiz),
123 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
124 . z5(mvsiz), z6(mvsiz), z7(mvsiz), z8(mvsiz),
125 . vx1(mvsiz),vx2(mvsiz),vx3(mvsiz),vx4(mvsiz),
126 . vx5(mvsiz),vx6(mvsiz),vx7(mvsiz),vx8(mvsiz),
127 . vy1(mvsiz),vy2(mvsiz),vy3(mvsiz),vy4(mvsiz),
128 . vy5(mvsiz),vy6(mvsiz),vy7(mvsiz),vy8(mvsiz),
129 . vz1(mvsiz),vz2(mvsiz),vz3(mvsiz),vz4(mvsiz),
130 . vz5(mvsiz),vz6(mvsiz),vz7(mvsiz),vz8(mvsiz),
131 . hx1(mvsiz),hx2(mvsiz),hx3(mvsiz),hx4(mvsiz),
132 . hy1(mvsiz),hy2(mvsiz),hy3(mvsiz),hy4(mvsiz),
133 . hz1(mvsiz),hz2(mvsiz),hz3(mvsiz),hz4(mvsiz),
134 . px1(mvsiz),px2(mvsiz),px3(mvsiz),px4(mvsiz),
135 . px5(mvsiz),px6(mvsiz),px7(mvsiz),px8(mvsiz),
136 . py1(mvsiz),py2(mvsiz),py3(mvsiz),py4(mvsiz),
137 . py5(mvsiz),py6(mvsiz),py7(mvsiz),py8(mvsiz),
138 . pz1(mvsiz),pz2(mvsiz),pz3(mvsiz),pz4(mvsiz),
139 . pz5(mvsiz),pz6(mvsiz),pz7(mvsiz),pz8(mvsiz),
140 . pxy1(mvsiz),pxy2(mvsiz),pxy3(mvsiz),pxy4(mvsiz),
141 . pxy5(mvsiz),pxy6(mvsiz),pxy7(mvsiz),pxy8(mvsiz),
142 . pyx1(mvsiz),pyx2(mvsiz),pyx3(mvsiz),pyx4(mvsiz),
143 . pyx5(mvsiz),pyx6(mvsiz),pyx7(mvsiz),pyx8(mvsiz),
144 . pxz1(mvsiz),pxz2(mvsiz),pxz3(mvsiz),pxz4(mvsiz),
145 . pxz5(mvsiz),pxz6(mvsiz),pxz7(mvsiz),pxz8(mvsiz),
146 . pzx1(mvsiz),pzx2(mvsiz),pzx3(mvsiz),pzx4(mvsiz),
147 . pzx5(mvsiz),pzx6(mvsiz),pzx7(mvsiz),pzx8(mvsiz),
148 . pyz1(mvsiz),pyz2(mvsiz),pyz3(mvsiz),pyz4(mvsiz),
149 . pyz5(mvsiz),pyz6(mvsiz),pyz7(mvsiz),pyz8(mvsiz),
150 . pzy1(mvsiz),pzy2(mvsiz),pzy3(mvsiz),pzy4(mvsiz),
151 . pzy5(mvsiz),pzy6(mvsiz),pzy7(mvsiz),pzy8(mvsiz),
152 . pxc1(mvsiz),pxc2(mvsiz),pxc3(mvsiz),pxc4(mvsiz),
153 . pyc1(mvsiz),pyc2(mvsiz),pyc3(mvsiz),pyc4(mvsiz),
154 . pzc1(mvsiz),pzc2(mvsiz),pzc3(mvsiz),pzc4(mvsiz),
155 . bxy1(mvsiz),bxy2(mvsiz),bxy3(mvsiz),bxy4(mvsiz),
156 . bxy5(mvsiz),bxy6(mvsiz),bxy7(mvsiz),bxy8(mvsiz),
157 . byx1(mvsiz),byx2(mvsiz),byx3(mvsiz),byx4(mvsiz),
158 . byx5(mvsiz),byx6(mvsiz),byx7(mvsiz),byx8(mvsiz),
159 . bxz1(mvsiz),bxz2(mvsiz),bxz3(mvsiz),bxz4(mvsiz),
160 . bxz5(mvsiz),bxz6(mvsiz),bxz7(mvsiz),bxz8(mvsiz),
161 . bzx1(mvsiz),bzx2(mvsiz),bzx3(mvsiz),bzx4(mvsiz),
162 . bzx5(mvsiz),bzx6(mvsiz),bzx7(mvsiz),bzx8(mvsiz),
163 . byz1(mvsiz),byz2(mvsiz),byz3(mvsiz),byz4(mvsiz),
164 . byz5(mvsiz),byz6(mvsiz),byz7(mvsiz),byz8(mvsiz),
165 . bzy1(mvsiz),bzy2(mvsiz),bzy3(mvsiz),bzy4(mvsiz),
166 . bzy5(mvsiz),bzy6(mvsiz),bzy7(mvsiz),bzy8(mvsiz),
167 . px1h1(mvsiz),px2h1(mvsiz),px3h1(mvsiz),px4h1(mvsiz),
168 . px1h2(mvsiz),px2h2(mvsiz),px3h2(mvsiz),px4h2(mvsiz),
169 . px1h3(mvsiz),px2h3(mvsiz),px3h3(mvsiz),px4h3(mvsiz),
170 . px1h4(mvsiz),px2h4(mvsiz),px3h4(mvsiz),px4h4(mvsiz),
171 . hx(mvsiz,4), hy(mvsiz,4), hz(mvsiz,4)
172 my_real
173 . r11(mvsiz),r12(mvsiz),r13(mvsiz),
174 . r21(mvsiz),r22(mvsiz),r23(mvsiz),
175 . r31(mvsiz),r32(mvsiz),r33(mvsiz),
176 . g1x(mvsiz),g2x(mvsiz),g3x(mvsiz),
177 . g1y(mvsiz),g2y(mvsiz),g3y(mvsiz),
178 . g1z(mvsiz),g2z(mvsiz),g3z(mvsiz)
179 my_real
180 . bid,wi,smax(mvsiz),volg(mvsiz),nu(mvsiz),pp(mvsiz),usb(mvsiz),
181 . volm(mvsiz),sigm(mvsiz),nu1(mvsiz),gama(mvsiz,6)
182 TYPE(g_bufel_) ,POINTER :: GBUF
183 TYPE(L_BUFEL_) ,POINTER :: LBUF
184 my_real
185 . W_GAUSS(9,9),A_GAUSS(9,9)
186 DATA w_gauss /
187 1 2. ,0. ,0. ,
188 1 0. ,0. ,0. ,
189 1 0. ,0. ,0. ,
190 2 1. ,1. ,0. ,
191 2 0. ,0. ,0. ,
192 2 0. ,0. ,0. ,
193 3 0.555555555555556,0.888888888888889,0.555555555555556,
194 3 0. ,0. ,0. ,
195 3 0. ,0. ,0. ,
196 4 0.347854845137454,0.652145154862546,0.652145154862546,
197 4 0.347854845137454,0. ,0. ,
198 4 0. ,0. ,0. ,
199 5 0.236926885056189,0.478628670499366,0.568888888888889,
200 5 0.478628670499366,0.236926885056189,0. ,
201 5 0. ,0. ,0. ,
202 6 0.171324492379170,0.360761573048139,0.467913934572691,
203 6 0.467913934572691,0.360761573048139,0.171324492379170,
204 6 0. ,0. ,0. ,
205 7 0.129484966168870,0.279705391489277,0.381830050505119,
206 7 0.417959183673469,0.381830050505119,0.279705391489277,
207 7 0.129484966168870,0. ,0. ,
208 8 0.101228536290376,0.222381034453374,0.313706645877887,
209 8 0.362683783378362,0.362683783378362,0.313706645877887,
210 8 0.222381034453374,0.101228536290376,0. ,
211 9 0.081274388361574,0.180648160694857,0.260610696402935,
212 9 0.312347077040003,0.330239355001260,0.312347077040003,
213 9 0.260610696402935,0.180648160694857,0.081274388361574/
214 DATA a_gauss /
215 1 0. ,0. ,0. ,
216 1 0. ,0. ,0. ,
217 1 0. ,0. ,0. ,
218 2 -.577350269189626,0.577350269189626,0. ,
219 2 0. ,0. ,0. ,
220 2 0. ,0. ,0. ,
221 3 -.774596669241483,0. ,0.774596669241483,
222 3 0. ,0. ,0. ,
223 3 0. ,0. ,0. ,
224 4 -.861136311594053,-.339981043584856,0.339981043584856,
225 4 0.861136311594053,0. ,0. ,
226 4 0. ,0. ,0. ,
227 5 -.906179845938664,-.538469310105683,0. ,
228 5 0.538469310105683,0.906179845938664,0. ,
229 5 0. ,0. ,0. ,
230 6 -.932469514203152,-.661209386466265,-.238619186083197,
231 6 0.238619186083197,0.661209386466265,0.932469514203152,
232 6 0. ,0. ,0. ,
233 7 -.949107912342759,-.741531185599394,-.405845151377397,
234 7 0. ,0.405845151377397,0.741531185599394,
235 7 0.949107912342759,0. ,0. ,
236 8 -.960289856497536,-.796666477413627,-.525532409916329,
237 8 -.183434642495650,0.183434642495650,0.525532409916329,
238 8 0.796666477413627,0.960289856497536,0. ,
239 9 -.968160239507626,-.836031107326636,-.613371432700590,
240 9 -.324253423403809,0. ,0.324253423403809,
241 9 0.613371432700590,0.836031107326636,0.968160239507626/
242
243 my_real
244 . hh(2,mvsiz),fac(mvsiz),c1,e0(mvsiz),dd(9,mvsiz),gg(mvsiz),
245 . dm(9,mvsiz),gm(9,mvsiz),dgm(9,mvsiz),dg(9,mvsiz),
246 . g33(9,mvsiz),hh1(2,mvsiz)
247C----HH(1,):lamda,HH(2,):G; HH1 :effective lamda,g for Icpre=1
248 DOUBLE PRECISION
249 . VOLDP(MVSIZ)
250C-----------------------------------------------
251C S o u r c e L i n e s
252C-----------------------------------------------
253 gbuf => elbuf_str%GBUF
254 nlay = elbuf_str%NLAY
255 nptr = elbuf_str%NPTR
256 npts = elbuf_str%NPTS
257 nptt = elbuf_str%NPTT
258 iad0 = 1
259 IF (isorth > 0) iad0 = 1 + 6*nel
260 IF (igtyp == 21.OR.igtyp == 22) THEN
261 ikorth=2
262 ELSEIF (isorth>0) THEN
263 ikorth=1
264 ELSE
265 ikorth=0
266 ENDIF
267C-----------
268 nf1=nft+1
269C-----------
270 CALL srcoork(
271 1 x, ixs(1,nf1),x1, x2,
272 2 x3, x4, x5, x6,
273 3 x7, x8, y1, y2,
274 4 y3, y4, y5, y6,
275 5 y7, y8, z1, z2,
276 6 z3, z4, z5, z6,
277 7 z7, z8, gbuf%OFF, offg,
278 8 gbuf%SMSTR,r11, r12, r13,
279 9 r21, r22, r23, r31,
280 a r32, r33, nc1, nc2,
281 b nc3, nc4, nc5, nc6,
282 c nc7, nc8, ngl, mxt,
283 d ngeo, k11, k12, k13,
284 e k14, k15, k16, k17,
285 f k18, k22, k23, k24,
286 g k25, k26, k27, k28,
287 h k33, k34, k35, k36,
288 i k37, k38, k44, k45,
289 j k46, k47, k48, k55,
290 k k56, k57, k58, k66,
291 l k67, k68, k77, k78,
292 m k88, jhbe, gbuf%GAMA, gama,
293 n nel, ismstr, jhbe, jcvt,
294 o irep, igtyp, isorth)
295C
296 pid=ngeo(1)
297C IGTYP=NINT(GEO(12,PID))
298C CALL GET_GAMA(MTN,NEL,NBGAMA,JCVT,PM,IXS(1,NF1),IGTYP)
299 mx = mxt(1)
300 DO i=1,nel
301 nu(i)=min(half,pm(21,mx))
302 c1 =pm(32,mx)
303 e0(i) =three*(one-two*nu(1))*c1
304 deltax(i)=ep30
305 ideg(i)=0
306 ENDDO
307 IF (jhbe/=14.AND.jhbe<20) THEN
308 DO i=1,nel
309 nu(i)=zero
310 ENDDO
311 ENDIF
312 icpg = icp
313 IF (jhbe/=14.AND.jhbe/=17.AND.jhbe/=24) THEN
314 icpg = 1
315 ENDIF
316c
317 CALL s8zderict3(
318 1 offg, volg, ngl, x1,
319 2 x2, x3, x4, x5,
320 3 x6, x7, x8, y1,
321 4 y2, y3, y4, y5,
322 5 y6, y7, y8, z1,
323 6 z2, z3, z4, z5,
324 7 z6, z7, z8, pxc1,
325 8 pxc2, pxc3, pxc4, pyc1,
326 9 pyc2, pyc3, pyc4, pzc1,
327 a pzc2, pzc3, pzc4, px1h1,
328 b px1h2, px1h3, px1h4, px2h1,
329 c px2h2, px2h3, px2h4, px3h1,
330 d px3h2, px3h3, px3h4, px4h1,
331 e px4h2, px4h3, px4h4, hx,
332 f hy, hz, ajc1, ajc2,
333 g ajc3, ajc4, ajc5, ajc6,
334 h ajc7, ajc8, ajc9, smax,
335 i nel)
336 IF (icpg==2) THEN
337 CALL s8zsigp3(1 ,nel ,gbuf%SIG,e0 ,gbuf%PLA,
338 2 fac ,gbuf%G_PLA,nel )
339 DO i=1,nel
340 nu1(i)=nu(i)+(half-nu(i))*fac(i)
341 ENDDO
342 ELSE
343 DO i=1,nel
344 nu1(i)=nu(i)
345 ENDDO
346 ENDIF
347 IF (mtn>=28) THEN
348 iadbuf = ipm(7,mxt(1))
349 ELSE
350 iadbuf = 1
351 ENDIF
352 nppt = npts*nptt*nptr*nlay
353 CALL mmats(1 ,nel ,pm ,mxt ,hh ,
354 . mtn ,ikorth ,ipm ,igeo ,gama ,
355 . bufmat(iadbuf) ,dm ,dgm ,gm ,
356 . jhbe ,gbuf%SIG ,bid ,nppt ,nel )
357 CALL mmat_h1(
358 1 hh, hh1, fac, icpg,
359 2 ipredu, nel, mtn, ismstr,
360 3 jhbe)
361
362C-----------Matrix B----------
363C-----------Begin integrating points-----
364 it = 1
365 DO ir=1,nptr
366 DO is=1,npts
367 DO il=1,nlay
368 lbuf => elbuf_str%BUFLY(il)%LBUF(ir,is,it)
369C-----------
370 ip = ir + ( (is-1) + (il-1)*npts )*nptr
371 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(il,nptt)
372C
373 CALL s8zderi3(
374 1 offg, off, voln, ngl,
375 2 a_gauss(ir,nptr),a_gauss(is,npts),a_gauss(il,nptt),wi,
376 3 pxc1, pxc2, pxc3, pxc4,
377 4 pyc1, pyc2, pyc3, pyc4,
378 5 pzc1, pzc2, pzc3, pzc4,
379 6 px1h1, px1h2, px1h3, px1h4,
380 7 px2h1, px2h2, px2h3, px2h4,
381 8 px3h1, px3h2, px3h3, px3h4,
382 9 px4h1, px4h2, px4h3, px4h4,
383 a hx, hy, hz, px1,
384 b px2, px3, px4, px5,
385 c px6, px7, px8, py1,
386 d py2, py3, py4, py5,
387 e py6, py7, py8, pz1,
388 f pz2, pz3, pz4, pz5,
389 g pz6, pz7, pz8, pxy1,
390 h pxy2, pxy3, pxy4, pxy5,
391 i pxy6, pxy7, pxy8, pyx1,
392 j pyx2, pyx3, pyx4, pyx5,
393 k pyx6, pyx7, pyx8, pxz1,
394 l pxz2, pxz3, pxz4, pxz5,
395 m pxz6, pxz7, pxz8, pzx1,
396 n pzx2, pzx3, pzx4, pzx5,
397 o pzx6, pzx7, pzx8, pyz1,
398 p pyz2, pyz3, pyz4, pyz5,
399 q pyz6, pyz7, pyz8, pzy1,
400 r pzy2, pzy3, pzy4, pzy5,
401 s pzy6, pzy7, pzy8, bxy1,
402 t bxy2, bxy3, bxy4, bxy5,
403 u bxy6, bxy7, bxy8, byx1,
404 v byx2, byx3, byx4, byx5,
405 w byx6, byx7, byx8, bxz1,
406 x bxz2, bxz3, bxz4, bxz5,
407 y bxz6, bxz7, bxz8, bzx1,
408 z bzx2, bzx3, bzx4, bzx5,
409 1 bzx6, bzx7, bzx8, byz1,
410 2 byz2, byz3, byz4, byz5,
411 3 byz6, byz7, byz8, bzy1,
412 4 bzy2, bzy3, bzy4, bzy5,
413 5 bzy6, bzy7, bzy8, ajc1,
414 6 ajc2, ajc3, ajc4, ajc5,
415 7 ajc6, ajc7, ajc8, ajc9,
416 8 aj1, aj2, aj3, aj4,
417 9 aj5, aj6, smax, deltax,
418 a nu1, icpg, ideg, voldp,
419 b nel, mtn, ismstr, jhbe)
420 CALL mmstifs(
421 1 pm, mxt, hh1, voln,
422 2 icsig, dd, gg, dg,
423 3 g33, dm, gm, dgm,
424 4 ikorth, lbuf%SIG,ir, is,
425 5 il, nel, jhbe, mtn)
426C----------- check MPT sont memes entre KE et forc3----
427 CALL s8zlke3(
428 1 px1, px2, px3, px4,
429 2 py1, py2, py3, py4,
430 3 pz1, pz2, pz3, pz4,
431 4 px5, px6, px7, px8,
432 5 py5, py6, py7, py8,
433 6 pz5, pz6, pz7, pz8,
434 7 pxy1, pxy2, pxy3, pxy4,
435 8 pxy5, pxy6, pxy7, pxy8,
436 9 pyx1, pyx2, pyx3, pyx4,
437 a pyx5, pyx6, pyx7, pyx8,
438 b pxz1, pxz2, pxz3, pxz4,
439 c pxz5, pxz6, pxz7, pxz8,
440 d pzx1, pzx2, pzx3, pzx4,
441 e pzx5, pzx6, pzx7, pzx8,
442 f pyz1, pyz2, pyz3, pyz4,
443 g pyz5, pyz6, pyz7, pyz8,
444 h pzy1, pzy2, pzy3, pzy4,
445 i pzy5, pzy6, pzy7, pzy8,
446 j bxy1, bxy2, bxy3, bxy4,
447 k bxy5, bxy6, bxy7, bxy8,
448 l byx1, byx2, byx3, byx4,
449 m byx5, byx6, byx7, byx8,
450 n bxz1, bxz2, bxz3, bxz4,
451 o bxz5, bxz6, bxz7, bxz8,
452 p bzx1, bzx2, bzx3, bzx4,
453 q bzx5, bzx6, bzx7, bzx8,
454 r byz1, byz2, byz3, byz4,
455 s byz5, byz6, byz7, byz8,
456 t bzy1, bzy2, bzy3, bzy4,
457 u bzy5, bzy6, bzy7, bzy8,
458 v k11, k12, k13, k14,
459 w k15, k16, k17, k18,
460 x k22, k23, k24, k25,
461 y k26, k27, k28, k33,
462 z k34, k35, k36, k37,
463 1 k38, k44, k45, k46,
464 2 k47, k48, k55, k56,
465 3 k57, k58, k66, k67,
466 4 k68, k77, k78, k88,
467 5 dd, gg, icpg, offg,
468 6 ikorth, dg, g33, nel)
469 IF (ikgeo<0.AND.jhbe==14) THEN
470 CALL s8zkgei3(
471 1 lbuf%SIG,voln, px1, px2,
472 2 px3, px4, py1, py2,
473 3 py3, py4, pz1, pz2,
474 4 pz3, pz4, px5, px6,
475 5 px7, px8, py5, py6,
476 6 py7, py8, pz5, pz6,
477 7 pz7, pz8, k11, k12,
478 8 k13, k14, k15, k16,
479 9 k17, k18, k22, k23,
480 a k24, k25, k26, k27,
481 b k28, k33, k34, k35,
482 c k36, k37, k38, k44,
483 d k45, k46, k47, k48,
484 e k55, k56, k57, k58,
485 f k66, k67, k68, k77,
486 g k78, k88, nel)
487 ENDIF
488 ENDDO
489 ENDDO
490 ENDDO
491C-------------
492 IF (ipredu > 0) THEN
493 CALL s8zlkep3(
494 1 pxc1, pxc2, pxc3, pxc4,
495 2 pyc1, pyc2, pyc3, pyc4,
496 3 pzc1, pzc2, pzc3, pzc4,
497 4 k11, k12, k13, k14,
498 5 k15, k16, k17, k18,
499 6 k22, k23, k24, k25,
500 7 k26, k27, k28, k33,
501 8 k34, k35, k36, k37,
502 9 k38, k44, k45, k46,
503 a k47, k48, k55, k56,
504 b k57, k58, k66, k67,
505 c k68, k77, k78, k88,
506 d hh, volg, fac, icpg,
507 e nel)
508 END IF
509C------due to the generic form, only the mean geometrical stiffness is considered
510 IF (ikgeo>0) THEN
511 CALL s8zkgeo3(
512 1 gbuf%SIG,volg, pxc1, pxc2,
513 2 pxc3, pxc4, pyc1, pyc2,
514 3 pyc3, pyc4, pzc1, pzc2,
515 4 pzc3, pzc4, k11, k12,
516 5 k13, k14, k15, k16,
517 6 k17, k18, k22, k23,
518 7 k24, k25, k26, k27,
519 8 k28, k33, k34, k35,
520 9 k36, k37, k38, k44,
521 a k45, k46, k47, k48,
522 b k55, k56, k57, k58,
523 c k66, k67, k68, k77,
524 d k78, k88, nel)
525 ENDIF
526C----------------------------
527C CONVECTE --> GLOBAL.
528C----------------------------
529 CALL s8zcumg3(
530 1 r11, r21, r31, r12,
531 2 r22, r32, r13, r23,
532 3 r33, k11, k12, k13,
533 4 k14, k15, k16, k17,
534 5 k18, k22, k23, k24,
535 6 k25, k26, k27, k28,
536 7 k33, k34, k35, k36,
537 8 k37, k38, k44, k45,
538 9 k46, k47, k48, k55,
539 a k56, k57, k58, k66,
540 b k67, k68, k77, k78,
541 c k88, nel)
542
543 IF (neig>0) CALL s8eoff(
544 1 1, nel, ixs(1,nf1), etag, offg)
545 CALL assem_s8(
546 1 ixs(1,nf1),nel ,iddl ,ndof ,k_diag,
547 2 k_lt ,iadk ,jdik ,k11 ,k12 ,
548 3 k13 ,k14 ,k15 ,k16 ,k17 ,
549 4 k18 ,k22 ,k23 ,k24 ,k25 ,
550 5 k26 ,k27 ,k28 ,k33 ,k34 ,
551 6 k35 ,k36 ,k37 ,k38 ,k44 ,
552 7 k45 ,k46 ,k47 ,k48 ,k55 ,
553 8 k56 ,k57 ,k58 ,k66 ,k67 ,
554 9 k68 ,k77 ,k78 ,k88 ,offg )
555C-----------
556 RETURN
557 END
subroutine assem_s8(ixs, nel, iddl, ndof, k_diag, k_lt, iadk, jdik, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, off)
Definition assem_s8.F:43
#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:62
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)
#define min(a, b)
Definition macros.h:20
subroutine mmat_h1(hh, hh1, fac, icp, ipredu, nel, mtn, ismstr, jhbe)
Definition mmat_h1.F:34
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 s8cke3(pm, geo, ixs, x, elbuf_str, nel, icp, icsig, etag, iddl, ndof, k_diag, k_lt, iadk, jdik, ipm, igeo, ikgeo, bufmat, nft, mtn, jhbe, jcvt, igtyp, isorth, irep, ismstr)
Definition s8cke3.F:54
subroutine s8eoff(jft, jlt, ixs, etag, off)
Definition s8eoff.F:33
subroutine s8zcumg3(r11, r21, r31, r12, r22, r32, r13, r23, r33, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, nel)
Definition s8zcumg3.F:44
subroutine s8zderict3(off, det, ngl, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px1h1, px1h2, px1h3, px1h4, px2h1, px2h2, px2h3, px2h4, px3h1, px3h2, px3h3, px3h4, px4h1, px4h2, px4h3, px4h4, hx, hy, hz, jac1, jac2, jac3, jac4, jac5, jac6, jac7, jac8, jac9, smax, nel)
Definition s8zderict3.F:55
subroutine s8zkgei3(sig, vol, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px5, px6, px7, px8, py5, py6, py7, py8, pz5, pz6, pz7, pz8, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, nel)
Definition s8zkgei3.F:48
subroutine s8zkgeo3(sig, vol, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, nel)
Definition s8zkgeo3.F:45
subroutine s8zlke3(px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px5, px6, px7, px8, py5, py6, py7, py8, pz5, pz6, pz7, pz8, pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, dd, gg, icp, off, iksup, dg, g33, nel)
Definition s8zlke3.F:77
subroutine s8zlkep3(px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, hh, vol, fac, icp, nel)
Definition s8zlkep3.F:46
subroutine s8zsigp3(lft, llt, sig, e0, defp, fac, g_pla, nel)
Definition s8zsigp3.F:37
subroutine srcoork(x, ixs, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, offg, off, sav, r11, r12, r13, r21, r22, r23, r31, r32, r33, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, ngl, mxt, ngeo, k11, k12, k13, k14, k15, k16, k17, k18, k22, k23, k24, k25, k26, k27, k28, k33, k34, k35, k36, k37, k38, k44, k45, k46, k47, k48, k55, k56, k57, k58, k66, k67, k68, k77, k78, k88, khbe, gama0, gama, nel, ismstr, jhbe, jcvt, irep, igtyp, isorth)
Definition srcoork.F:60
subroutine s8zderi3(vol, veul, geo, ksi, eta, zeta, wi, hx, hy, hz, cj1, cj2, cj3, cj4, cj5, cj6, cj7, cj8, cj9, smax, deltax, ngl, voldp)
Definition s8zderi3.F:40