126 1 ELBUF_TAB, NG, PM, GEO,
129 4 FLU1, VEUL, FV, ALE_CONNECT,
130 5 IPARG, TF, NPF, BUFMAT,
131 6 PARTSAV, ITAB, DT2T, NELTST,
132 7 ITYPTST, STIFN, FSKY, IADS,
133 8 OFFSET, EANI, IPARTS, F11,
134 9 F21, F31, F12, F22,
135 A F32, F13, F23, F33,
136 B F14, F24, F34, F15,
137 C F25, F35, F16, F26,
138 D F36, F17, F27, F37,
139 E F18, F28, F38, NEL,
140 F FSKYM, MSNF, ISKY, FSKYI,
141 G NVC, IPM, IGEO, AR,
142 H VR, IN, FR_WAVE, DR,
143 I BUFVOIS, ITASK, QMV, ISTRAIN,
144 J TEMP, FTHE, FTHESKY, IEXPAN,
145 K GRESAV, GRTH, IGRTH, MSSA,
146 L DMELS, TABLE, PHI1, PHI2,
148 N FFSKY, AFGLOB, MSF, IPARG1,
149 O XDP, POR, ICONTACT, IFOAM,
150 P VOLN, CONDN, CONDNSKY, AGRAV,
151 Q IGRV, LGRAV, SENSORS, SKEW,
152 R NALE, D, IOUTPRT, NLOC_DMG,
153 S MAT_ELEM, H3D_STRAIN, DT, IDEL7NOK,NSVOIS,
154 T SZ_BUFVOIS, SNPC,STF,SBUFMAT,SVIS,IDTMINS,IRESP,
155 U IDEL7NG, MAXFUNC, USERL_AVAIL, GLOB_THERM,
156 V impl_s, idyna, WFEXT)
161 USE output_mod,
ONLY : output_
171 USE sdistor_ini_mod,
ONLY : sdistor_ini
173 use element_mod ,
only : nixs
177#include "implicit_f.inc"
181#include "mvsiz_p.inc"
185#include "vect01_c.inc"
186#include "com01_c.inc"
187#include "com04_c.inc"
188#include "com08_c.inc"
189#include "scr03_c.inc"
190#include "scr06_c.inc"
191#include "parit_c.inc"
192#include "param_c.inc"
193#include "timeri_c.inc"
194#include "inter22.inc"
195#include "scr18_c.inc"
196#include "comlock.inc"
200 TYPE(timer_) ,
INTENT(INOUT) :: TIMERS
201 TYPE(output_),
INTENT(INOUT) :: OUTPUT
202 INTEGER,
INTENT(IN) :: SNPC
203 INTEGER,
INTENT(IN) :: SZ_BUFVOIS
204 INTEGER,
INTENT(IN) :: NSVOIS
206INTEGER,
INTENT(IN) :: SBUFMAT
207 INTEGER,
INTENT(INOUT) :: IDEL7NOK
208 INTEGER,
INTENT(IN) :: IDTMINS
209 INTEGER ,
INTENT(IN) :: IRESP
210 INTEGER ,
INTENT(IN) :: IDEL7NG
211 INTEGER ,
INTENT(IN) ::
212 INTEGER,
INTENT(IN) :: IMPL_S
213 INTEGER,
INTENT(IN) ::
214 INTEGER,
INTENT(IN) :: USERL_AVAIL
215 INTEGER,
DIMENSION(*)INTENT(IN)
216INTEGER,
INTENT(IN) :: NG,NEL
217 INTEGER IXS(NIXS,NUMELS), IADS(8,*),(NPROPMI,NUMMAT),
218 . IGEO(NPROPGI,*),GRTH(*),IGRTH(*),IPARG1(*),IFOAM(*),
219 . ICONTACT(*),ISKY(*),ITAB(*)
220 INTEGER NELTST,ITYPTST,OFFSET
223DOUBLE PRECISION :: XDP(3,*)
225 my_real,
DIMENSION(MVSIZ,6),
INTENT(INOUT) :: SVIS
228 . PM(NPROPM,NUMMAT), GEO(NPROPG,NUMGEO), X(*), A(*), V(3,*), MS(*), W(*),
229 . FLUX(6,*), FSKYM(*),
230 . FLU1(*), VEUL(*), FV(*), TF(*), BUFMAT(*),
231 . partsav(*),stifn(*), fsky(*),eani(*),
232 . f11(mvsiz),f21(mvsiz),f31(mvsiz),
233 . f12(mvsiz),f22(mvsiz),f32(mvsiz),
234 . f13(mvsiz),f23(mvsiz),f33(mvsiz),
235 . f14(mvsiz),f24(mvsiz),f34(mvsiz),
236 . f15(mvsiz),f25(mvsiz),f35(mvsiz),
237 . f16(mvsiz),f26(mvsiz),f36(mvsiz),
238 . f17(mvsiz),f27(mvsiz),f37(mvsiz),
239 . f18(mvsiz),f28(mvsiz),f38(mvsiz),
240 . temp(*), fthe(*),fthesky(*),gresav(*), mssa(*), dmels(*),
241 . phi1(*),phi2(*),vf(3,*) ,d(3,*),
242 . af(3,*), ffsky(3,*),df(3,*),wf(3,*),msf(*),afglob(3,*),
243 . por(*),voln(mvsiz), condn(*),condnsky(*)
245 my_real :: bufvois(6,*)
246 my_real :: msnf(*),ar(*),vr(3,*),in(*),fr_wave(*),dr(3,*),qmv(12,*)
247 TYPE (TTABLE) TABLE(*)
248 TYPE (ELBUF_STRUCT_),
TARGET,
DIMENSION(NGROUP) :: ELBUF_TAB
249 TYPE (NLOCAL_STR_) ,
TARGET :: NLOC_DMG
250 TYPE (MAT_ELEM_) ,
INTENT(INOUT) :: MAT_ELEM
252 my_real :: p(mvsiz),fskyi(lskyi,nfskyi)
254 INTEGER :: IGRV(*), LGRAV(*)
255 my_real :: AGRAV(*),SKEW(LSKEW,*)
257 TYPE (SENSORS_) ,
INTENT(INOUT) :: SENSORS
258 TYPE (DT_),
INTENT(INOUT) :: DT
259 type (glob_therm_) ,
intent(inout) :: glob_therm
261 DOUBLE PRECISION,
INTENT(INOUT) :: WFEXT
265 INTEGER I,NF1,IBID,IPTR,IPTS,IPTT,ILAY,ITET,IFVM_SKIP
266 INTEGER NBF1,NBF2,NBF3, IALEFVM_MAT
267 INTEGER MXT(MVSIZ),NGL(MVSIZ),NGEO(MVSIZ),INOD(8)
268 my_real VD2(MVSIZ) , DVOL(MVSIZ),DELTAX(MVSIZ),
269 . VIS(MVSIZ) , QVIS(MVSIZ), CXX(MVSIZ) ,
270 . S1(MVSIZ) , S2(MVSIZ) , S3(MVSIZ) ,
271 . S4(MVSIZ) , S5(MVSIZ) , S6(MVSIZ) ,
272 . B1(MVSIZ) , B2(MVSIZ) , B3(MVSIZ) ,
273 . B4(MVSIZ) , B5(MVSIZ) , B6(MVSIZ) ,
274 . DXX(MVSIZ) , DYY(MVSIZ) , DZZ(MVSIZ) ,
275 . D4(MVSIZ) , D5(MVSIZ) , D6(MVSIZ) ,
276 . jac1(mvsiz), jac2(mvsiz), jac3(mvsiz),
277 . jac4(mvsiz), jac5(mvsiz), jac6(mvsiz),
278 . vdx(mvsiz) , vdy(mvsiz) , vdz(mvsiz),ssp_eq(mvsiz),
279 . aire(mvsiz),fqvis(mvsiz), fcxx(mvsiz)
280 my_real,
dimension(mvsiz) :: fheat
282 my_real :: sti(mvsiz), wxx(mvsiz) , wyy(mvsiz) , wzz(mvsiz)
283 my_real :: muvoid(mvsiz)
284 my_real :: sigy(mvsiz),et(mvsiz),r3_free(mvsiz)
287 INTEGER NC1(MVSIZ), NC2(MVSIZ), NC3(MVSIZ), NC4(MVSIZ),
288 . nc5(mvsiz), nc6(mvsiz), nc7(mvsiz), nc8(mvsiz)
291 . XD1(MVSIZ), XD2(MVSIZ), XD3(MVSIZ), XD4(MVSIZ),
292 . xd5(mvsiz), xd6(mvsiz), xd7(mvsiz), xd8(mvsiz),
293 . yd1(mvsiz), yd2(mvsiz), yd3(mvsiz), yd4(mvsiz),
294 . yd5(mvsiz), yd6(mvsiz), yd7(mvsiz), yd8(mvsiz),
295 . zd1(mvsiz), zd2(mvsiz), zd3(mvsiz), zd4(mvsiz),
296 . zd5(mvsiz), zd6(mvsiz), zd7(mvsiz), zd8(mvsiz),
297 . x0(mvsiz,8),y0(mvsiz,8),z0(mvsiz,8),voldp(mvsiz)
300 . off(mvsiz) , rhoo(mvsiz),
301 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
302 . x5(mvsiz), x6(mvsiz), x7(mvsiz), x8(mvsiz),
303 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
304 . y5(mvsiz), y6(mvsiz), y7(mvsiz), y8(mvsiz),
305 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
306 . z5(mvsiz), z6(mvsiz), z7(mvsiz), z8(mvsiz),
307 . vx1(mvsiz),vx2(mvsiz),vx3(mvsiz),vx4(mvsiz),
309 . vy1(mvsiz),vy2(mvsiz),vy3(mvsiz),vy4(mvsiz),
310 . vy5(mvsiz),vy6(mvsiz),vy7(mvsiz),vy8(mvsiz),
311 . vz1(mvsiz),vz2(mvsiz),vz3(mvsiz),vz4(mvsiz),
312 . vz5(mvsiz),vz6(mvsiz),vz7(mvsiz),vz8(mvsiz),
313 . px1(mvsiz),px2(mvsiz),px3(mvsiz),px4(mvsiz),
314 . px5(mvsiz),px6(mvsiz),px7(mvsiz),px8(mvsiz),
315 . py1(mvsiz),py2(mvsiz),py3(mvsiz),py4(mvsiz),
316 . py5(mvsiz),py6(mvsiz),py7(mvsiz),py8(mvsiz),
317 . pz1(mvsiz),pz2(mvsiz),pz3(mvsiz),pz4(mvsiz),
318 . pz5(mvsiz),pz6(mvsiz),pz7(mvsiz),pz8(mvsiz),
319 . px1h1(mvsiz),px2h1(mvsiz),px3h1(mvsiz),px4h1(mvsiz),
320 . px1h2(mvsiz),px2h2(mvsiz),px3h2(mvsiz),px4h2(mvsiz),
321 . px1h3(mvsiz),px2h3(mvsiz),px3h3(mvsiz),px4h3(mvsiz),
322 . vdx1(mvsiz),vdx2(mvsiz),vdx3(mvsiz),vdx4(mvsiz),
323 . vdx5(mvsiz),vdx6(mvsiz),vdx7(mvsiz),vdx8(mvsiz),
324 . vdy1(mvsiz),vdy2(mvsiz
325 . vdy5(mvsiz),vdy6(mvsiz),vdy7(mvsiz),vdy8(mvsiz),
326 . vdz1(mvsiz),vdz2(mvsiz),vdz3(mvsiz),vdz4(mvsiz),
327 . vdz5(mvsiz),vdz6(mvsiz),vdz7(mvsiz),vdz8(mvsiz),
328 . vgxa(mvsiz),vgya(mvsiz),vgza(mvsiz), vga2(mvsiz),
329 . dxy(mvsiz),dyx(mvsiz),dyz(mvsiz),
330 . dzy(mvsiz),dzx(mvsiz),dxz(mvsiz),
331 . r11(mvsiz),r12(mvsiz),r13(mvsiz),
332 . r21(mvsiz),r22(mvsiz),r23(mvsiz),
333 . r31(mvsiz),r32(mvsiz),r33(mvsiz),hh(mvsiz),gama(mvsiz,6),
334 . vx0(mvsiz,8),vy0(mvsiz,8),vz0(mvsiz,8),
335 . mfxx(mvsiz),mfxy(mvsiz),mfyx(mvsiz),
336 . mfyy(mvsiz),mfyz(mvsiz),mfzy(mvsiz),
337 . mfzz(mvsiz),mfzx(mvsiz),mfxz(mvsiz),
338 . dfe(mvsiz,3),sigf(mvsiz,6),offg0(mvsiz),
339 . xgxa(mvsiz),xgya(mvsiz),xgza
340 . xgxya(mvsiz),xgyza(mvsiz),xgzxa(mvsiz),
341 . xgxa2(mvsiz),xgya2(mvsiz),xgza2(mvsiz)
344 . vxr(mvsiz),vyr(mvsiz),vzr(mvsiz),fr_wav(mvsiz),
345 . tempel(mvsiz),them(mvsiz,8),die(mvsiz)
348 . mx1(mvsiz),my1(mvsiz),mz1(mvsiz),
349 . mx2(mvsiz),my2(mvsiz),mz2(mvsiz),
350 . mx3(mvsiz),my3(mvsiz),mz3(mvsiz),
351 . mx4(mvsiz),my4(mvsiz),mz4(mvsiz),
352 . mx5(mvsiz),my5(mvsiz),mz5(mvsiz),
353 . mx6(mvsiz),my6(mvsiz),mz6(mvsiz),
354 . mx7(mvsiz),my7(mvsiz),mz7(mvsiz),
355 . mx8(mvsiz),my8(mvsiz),mz8(mvsiz)
358 . n1x(mvsiz), n2x(mvsiz), n3x(mvsiz),
359 . n1y(mvsiz), n2y(mvsiz), n3y(mvsiz),
360 . n1z(mvsiz), n2z(mvsiz), n3z(mvsiz),
361 . n4x(mvsiz), n5x(mvsiz), n6x(mvsiz),
362 . n4y(mvsiz), n5y(mvsiz), n6y(mvsiz),
363 . n4z(mvsiz), n5z(mvsiz), n6z(mvsiz)
366 . fvx1(mvsiz),fvx2(mvsiz),fvx3(mvsiz),fvx4(mvsiz),
367 . fvx5(mvsiz),fvx6(mvsiz),fvx7(mvsiz),fvx8(mvsiz),
368 . fvy1(mvsiz),fvy2(mvsiz),fvy3(mvsiz),fvy4(mvsiz),
369 . fvy5(mvsiz),fvy6(mvsiz),fvy7(mvsiz),fvy8(mvsiz),
370 . fvz1(mvsiz),fvz2(mvsiz),fvz3(mvsiz),fvz4(mvsiz),
371 . fvz5(mvsiz),fvz6(mvsiz),fvz7(mvsiz),fvz8(mvsiz),
372 . fvdx1(mvsiz),fvdx2(mvsiz),fvdx3(mvsiz),fvdx4(mvsiz),
373 . fvdx5(mvsiz),fvdx6(mvsiz),fvdx7(mvsiz),fvdx8(mvsiz),
374 . fvdy1(mvsiz),fvdy2(mvsiz),fvdy3(mvsiz),fvdy4(mvsiz),
375 . fvdy5(mvsiz),fvdy6(mvsiz),fvdy7(mvsiz),fvdy8(mvsiz),
376 . fvdz1(mvsiz),fvdz2(mvsiz),fvdz3(mvsiz),fvdz4(mvsiz),
377 . fvdz5(mvsiz),fvdz6(mvsiz),fvdz7(mvsiz),fvdz8(mvsiz),
378 . fdxx(mvsiz) ,fdxy(mvsiz) ,fdxz(mvsiz) ,fdyx(mvsiz),
379 . fdyy(mvsiz) ,fdyz(mvsiz) ,fdzx(mvsiz) ,fdzy(mvsiz),
380 . fdzz(mvsiz) ,fd4(mvsiz) ,fd5(mvsiz) ,fd6(mvsiz) ,
381 . fwxx(mvsiz) ,fwyy(mvsiz) ,fwzz(mvsiz) ,fvxr(mvsiz),
382 . fvyr(mvsiz) ,fvzr(mvsiz) ,fvoln(mvsiz),
386 . ff11(mvsiz),ff21(mvsiz),ff31(mvsiz),
387 . ff12(mvsiz),ff22(mvsiz),ff32(mvsiz),
388 . ff13(mvsiz),ff23(mvsiz),ff33(mvsiz),
389 . ff14(mvsiz),ff24(mvsiz),ff34(mvsiz),
390 . ff15(mvsiz),ff25(mvsiz),ff35(mvsiz),
391 . ff16(mvsiz),ff26(mvsiz),ff36(mvsiz),
392 . ff17(mvsiz),ff27(mvsiz),ff37(mvsiz),
393 . ff18(mvsiz),ff28(mvsiz),ff38(mvsiz),
394 . fvdx(mvsiz),fvdy(mvsiz),fvdz(mvsiz),
395 . frho0(mvsiz),
alpha(mvsiz),
396 . fpx1h1(mvsiz),fpx1h2(mvsiz), fpx1h3(mvsiz),
397 . fpx2h1(mvsiz),fpx2h2(mvsiz), fpx2h3(mvsiz),
398 . fpx3h1(mvsiz),fpx3h2(mvsiz), fpx3h3(mvsiz),
399 . fpx4h1(mvsiz),fpx4h2(mvsiz), fpx4h3(mvsiz),
400 . fn1x(mvsiz), fn2x(mvsiz), fn3x(mvsiz),
401 . fn1y(mvsiz), fn2y(mvsiz), fn3y(mvsiz),
402 . fn1z(mvsiz), fn2z(mvsiz), fn3z(mvsiz),
403 . fn4x(mvsiz), fn5x(mvsiz), fn6x(mvsiz),
404 . fn4y(mvsiz), fn5y(mvsiz), fn6y(mvsiz),
405 . fn4z(mvsiz), fn5z(mvsiz), fn6z(mvsiz),
406 . fx1(mvsiz), fx2(mvsiz), fx3(mvsiz), fx4(mvsiz),
407 . fx5(mvsiz), fx6(mvsiz), fx7(mvsiz), fx8(mvsiz),
408 . fy1(mvsiz), fy2(mvsiz), fy3(mvsiz), fy4(mvsiz),
409 . fy5(mvsiz), fy6(mvsiz), fy7(mvsiz), fy8(mvsiz),
410 . fz1(mvsiz), fz2(mvsiz), fz3(mvsiz), fz4(mvsiz),
411 . fz5(mvsiz), fz6(mvsiz), fz7(mvsiz), fz8(mvsiz)
414 . fpx1(mvsiz),fpx2(mvsiz),fpx3(mvsiz),fpx4(mvsiz),
415 . fpy1(mvsiz),fpy2(mvsiz),fpy3(mvsiz),fpy4(mvsiz),
416 . fpz1(mvsiz),fpz2(mvsiz),fpz3(mvsiz),fpz4(mvsiz),
417 . fdeltax(mvsiz) ,flux0(mvsiz,6),flu01(mvsiz)
418 my_real,
DIMENSION(:),
ALLOCATABLE :: var_reg
419 my_real :: conde(mvsiz),amu(mvsiz),divde(mvsiz),l_max(mvsiz),
420 . sti_c(mvsiz),ll(mvsiz),fld(mvsiz),
422 my_real,
DIMENSION(:),
POINTER :: eint
424 my_real :: sum_eps(9),sum_m,sum_vol
425 INTEGER :: NUM_ELEM_ALE
427 TYPE(G_BUFEL_) ,
POINTER :: GBUF
428 TYPE(L_BUFEL_) ,
POINTER :: LBUF
429 TYPE(BUF_MAT_) ,
POINTER :: MBUF
431 INTEGER IALEFVM_FLG, IFVM22, IMAT, INLOC, L_NLOC, J, IPOS(8),PID,
432 . NN_DEL,ISCTL,ISTAB(MVSIZ)
434 INTEGER IBOLTP,NBPRELD,ISM12_11
435 my_real,
DIMENSION(:),
POINTER :: BPRELD
436 my_real,
DIMENSION(:),
POINTER :: DNL
441 GBUF => elbuf_tab(ng)%GBUF
442 lbuf => elbuf_tab(ng)%BUFLY(1)%LBUF(1,1,1)
443 mbuf => elbuf_tab(ng)%BUFLY(1)%MAT(1,1,1)
444 ism12_11 = elbuf_tab(ng)%BUFLY(1)%L_SIGL
446 ALLOCATE(var_reg(nel))
451 nbpreld = gbuf%G_BPRELD
452 bpreld =>gbuf%BPRELD(1:nbpreld*nel)
454 sz_ix=numelq+numels+nsvois
461 ialefvm_mat = ipm(251,ixs(1,nf1))
462 IF(ialefvm_mat<=1)
THEN
464 CALL scoor3(x,ixs(1,nf1),v,w,gbuf%GAMA,gama,
465 . x1, x2, x3, x4, x5, x6, x7, x8,
466 . y1, y2, y3, y4, y5, y6, y7, y8,
468 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
469 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
470 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
471 . vdx1, vdx2, vdx3, vdx4, vdx5, vdx6, vdx7, vdx8,
472 . vdy1, vdy2, vdy3, vdy4, vdy5, vdy6, vdy7, vdy8,
473 . vdz1, vdz2, vdz3, vdz4, vdz5, vdz6, vdz7, vdz8,
474 . vdx,vdy,vdz,vd2,vis,gbuf%OFF,off,gbuf%SMSTR,gbuf%RHO,
475 . rhoo,nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,ngl,mxt,ngeo,
476 . vr,vxr,vyr,vzr,fr_wave,fr_wav,
477 . xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8,
478 . yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8,
479 . zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8,
480 . xdp,iparg, ng , nel)
484 . x1, x2, x3, x4, x5, x6, x7, x8,
485 . y1, y2, y3, y4, y5, y6, y7, y8,
486 . z1, z2, z3, z4, z5, z6, z7, z8,
487 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
488 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
489 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
490 . vdx1, vdx2, vdx3, vdx4, vdx5, vdx6, vdx7, vdx8,
491 . vdy1, vdy2, vdy3, vdy4, vdy5, vdy6, vdy7, vdy8,
492 . vdz1, vdz2, vdz3, vdz4, vdz5, vdz6, vdz7, vdz8,
493 . vdx,vdy,vdz,vd2,vis,gbuf%OFF,off,gbuf%RHO,
494 . rhoo,nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,ngl,mxt,ngeo,
495 . xd1, xd2 , xd3, xd4, xd5, xd6, xd7, xd8,
496 . yd1, yd2 , yd3, yd4, yd5, yd6, yd7, yd8,
497 . zd1, zd2 , zd3, zd4, zd5, zd6, zd7, zd8,
498 . xdp, iparg, ng , nel, gbuf%MOM,gbuf%TAG22)
502 CALL srcoor3(x,ixs(1,nf1),v,w,gbuf%GAMA,gama,
503 . x1, x2, x3, x4, x5, x6, x7, x8,
504 . y1, y2, y3, y4, y5, y6, y7, y8,
505 . z1, z2, z3, z4, z5, z6, z7, z8,
506 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
507 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
508 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
509 . vd2,vis,gbuf%OFF,off,gbuf%SMSTR,gbuf%RHO,rhoo,
510 . r11, r12, r13, r21, r22, r23, r31, r32, r33,
511 . nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,ngl,mxt,ngeo,
512 . ioutprt, vgxa, vgya, vgza, vga2,
513 . xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8,
514 . yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8,
515 . zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8,
516 . xdp, x0 , y0 , z0 , nel, xgxa, xgya, xgza,
517 . xgxa2,xgya2 ,xgza2 ,xgxya ,xgyza ,xgzxa,iparg1,
525 IF (geo(190,pid)+geo(191,pid)+geo(192,pid)+geo(192,pid)>zero)
527 IF (nn_del ==0 .AND. dt%IDEL_BRICK>0) nn_del=8
531 IF ((ismstr >= 10.AND.ismstr <= 12).AND.jlag > 0)
THEN
534 1 tt, 8, x, ixs(1,nf1),
536 3 vy0, vz0, gbuf%SMSTR,d,
537 4 gbuf%OFF, offg0, nel, xdp,
540 IF (ismstr == 11)
THEN
543 1 r11, r12, r13, r21,
544 2 r22, r23, r31, r32,
545 3 r33, x0(1,1), x0(1,2), x0(1,3),
546 4 x0(1,4), x0(1,5), x0(1,6), x0(1,7),
547 5 x0(1,8), y0(1,1), y0(1,2), y0(1,3),
548 6 y0(1,4), y0(1,5), y0(1,6), y0(1,7),
549 7 y0(1,8), z0(1,1), z0(1,2), z0(1,3),
550 8 z0(1,4), z0(1,5), z0(1,6), z0(1,7),
554 2 r22, r23, r31, r32,
555 3 r33, vx0(1,1),vx0(1,2),vx0(1,3),
556 4 vx0(1,4),vx0(1,5),vx0(1,6),vx0(1,7),
557 5 vx0(1,8),vy0(1,1),vy0(1,2),vy0(1,3),
558 6 vy0(1,4),vy0(1,5),vy0(1,6),vy0(1,7),
559 7 vy0(1,8),vz0(1,1),vz0(1,2),vz0(1,3),
560 8 vz0(1,4),vz0(1,5),vz0(1,6),vz0(1,7),
565 . x0(1,1), x0(1,2), x0(1,3), x0(1,4),
566 . x0(1,5), x0(1,6), x0(1,7), x0(1,8),
567 . y0(1,1), y0(1,2), y0(1,3), y0(1,4),
569 . z0(1,1), z0(1,2), z0(1,3), z0(1,4),
570 . z0(1,5), z0(1,6), z0(1,7), z0(1,8),
571 . px1, px2, px3, px4,
572 . py1, py2, py3, py4,
574 . px1h1, px1h2, px1h3,
575 . px2h1, px2h2, px2h3,
576 . px3h1, px3h2, px3h3,
577 . px4h1, px4h2, px4h3,
582 IF (idtmin(1)==3.AND.ismstr == 12.AND.jcvt == 0.AND.ism12_11==0)
THEN
585 1 gbuf%OFF,x, xdp, nc1,
586 2 nc2, nc3, nc4, nc5,
587 3 nc6, nc7, nc8, r11,
588 4 r12, r13, r21, r22,
589 5 r23, r31, r32, r33,
594 . px1, px2, px3, px4,
595 . py1, py2, py3, py4,
596 . pz1, pz2, pz3, pz4,
601 1 px1, px2, px3, px4,
602 2 py1, py2, py3, py4,
603 3 pz1, pz2, pz3, pz4,
604 4 vx0(1,1),vx0(1,2),vx0(1,3),vx0(1,4),
605 5 vx0(1,5),vx0(1,6),vx0(1,7),vx0(1,8),
606 6 vy0(1,1),vy0(1,2),vy0(1,3),vy0(1,4),
607 7 vy0(1,5),vy0(1,6),vy0(1,7),vy0(1,8),
608 8 vz0(1,1),vz0(1,2),vz0(1,3),vz0(1,4),
609 9 vz0(1,5),vz0(1,6),vz0(1,7),vz0(1,8),
610 a mfxx, mfxy, mfxz, mfyx,
611 b mfyy, mfyz, mfzx, mfzy,
614 IF (jcvt /= 0 .AND.(ismstr == 10 .OR.ismstr == 12))
THEN
615 CALL sordeft3(lft,llt,mfxx, mfxy, mfxz, mfyx, mfyy, mfyz,
617 . r11, r21, r31, r12, r22, r32, r13, r23, r33)
618 ELSEIF (idtmin(1)==3.AND.ismstr == 12.AND.jcvt==0.AND.ism12_11==0)
THEN
622 . r11, r21, r31, r12, r22, r32, r13, r23, r33,offg0)
626 IF(jale+jlag /= 0)
THEN
638 8 xd2, xd3, xd4, xd5,
639 9 xd6, xd7, xd8, yd1,
640 a yd2, yd3, yd4, yd5,
641 b yd6, yd7, yd8, zd1,
642 c zd2, zd3, zd4, zd5,
643 d zd6, zd7, zd8, nel)
659 2 xd2, xd3, xd4, xd5,
660 3 xd6, xd7, xd8, yd1,
661 4 yd2, yd3, yd4, yd5,
663 6 zd2, zd3, zd4, zd5,
664 7 zd6, zd7, zd8, px1,
665 8 px2, px3, px4, py1,
666 9 py2, py3, py4, pz1,
667 a pz2, pz3, pz4, px1h1,
668 b px1h2, px1h3, px2h1, px2h2,
669 c px2h3, px3h1, px3h2, px3h3,
670 d px4h1, px4h2, px4h3, jac1,
671 e jac2, jac3, jac4, jac5,
672 f jac6, gbuf%SMSTR,gbuf%OFF, nel,
673 g voldp, jhbe, ismstr, jlag)
677 1 voln, deltax, x1, x2,
684 8 n3x, n4x, n5x, n6x,
685 9 n1y, n2y, n3y, n4y,
686 a n5y, n6y, n1z, n2z,
687 b n3z, n4z, n5z, n6z,
688 c nel, mtn, jale, jeul)
690 ELSEIF(jeul /= 0)
THEN
693 1 gbuf%VOL,veul, x1, x2,
700 8 px3, px4, py1, py2,
701 9 py3, py4, pz1, pz2,
702 a pz3, pz4, px5, px6,
703 b px7, px8, py5, py6,
704 c py7, py8, pz5, pz6,
705 d pz7, pz8, px1h1, px1h2,
706 e px1h3, px2h1, px2h2, px2h3,
707 f px3h1, px3h2, px3h3, px4h1,
708 g px4h2, px4h3, voln, deltax,
709 h n1x, n2x, n3x, n4x,
710 i n5x, n6x, n1y, n2y,
711 j n3y, n4y, n5y, n6y,
712 k n1z, n2z, n3z, n4z,
713 l n5z, n6z, nel, nft,
718 1 gbuf%VOL, veul, voln, deltax,
719 2 gbuf%TAG22,ixs, lft, llt,
726 IF(i22_aleul == 1)
THEN
728 1 voln, gbuf%TAG22,ixs, lft,
733 IF(jale+jeul > 0 .AND. iparg1(64)==1)
THEN
737 2 ixs, ale_connect,dxx, dxy,
738 3 dxz, dyx, dyy, dyz,
741 6 wzz, bufmat, nel, nft,
742 7 ipm, nummat, numels+nsvois )
745 CALL sdefo3(output%DATA%FANI_CELL,
746 1 px1, px2, px3, px4,
747 2 py1, py2, py3, py4,
748 3 pz1, pz2, pz3, pz4,
749 4 px5, px6, px7, px8,
750 5 py5, py6, py7, py8,
751 6 pz5, pz6, pz7, pz8,
752 7 vx1, vx2, vx3, vx4,
753 8 vx5, vx6, vx7, vx8,
754 9 vy1, vy2, vy3, vy4,
755 a vy5, vy6, vy7, vy8,
756 b vz1, vz2, vz3, vz4,
757 c vz5, vz6, vz7, vz8,
758 d dxx, dxy, dxz, dyx,
759 e dyy, dyz, dzx, dzy,
761 g wxx, wyy, wzz, vxr,
763 i nft, ismstr, jeul, jhbe,
766 IF (idtmin(1)==3.AND.ismstr == 12.AND.ism12_11==0.AND.jcvt==0)
THEN
767 CALL sordef12(lft,llt,dxx, dyy, dzz,
769 . r11, r21, r31, r12, r22, r32, r13, r23, r33,gbuf%OFF)
774 1 pm, flux(1,nf1),ale_connect,ixs,
775 2 ipm, bufmat, nel, nft,
776 3 jale, jeul , nummat, numels+nsvois)
778 divde(1:nel) = dt1*(dxx(1:nel)+ dyy(1:nel)+ dzz(1:nel))
781 1 pm, gbuf%VOL, gbuf%RHO, gbuf%EINT,
782 2 divde, flux(1,nf1),flu1(nf1), voln,
783 3 dvol, ngl, mxt, off,
784 4 iparg1(64), gbuf%TAG22, voldp, lbuf%VOL0DP,
785 5 amu, gbuf%OFF, nel, mtn,
786 6 jale, ismstr, jeul, jlag)
788 IF (ismstr == 12.AND.idtmin(1)==3.AND.ism12_11==0.AND.jcvt==0)
THEN
790 . r11, r21, r31, r12, r22, r32, r13, r23, r33,offg0)
796 1 gbuf%SIG,s1, s2, s3,
798 3 wyy, wzz, nel, mtn,
802 1 gbuf%SMSTR,gbuf%OFF, off, wxx,
803 2 wyy, wzz, nel, ismstr,
807 CALL srmalla3(gbuf%SIG,s1,s2,s3,s4,s5,s6,
811 1 gbuf%SMSTR,gbuf%OFF, wxx, wyy,
812 2 wzz, r11, r12, r13,
813 3 r21, r22, r23, r31,
814 4 r32, r33, nel, ismstr)
817 IF (ismstr <= 3.OR.(ismstr==4.AND.jlag>0))
THEN
820 IF (jcvt /= 0.AND.isorth/=0 )
THEN
822 1 gbuf%OFF, gbuf%SMSTR,x0, y0,
826 1 gbuf%OFF, gbuf%SMSTR,xd1, xd2,
827 2 xd3, xd4, xd5, xd6,
828 3 xd7, xd8, yd1, yd2,
829 4 yd3, yd4, yd5, yd6,
830 5 yd7, yd8, zd1, zd2,
831 6 zd3, zd4, zd5, zd6,
839 tempel(i) = one_over_8 *( temp(nc1(i)) + temp(nc2(i))
840 . + temp(nc3(i)) + temp(nc4(i))
841 . + temp(nc5(i)) + temp(nc6(i))
842 . + temp(nc7(i)) + temp(nc8(i)))
850 l_nloc = nloc_dmg%L_NLOC
851 dnl => nloc_dmg%DNL(1:l_nloc)
853 inod(1) = nloc_dmg%IDXI(nc1(i))
854 inod(2) = nloc_dmg%IDXI(nc2(i))
855 inod(3) = nloc_dmg%IDXI(nc3(i))
856 inod(4) = nloc_dmg%IDXI(nc4(i))
857 inod(5) = nloc_dmg%IDXI(nc5(i))
858 inod(6) = nloc_dmg%IDXI(nc6(i))
859 inod(7) = nloc_dmg%IDXI(nc7(i))
860 inod(8) = nloc_dmg%IDXI(nc8(i))
862 ipos(j) = nloc_dmg%POSI(inod(j))
864 var_reg(i) = dnl(ipos(1)) + dnl(ipos(2)) + dnl(ipos(3)) + dnl(ipos(4))
865 . + dnl(ipos(5)) + dnl(ipos(6)) + dnl(ipos(7)) + dnl(ipos(8))
866 var_reg(i) = var_reg(i)*one_over_8
871 IF (jale == 3 .AND. jlag > 0)
THEN
877 . ixs ,ale_connect ,vf ,afglob,
878 . wf ,dfe ,frho0 ,
alpha ,
879 . nc1 ,nc2 ,nc3 ,nc4 ,nc5 ,nc6 ,
880 . nc7 ,nc8 ,fx1 ,fx2 ,fx3 ,fx4 ,
881 . fx5 ,fx6 ,fx7 ,fx8 ,fy1 ,fy2 ,
882 . fy3 ,fy4 ,fy5 ,fy6 ,fy7 ,fy8 ,
883 . fz1 ,fz2 ,fz3 ,fz4 ,fz5 ,fz6 ,
884 . fz7 ,fz8 ,phi1 ,phi2 ,flux0 ,flu01 ,
885 . fvx1 ,fvx2 ,fvx3 ,fvx4 ,fvx5 ,fvx6 ,
886 . fvx7 ,fvx8 ,fvy1 ,fvy2 ,fvy3 ,fvy4 ,
887 . fvy5 ,fvy6 ,fvy7 ,fvy8 ,fvz1 ,fvz2 ,
888 . fvz3 ,fvz4 ,fvz5 ,fvz6 ,fvz7 ,fvz8 ,
889 . fvdx1 ,fvdx2 ,fvdx3 ,fvdx4 ,fvdx5 ,fvdx6 ,
890 . fvdx7 ,fvdx8 ,fvdy1 ,fvdy2 ,fvdy3 ,fvdy4 ,
891 . fvdy5 ,fvdy6 ,fvdy7 ,fvdy8 ,fvdz1 ,fvdz2 ,
892 . fvdz3 ,fvdz4 ,fvdz5 ,fvdz6 ,fvdz7 ,fvdz8 ,
893 . fvdx ,fvdy ,fvdz ,fvd2 ,
894 . vx1 ,vx2 ,vx3 ,vx4 ,vx5 ,vx6 ,
895 . vx7 ,vx8 ,vy1 ,vy2 ,vy3 ,vy4 ,
896 . vy5 ,vy6 ,vy7 ,vy8 ,vz1 ,vz2 ,
897 . vz3 ,vz4 ,vz5 ,vz6 ,vz7 ,vz8 ,
898 . por ,icontact ,ifoam)
901 1 off, fvoln, ngl, fx1,
902 2 fx2, fx3, fx4, fx5,
903 3 fx6, fx7, fx8, fy1,
904 4 fy2, fy3, fy4, fy5,
905 5 fy6, fy7, fy8, fz1,
906 6 fz2, fz3, fz4, fz5,
907 7 fz6, fz7, fz8, fpx1,
908 8 fpx2, fpx3, fpx4, fpy1,
909 9 fpy2, fpy3, fpy4, fpz1,
910 a fpz2, fpz3, fpz4, fpx1h1,
911 b fpx1h2, fpx1h3, fpx2h1, fpx2h2,
912 c fpx2h3, fpx3h1, fpx3h2, fpx3h3,
913 d fpx4h1, fpx4h2, fpx4h3, nel,
917 1 fvoln, fdeltax, fx1, fx2,
918 2 fx3, fx4, fx5, fx6,
919 3 fx7, fx8, fy1, fy2,
920 4 fy3, fy4, fy5, fy6,
921 5 fy7, fy8, fz1, fz2,
922 6 fz3, fz4, fz5, fz6,
923 7 fz7, fz8, fn1x, fn2x,
924 8 fn3x, fn4x, fn5x, fn6x,
925 9 fn1y, fn2y, fn3y, fn4y,
926 a fn5y, fn6y, fn1z, fn2z,
927 b fn3z, fn4z, fn5z, fn6z,
932 1 fpx1, fpx2, fpx3, fpx4,
933 2 fpy1, fpy2, fpy3, fpy4,
934 3 fpz1, fpz2, fpz3, fpz4,
935 4 fvx1, fvx2, fvx3, fvx4,
936 5 fvx5, fvx6, fvx7, fvx8,
937 6 fvy1, fvy2, fvy3, fvy4,
938 7 fvy5, fvy6, fvy7, fvy8,
939 8 fvz1, fvz2, fvz3, fvz4,
940 9 fvz5, fvz6, fvz7, fvz8,
941 a fdxx, fdxy, fdxz, fdyx,
942 b fdyy, fdyz, fdzx, fdzy,
943 c fdzz, fd4, fd5, fd6,
944 d fwxx, fwyy, fwzz, fvxr,
945 e fvyr, fvzr, fqvis, nel,
949 fvoln(i) =
alpha(i)*fvoln(i)
950 dfe(i,1) = dfe(i,1)*fvoln(i)
951 dfe(i,2) = dfe(i,2)*fvoln(i)
952 dfe(i,3) = dfe(i,3)*fvoln(i)
955 CALL frho3(mbuf%VAR,frho0,fdxx, fdyy, fdzz,
956 . flux0,flu01,fvoln,ngl,mxt,off ,nel)
959 ialefvm_mat = ipm(251,ixs(1,nf1))
960 IF (ialefvm_mat > 1)
THEN
964 2 voln, n1x, n2x, n3x,
965 3 n4x, n5x, n6x, n1y,
966 4 n2y, n3y, n4y, n5y,
967 5 n6y, n1z, n2z, n3z,
968 6 n4z, n5z, n6z, dxx,
973 IF ((imon_mat==1).AND. itask == 0)
CALL startime(timers,35)
983 1 bpreld(3*nel+1),b1, b2, b3,
985 3 wyy, wzz, nel, mtn,
988 CALL boltst(iptr ,bpreld,lbuf%SIG ,tt ,nel ,
989 . npt ,sensors%NSENSOR,sensors%SENSOR_TAB ,
990 . iparg1(67),iparg1(68))
995 CALL mmain(timers, output,
996 1 elbuf_tab, ng, pm, geo,
997 2 ale_connect, ixs, iparg,
998 3 v, tf, npf, bufmat,
999 4 sti, x, dt2t, neltst,
1000 5 ityptst, offset, nel, w,
1001 6 off, ngeo, mxt, ngl,
1002 7 voln, vd2, dvol, deltax,
1003 8 vis, qvis, cxx, s1,
1005 a s6, dxx, dyy, dzz,
1007 c wyy, wzz, jac1, jac2,
1008 d jac3, jac4, jac5, jac6,
1009 e vdx, vdy, vdz, muvoid,
1010 f ssp_eq, aire, sigy, et,
1011 g bufvois, lbuf%PLA, r3_free, amu,
1012 h mfxx, mfxy, mfxz, mfyx,
1013 i mfyy, mfyz, mfzx, mfzy,
1014 j mfzz, ipm, gama, fr_wav,
1015 k dxy, dyx, dyz, dzy,
1016 l dzx, dxz, istrain, tempel,
1017 m die, iexpan, ilay, mssa,
1018 n dmels, iptr, ipts, iptt,
1019 o table, fvd2, fdeltax, fcxx,
1020 p fqvis, iparg1, igeo, conde,
1021 q itask, nloc_dmg, var_reg, mat_elem,
1022 r h3d_strain, jplasol, jsph, sz_bufvois,
1023 t snpc, stf, sbufmat, glob_therm,
1024 . svis, sz_ix, iresp,
1025 . n2d, th_strain, ngroup, tt,
1026 . dt1, ntable, numelq, nummat,
1027 . numgeo, numnod, numels,
1028 . idel7nok, idtmin, maxfunc,
1029 . imon_mat, userl_avail, impl_s,
1030 . idyna, dt , fheat ,sensors)
1032 IF (ismstr == 12.AND.idtmin(1)==3)
THEN
1033 IF (ism12_11==0.AND.jcvt==0)
THEN
1035 . r11, r12, r13, r21, r22, r23, r31, r32, r33,offg0)
1037 IF (istrain == 1)
THEN
1038 CALL sordef12(lft,llt,dxx, dxy, dxz,
1040 . r11, r12, r13, r21, r22, r23, r31, r32, r33,offg0)
1045 IF (istrain == 1)
THEN
1048 1 dxx, dyy, dzz, d4,
1049 2 d5, d6, lbuf%STRA,wxx,
1050 3 wyy, wzz, off, nel,
1053 IF ((imon_mat==1).AND. itask == 0)
CALL stoptime(timers,35)
1064 CALL sgeodel3(ngl,gbuf%OFF,voln,deltax,gbuf%VOL,geo(1,ngeo(1)),l_max,dt,nel,idel7nok )
1068 1 gbuf%OFF,off, nel, ismstr)
1071 1 ngl, gbuf%OFF,voln, deltax,
1072 2 gbuf%VOL,itet, nel, ismstr,dt )
1073 IF (ismstr == 12.AND.idtmin(1)==3)
THEN
1075 1 gbuf%OFF, offg0, gbuf%SMSTR,x,
1076 2 xdp, nc1, nc2, nc3,
1077 3 nc4, nc5, nc6, nc7,
1079 IF (ism12_11>0 .AND. isorth == 0)
THEN
1082 . gbuf%JAC_I,gbuf%SIG,lbuf%SIGL ,nel )
1086 IF (jlag+jale+jeul == 0)
THEN
1089 IF (iparg1(64) == 1)
THEN
1090 eint => elbuf_tab(ng)%GBUF%EINS(1:nel)
1092 eint => elbuf_tab(ng)%GBUF%EINT(1:nel)
1097 ialefvm_flg = ipm(251,imat)
1098 IF(ialefvm_flg>=2)ifvm22 = 1
1099 CALL sbilan(partsav,eint,gbuf%RHO,gbuf%RK,gbuf%VOL,
1100 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
1101 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
1102 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
1103 . voln,iparts,gresav,grth,igrth, gbuf%OFF,
1104 . iexpan,gbuf%EINTTH,gbuf%FILL,gbuf%MOM,nel,ifvm22,
1105 . x1, x2, x3, x4, x5, x6, x7, x8,
1106 . y1, y2, y3, y4, y5, y6, y7, y8,
1107 . z1, z2, z3, z4, z5, z6, z7, z8,
1108 . itask,iparg1,sensors,gbuf%G_WPLA,gbuf%WPLA)
1110 CALL srbilan(partsav,eint,gbuf%RHO,gbuf%RK,gbuf%VOL,
1111 . vgxa, vgya, vgza, vga2, voln,iparts,
1112 . gresav,grth,igrth,gbuf%OFF,iexpan,gbuf%EINTTH,
1113 . gbuf%FILL,xgxa, xgya, xgza,
1114 . xgxa2,xgya2,xgza2,xgxya,xgyza,xgzxa,itask,iparg1,sensors,
1115 . nel,gbuf%G_WPLA,gbuf%WPLA)
1122 IF (jale == 3 .AND. jlag == 1 .AND.
ale%GLOBAL%INCOMP == 0)
THEN
1125 1 msf, mbuf%VAR,fvoln, nc1,
1126 2 nc2, nc3, nc4, nc5,
1127 3 nc6, nc7, nc8, msnf,
1131 1 fskym, mbuf%VAR,fvoln, iads,
1134 ELSEIF (jale+jeul > 0 .AND.
ale%GLOBAL%INCOMP == 0)
THEN
1137 1 ms, gbuf%RHO, veul(lveul*nft+44),gbuf%TAG22,
1138 2 voln, nc1, nc2, nc3,
1139 3 nc4, nc5, nc6, nc7,
1140 4 nc8, msnf, nvc, off,
1144 1 fskym, gbuf%RHO, veul(lveul*nft+44),gbuf%TAG22,
1145 2 voln, iads, off, ixs,
1150 ialefvm_mat = ipm(251,ixs(1,nf1))
1152 IF(ialefvm_mat > 1)ifvm_skip=1
1158 IF(
ale%GRID%NWALE == 7 .AND. jale == 1)
THEN
1164 elem_mass = gbuf%RHO(i)*gbuf%VOL(i)
1165 sum_eps(1) = sum_eps(1) + elem_mass*dxx(i)
1166 sum_eps(2) = sum_eps(2) + elem_mass*dyy(i)
1167 sum_eps(3) = sum_eps(3) + elem_mass*dzz(i)
1168 sum_eps(4) = sum_eps(4) + elem_mass*dxy(i)
1169 sum_eps(5) = sum_eps(5) + elem_mass*dxz(i)
1170 sum_eps(6) = sum_eps(6) + elem_mass*dyz(i)
1171 sum_eps(7) = sum_eps(7) + elem_mass*dyx(i)
1172 sum_eps(8) = sum_eps(8) + elem_mass*dzx(i)
1173 sum_eps(9) = sum_eps(9) + elem_mass*dzy(i)
1174 sum_m = sum_m + elem_mass
1175 sum_vol = sum_vol + gbuf%VOL(i)
1177#include "lockon.inc"
1178 ale%GRID%flow_tracking_data%EP(1) =
ale%GRID%flow_tracking_data%EP(1) + sum_eps(1)
1179 ale%GRID%flow_tracking_data%EP(2) =
ale%GRID%flow_tracking_data%EP(2) + sum_eps(2)
1180 ale%GRID%flow_tracking_data%EP(3) =
ale%GRID%flow_tracking_data%EP(3) + sum_eps(3)
1181 ale%GRID%flow_tracking_data%EP(4) =
ale%GRID%flow_tracking_data%EP(4) + sum_eps(4)
1182 ale%GRID%flow_tracking_data%EP(5) =
ale%GRID%flow_tracking_data%EP(5) + sum_eps(5)
1183 ale%GRID%flow_tracking_data%EP(6) =
ale%GRID%flow_tracking_data%EP(6) + sum_eps(6)
1184 ale%GRID%flow_tracking_data%EP(7) =
ale%GRID%flow_tracking_data%EP(7) + sum_eps(7)
1185 ale%GRID%flow_tracking_data%EP(8) =
ale%GRID%flow_tracking_data%EP(8) + sum_eps(8)
1186 ale%GRID%flow_tracking_data%EP(9) =
ale%GRID%flow_tracking_data%EP(9) + sum_eps(9)
1187 ale%GRID%flow_tracking_data%SUM_M =
ale%GRID%flow_tracking_data%SUM_M + sum_m
1188 ale%GRID%flow_tracking_data%SUM_VOL =
ale%GRID%flow_tracking_data%SUM_VOL + sum_vol
1189 ale%GRID%flow_tracking_data%NUM_ELEM_ALE =
ale%GRID%flow_tracking_data%NUM_ELEM_ALE + num_elem_ale
1191#include "lockoff.inc"
1198 1 pm, gbuf%RHO, off, vx1,
1199 2 vx2, vx3, vx4, vx5,
1200 3 vx6, vx7, vx8, vy1,
1201 4 vy2, vy3, vy4, vy5,
1202 5 vy6, vy7, vy8, vz1,
1203 6 vz2, vz3, vz4, vz5,
1204 7 vz6, vz7, vz8, f11,
1205 8 f21, f31, f12, f22,
1206 9 f32, f13, f23, f33,
1207 a f14, f24, f34, f15,
1208 b f25, f35, f16, f26,
1209 c f36, f17, f27, f37,
1210 d f18, f28, f38, px1h1,
1211 e px1h2, px1h3, px2h1, px2h2,
1212 f px2h3, px3h1, px3h2, px3h3,
1213 g px4h1, px4h2, px4h3, voln,
1214 i gbuf%HOURG,partsav,iparts, nft,
1215 j mtn, jlag, eani , ngeo ,
1216 k ivector ,dt1 , mxt, geo,
1217 l nel, isctl, sti, cxx )
1220 1 pm, gbuf%RHO, off, vx1,
1221 2 vx2, vx3, vx4, vx5,
1222 3 vx6, vx7, vx8, vy1,
1223 4 vy2, vy3, vy4, vy5,
1224 5 vy6, vy7, vy8, vz1,
1225 6 vz2, vz3, vz4, vz5,
1226 7 vz6, vz7, vz8, f11,
1227 8 f21, f31, f12, f22,
1228 9 f32, f13, f23, f33,
1229 a f14, f24, f34, f15,
1230 b f25, f35, f16, f26,
1231 c f36, f17, f27, f37,
1232 d f18, f28, f38, px1h1,
1233 e px1h2, px1h3, px2h1, px2h2,
1234 f px2h3, px3h1, px3h2, px3h3,
1235 g px4h1, px4h2, px4h3, voln,
1236 h mxt, cxx, vis, vd2,
1237 i deltax, eani, ngeo, geo,
1238 j partsav, iparts, gbuf%OFF, gbuf%VOL,
1239 k iparg1, ifvm_skip,nel, nft,
1240 l mtn, ismstr, jlag, jhbe)
1245 1 pm, mbuf%VAR,off, fvx1,
1246 2 fvx2, fvx3, fvx4, fvx5,
1247 3 fvx6, fvx7, fvx8, fvy1,
1248 4 fvy2, fvy3, fvy4, fvy5,
1249 5 fvy6, fvy7, fvy8, fvz1,
1250 6 fvz2, fvz3, fvz4, fvz5,
1251 7 fvz6, fvz7, fvz8, ff11,
1252 8 ff21, ff31, ff12, ff22,
1253 9 ff32, ff13, ff23, ff33,
1254 a ff14, ff24, ff34, ff15,
1255 b ff25, ff35, ff16, ff26,
1256 c ff36, ff17, ff27, ff37,
1257 d ff18, ff28, ff38, fpx1h1,
1258 e fpx1h2, fpx1h3, fpx2h1, fpx2h2,
1259 f fpx2h3, fpx3h1, fpx3h2, fpx3h3,
1260 g fpx4h1, fpx4h2, fpx4h3, fvoln,
1261 h mxt, fcxx, vis, fvd2,
1262 i fdeltax, eani, ngeo, geo,
1263 j partsav, iparts, nel, nft,
1270 1 hh, gbuf%RHO,voln, vx1,
1271 2 vx2, vx3, vx4, vx5,
1272 3 vx6, vx7, vx8, vy1,
1273 4 vy2, vy3, vy4, vy5,
1274 5 vy6, vy7, vy8, vz1,
1275 6 vz2, vz3, vz4, vz5,
1276 7 vz6, vz7, vz8, f11,
1277 8 f21, f31, f12, f22,
1278 9 f32, f13, f23, f33,
1279 a f14, f24, f34, f15,
1280 b f25, f35, f16, f26,
1281 c f36, f17, f27, f37,
1282 d f18, f28, f38, nel)
1284 ialefvm_mat = ipm(251,ixs(1,nf1))
1285 IF(ialefvm_mat <= 1)
THEN
1286 IF (jale == 1 .OR. (jeul == 1.AND.integ8 == 0))
THEN
1289 1 pm, gbuf%RHO, voln, x1,
1296 8 vx2, vx3, vx4, vx5,
1297 9 vx6, vx7, vx8, vy1,
1298 a vy2, vy3, vy4, vy5,
1299 b vy6, vy7, vy8, vz1,
1300 c vz2, vz3, vz4, vz5,
1301 d vz6, vz7, vz8, f11,
1302 e f21, f31, f12, f22,
1303 f f32, f13, f23, f33,
1305 h f25, f35, f16, f26,
1306 i f36, f17, f27, f37,
1307 j f18, f28, f38, px1,
1308 k px2, px3, px4, py1,
1309 l py2, py3, py4, pz1,
1310 m pz2, pz3, pz4, dxx,
1311 n dxy, dxz, dyx, dyy,
1312 o dyz, dzx, dzy, dzz,
1313 p vdx1, vdx2, vdx3, vdx4,
1314 q vdx5, vdx6, vdx7, vdx8,
1315 r vdy1, vdy2, vdy3, vdy4,
1316 s vdy5, vdy6, vdy7, vdy8,
1317 t vdz1, vdz2, vdz3, vdz4,
1318 u vdz5, vdz6, vdz7, vdz8,
1319 v vdx, vdy, vdz, deltax,
1320 w vis, mxt, qmv, bufmat,
1321 x iparg1, ixs, gbuf%TAG22,nc1,
1322 y nc2, nc3, nc4, nc5,
1323 z nc6, nc7, nc8, nale,
1324 1 nel, nft, mtn, ipm)
1326 ELSEIF (jeul == 1 .AND. integ8 == 1)
THEN
1329 1 pm, gbuf%RHO, veul(lveul*nft+44),f11,
1330 2 f21, f31, f12, f22,
1331 3 f32, f13, f23, f33,
1332 4 f14, f24, f34, f15,
1333 5 f25, f35, f16, f26,
1334 6 f36, f17, f27, f37,
1335 7 f18, f28, f38, px1,
1336 8 px2, px3, px4, py1,
1337 9 py2, py3, py4, pz1,
1338 a pz2, pz3, pz4, px5,
1339 b px6, px7, px8, py5,
1340 c py6, py7, py8, pz5,
1341 d pz6, pz7, pz8, dxx,
1342 e dxy, dxz, dyx, dyy,
1343 f dyz, dzx, dzy, dzz,
1344 g vdx, vdy, vdz, mxt,
1345 h qmv, bufmat, vx1, vx2,
1346 i vx3, vx4, vx5, vx6,
1347 j vx7, vx8, vy1, vy2,
1348 k vy3, vy4, vy5, vy6,
1349 l vy7, vy8, vz1, vz2,
1350 m vz3, vz4, vz5, vz6,
1351 n vz7, vz8, iparg1, nel,
1356 1 f32,f13,f23,f33,f14,
1357 2 f24,f34,f15,f25,f35,
1358 3 f16,f26,f36,f17,f27,
1359 4 f37,f18,f28,f38,gbuf%OFF,
1364 1 pm, mbuf%VAR, fvoln, fx1,
1365 2 fx2, fx3, fx4, fx5,
1366 3 fx6, fx7, fx8, fy1,
1367 4 fy2, fy3, fy4, fy5,
1368 5 fy6, fy7, fy8, fz1,
1369 6 fz2, fz3, fz4, fz5,
1370 7 fz6, fz7, fz8, fvx1,
1371 8 fvx2, fvx3, fvx4, fvx5,
1372 9 fvx6, fvx7, fvx8, fvy1,
1373 a fvy2, fvy3, fvy4, fvy5,
1374 b fvy6, fvy7, fvy8, fvz1,
1375 c fvz2, fvz3, fvz4, fvz5,
1376 d fvz6, fvz7, fvz8, ff11,
1377 e ff21, ff31, ff12, ff22,
1378 f ff32, ff13, ff23, ff33,
1379 g ff14, ff24, ff34, ff15,
1380 h ff25, ff35, ff16, ff26,
1381 i ff36, ff17, ff27, ff37,
1382 j ff18, ff28, ff38, fpx1,
1383 k fpx2, fpx3, fpx4, fpy1,
1384 l fpy2, fpy3, fpy4, fpz1,
1385 m fpz2, fpz3, fpz4, fdxx,
1386 n fdxy, fdxz, fdyx, fdyy,
1387 o fdyz, fdzx, fdzy, fdzz,
1388 p fvdx1, fvdx2, fvdx3, fvdx4,
1389 q fvdx5, fvdx6, fvdx7, fvdx8,
1390 r fvdy1, fvdy2, fvdy3, fvdy4,
1391 s fvdy5, fvdy6, fvdy7, fvdy8,
1392 t fvdz1, fvdz2, fvdz3, fvdz4,
1393 u fvdz5, fvdz6, fvdz7, fvdz8,
1394 v fvdx, fvdy, fvdz, fdeltax,
1395 w vis, mxt, qmv, bufmat,
1396 x iparg1, ixs, gbuf%TAG22,nc1,
1397 y nc2, nc3, nc4, nc5,
1398 z nc6, nc7, nc8, nale,
1399 1 nel, nft, mtn, ipm)
1405 eint => elbuf_tab(ng)%GBUF%EINT(1:nel)
1408 ialefvm_flg = ipm(251,imat)
1409 IF(ialefvm_flg>=2)ifvm22 = 1
1410 CALL sbilan(partsav,eint,gbuf%RHO,gbuf%RK,gbuf%VOL,
1411 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
1412 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
1413 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
1414 . voln,iparts,gresav,grth,igrth,gbuf%OFF,
1415 . iexpan,gbuf%EINTTH,gbuf%FILL,gbuf%MOM,nel,ifvm22,
1416 . x1, x2, x3, x4, x5, x6, x7, x8,
1417 . y1, y2, y3, y4, y5, y6, y7, y8,
1418 . z1, z2, z3, z4, z5, z6, z7, z8,
1419 . itask,iparg1,sensors,gbuf%G_WPLA,gbuf%WPLA)
1421 CALL srbilan(partsav,eint ,gbuf%RHO,gbuf%RK,gbuf%VOL ,
1422 . vgxa ,vgya ,vgza ,vga2 ,voln ,
1423 . iparts ,gresav ,grth ,igrth ,gbuf%OFF ,
1424 . iexpan ,gbuf%EINTTH,gbuf%FILL,xgxa, xgya, xgza,
1425 . xgxa2,xgya2,xgza2,xgxya,xgyza,xgzxa,itask,iparg1,sensors,
1426 . nel,gbuf%G_WPLA,gbuf%WPLA)
1433 1 gbuf%SIG,px1, px2, px3,
1434 2 px4, py1, py2, py3,
1435 3 py4, pz1, pz2, pz3,
1436 4 pz4, px5, px6, px7,
1437 5 px8, py5, py6, py7,
1438 6 py8, pz5, pz6, pz7,
1439 7 pz8, f11, f21, f31,
1440 8 f12, f22, f32, f13,
1441 9 f23, f33, f14, f24,
1442 a f34, f15, f25, f35,
1443 b f16, f26, f36, f17,
1444 c f27, f37, f18, f28,
1445 d f38, voln, qvis, n1x,
1446 e n2x, n3x, n4x, n5x,
1447 f n6x, n1y, n2y, n3y,
1448 g n4y, n5y, n6y, n1z,
1449 h n2z, n3z, n4z, n5z,
1451 j nel, nft, jale, jeul,
1456 1 gbuf%SIG, lbuf%SIGD,x, nc1,
1457 2 nc2, nc3, nc4, nc5,
1458 3 nc6, nc7, nc8, px1,
1459 4 px2, px3, px4, py1,
1460 5 py2, py3, py4, pz1,
1461 6 pz2, pz3, pz4, px5,
1462 7 px6, px7, px8, py5,
1463 8 py6, py7, py8, pz5,
1464 9 pz6, pz7, pz8, f11,
1465 a f21, f31, f12, f22,
1466 b f32, f13, f23, f33,
1467 c f14, f24, f34, f15,
1468 d f25, f35, f16, f26,
1469 e f36, f17, f27, f37,
1470 f f18, f28, f38, voln,
1471 g qvis, dr, gbuf%RHO, cxx,
1472 h mx1, my1, mz1, mx2,
1473 i my2, mz2, mx3, my3,
1474 j mz3, mx4, my4, mz4,
1475 k mx5, my5, mz5, mx6,
1476 l my6, mz6, mx7, my7,
1477 m mz7, mx8, my8, mz8,
1478 n ixs, nel, ismstr, svis)
1487 sigf(i,1) = mbuf%VAR(nbf1 + i)
1488 sigf(i,2) = mbuf%VAR(nbf2 + i)
1489 sigf(i,3) = mbuf%VAR(nbf3 + i)
1495 1 sigf, dfe, fpx1, fpx2,
1496 2 fpx3, fpx4, fpy1, fpy2,
1497 3 fpy3, fpy4, fpz1, fpz2,
1498 4 fpz3, fpz4, ff11, ff21,
1499 5 ff31, ff12, ff22, ff32,
1500 6 ff13, ff23, ff33, ff14,
1501 7 ff24, ff34, ff15, ff25,
1502 8 ff35, ff16, ff26, ff36,
1503 9 ff17, ff27, ff37, ff18,
1504 a ff28, ff38, fvoln, fqvis,
1505 b fn1x, fn2x, fn3x, fn4x,
1506 c fn5x, fn6x, fn1y, fn2y,
1507 d fn3y, fn4y, fn5y, fn6y,
1508 e fn1z, fn2z, fn3z, fn4z,
1512 ialefvm_mat = ipm(251,ixs(1,nf1))
1513 IF (ialefvm_mat > 1)
THEN
1517 1 ixs, nv46 , gbuf%SIG, ale_connect,
1519 4 n1y, n2y, n3y, n4y, n5y, n6y,
1520 5 n1z, n2z, n3z, n4z, n5z, n6z,
1535 1 ixs, gbuf%SIG, qvis,
1536 2 n1x, n2x, n3x, n4x,
1537 3 n5x, n6x, n1y, n2y,
1538 4 n3y, n4y, n5y, n6y,
1539 5 n1z, n2z, n3z, n4z,
1541 7 gbuf%RHO, gbuf%VOL,
1542 8 nel, gbuf%MOM, lbuf%SSP, svis)
1545 1 ixs, gbuf%SIG, qvis,
1546 2 n1x, n2x, n3x, n4x, n5x, n6x,
1547 3 n1y, n2y, n3y, n4y, n5y, n6y,
1548 4 n1z, n2z, n3z, n4z, n5z, n6z,
1549 5 ipm, gbuf%RHO, gbuf%VOL, gbuf%TAG22,
1550 6 nel, gbuf%MOM, lbuf%SSP, svis)
1560 1 nloc_dmg ,var_reg ,nel ,off ,
1561 2 voln ,nc1 ,nc2 ,nc3 ,
1562 3 nc4 ,nc5 ,nc6 ,nc7 ,
1563 4 nc8 ,px1 ,px2 ,px3 ,
1564 5 px4 ,py1 ,py2 ,py3 ,
1565 6 py4 ,pz1 ,pz2 ,pz3 ,
1566 7 pz4 ,mxt(lft) ,itask ,dt2t ,
1573 IF (mat_elem%MAT_PARAM(imat)%HEAT_FLAG == 1)
THEN
1574 CALL stherm(mat_elem%MAT_PARAM(imat),
1575 1 voln, nc1, nc2, nc3, nc4,
1576 2 nc5, nc6, nc7, nc8, px1,
1577 3 px2, px3, px4, py1,
1578 4 py2, py3, py4, pz1,
1579 5 pz2, pz3, pz4, dt1,
1580 6 temp, tempel, fheat, them,
1581 7 gbuf%OFF,lbuf%OFF,partsav, iparts,
1582 8 gbuf%VOL,nel ,numnod ,glob_therm%THEACCFACT)
1584 CALL stherm(mat_elem%MAT_PARAM(imat),
1585 1 voln, nc1, nc2, nc3, nc4,
1586 2 nc5, nc6, nc7, nc8, px1,
1587 3 px2, px3, px4, py1,
1588 4 py2, py3, py4, pz1,
1589 5 pz2, pz3, pz4, dt1,
1590 6 temp, tempel, die, them,
1591 7 gbuf%OFF,lbuf%OFF,partsav, iparts,
1592 8 gbuf%VOL,nel ,numnod ,glob_therm%THEACCFACT)
1599 1 r11, r21, r31, r12,
1600 2 r22, r32, r13, r23,
1601 3 r33, f11, f12, f13,
1602 4 f14, f15, f16, f17,
1603 5 f18, f21, f22, f23,
1604 6 f24, f25, f26, f27,
1605 7 f28, f31, f32, f33,
1606 8 f34, f35, f36, f37,
1610 1 r11, r21, r31, r12,
1611 2 r22, r32, r13, r23,
1612 3 r33, ff11, ff12, ff13,
1613 4 ff14, ff15, ff16, ff17,
1614 5 ff18, ff21, ff22, ff23,
1615 6 ff24, ff25, ff26, ff27,
1616 7 ff28, ff31, ff32, ff33,
1617 8 ff34, ff35, ff36, ff37,
1626 1 nel ,sti_c ,npropm ,nummat ,
1627 2 ismstr ,mxt ,istab ,pm ,
1628 3 gbuf%SIG ,gbuf%RHO ,cxx ,off ,
1629 4 gbuf%OFF ,ll ,voln ,fld ,
1632 IF (ismstr == 1.OR.ismstr >= 11.OR.jcvt > 0)
1634 . nc1, nc2, nc3, nc4,
1635 . nc5, nc6, nc7, nc8,
1642 . x, xdp, numnod, nel )
1678 . vx1, vx2, vx3, vx4,
1679 . vx5, vx6, vx7, vx8,
1680 . vy1, vy2, vy3, vy4,
1681 . vy5, vy6, vy7, vy8,
1682 . vz1, vz2, vz3, vz4,
1683 . vz5, vz6, vz7, vz8,
1684 . f11, f12, f13, f14,
1685 . f15, f16, f17, f18,
1686 . f21, f22, f23, f24,
1687 . f25, f26, f27, f28,
1688 . f31, f32, f33, f34,
1689 . f35, f36, f37, f38,
1690 . sti, sti_c, fld , cns2,
1691 . ll , istab, fqmax, nel,
1692 . gbuf%EINT_DISTOR, dt1)
1696 1 gbuf%FILL,sti, f11, f21,
1697 2 f31, f12, f22, f32,
1698 3 f13, f23, f33, f14,
1699 4 f24, f34, f15, f25,
1700 5 f35, f16, f26, f36,
1701 6 f17, f27, f37, f18,
1707 1 gbuf%OFF,a, nc1, nc2,
1708 2 nc3, nc4, nc5, nc6,
1709 3 nc7, nc8, stifn, sti,
1710 4 f11, f21, f31, f12,
1711 5 f22, f32, f13, f23,
1712 6 f33, f14, f24, f34,
1713 7 f15, f25, f35, f16,
1714 8 f26, f36, f17, f27,
1715 9 f37, f18, f28, f38,
1716 a nvc, ar, fr_wave, fr_wav,
1717 b mx1, my1, mz1, mx2,
1718 c my2, mz2, mx3, my3,
1719 d mz3, mx4, my4, mz4,
1720 e mx5, my5, mz5, mx6,
1721 f my6, mz6, mx7, my7,
1722 g mz7, mx8, my8, mz8,
1723 h them, fthe, condn, conde,
1724 i nel, jthe, isrot, ipartsph,glob_therm%NODADT_THERM)
1727 1 gbuf%OFF,sti, fsky, fsky,
1728 2 iads, f11, f21, f31,
1729 3 f12, f22, f32, f13,
1730 4 f23, f33, f14, f24,
1731 5 f34, f15, f25, f35,
1732 6 f16, f26, f36, f17,
1733 7 f27, f37, f18, f28,
1734 8 f38, nc1, nc2, nc3,
1735 9 nc4, nc5, nc6, nc7,
1736 a nc8, ar, fr_wave, fr_wav,
1737 b mx1, my1, mz1, mx2,
1738 c my2, mz2, mx3, my3,
1739 d mz3, mx4, my4, mz4,
1740 e mx5, my5, mz5, mx6,
1741 f my6, mz6, mx7, my7,
1743 h them, fthesky, condnsky,conde,
1744 i nel, nft, jthe, isrot,
1749 IF(iparit == 0 )
THEN
1751 1 gbuf%OFF,af, nc1, nc2,
1752 2 nc3, nc4, nc5, nc6,
1754 4 ff11, ff21, ff31, ff12,
1755 5 ff22, ff32, ff13, ff23,
1756 6 ff33, ff14, ff24, ff34,
1757 7 ff15, ff25, ff35, ff16,
1758 8 ff26, ff36, ff17, ff27,
1759 9 ff37, ff18, ff28, ff38,
1764 1 gbuf%OFF,sti, ffsky, iads,
1765 2 ff11, ff21, ff31, ff12,
1766 3 ff22, ff32, ff13, ff23,
1767 4 ff33, ff14, ff24, ff34,
1768 5 ff15, ff25, ff35, ff16,
1769 6 ff26, ff36, ff17, ff27,
1770 7 ff37, ff18, ff28, ff38,
1771 8 nc1, nc2, nc3, nc4,
1772 9 nc5, nc6, nc7, nc8,
1777 IF (
ALLOCATED(var_reg))
DEALLOCATE(var_reg)