67 1 JFT ,JLT ,PM ,IXC ,X ,
68 2 F ,M ,V ,VR ,FAILWAVE,
69 3 NVC ,MTN ,GEO ,TF ,NPF ,
70 4 BUFMAT ,PARTSAV,DT2T ,NELTST,ITYPTST,
71 5 STIFN ,STIFR ,FSKY ,CRKSKY,IADC ,
72 6 D ,DR ,TANI ,OFFSET,EANI ,
73 7 F11 ,F12 ,F13 ,F14 ,F21 ,
74 8 F22 ,F23 ,F24 ,F31 ,F32 ,
75 9 F33 ,F34 ,M11 ,M12 ,M13 ,
76 A M14 ,M21 ,M22 ,M23 ,M24 ,
77 B M31 ,M32 ,M33 ,M34 ,INDXOF ,
78 C IPARTC ,THKE ,GROUP_PARAM ,MAT_ELEM,
79 F NEL ,ISTRAIN,IHBE ,KFTS ,
80 G ITHK ,IOFC ,IPLA ,NFT ,ISMSTR ,
81 H FZERO ,IGEO ,IPM ,IFAILURE,ITASK ,
82 I JTHE ,TEMP , FTHE ,FTHESKY,IEXPAN,
83 J GRESAV ,GRTH ,IGRTH ,MSC ,DMELC ,
84 K JSMS ,TABLE ,IPARG ,IXFEM,INOD_CRK,
85 L IEL_CRK,IADC_CRK,ELCUTC,
86 M SENSORS,IXEL ,STACK ,
87 N ISUBSTACK,UXINT_MEAN,UYINT_MEAN,UZINT_MEAN,NLEVXF,
88 O NODEDGE,CRKEDGE,DRAPE_SH4N,IPRI ,NLOC_DMG,INDX_DRAPE, IGRE,
89 P DT ,SNPC , STF ,GLOB_THERM,
90 Q USERL_AVAIL,MAXFUNC,SBUFMAT,IPART )
106 use element_mod ,
only : nixc
110#include "implicit_f.inc"
114#include "mvsiz_p.inc"
118#include "com01_c.inc"
119#include "com04_c.inc"
120#include "com_xfem1.inc"
121#include "scr02_c.inc"
122#include "scr17_c.inc"
123#include "scr18_c.inc"
124#include "param_c.inc"
125#include "parit_c.inc"
126#include "timeri_c.inc"
127#include "comlock.inc"
131 TYPE(),
INTENT(INOUT) :: TIMERS
132 INTEGER,
INTENT(IN) :: USERL_AVAIL
133 INTEGER,
INTENT(IN) :: MAXFUNC
134 INTEGER,
INTENT(IN) :: SBUFMAT
135 INTEGER,
INTENT(IN) :: STF
136 INTEGER,
INTENT(IN) :: SNPC
137 INTEGER,
INTENT(IN) :: IGRE
138 INTEGER ,JLT,NVC,MTN,NELTST,ITYPTST,OFFSET,
141INTEGER NPF(*),IXC(NIXC,*),IADC(4,*),INDXOF(MVSIZ),IPARTC(*),
142 . IGEO(NPROPGI,*),IPM(NPROPMI,*),ITASK,JTHE, JSMS,
143 . GRTH(*),IGRTH(*),IPARG(*),IXFEM,INOD_CRK(*),IEL_CRK(*),
144 . IADC_CRK(4,*),ELCUTC(2,*),ISUBSTACK,NODEDGE(2,*),INDX_DRAPE(SCDRAPE)
147 . F11(MVSIZ), F12(MVSIZ), F13(MVSIZ), F14(MVSIZ),
148 . F21(MVSIZ), F22(MVSIZ), F23(MVSIZ), F24(MVSIZ),
149 . F31(MVSIZ), F32(MVSIZ), F33(MVSIZ), F34(MVSIZ),
150 . M11(MVSIZ), M12(MVSIZ), M13(MVSIZ), M14(MVSIZ),
151 . M21(MVSIZ), M22(MVSIZ), M23(MVSIZ), M24(MVSIZ),
152 . M31(MVSIZ), M32(MVSIZ), M33(), M34(MVSIZ),
153 . PM(*), X(3,*), F(*), M(*), V(*), VR(*),
154 . GEO(NPROPG,*),TF(*), (*),PARTSAV(*),STIFN(*),STIFR(*),
155 . fsky(8,*),d(*),dr(*),tani(6,*),eani(*), thke(*),dt2t,
156 . fzero(3,4,*),temp(*), fthe(*),fthesky(*),gresav(*),
157 . msc(*), dmelc(*),uxint_mean(nlevxf,mvsiz),
158 . uyint_mean(nlevxf,mvsiz),uzint_mean(nlevxf,mvsiz)
160 TYPE (ELBUF_STRUCT_),
TARGET :: XFEM_STR
161 TYPE (XFEM_EDGE_) ,
DIMENSION(*) :: CRKEDGE
162 TYPE (XFEM_SKY_) ,
DIMENSION(*) :: CRKSKY
163 TYPE (STACK_PLY) :: STACK
164 TYPE (FAILWAVE_STR_) :: FAILWAVE
165 TYPE (GROUP_PARAM_) :: GROUP_PARAM
166 TYPE (DRAPE_) ,
DIMENSION(NUMELC_DRAPE) :: DRAPE_SH4N
167 TYPE (MAT_ELEM_) ,
INTENT(INOUT) :: MAT_ELEM
169 TYPE (SENSORS_) ,
INTENT(INOUT) ::
170 TYPE (DT_),
INTENT(IN) :: DT
171 type (glob_therm_) ,
intent(inout) :: glob_therm
173 INTEGER,
DIMENSION(LIPART1, NPART),
INTENT(IN) :: IPART
178 INTEGER I,IGTYP,ICSEN,IXLAY,NXLAY,NLAYER,IUN,NPG,NPTT,IBID,
179 . IR,IS,IT,NG,L_DIRA,L_DIRB,J1,J2,,IGMAT,,IREP,
180 . ACTIFXFEM,SEDRAPE,NUMEL_DRAPE
181 INTEGER MAT(MVSIZ),PID(MVSIZ),NDT(MVSIZ),NGL(MVSIZ),FWAVE(MVSIZ)
184 . sti(mvsiz),stir(mvsiz),sigy(mvsiz),rho(mvsiz),
185 . x2(mvsiz),x3(mvsiz),x4(mvsiz),y2(mvsiz),y3(mvsiz),
186 . y4(mvsiz),z2(mvsiz),ssp(mvsiz),viscmx(mvsiz),
187 . vx1(mvsiz),vx2(mvsiz),vx3(mvsiz),vx4(mvsiz),
188 . vy1(mvsiz),vy2(mvsiz),vy3(mvsiz),vy4(mvsiz),
189 . vz1(mvsiz),vz2(mvsiz),vz3(mvsiz),vz4(mvsiz),
192 . x1g(mvsiz),x2g(mvsiz),x3g(mvsiz),x4g(mvsiz),
193 . y1g(mvsiz),y2g(mvsiz),y3g(mvsiz),y4g(mvsiz),
194 . z1g(mvsiz),z2g(mvsiz),z3g(mvsiz),z4g(mvsiz),
195 . e1x(mvsiz),e1y(mvsiz),e1z(mvsiz),e2x
196 . e2y(mvsiz),e2z(mvsiz),e3x(mvsiz
198 . exx(mvsiz),eyy(mvsiz),exy(mvsiz),exz(mvsiz),eyz(mvsiz),
199 . kxx(mvsiz),kyy(mvsiz),kxy(mvsiz),px1(mvsiz),
200 . px2(mvsiz),py1(mvsiz),py2(mvsiz),thk0(mvsiz),
201 . off(mvsiz),nu(mvsiz),shf(mvsiz),
area(mvsiz),
202 . g(mvsiz),ym(mvsiz),a11(mvsiz),a12(mvsiz),
203 . vl1(mvsiz,3),vl2(mvsiz,3),vl3(mvsiz,3),vl4(mvsiz,3),
204 . vrl1(mvsiz,3),vrl2(mvsiz,3),vrl3(mvsiz,3),vrl4(mvsiz,3),
205 . dt1c(mvsiz),dt2c(mvsiz),aldt(mvsiz),alpe(mvsiz),vhx(mvsiz),
207 . dtcsub(mvsiz),a_i(mvsiz)
209 . h1(mvsiz),h2(mvsiz),h3(mvsiz),vol0(mvsiz),vol00(mvsiz),
210 . h11(mvsiz),h12(mvsiz),h13(mvsiz),h14(mvsiz),
211 . h21(mvsiz),h22(mvsiz),h23(mvsiz),h24(mvsiz),
212 . h31(mvsiz),h32(mvsiz),h33(mvsiz),h34(mvsiz),
213 . b11(mvsiz),b12(mvsiz),b13(mvsiz),b14(mvsiz),
214 . b21(mvsiz),b22(mvsiz),b23(mvsiz),b24(mvsiz),
215 . rx1(mvsiz),rx2(mvsiz),rx3(mvsiz),rx4(mvsiz),
216 . ry1(mvsiz),ry2(mvsiz),ry3(mvsiz),ry4(mvsiz),
217 . zcfac(mvsiz,2),gs(mvsiz),srh1(mvsiz),srh2(mvsiz),srh3(mvsiz),
218 . die(mvsiz),tempel(mvsiz),them(mvsiz,4),
219 . ux1(mvsiz),ux2(mvsiz),ux3(mvsiz),ux4(mvsiz),
220 . uy1(mvsiz),uy2(mvsiz),uy3(mvsiz),uy4(mvsiz),a11r(mvsiz),
225 INTEGER,
ALLOCATABLE,
DIMENSION(:) :: ELCRKINI
227 .
ALLOCATABLE,
DIMENSION(:) :: DIRA,DIRB,DIR1_CRK,DIR2_CRK
229 .
DIMENSION(:) ,
POINTER :: DIR_A,DIR_B
232 my_real,
dimension(mvsiz) :: fheat
233 my_real,
dimension(mvsiz) :: ssp_eq
236 TYPE(buf_lay_) ,
POINTER :: BUFLY
237 TYPE(G_BUFEL_) ,
POINTER :: GBUF
238 TYPE(L_BUFEL_) ,
POINTER :: LBUF
240 .
DIMENSION(:) ,
POINTER :: OFFG,THKG,STRAG,FORG,MOMG,
241 . EINTG,EPSDG,TEMPG,EINTTH,HOURGG
243 .
DIMENSION(:) ,
POINTER :: SMSTRG
245 .
DIMENSION(:,:),
ALLOCATABLE :: VARNL
261 ALLOCATE(varnl(nel,1))
264 IF (ismstr>=10) ismstr=4
272 icsen = igeo(3,pid(1))
273 igtyp = igeo(11,pid(1))
274 igmat = igeo(98,pid(1))
276 actifxfem = iparg(70)
278 gbuf => xfem_str%GBUF
279 nxlay = xfem_str%NLAY
282 ALLOCATE(elcrkini(nxlay*nel))
283 ALLOCATE(dir1_crk(nxlay*nel))
284 ALLOCATE(dir2_crk(nxlay*nel))
289 l_dira = xfem_str%BUFLY(1)%LY_DIRA
290 l_dirb = xfem_str%BUFLY(1)%LY_DIRB
292 ALLOCATE (dira(nxlay*nel*l_dira))
293 ALLOCATE (dirb(nxlay*nel*l_dirb))
296 sdir_a=nxlay*nel*l_dira
297 sdir_b=nxlay*nel*l_dirb
298 dir_a => dira(1:nxlay*nel*l_dira)
299 dir_b => dirb(1:nxlay*nel*l_dirb)
302 nptt = xfem_str%BUFLY(ixlay)%NPTT
303 IF (l_dira == 0)
THEN
305 ELSEIF (irep == 0)
THEN
306 j1 = 1+(ixlay-1)*l_dira*nel
307 j2 = ixlay*l_dira*nel
308 dira(j1:j2) = xfem_str%BUFLY(ixlay)%DIRA(1:nel*l_dira)
319 ilev = nxel*(ixlay-1) + ixel
321 IF (igtyp == 1 .or. igtyp == 9)
THEN
325 ELSEIF (igtyp == 51 .OR. igtyp == 52)
THEN
327 thkr = stack%GEO(ipthk+ixlay,isubstack)
329 thke0(i) = thke(i) * thkr
334 thke0(i) = thke(i) * geo(ipthk+ixlay,pid(i))
339 lbuf => xfem_str%BUFLY(ixlay)%LBUF(ir,is,1)
340 bufly => xfem_str%BUFLY(ixlay)
350 eintth => lbuf%EINTTH
351 hourgg => bufly%HOURG
352 ELSEIF (nxlay == 1)
THEN
362 eintth => gbuf%EINTTH
367 2 pid ,mat ,ilev ,iel_crk,iadc_crk,
368 3 offg ,off ,sigy ,thke0 ,thk0 ,
369 4 dt1c ,vl1 ,vl2 ,vl3 ,vl4 ,
370 5 vrl1 ,vrl2 ,vrl3 ,vrl4 ,x1g ,
371 6 x2g ,x3g ,x4g ,y1g ,y2g ,
372 7 y3g ,y4g ,z1g ,z2g ,z3g ,
375 CALL cnvec3(xfem_str,dir_a ,dir_b ,
376 1 jft ,jlt ,irep ,igtyp ,nxlay ,
377 2 x1g ,x2g ,x3g ,x4g ,y1g ,y2g ,
378 3 y3g ,y4g ,z1g ,z2g ,z3g ,z4g ,
379 4 e1x ,e1y ,e1z ,e2x ,e2y ,e2z ,
380 5 e3x ,e3y ,e3z ,nel )
382 IF (ismstr /= 3)
THEN
384 1 jft, jlt, smstrg, offg,
385 2 sti, stir,
area, px1,
389 6 x3g, x4g, y1g, y2g,
390 7 y3g, y4g, z1g, z2g,
392 9 e1z, e2x, e2y, e2z,
393 a e3x, e3y, e3z, vhx,
394 b vhy, a_i, ux1, ux2,
395 c ux3, ux4, uy1, uy2,
396 d uy3, uy4, nel, ismstr)
398 CALL cpxpy3(jft ,jlt ,pm ,sti ,stir,
399 2 smstrg ,px1 ,px2 ,py1 ,py2 ,
400 3 ixc ,
area ,x2 ,x3 ,x4 ,
401 4 y2 ,y3 ,y4 ,z2 ,thk0,
405 CALL ccoef3(jft ,jlt ,pm ,mat ,geo ,
406 2 pid ,off ,
area ,sti ,stir ,
407 3 shf ,thk0 ,thk02 ,nu ,
408 4 g ,ym ,a11 ,a12 ,thkg ,
409 5 ssp ,rho ,h1 ,h2 ,h3 ,
410 6 vol0 ,vol00 ,alpe ,gs ,mtn ,
411 7 ithk ,ismstr ,nptt ,kfts ,
412 8 srh1 ,srh2 ,srh3 ,igeo ,
413 9 a11r ,isubstack ,stack%PM)
415 IF ((nodadt == 0 .AND. ismstr /= 3 .AND. idt1sh == 0) .OR.
416 . idtmin(3) /= 0 .OR. igtyp == 16)
418 .
CALL cdlen3(jft ,jlt ,pm
419 . x2 ,x3 ,x4 ,y2 ,y3 ,
420 . y4 ,aldt ,mat ,geo ,pid ,
422 CALL cdefo3(jft,jlt,vl1,vl2,vl3,vl4,dt1c,px1,px2,py1,py2,
area,
423 2 exx,eyy,exy,exz ,eyz ,x2 ,x3 ,x4 ,y2 ,y3,
424 3 y4 ,z2 ,vx1,vx2 ,vx3 ,vx4 ,vy1,vy2,vy3 ,vy4 ,
425 4 vz1,vz2,vz3,vz4 ,e1x ,e1y ,e1z,e2x,e2y ,e2z ,
427 CALL ccurv3(jft ,jlt ,vrl1,vrl2,vrl3,vrl4 ,px1,
428 1 px2 ,py1 ,py2 ,
area,
429 2 rx1 ,rx2 ,rx3 ,rx4 ,ry1 ,ry2 ,ry3 ,ry4 ,
430 3 e1x ,e1y ,e1z ,e2x ,e2y ,e2z ,e3x ,e3y ,
431 4 e3z ,kxx ,kyy ,kxy ,exz ,eyz ,
434 2 exx ,eyy ,exy ,exz ,eyz ,
435 3 kxx ,kyy ,kxy ,dt1c ,tani,
436 4 forg ,momg ,ismstr ,mtn ,
437 6 ihbe ,nft ,istrain ,ux1 ,ux2 ,
438 7 ux3 ,ux4 ,uy1 ,uy2 ,uy3 ,
439 8 uy4 ,px1 ,px2 ,py1 ,py2 ,
440 9 bid ,bid ,bid ,nel )
446 IF (jthe > 0)
CALL tempcg(numnod, nel ,ixc ,temp ,tempel)
448 IF ((itask==0).AND.(imon_mat==1))
CALL startime(timers,35)
451 1 xfem_str ,jft ,jlt ,nft ,iparg ,
452 2 nel ,mtn ,ipla ,ithk ,group_param,
453 3 pm ,geo ,npf ,tf ,bufmat ,
454 4 ssp ,rho ,viscmx ,dt1c ,sigy ,
455 5
area ,exx ,eyy ,exy ,exz ,
456 6 eyz ,kxx ,kyy ,kxy ,nu
457 7 off ,thk0 ,mat ,pid ,mat_elem ,
458 8 forg ,momg ,strag ,failwave ,fwave ,
459 9 thkg ,eintg ,iofc ,
460 a g ,a11 ,a12 ,vol0 ,indxof ,
461 b ngl ,zcfac ,shf ,gs ,epsdg ,
463 d dir_a ,dir_b ,igeo ,
464 e ipm ,ifailure ,npg ,fheat ,
465 f tempel ,die ,jthe ,iexpan ,tempg ,
468 i bid ,bid ,bid ,e1x ,e1y ,
469 j e1z ,e2x ,e2y ,e2z ,e3x ,
470 k e3y ,e3z ,ibid ,table ,ixfem ,
471 l bid ,sensors ,bid ,elcrkini ,
472 m dir1_crk ,dir2_crk ,aldt ,glob_therm%IDT_THERM ,glob_therm%THEACCFACT,
473 n ismstr ,ir ,is ,nlayer ,nptt ,
474 o ixlay ,ixel ,isubstack ,stack ,
475 p bid ,itask ,drape_sh4n ,varnl ,nloc_dmg ,
476 r indx_drape ,thke, sedrape ,numel_drape,dt ,
477 q ncycle ,snpc , stf,nxlaymax ,
478 s idel7nok ,userl_avail ,maxfunc ,npttot ,sbufmat,
479 t sdir_a ,sdir_b ,gbuf%FOR_G,ssp_eq,
480 x ipart ,lipart1 ,ipartc )
482 IF ((itask==0).AND.(imon_mat==1))
CALL stoptime(timers,35)
487 viscmx(i) = sqrt(one + viscmx(i)*viscmx(i)) - viscmx(i)
489 IF (nodadt /= 0 .AND. mtn ==58 )
490 .
CALL cssp2a11(pm,mat(jft),ssp ,a11 ,jlt ,1 )
493 CALL mhvis3(jft ,jlt ,pm ,thkg ,hourgg ,
494 2 off ,px1 ,px2 ,py1 ,py2 ,
495 3 ixc ,dt1c ,ssp ,rho ,sti ,
496 4 eani ,geo ,pid ,stir ,mat
497 5 thk0 ,viscmx ,alpe ,ipartc ,partsav ,
498 6 ihbe ,nft ,ismstr ,rx1 ,
499 7 rx2 ,rx3 ,rx4 ,ry1 ,ry2 ,
500 8 ry3 ,ry4 ,vx1 ,vx2 ,vx3 ,
501 9 vx4 ,vy1 ,vy2 ,vy3 ,vy4 ,
502 a vz1 ,vz2 ,vz3 ,vz4 ,b11 ,
503 b b12 ,b13 ,b14 ,b21 ,b22 ,
504 c b23 ,b24 ,
area ,ym ,nu ,
505 d vhx ,vhy ,h11 ,h12 ,h13 ,
506 e h14 ,h21 ,h22 ,h23 ,h24 ,
507 f h31 ,h32 ,h33 ,h34 ,h1 ,
508 g h2 ,igeo ,nel ,mtn ,a11 )
509 ELSEIF (ihbe == 2)
THEN
511 1 jft ,jlt ,thkg ,hourgg ,off ,px1 ,
512 2 px2 ,py1 ,py2 ,sigy ,ixc ,dt1c ,
513 3 ssp ,rho ,sti ,z2 ,eani ,stir ,
514 4 shf ,thk0 ,thk02 ,viscmx ,g ,a11 ,
515 5 h1 ,h2 ,h3 ,ym ,nu ,alpe ,
516 6 vhx ,vhy ,vx1 ,vx2 ,vx3 ,vx4 ,vy1,
517 7 vy2 ,vy3 ,vy4,vz1 ,vz2 ,vz3 ,vz4 ,
area ,
518 8 h11 ,h12 ,h13 ,h21 ,h22 ,h23 ,h31 ,h32 ,h33 ,
519 9 b11 ,b12 ,b13 ,b14 ,b21 ,b22 ,b23 ,b24 ,
520 a rx1 ,rx2 ,rx3 ,rx4 ,ry1 ,ry2 ,ry3 ,ry4,
522 c ihbe ,nft ,ismstr ,srh3
526 2 jft ,jlt ,thkg,hourgg,off,px1 ,px2 ,py1 ,py2 ,
527 3 ixc ,dt1c,ssp,rho ,sti ,vx1 ,vx2 ,vx3 ,vx4 ,vy1 ,
528 4 vy2 ,vy3 ,vy4,vz1 ,vz2 ,vz3 ,vz4 ,
area,thk0,vhx ,
529 5 vhy ,shf ,z2 ,eani ,stir,viscmx,g ,a11 ,
530 6 h1 ,h2 ,h3 ,ym ,nu ,thk02,alpe,h11 ,
531 7 h12 ,h13 ,h21 ,h22 ,h23 ,h31 ,h32 ,h33 ,
532 8 b11 ,b12 ,b13 ,b14 ,b21 ,b22 ,b23 ,b24 ,
533 9 rx1 ,rx2 ,rx3 ,rx4 ,ry1 ,ry2 ,ry3 ,ry4 ,
535 b ihbe ,nft ,ismstr,kfts ,
536 c srh1, srh2, srh3 , igtyp ,
546 2 ixc, thkg, eintg, partsav,
547 3
area, mat, ipartc, x,
548 4 vr, vol0, vol00, thk0,
549 5 thk02, iun, off, nft,
550 6 gresav, grth, igrth, vl1,
551 7 vl2, vl3, vl4, vrl1,
552 8 vrl2, vrl3, vrl4, x1g,
553 9 x2g, x3g, x4g, y1g,
554 a y2g, y3g, y4g, z1g,
555 b z2g, z3g, z4g, ixfem,
556 c iexpan, eintth, itask, gbuf%VOL,
557 d actifxfem,igre,sensors,nel,gbuf%G_WPLA,
563 IF (ismstr /= 3 .AND.(nodadt == 0 .OR. idtmin(3) /= 0))
THEN
564 CALL cdt3(jft ,jlt ,ym ,off ,dt2t ,
565 2 neltst ,ityptst,sti ,stir ,offg ,
566 3 dtcsub ,ndt ,dt2c ,ixc ,ssp ,
567 4 viscmx ,px1 ,px2 ,py1 ,py2 ,
568 5 vol0 ,vol00 ,rho ,aldt ,alpe ,
569 6 indxof ,ngl ,ismstr ,iofc ,msc ,
570 7 dmelc ,jsms ,gbuf%G_DT ,gbuf%DT)
575 CALL cfint3(jft ,jlt ,forg ,momg ,thk0 ,thk02 ,
576 2 px1 ,px2 ,py1 ,py2 ,
area ,z2 ,
577 3 f11 ,f12 ,f13 ,f14 ,f21 ,f22
578 4 f23 ,f24 ,f31 ,f32 ,f33 ,f34 ,
579 5 h11 ,h12 ,h13 ,h21 ,h22 ,h23 ,
580 6 h31 ,h32 ,h33 ,b11 ,b12 ,b13 ,
581 7 b14 ,b21 ,b22 ,b23 ,b24 ,nel ,
582 8 m11 ,m12 ,m13 ,m14 ,m21 ,m22 ,
583 9 m23 ,m24 ,m31 ,m32 ,m33 ,m34 ,
584 a e1x ,e1y ,e1z ,e2x ,e2y ,e2z ,
585 b e3x ,e3y ,e3z ,ihbe ,nptt ,fzero )
590 IF (mat_elem%MAT_PARAM(mat(1))%HEAT_FLAG == 1)
THEN
591 CALL thermc(jft ,jlt ,pm ,mat ,thk0 ,ixc ,
592 . px1 ,px2 ,py1 ,py2 ,
area ,dt1c ,
593 . temp ,tempel,fheat ,them ,glob_therm%THEACCFACT)
595 CALL thermc(jft ,jlt ,pm ,mat ,thk0 ,ixc ,
596 . px1 ,px2 ,py1 ,py2 ,
area ,dt1c ,
597 . temp ,tempel,die ,them ,glob_therm%THEACCFACT)
615 .
CALL csens3(jft ,jlt ,pid ,igeo ,epsdg)
621 . jft ,jlt ,nft ,ixc ,off ,iadc ,
622 . f11 ,f21 ,f31 ,f12 ,f22 ,f32 ,
623 . f13 ,f23 ,f33 ,f14 ,f24 ,f34 ,
624 . m11 ,m21 ,m31 ,m12 ,m22 ,m32 ,
625 . m13 ,m23 ,m33 ,m14 ,m24 ,m34 ,
626 . sti ,stir ,fsky ,elcutc,iadc_crk,iel_crk,
627 . ilev ,inod_crk,offg,eintg,partsav,ipartc,
632 IF (
ALLOCATED(dira))
DEALLOCATE(dira)
633 IF (
ALLOCATED(dirb))
DEALLOCATE(dirb)
634 IF (
ALLOCATED(elcrkini))
DEALLOCATE(elcrkini)
635 IF (
ALLOCATED(dir1_crk))
DEALLOCATE(dir1_crk)
636 IF (
ALLOCATED(dir2_crk))
DEALLOCATE(dir2_crk)
637 IF (
ALLOCATED(varnl))
DEALLOCATE(varnl)
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, ssp_eq, ipart, lipart1, ipartc)