84
85
86
87 USE timer_mod
88 USE mat_elem_mod
94 USE sensor_mod
95 USE elbufdef_mod
97 use glob_therm_mod
98 use dttherm_mod
99
100
101
102#include "implicit_f.inc"
103
104
105
106#include "mvsiz_p.inc"
107
108
109
110#include "param_c.inc"
111#include "com04_c.inc"
112#include "com08_c.inc"
113#include "scr18_c.inc"
114#include "parit_c.inc"
115#include "scr14_c.inc"
116
117
118
119 TYPE(TIMER_), INTENT(INOUT) :: TIMERS
120 INTEGER,INTENT(IN) :: USERL_AVAIL
121 INTEGER,INTENT(IN) :: MAXFUNC
122 INTEGER,INTENT(INOUT) :: IDEL7NOK
123 INTEGER,INTENT(IN) :: SBUFMAT
124 INTEGER,INTENT(IN) :: STF
125 INTEGER,INTENT(IN) :: SNPC
126 INTEGER,INTENT(IN) :: NCYCLE
127 INTEGER, INTENT(IN) :: NXLAYMAX
128 INTEGER, INTENT(IN) :: JTUR
129 INTEGER, INTENT(IN) :: IGRE
130 INTEGER JFT, JLT, NVC, MTN,NELTST,ITYPTST,OFFSET,
131 . NEL,ISTRAIN,IHBE ,NPT,KFTS,IUN,
132 . ITHK,IOFC,IPLA,NFT,ISMSTR,IFAILURE,IEXPAN , JSMS , JTHE,
133 . ISUBSTACK,ITASK,IPRI
134 INTEGER NPF(*),IXTG(,*),IADTG(3,*),IXTG1(4,*),IADTG1(3,*),
135 . IPARTTG(*),IGEO(NPROPGI,*),IPM(NPROPMI,*),GRTH(*),IGRTH(*),
136 . IPARG(*),INDX_DRAPE(STDRAPE)
137
139 . pm(npropm,*), x(*), f(*), m(*), v(*), r(*),
140 . geo(npropg,*), tf(*), bufmat(*), pmsav(*),stifn(*),
141 . stifr(*),fsky(*),epsdot(6,*),thke(*),dt2t,
142 . f11(mvsiz), f12(mvsiz), f13(mvsiz),
143 . f21(mvsiz), f22(mvsiz), f23(mvsiz),
144 . f31(mvsiz), f32(mvsiz), f33(mvsiz),
145 . f14(mvsiz), f15(mvsiz), f16(mvsiz),
146 . f24(mvsiz), f25(mvsiz), f26(mvsiz),
147 . f34(mvsiz), f35(mvsiz), f36(mvsiz),
148 . gresav(*),mstg(*), dmeltg(*), ptg(3,*),condn(*),condnsky(*)
149 TYPE (TTABLE) TABLE(*)
150 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
151 TYPE (STACK_PLY) :: STACK
152 TYPE (FAILWAVE_STR_) ,TARGET ::
153 TYPE (GROUP_PARAM_) :: GROUP_PARAM
154 TYPE (NLOCAL_STR_), TARGET ::
155 TYPE (DRAPE_),DIMENSION(NUMELTG_DRAPE) :: DRAPE_SH3N
156 TYPE (MAT_ELEM_) ,INTENT(INOUT) :: MAT_ELEM
157 TYPE (SENSORS_) ,INTENT(INOUT) :: SENSORS
158 TYPE (DT_) ,INTENT(IN) :: DT
159 type (glob_therm_) ,intent(inout) :: glob_therm
160
161
162
163
164 INTEGER MAT(MVSIZ),PID(MVSIZ),NGL(MVSIZ),INDX(MVSIZ),IVS(MVSIZ),
165 . FWAVE_EL(NEL)
166 INTEGER
167 . I, J, NG,NPG,NNOD,PT0,PT1,PT2,NVS,IFLAG,IBID,NFAIL,
168 . IR,IS,ILAY,NLAY,,L_DIRB,J1,J2,N1,N2,N3,
169 . IGTYP,IGMAT,NPTTOT,IREP,IFAILWAVE,IDRAPE,IT,NPTT,
170 . ACTIFXFEM,SEDRAPE,NUMEL_DRAPE
171 INTEGER ,DIMENSION(:) ,POINTER :: FWAVE_NOD
172 parameter(nnod = 3)
174 . sti(mvsiz),stir(mvsiz),rho(mvsiz),
175 . ssp(mvsiz),viscmx(mvsiz),
area(mvsiz),area2(mvsiz),
176 . area4(mvsiz),area5(mvsiz),area6(mvsiz)
178 . exx(mvsiz), eyy(mvsiz), exy(mvsiz), exz(mvsiz), eyz(mvsiz),
179 . kxx(mvsiz), kyy(mvsiz), kxy(mvsiz),
180 . px2(mvsiz),py2(mvsiz), px3(mvsiz), py3(mvsiz),
181 . pb1(mvsiz,9),pb2(mvsiz,9),pb3(mvsiz,18),
182 . off(mvsiz), sigy(mvsiz),thk0(mvsiz),
183 . nu(mvsiz) , shf(mvsiz), dt1c(mvsiz)
185 . g(mvsiz) , ym(mvsiz) , a11(mvsiz) , a12(mvsiz),
186 . vol0(mvsiz),thk02(mvsiz),zcfac(mvsiz,2), gs(mvsiz),
187 . alpe(mvsiz)
189 . r11(mvsiz),r12(mvsiz),r13(mvsiz),r21(mvsiz),r22(mvsiz),
190 . r23(mvsiz),r31(mvsiz),r32(mvsiz),r33(mvsiz),
191 . n4x(mvsiz),n4y(mvsiz),n4z(mvsiz),n5x(mvsiz),n5y(mvsiz),
192 . n5z(mvsiz),n6x(mvsiz),n6y(mvsiz),n6z(mvsiz),
193 . x2(mvsiz),y2(mvsiz),x3(mvsiz),y3(mvsiz),
194 . x4(mvsiz),y4(mvsiz),z4(mvsiz),
195 . x5(mvsiz),y5(mvsiz),z5(mvsiz),
196 . x6(mvsiz),y6(mvsiz),z6(mvsiz),
197 . vlx(mvsiz,2),vly(mvsiz,2),vlz(mvsiz,6),
198 . vz4(mvsiz,3),vz5(mvsiz,3),vz6(mvsiz,3),
199 . aldt(mvsiz),amu(mvsiz),vdef(mvsiz,8),die(mvsiz),
200 . tempel(mvsiz),bid,krz(mvsiz),conde(mvsiz),a11r(mvsiz)
201 my_real ,
DIMENSIOn(NEL) :: zoffset
203 . ALLOCATABLE, DIMENSION(:), TARGET :: dira,dirb
205 . DIMENSION(:) ,POINTER :: dir_a,dir_b
206
207 my_real :: dtinv,asrate,eps_m2,eps_k2
208 my_real,
dimension(nel) :: epsd_pg
209 my_real,
dimension(mvsiz) :: fheat
210
211
212 INTEGER :: NDDL, K, INOD(3),NC1(MVSIZ), NC2(MVSIZ), NC3(MVSIZ), L_NLOC, IPOS(3),INLOC
213 my_real,
DIMENSION(:,:),
ALLOCATABLE :: var_reg
214 my_real,
DIMENSION(:),
POINTER :: dnl,unl
215
216 TYPE(BUF_LAY_) ,POINTER :: BUFLY
217 TYPE(G_BUFEL_) ,POINTER :: GBUF
218 TYPE(L_BUFEL_) ,POINTER :: LBUF
219 TYPE(L_BUFEL_DIR_) ,POINTER :: LBUF_DIR
220 INTEGER SDIR_A
221 INTEGER SDIR_B
222
223
224
225
226
227
228
229
230
231
232 gbuf => elbuf_str%GBUF
233 idrape = elbuf_str%IDRAPE
234 iun = 1
235 ibid = 0
236 bid = zero
237 irep = iparg(35)
238 actifxfem = iparg(70)
239 inloc= iparg(78)
240 nlay = elbuf_str%NLAY
243
244 tempel(:) = zero
245 fheat(:) = zero
246
247
248 npg = 0
249 ir = 1
250 is = 1
251 ng = 1
252
253 npttot = 0
254 DO ilay=1,nlay
255 npttot = npttot + elbuf_str%BUFLY(ilay)%NPTT
256 ENDDO
257 IF (npt == 0) npttot = npt ! compatibility with global integration
258 nddl = npttot
259 ALLOCATE(var_reg(nel,nddl))
260
261
262
263 ifailwave = iparg(79)
264 IF (ifailwave > 0 .and. failwave%WAVE_MOD == 1) THEN
265 DO i=jft,jlt
266 n1 = failwave%IDXI(ixtg(2,i))
267 n2 = failwave%IDXI(ixtg(3,i))
268 n3 = failwave%IDXI(ixtg(4,i))
269 nfail = failwave%FWAVE_NOD(1,n1,1)
270 . + failwave%FWAVE_NOD(1,n2,1)
271 . + failwave%FWAVE_NOD(1,n3,1)
272 IF (nfail > 0) fwave_el(i) = 1
273 ENDDO
274 ENDIF
275
276 l_dira = elbuf_str%BUFLY(1)%LY_DIRA
277 l_dirb = elbuf_str%BUFLY(1)%LY_DIRB
278 igtyp = igeo(11,ixtg(5,1))
279 IF(idrape > 0 .AND. (igtyp == 51 .OR. igtyp == 52)) THEN
280 ALLOCATE(dira(npttot*nel*l_dira))
281 ALLOCATE(dirb(npttot*nel*l_dirb))
282 IF (l_dira == 0) THEN
283 CONTINUE
284 ELSEIF (irep == 0) THEN
285 npttot = 0
286 DO ilay=1,nlay
287 nptt = elbuf_str%BUFLY(ilay)%NPTT
288 DO it=1,nptt
289 j = npttot + it
290 lbuf_dir => elbuf_str%BUFLY(ilay)%LBUF_DIR(it)
291 j1 = 1+(j-1)*l_dira*nel
292 j2 = j*l_dira*nel
293 dira(j1:j2) = lbuf_dir%DIRA(1:nel*l_dira)
294 ENDDO
295 npttot = npttot + nptt
296 ENDDO
297 ENDIF
298 sdir_a=npttot*nel*l_dira
299 sdir_b=npttot*nel*l_dirb
300 dir_a => dira(1:npttot*nel*l_dira)
301 dir_b => dirb(1:npttot*nel*l_dirb)
302 ELSE
303 sdir_a=nlay*nel*l_dira
304 sdir_b=nlay*nel*l_dirb
305 ALLOCATE(dira(nlay*nel*l_dira))
306 ALLOCATE(dirb(nlay*nel*l_dirb))
307 dira=zero
308 dirb=zero
309 IF (l_dira == 0) THEN
310 CONTINUE
311 ELSEIF (irep == 0) THEN
312 DO j=1,nlay
313 j1 = 1+(j-1)*l_dira*nel
314 j2 = j*l_dira*nel
315 dira(j1:j2) = elbuf_str%BUFLY(j)%DIRA(1:nel*l_dira)
316 ENDDO
317 ENDIF
318 sdir_a=nlay*nel*l_dira
319 sdir_b=nlay*nel*l_dirb
320 dir_a => dira(1:nlay*nel*l_dira)
321 dir_b => dirb(1:nlay*nel*l_dirb)
322 ENDIF
323
324 DO i=jft,jlt
325 a11r(i) = zero
326 ENDDO
327
328 CALL cdk6coor3(elbuf_str,jft,jlt,mat,pid,
329 . ngl,x,v,r,ixtg,gbuf%OFF,
330 . off,r11,r12,r13,r21,r22,r23,r31,r32,r33,
331 . n4x,n4y,n4z,n5x,n5y,n5z,n6x,n6y,n6z,
332 . x2,y2,x3,y3,x4,y4,z4,x5,y5,z5,x6,y6,z6,
333 . gbuf%SMSTR,
area,area2,
334 . vlx,vly,vlz,vz4,vz5,vz6,ismstr,nlay,irep,
335 . dir_a ,dir_b ,igeo ,
336 . ixtg1 ,nvs ,ivs ,area4 ,area5 ,
337 . area6 ,nel)
338 igtyp = igeo(11,pid(1))
339 igmat = igeo(98,pid(1))
340
341 CALL cncoef3(jft ,jlt ,pm ,mat ,geo ,
342 2 pid ,off ,
area ,shf ,thk0 ,
343 3 thk02 ,nu ,g ,ym ,
344 4 a11 ,a12 ,gbuf%THK,thke ,ssp ,
345 5 rho ,vol0 ,gs ,mtn ,ithk ,
346 6 npttot ,dt1c , dt1 ,ihbe ,amu ,
347 7 krz ,igeo ,a11r ,isubstack , stack%PM,
348 8 nel ,zoffset)
349 CALL cdk6deri3(jft ,jlt, x2,y2,x3,y3,area2,alpe,aldt,nu,thk02,
350 1 px2,py2,px3,py3,x4,y4,z4,x5,y5,z5,x6,y6,z6,
351 2 n4x,n4y,n4z,n5x,n5y,n5z,n6x,n6y,n6z,
352 3 area4,area5,area6,pb1,pb2,pb3,nvs,ivs,ixtg1)
353
354 CALL cdk6defo3(jft,jlt,vlx,vly,vlz,vz4,vz5,vz6,
355 1 px2,py2,px3,py3,pb1,pb2,pb3,vdef)
356 CALL cdk6stra3(jft, jlt, nft, vdef,gbuf%STRA,
357 1 exx, eyy, exy, exz, eyz,
358 2 kxx, kyy, kxy, dt1c, epsdot,
359 3 iepsdot, istrain,nel)
360
361
362
363 IF (inloc > 0) THEN
364 l_nloc = nloc_dmg%L_NLOC
365 dnl => nloc_dmg%DNL(1:l_nloc)
366 unl => nloc_dmg%UNL(1:l_nloc)
367 DO i = jft,jlt
368 nc1(i) = ixtg(2,i)
369 nc2(i) = ixtg(3,i)
370 nc3(i) = ixtg(4,i)
371 ENDDO
372 DO k = 1,nddl
373#include "vectorize.inc"
374 DO i = jft,jlt
375 inod(1) = nloc_dmg%IDXI(nc1(i))
376 inod(2) = nloc_dmg%IDXI(nc2(i))
377 inod(3) = nloc_dmg%IDXI(nc3(i))
378 ipos(1) = nloc_dmg%POSI(inod(1))
379 ipos(2) = nloc_dmg%POSI(inod(2))
380 ipos(3) = nloc_dmg%POSI(inod(3))
381 var_reg(i,k) = third*(dnl(ipos(1)+k-1)
382 . + dnl(ipos(2)+k-1)
383 . + dnl(ipos(3)+k-1))
384 ENDDO
385 ENDDO
386 ENDIF
387
388
389
390
391
392
393!-------------------------------------------------------------------------------
394 dtinv = dt1 /
max(dt1**2,em20)
395 asrate = one
396#include "vectorize.inc"
397 do i = 1,nel
398 eps_k2 = (kxx(i)**2+kyy(i)**2+kxx(i)*kyy(i)+fourth*kxy(i)**2)
399 . * one_over_9*gbuf%thk(i)**2
400 eps_m2 = four_over_3*(exx(i)**2+eyy(i)**2+exx(i)*eyy(i) + fourth*exy(i)**2)
401 epsd_pg(i) = sqrt(eps_k2 + eps_m2)*dtinv
402 end do
403
405 1 elbuf_str ,jft ,jlt ,nft ,iparg ,
406 2 nel ,mtn ,ipla ,ithk ,group_param,
407 3 pm ,geo ,npf ,tf ,bufmat ,
408 4 ssp ,rho ,viscmx ,dt1c ,sigy ,
409 5
area ,exx ,eyy ,exy ,exz ,
410 6 eyz ,kxx ,kyy ,kxy ,nu ,
411 7 off ,thk0 ,mat ,pid ,mat_elem ,
412 8 gbuf%FOR ,gbuf%MOM ,gbuf%STRA ,failwave ,fwave_el ,
413 9 gbuf%THK ,gbuf%EINT ,iofc ,
414 a g ,a11 ,a12 ,vol0 ,indx ,
415 b ngl ,zcfac ,shf ,gs ,epsd_pg ,
416 c kfts ,ihbe ,alpe ,
417 d dir_a ,dir_b ,igeo ,
418 e ipm ,ifailure ,npg ,fheat ,
419 f tempel ,die ,ibid ,ibid ,bid ,
420 g ibid ,bid ,
421 h bid ,bid ,bid ,bid ,bid ,
422 i bid ,bid ,bid ,r11 ,r12 ,
423 j r13 ,r21 ,r22 ,r23 ,r31 ,
424 k r32 ,r33 ,ng ,table ,ibid ,
425 l bid ,sensors ,bid ,ibid ,
426 m bid ,bid ,aldt ,glob_therm%IDT_THERM ,glob_therm%THEACCFACT,
427 n ismstr ,ir ,is ,nlay ,npt ,
428 o ibid ,ibid ,isubstack ,stack ,
429 p bid ,itask ,drape_sh3n ,var_reg ,nloc_dmg ,
430 r indx_drape,thke ,sedrape ,numel_drape ,dt ,
431 q ncycle ,snpc ,stf ,nxlaymax ,idel7nok ,
432 r userl_avail ,maxfunc ,npttot ,sbufmat ,sdir_a ,sdir_b ,
433 s gbuf%FOR_G)
434
435
436
437
438 CALL cbavisc(jft ,jlt ,vdef ,amu ,off,
439 2 shf ,nu ,rho ,ssp ,
area,
440 3 thk0 ,gbuf%FOR,gbuf%MOM,iun ,mtn,
441 4 iparttg ,pmsav ,dt1 ,nel )
442
443
444
445 CALL cdk6fint3(jft,jlt,vol0,thk0,gbuf%FOR,gbuf%MOM,
446 1 px2,py2,px3,py3,pb1,pb2,pb3,
447 2 f11,f12,f13,f21,f22,f23,f31,f32,f33,
448 3 f14,f15,f16,f24,f25,f26,f34,f35,f36,
449 4 n4x,n4y,n4z,n5x,n5y,n5z,n6x,n6y,n6z,
450 5 nel)
451
452
453
455 1 r11,r12,r13,r21,r22,r23,r31,r32,r33,
456 2 f11,f12,f13,f21,f22,f23,f31,f32,f33,
457 3 f14,f15,f16,f24,f25,f26,f34,f35,f36)
458
459
460
462 1 jft ,jlt ,off ,dt2t ,amu ,
463 2 neltst ,ityptst,sti ,stir ,gbuf%OFF,
464 3 ssp ,viscmx , rho , vol0,thk0,thk02,
465 4 a11 ,aldt , alpe , ngl,ismstr,
466 5 iofc ,nnod ,
area ,g ,shf ,
467 6 mstg ,dmeltg ,jsms ,ptg ,igtyp ,
468 7 igmat ,a11r ,gbuf%G_DT, gbuf%DT,mtn ,
469 8 pm ,mat(jft), nel ,zoffset)
470
471
472
473 IF (jthe /= 0 .AND. glob_therm%IDT_THERM == 1)THEN
474 call dttherm(nel ,pm(1,mat(1)) ,npropm ,glob_therm ,
475 . jtur ,tempel ,vol0 ,rho ,
476 . aldt ,off ,conde ,gbuf%re ,gbuf%rk )
477 ENDIF
478
479
480
481 IF (inloc > 0) THEN
483 1 nloc_dmg, var_reg, thk0, nel,
484 2 off,
area, nc1, nc2,
485 3 nc3, px2, py2, px3,
486 4 py3, elbuf_str%NLOC(1,1), ixtg(1,jft),
487 5 nddl, itask, dt2t, aldt,
488 6 gbuf%THK_I, gbuf%AREA, nft)
489 ENDIF
490
491
492
493
494 IF(ipri>0)
496 1 jft, jlt, pm, v,
497 2 gbuf%THK, gbuf%EINT, pmsav, iparttg,
498 3 rho, vol0, ixtg, x,
499 4 r, thk02,
area, gresav,
500 5 grth, igrth, off, ibid,
501 6 ibid, ibid, ibid, ibid,
502 7 iexpan, gbuf%EINTTH,itask, mat,
503 8 gbuf%VOL, actifxfem, igre, sensors,
504 9 nel, gbuf%G_WPLA,gbuf%WPLA)
505 IF(iparit==0)THEN
507 2 gbuf%OFF,off ,sti ,stir,stifn,
508 3 stifr ,ixtg ,ixtg1, f11 ,
509 4 f12 ,f13 ,f21 ,f22 ,f23 ,
510 5 f31 ,f32 ,f33 ,f14 ,f15 ,
511 7 f16 ,f24 ,f25 ,f26 ,f34 ,
512 8 f35 ,f36 ,nvs ,ivs )
513 ELSE
515 2 stir ,fsky ,fsky ,iadtg ,iadtg1,
516 4 f11 ,f12 ,f13 ,f21 ,f22 ,
517 5 f23 ,f31 ,f32 ,f33 ,f14 ,
518 7 f15 ,f16 ,f24 ,f25 ,f26 ,
519 8 f34 ,f35 ,f36 )
520 ENDIF
521
522
523
524 IF (ifailwave > 0 .and. failwave%WAVE_MOD == 1) THEN
525 DO i=jft,jlt
526 n1 = failwave%IDXI(ixtg(2,i))
527 n2 = failwave%IDXI(ixtg(3,i))
528 n3 = failwave%IDXI(ixtg(4,i))
529 IF (fwave_el(i) == -1) THEN
530 failwave%FWAVE_NOD(1,n1,1) = 1
531 failwave%FWAVE_NOD(1,n2,1) = 1
532 failwave%FWAVE_NOD(1,n3,1) = 1
533 ENDIF
534 ENDDO
535 ENDIF
536
537 IF (ALLOCATED(var_reg)) DEALLOCATE(var_reg)
538 RETURN
subroutine c3bilan(jft, jlt, pm, v, thk, eint, partsav, iparttg, rho, vol00, ixtg, x, vr, thk02, area, gresav, grth, igrth, off, ixfem, ilev, iel_crk, iadtg_crk, nft1, iexpan, eintth, itask, mat, gvol, actifxfem, igre, sensors, nel, g_wpla, wpla)
subroutine cbavisc(jft, jlt, vdef, amu, off, shf, nu, rho, ssp, area, thk, for, mom, npt, mtn, ipartc, evis, dt1, nel)
subroutine cdk6coor3(elbuf_str, jft, jlt, mat, pid, ngl, x, v, r, ixtg, offg, off, r11, r12, r13, r21, r22, r23, r31, r32, r33, n4x, n4y, n4z, n5x, n5y, n5z, n6x, n6y, n6z, xl2, yl2, xl3, yl3, xl4, yl4, zl4, xl5, yl5, zl5, xl6, yl6, zl6, smstr, area, area2, vlx, vly, vlz, vnz4, vnz5, vnz6, ismstr, nlay, irep, dir_a, dir_b, igeo, ixtg1, nvs, ivs, area4, area5, area6, nel)
subroutine cdk6defo3(jft, jlt, vlx, vly, vlz, vz4, vz5, vz6, px2, py2, px3, py3, pb1, pb2, pb3, vdef)
subroutine cdk6deri3(jft, jlt, x2, y2, x3, y3, area2, alpe, aldt, nu, thk2, px2, py2, px3, py3, x4, y4, z4, x5, y5, z5, x6, y6, z6, n4x, n4y, n4z, n5x, n5y, n5z, n6x, n6y, n6z, area4, area5, area6, pb1, pb2, pb3, nvs, ivs, ixtg1)
subroutine cdk6fcum3(jft, jlt, r11, r12, r13, r21, r22, r23, r31, r32, r33, f11, f12, f13, f21, f22, f23, f31, f32, f33, f14, f15, f16, f24, f25, f26, f34, f35, f36)
subroutine cdk6fint3(jft, jlt, vol, thk0, for, mom, px2, py2, px3, py3, pb1, pb2, pb3, f11, f12, f13, f21, f22, f23, f31, f32, f33, f14, f15, f16, f24, f25, f26, f34, f35, f36, n4x, n4y, n4z, n5x, n5y, n5z, n6x, n6y, n6z, nel)
subroutine cdk6fint_reg(nloc_dmg, var_reg, thk, nel, off, area, nc1, nc2, nc3, px2, py2, px3, py3, bufnl, imat, nddl, itask, dt2t, le, thk0, area0, nft)
subroutine cdk6stra3(jft, jlt, nft, vdef, gstr, exx, eyy, exy, exz, eyz, kxx, kyy, kxy, dt1c, epsdot, iepsdot, istrain, nel)
subroutine cdk6updt3(jft, jlt, f, m, nvc, offg, off, sti, stir, stifn, stifr, ixtg, ixtg1, f11, f12, f13, f21, f22, f23, f31, f32, f33, f14, f15, f16, f24, f25, f26, f34, f35, f36, nvs, ivs)
subroutine cdk6updt3p(jft, jlt, offg, off, sti, stir, fsky, fskyv, iadtg, iadtg1, f11, f12, f13, f21, f22, f23, f31, f32, f33, f14, f15, f16, f24, f25, f26, f34, f35, f36)
subroutine cmain3(timers, elbuf_str, jft, jlt, nft, iparg, nel, mtn, ipla, ithk, group_param, pm, geo, npf, tf, bufmat, ssp, rho, viscmx, dt1c, sigy, area, exx, eyy, exy, exz, eyz, kxx, kyy, kxy, nu, off, thk0, mat, pid, mat_elem, for, mom, gstr, failwave, fwave_el, thk, eint, iofc, g, a11, a12, vol0, indxdel, ngl, zcfac, shf, gs, epsd_pg, kfts, jhbe, alpe, dir_a, dir_b, igeo, ipm, ifailure, npg, fheat, tempel, die, jthe, iexpan, tempel0, ishplyxfem, ply_exx, ply_eyy, ply_exy, ply_exz, ply_eyz, ply_f, del_ply, th_iply, sig_iply, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z, ng, table, ixfem, offi, sensors, a11_iply, elcrkini, dir1_crk, dir2_crk, aldt, idt_therm, theaccfact, ismstr, ir, is, nlay, npt, ixlay, ixel, isubstack, stack, f_def, itask, drape, varnl, nloc_dmg, indx_drape, thke, sedrape, numel_drape, dt, ncycle, snpc, stf, nxlaymax, idel7nok, userl_avail, maxfunc, varnl_npttot, sbufmat, sdir_a, sdir_b, for_g)
subroutine cncoef3(jft, jlt, pm, mat, geo, pid, off, area, shf, thk0, thk02, nu, g, ym, a11, a12, thk, thke, ssp, rho, volg, gs, mtn, ithk, npt, dt1c, dt1, ihbe, amu, krz, igeo, a11r, isubstack, pm_stack, nel, zoffset)
subroutine cndt3(jft, jlt, off, dt2t, amu, neltst, ityptst, sti, stir, offg, ssp, viscmx, rho, vol0, thk0, thk02, a1, aldt, alpe, ngl, ismstr, iofc, nne, area, g, shf, msc, dmelc, jsms, ptg, igtyp, igmat, a11r, g_dt, dtel, mtn, pm, imat, nel, zoffset)
subroutine area(d1, x, x2, y, y2, eint, stif0)