125 1 ELBUF_TAB, NG, PM, GEO,
128 4 FLU1, VEUL, FV, ALE_CONNECT,
129 5 IPARG, TF, NPF, BUFMAT,
130 6 PARTSAV, ITAB, DT2T, NELTST,
131 7 ITYPTST, STIFN, FSKY, IADS,
132 8 OFFSET, EANI, IPARTS, F11,
133 9 F21, F31, F12, F22,
134 A F32, F13, F23, F33,
135 B F14, F24, F34, F15,
136 C F25, F35, F16, F26,
137 D F36, F17, F27, F37,
138 E F18, F28, F38, NEL,
139 F FSKYM, MSNF, ISKY, FSKYI,
140 G NVC, IPM, IGEO, AR,
141 H VR, IN, FR_WAVE, DR,
142 I BUFVOIS, ITASK, QMV, ISTRAIN,
143 J TEMP, FTHE, FTHESKY, IEXPAN,
144 K GRESAV, GRTH, IGRTH, MSSA,
145 L DMELS, TABLE, PHI1, PHI2,
147 N FFSKY, AFGLOB, MSF, IPARG1,
148 O XDP, POR, ICONTACT, IFOAM,
149 P VOLN, CONDN, CONDNSKY, AGRAV,
150 Q IGRV, LGRAV, SENSORS, SKEW,
151 R NALE, D, IOUTPRT, NLOC_DMG,
152 S MAT_ELEM, H3D_STRAIN, DT, IDEL7NOK,NSVOIS,
153 T SZ_BUFVOIS, SNPC,STF,SBUFMAT,SVIS,IDTMINS,IRESP,
154 U IDEL7NG, MAXFUNC, USERL_AVAIL, GLOB_THERM,
155 V impl_s, idyna, WFEXT)
160 USE output_mod,
ONLY : output_
170 USE sdistor_ini_mod,
ONLY : sdistor_ini
175#include "implicit_f.inc"
179#include "mvsiz_p.inc"
183#include "vect01_c.inc"
184#include "com01_c.inc"
185#include "com04_c.inc"
186#include "com08_c.inc"
187#include "scr03_c.inc"
188#include "scr06_c.inc"
189#include "parit_c.inc"
190#include "param_c.inc"
191#include "timeri_c.inc"
192#include "inter22.inc"
193#include "scr18_c.inc"
194#include "comlock.inc"
198 TYPE(timer_) ,
INTENT(INOUT) :: TIMERS
199 TYPE(output_),
INTENT(INOUT) :: OUTPUT
200 INTEGER,
INTENT(IN) :: SNPC
201 INTEGER,
INTENT(IN) :: SZ_BUFVOIS
202 INTEGER,
INTENT(IN) :: NSVOIS
203 INTEGER,
INTENT(IN) :: STF
204 INTEGER,
INTENT(IN) :: SBUFMAT
205 INTEGER,
INTENT(INOUT) :: IDEL7NOK
206 INTEGER,
INTENT(IN) :: IDTMINS
207 INTEGER ,
INTENT(IN) :: IRESP
208 INTEGER ,
INTENT(IN) ::
209 INTEGER ,
INTENT(IN) :: MAXFUNC
210 INTEGER,
INTENT(IN) :: IMPL_S
211 INTEGER,
INTENT(IN) :: IDYNA
212 INTEGER,
INTENT(IN) :: USERL_AVAIL
213 INTEGER,
DIMENSION(*),
INTENT(IN) :: IPARG,IPARTS,NPF,NALE
214 INTEGER,
INTENT(IN) :: NG,NEL
215 INTEGER IXS(NIXS,NUMELS), IADS(8,*),IPM(NPROPMI,NUMMAT),
216 . IGEO(NPROPGI,*),GRTH(*),IGRTH(*),IPARG1(*),IFOAM(*),
217 . ICONTACT(*),ISKY(*),ITAB(*)
218 INTEGER NELTST,ITYPTST,OFFSET,NVC,ITASK,
219 . ISTRAIN, IEXPAN, NV46,IOUTPRT,H3D_STRAIN
221 DOUBLE PRECISION :: XDP(3,*)
223 my_real,
DIMENSION(MVSIZ,6),
INTENT(INOUT) :: SVIS
226 . PM(NPROPM,NUMMAT), GEO(NPROPG,NUMGEO), X(*), A(*), V(3,*), MS(*), W(*),
228 . FLU1(*), VEUL(*), FV(*), TF(*), BUFMAT(*),
229 . partsav(*),stifn(*), fsky(*),eani(*),
230 . f11(mvsiz),f21(mvsiz),f31(mvsiz),
231 . f12(mvsiz),f22(mvsiz),f32(mvsiz),
232 . f13(mvsiz),f23(mvsiz),f33(mvsiz),
233 . f14(mvsiz),f24(mvsiz),f34(mvsiz),
234 . f15(mvsiz),f25(mvsiz),f35(mvsiz),
235 . f16(mvsiz),f26(mvsiz),f36(mvsiz),
236 . f17(mvsiz),f27(mvsiz),f37(mvsiz),
237 . f18(mvsiz),f28(mvsiz),f38(mvsiz),
238 . temp(*), fthe(*),fthesky(*),gresav(*), mssa(*), dmels(*),
239 . phi1(*),phi2(*),vf(3,*) ,d(3,*),
240 . af(3,*), ffsky(3,*),df(3,*),wf(3,*),msf(*),afglob(3,*),
241 . por(*),voln(mvsiz), condn(*),condnsky(*)
243 my_real :: bufvois(6,*)
244 my_real :: msnf(*),ar(*),vr(3,*),in(*),fr_wave(*),dr(3,*),qmv(12,*)
245 TYPE (TTABLE) TABLE(*)
246 TYPE (ELBUF_STRUCT_),
TARGET,
DIMENSION(NGROUP) :: ELBUF_TAB
247 TYPE (NLOCAL_STR_) ,
TARGET :: NLOC_DMG
248 TYPE (MAT_ELEM_) ,
INTENT(INOUT) :: MAT_ELEM
250 my_real :: p(mvsiz),fskyi(lskyi,nfskyi)
252 INTEGER :: IGRV(*), LGRAV(*)
253 my_real :: AGRAV(*),SKEW(LSKEW,*)
255 TYPE (SENSORS_) ,
INTENT(INOUT) :: SENSORS
256 TYPE (DT_),
INTENT(INOUT) :: DT
257 type (glob_therm_) ,
intent(inout) :: glob_therm
259 DOUBLE PRECISION,
INTENT(INOUT) :: WFEXT
263 INTEGER I,NF1,NUVAR,IBID,IPTR,IPTS,IPTT,ILAY,ITET,IFVM_SKIP,NNOD
264 INTEGER NBF1,NBF2,NBF3, IALEFVM_MAT
265 INTEGER MXT(MVSIZ),NGL(),NGEO(MVSIZ),INOD(8)
266 my_real VD2(MVSIZ) , DVOL(MVSIZ),DELTAX(MVSIZ),
267 . VIS(MVSIZ) , QVIS(MVSIZ), CXX(MVSIZ) ,
268 . S1(MVSIZ) , S2(MVSIZ) , S3(MVSIZ) ,
269 . S4(MVSIZ) , S5(MVSIZ) , S6(MVSIZ) ,
270 . B1() , B2(MVSIZ) , B3(MVSIZ) ,
271 . B4(MVSIZ) , B5(MVSIZ) , B6(MVSIZ) ,
272 . DXX(MVSIZ) , DYY(MVSIZ) , DZZ() ,
273 . D4(MVSIZ) , D5(MVSIZ) , D6(MVSIZ) ,
274 . jac1(mvsiz), jac2(mvsiz), jac3(mvsiz),
275 . jac4(mvsiz), jac5(mvsiz), jac6(mvsiz),
276 . vdx(mvsiz) , vdy(mvsiz) , vdz(mvsiz),ssp_eq(mvsiz),
277 . aire(mvsiz),fqvis(mvsiz), fcxx(mvsiz)
278 my_real,
dimension(mvsiz) :: fheat
280 my_real :: sti(mvsiz), wxx(mvsiz) , wyy(mvsiz) , wzz(mvsiz)
281 my_real :: muvoid(mvsiz)
282 my_real :: sigy(mvsiz),et(mvsiz),r3_free(mvsiz)
285 INTEGER (MVSIZ), NC2(MVSIZ), NC3(MVSIZ), NC4(MVSIZ),
286 . nc5(mvsiz), nc6(mvsiz), nc7(mvsiz), nc8(mvsiz)
289 . XD1(MVSIZ), XD2(MVSIZ), XD3(MVSIZ), (MVSIZ),
290 . xd5(mvsiz), xd6(mvsiz), xd7(mvsiz), xd8(mvsiz),
291 . yd1(mvsiz), yd2(mvsiz), yd3(mvsiz), yd4(mvsiz),
292 . yd5(mvsiz), yd6(mvsiz), yd7(mvsiz), yd8(mvsiz),
293 . zd1(mvsiz), zd2(mvsiz), zd3(mvsiz), zd4(mvsiz),
294 . zd5(mvsiz), zd6(mvsiz), zd7(mvsiz), zd8(mvsiz),
295 . x0(mvsiz,8),y0(mvsiz,8),z0(mvsiz,8),voldp(mvsiz)
298 . off(mvsiz) , rhoo(mvsiz),
299 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
300 . x5(mvsiz), x6(mvsiz), x7(mvsiz), x8(mvsiz),
301 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
302 . y5(mvsiz), y6(mvsiz), y7(mvsiz), y8(mvsiz),
303 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
304 . z5(mvsiz), z6(mvsiz), z7(mvsiz), z8(mvsiz),
305 . vx1(mvsiz),vx2(mvsiz),vx3(mvsiz),vx4(mvsiz),
306 . vx5(mvsiz),vx6(mvsiz),vx7(mvsiz),vx8(mvsiz),
307 . vy1(mvsiz),vy2(mvsiz),vy3(mvsiz),vy4(mvsiz),
308 . vy5(mvsiz),vy6(mvsiz),vy7(mvsiz),vy8(mvsiz),
309 . vz1(mvsiz),vz2(mvsiz),vz3(mvsiz),vz4(mvsiz),
310 . vz5(mvsiz),vz6(mvsiz),vz7(mvsiz),vz8(mvsiz),
311 . px1(mvsiz),px2(mvsiz),px3(mvsiz),px4(mvsiz),
312 . px5(mvsiz),px6(mvsiz),px7(mvsiz),px8(mvsiz),
313 . py1(mvsiz),py2(mvsiz),py3(mvsiz),py4(mvsiz),
314 . py5(mvsiz),py6(mvsiz),py7(mvsiz),py8(mvsiz),
315 . pz1(mvsiz),pz2(mvsiz),pz3(mvsiz),pz4(mvsiz),
316 . pz5(mvsiz),pz6(mvsiz),pz7(mvsiz),pz8(mvsiz),
317 . px1h1(mvsiz),px2h1(mvsiz),px3h1(mvsiz),px4h1(mvsiz),
318 . px1h2(mvsiz),px2h2(mvsiz),px3h2(mvsiz),px4h2(mvsiz),
319 . px1h3(mvsiz),px2h3(mvsiz),px3h3(mvsiz),px4h3(mvsiz),
320 . vdx1(mvsiz),vdx2(mvsiz),vdx3(mvsiz),vdx4(mvsiz),
322 . vdy1(mvsiz),vdy2(mvsiz),vdy3(mvsiz),vdy4(mvsiz),
324 . vdz1(mvsiz),vdz2(mvsiz),vdz3(mvsiz),vdz4(mvsiz),
325 . vdz5(mvsiz),vdz6(mvsiz),vdz7(mvsiz),vdz8(mvsiz),
326 . vgxa(mvsiz),vgya(mvsiz),vgza(mvsiz), vga2(mvsiz),
327 . dxy(mvsiz),dyx(mvsiz),dyz(mvsiz),
328 . dzy(mvsiz),dzx(mvsiz),dxz(mvsiz),
329 . r11(mvsiz),r12(mvsiz),r13(mvsiz),
330 . r21(mvsiz),r22(mvsiz),r23(mvsiz),
331 . r31(mvsiz),r32(mvsiz),r33(mvsiz),hh(mvsiz),gama(mvsiz,6),
332 . vx0(mvsiz,8),vy0(mvsiz,8),vz0(mvsiz,8),
333 . mfxx(mvsiz),mfxy(mvsiz),mfyx(mvsiz),
334 . mfyy(mvsiz),mfyz(mvsiz),mfzy(mvsiz),
335 . mfzz(mvsiz),mfzx(mvsiz),mfxz(mvsiz),
336 . dfe(mvsiz,3),sigf(mvsiz,6),offg0(mvsiz),
337 . xgxa(mvsiz),xgya(mvsiz),xgza(mvsiz),
338 . xgxya(mvsiz),xgyza(mvsiz),xgzxa(mvsiz),
339 . xgxa2(mvsiz),xgya2(mvsiz),xgza2(mvsiz)
342 . vxr(mvsiz),vyr(mvsiz),vzr(mvsiz),fr_wav(mvsiz),
343 . tempel(mvsiz),them(mvsiz,8),die(mvsiz)
347 . mx2(mvsiz),my2(mvsiz),mz2(mvsiz),
348 . mx3(mvsiz),my3(mvsiz),mz3(mvsiz),
349 . mx4(mvsiz),my4(mvsiz),mz4(mvsiz),
350 . mx5(mvsiz),my5(mvsiz),mz5(mvsiz),
351 . mx6(mvsiz),my6(mvsiz),mz6(mvsiz),
352 . mx7(mvsiz),my7(mvsiz),mz7(mvsiz),
353 . mx8(mvsiz),my8(mvsiz),mz8(mvsiz)
356 . n1x(mvsiz), n2x(mvsiz), n3x(mvsiz),
357 . n1y(mvsiz), n2y(mvsiz), n3y(mvsiz),
358 . n1z(mvsiz), n2z(mvsiz), n3z(mvsiz),
359 . n4x(mvsiz), n5x(mvsiz), n6x(mvsiz),
360 . n4y(mvsiz), n5y(mvsiz), n6y(mvsiz),
361 . n4z(mvsiz), n5z(mvsiz), n6z(mvsiz)
364 . fvx1(mvsiz),fvx2(mvsiz),fvx3(mvsiz),fvx4(mvsiz),
365 . fvx5(mvsiz),fvx6(mvsiz),fvx7(mvsiz),fvx8(mvsiz),
366 . fvy1(mvsiz),fvy2(mvsiz),fvy3(mvsiz),fvy4(mvsiz),
367 . fvy5(mvsiz),fvy6(mvsiz),fvy7(mvsiz),fvy8(mvsiz),
368 . fvz1(mvsiz),fvz2(mvsiz),fvz3(mvsiz),fvz4(mvsiz),
369 . fvz5(mvsiz),fvz6(mvsiz),fvz7(mvsiz),fvz8(mvsiz),
370 . fvdx1(mvsiz),fvdx2(mvsiz),fvdx3(mvsiz),fvdx4(mvsiz),
371 . fvdx5(mvsiz),fvdx6(mvsiz),fvdx7(mvsiz),fvdx8(mvsiz),
372 . fvdy1(mvsiz),fvdy2(mvsiz),fvdy3(mvsiz),fvdy4(mvsiz),
373 . fvdy5(mvsiz),fvdy6(mvsiz),fvdy7(mvsiz),fvdy8(mvsiz),
374 . fvdz1(mvsiz),fvdz2(mvsiz),fvdz3(mvsiz),fvdz4
375 . fvdz5(mvsiz),fvdz6(mvsiz),fvdz7(mvsiz),fvdz8(mvsiz),
376 . fdxx(mvsiz) ,fdxy(mvsiz) ,fdxz(mvsiz) ,fdyx(mvsiz),
377 . fdyy(mvsiz) ,fdyz(mvsiz) ,fdzx(mvsiz) ,fdzy(mvsiz),
378 . fdzz(mvsiz) ,fd4(mvsiz) ,fd5(mvsiz) ,fd6(mvsiz) ,
379 . fwxx(mvsiz) ,fwyy(mvsiz) ,fwzz(mvsiz) ,fvxr(mvsiz),
380 . fvyr(mvsiz) ,fvzr(mvsiz) ,fvoln(mvsiz),
384 . ff11(mvsiz),ff21(mvsiz),ff31(mvsiz),
385 . ff12(mvsiz),ff22(mvsiz),ff32(mvsiz),
386 . ff13(mvsiz),ff23(mvsiz),ff33(mvsiz),
387 . ff14(mvsiz),ff24(mvsiz),ff34(mvsiz),
388 . ff15(mvsiz),ff25(mvsiz),ff35(mvsiz),
389 . ff16(mvsiz),ff26(mvsiz),ff36(mvsiz),
390 . ff17(mvsiz),ff27(mvsiz),ff37(mvsiz),
391 . ff18(mvsiz),ff28(mvsiz),ff38(mvsiz),
392 . fvdx(mvsiz),fvdy(mvsiz),fvdz(mvsiz),
393 . frho0(mvsiz),
alpha(mvsiz),
394 . fpx1h1(mvsiz),fpx1h2(mvsiz), fpx1h3(mvsiz),
395 . fpx2h1(mvsiz),fpx2h2(mvsiz), fpx2h3(mvsiz),
396 . fpx3h1(mvsiz),fpx3h2(mvsiz), fpx3h3(mvsiz),
397 . fpx4h1(mvsiz),fpx4h2(mvsiz), fpx4h3(mvsiz),
398 . fn1x(mvsiz), fn2x(mvsiz), fn3x
399 . fn1y(mvsiz), fn2y(mvsiz), fn3y(mvsiz),
400 . fn1z(mvsiz), fn2z(mvsiz
401 . fn4x(mvsiz), fn5x(mvsiz), fn6x(mvsiz),
402 . fn4y(mvsiz), fn5y(mvsiz), fn6y(mvsiz),
403 . fn4z(mvsiz), fn5z(mvsiz), fn6z(mvsiz),
404 . fx1(mvsiz), fx2(mvsiz), fx3(mvsiz), fx4(mvsiz),
405 . fx5(mvsiz), fx6(mvsiz), fx7(mvsiz), fx8(mvsiz),
406 . fy1(mvsiz), fy2(mvsiz), fy3(mvsiz), fy4(mvsiz),
407 . fy5(mvsiz), fy6(mvsiz), fy7(mvsiz), fy8(mvsiz),
408 . fz1(mvsiz), fz2(mvsiz), fz3(mvsiz), fz4(mvsiz),
409 . fz5(mvsiz), fz6(mvsiz), fz7(mvsiz), fz8(mvsiz)
412 . fpx1(mvsiz),fpx2(mvsiz),fpx3(mvsiz),fpx4(mvsiz),
413 . fpy1(mvsiz),fpy2(mvsiz),fpy3(mvsiz),fpy4(mvsiz),
414 . fpz1(mvsiz),fpz2(mvsiz),fpz3(mvsiz),fpz4(mvsiz),
415 . fdeltax(mvsiz) ,flux0(mvsiz,6),flu01(mvsiz)
416 my_real,
DIMENSION(:),
ALLOCATABLE :: var_reg
418 my_real :: conde(mvsiz),amu(mvsiz),divde(mvsiz),l_max(mvsiz),
419 . sti_c(mvsiz),ll(mvsiz),fld(mvsiz),
421 my_real,
DIMENSION(:),
POINTER :: eint
423 my_real :: sum_eps(9),sum_m,sum_vol
424 INTEGER :: NUM_ELEM_ALE
426 TYPE(G_BUFEL_) ,
POINTER :: GBUF
427 TYPE(L_BUFEL_) ,
POINTER :: LBUF
428 TYPE() ,
POINTER :: MBUF
430 INTEGER IALEFVM_FLG, , IMAT, INLOC, L_NLOC, J, IPOS(8),PID,
431 . NN_DEL,ISCTL,ISTAB(MVSIZ)
433 INTEGER IBOLTP,NBPRELD,ISM12_11
434 my_real,
DIMENSION(:),
POINTER :: BPRELD
435 my_real,
DIMENSION(:),
POINTER :: DNL
440 GBUF => elbuf_tab(ng)%GBUF
441 lbuf => elbuf_tab(ng)%BUFLY(1)%LBUF(1,1,1)
442 mbuf => elbuf_tab(ng)%BUFLY(1)%MAT(1,1,1)
443 ism12_11 = elbuf_tab(ng)%BUFLY(1)%L_SIGL
445 ALLOCATE(var_reg(nel))
450 nbpreld = gbuf%G_BPRELD
451 bpreld =>gbuf%BPRELD(1:nbpreld*nel)
453 sz_ix=numelq+numels+nsvois
460 ialefvm_mat = ipm(251,ixs(1,nf1))
461 IF(ialefvm_mat<=1)
THEN
463 CALL scoor3(x,ixs(1,nf1),v,w,gbuf%GAMA,gama,
464 . x1, x2, x3, x4, x5, x6, x7, x8,
465 . y1, y2, y3, y4, y5, y6, y7, y8,
466 . z1, z2, z3, z4, z5, z6, z7, z8,
467 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
468 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
470 . vdx1, vdx2, vdx3, vdx4, vdx5, vdx6, vdx7
471 . vdy1, vdy2, vdy3, vdy4, vdy5, vdy6, vdy7, vdy8,
472 . vdz1, vdz2, vdz3, vdz4, vdz5, vdz6, vdz7, vdz8,
473 . vdx,vdy,vdz,vd2,vis,gbuf%OFF,off,gbuf%SMSTR,gbuf%RHO,
474 . rhoo,nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,ngl,mxt,ngeo,
475 . vr,vxr,vyr,vzr,fr_wave,fr_wav,
476 . xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8,
477 . yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8,
478 . zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8,
479 . xdp,iparg, ng , nel)
483 . x1, x2, x3, x4, x5, x6, x7, x8,
484 . y1, y2, y3, y4, y5, y6, y7, y8,
485 . z1, z2, z3, z4, z5, z6, z7, z8,
486 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
487 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
488 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
489 . vdx1, vdx2, vdx3, vdx4, vdx5, vdx6, vdx7, vdx8,
490 . vdy1, vdy2, vdy3, vdy4, vdy5, vdy6, vdy7, vdy8,
491 . vdz1, vdz2, vdz3, vdz4, vdz5, vdz6, vdz7, vdz8,
492 . vdx,vdy,vdz,vd2,vis,gbuf%OFF,off,gbuf%RHO,
493 . rhoo,nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,ngl,mxt,ngeo,
494 . xd1, xd2 , xd3, xd4, xd5, xd6, xd7, xd8,
495 . yd1, yd2 , yd3, yd4, yd5, yd6, yd7, yd8,
496 . zd1, zd2 , zd3, zd4, zd5, zd6, zd7, zd8,
497 . xdp, iparg, ng , nel, gbuf%MOM,gbuf%TAG22)
501 CALL srcoor3(x,ixs(1,nf1),v,w,gbuf%GAMA,gama,
502 . x1, x2, x3, x4, x5, x6, x7, x8,
503 . y1, y2, y3, y4, y5, y6, y7, y8,
504 . z1, z2, z3, z4, z5, z6, z7, z8,
505 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
506 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
507 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
508 . vd2,vis,gbuf%OFF,off,gbuf%SMSTR,gbuf%RHO,rhoo,
509 . r11, r12, r13, r21, r22, r23, r31, r32, r33,
510 . nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,ngl,mxt,ngeo,
511 . ioutprt, vgxa, vgya, vgza, vga2,
512 . xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8,
513 . yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8,
514 . zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8,
515 . xdp, x0 , y0 , z0 , nel, xgxa, xgya, xgza,
516 . xgxa2,xgya2 ,xgza2 ,xgxya ,xgyza ,xgzxa,iparg1,
521 IF (geo(190,pid)+geo(191,pid)+geo(192,pid)+geo(192,pid)>zero)
523 IF (nn_del ==0 .AND. dt%IDEL_BRICK>0) nn_del=8
527 IF ((ismstr >= 10.AND.ismstr <= 12).AND.jlag > 0)
THEN
530 1 tt, 8, x, ixs(1,nf1),
532 3 vy0, vz0, gbuf%SMSTR,d,
533 4 gbuf%OFF, offg0, nel, xdp,
536 IF (ismstr == 11)
THEN
539 1 r11, r12, r13, r21,
540 2 r22, r23, r31, r32,
541 3 r33, x0(1,1), x0(1,2), x0(1,3),
542 4 x0(1,4), x0(1,5), x0(1,6), x0(1,7),
543 5 x0(1,8), y0(1,1), y0(1,2), y0(1,3),
544 6 y0(1,4), y0(1,5), y0(1,6), y0(1,7),
545 7 y0(1,8), z0(1,1), z0(1,2), z0(1,3),
546 8 z0(1,4), z0(1,5), z0(1,6), z0(1,7),
549 1 r11, r12, r13, r21,
550 2 r22, r23, r31, r32,
551 3 r33, vx0(1,1),vx0(1,2),vx0(1,3),
552 4 vx0(1,4),vx0(1,5),vx0(1,6),vx0(1,7),
553 5 vx0(1,8),vy0(1,1),vy0(1,2),vy0(1,3),
554 6 vy0(1,4),vy0(1,5),vy0(1,6),vy0(1,7),
555 7 vy0(1,8),vz0(1,1),vz0(1,2),vz0(1,3),
556 8 vz0(1,4),vz0(1,5),vz0(1,6),vz0(1,7),
561 . x0(1,1), x0(1,2), x0(1,3), x0(1,4),
562 . x0(1,5), x0(1,6), x0(1,7), x0(1,8),
563 . y0(1,1), y0(1,2), y0(1,3), y0(1,4),
564 . y0(1,5), y0(1,6), y0(1,7), y0(1,8),
565 . z0(1,1), z0(1,2), z0(1,3), z0(1,4),
566 . z0(1,5), z0(1,6), z0(1,7), z0(1,8),
567 . px1, px2, px3, px4,
568 . py1, py2, py3, py4,
569 . pz1, pz2, pz3, pz4,
570 . px1h1, px1h2, px1h3,
571 . px2h1, px2h2, px2h3,
572 . px3h1, px3h2, px3h3,
573 . px4h1, px4h2, px4h3,
578 IF (idtmin(1)==3.AND.ismstr == 12.AND.jcvt == 0.AND.ism12_11==0)
THEN
581 1 gbuf%OFF,x, xdp, nc1,
582 2 nc2, nc3, nc4, nc5,
583 3 nc6, nc7, nc8, r11,
584 4 r12, r13, r21, r22,
585 5 r23, r31, r32, r33,
590 . px1, px2, px3, px4,
592 . pz1, pz2, pz3, pz4,
597 1 px1, px2, px3, px4,
598 2 py1, py2, py3, py4,
599 3 pz1, pz2, pz3, pz4,
600 4 vx0(1,1),vx0(1,2),vx0(1,3),vx0(1,4),
601 5 vx0(1,5),vx0(1,6),vx0(1,7),vx0(1,8),
602 6 vy0(1,1),vy0(1,2),vy0(1,3),vy0(1,4),
603 7 vy0(1,5),vy0(1,6),vy0(1,7),vy0(1,8),
604 8 vz0(1,1),vz0(1,2),vz0(1,3),vz0(1,4),
605 9 vz0(1,5),vz0(1,6),vz0(1,7),vz0(1,8),
606 a mfxx, mfxy, mfxz, mfyx,
607 b mfyy, mfyz, mfzx, mfzy,
610 IF (jcvt /= 0 .AND.(ismstr == 10 .OR.ismstr == 12))
THEN
611 CALL sordeft3(lft,llt,mfxx, mfxy, mfxz, mfyx, mfyy, mfyz,
613 . r11, r21, r31, r12, r22, r32, r13, r23, r33)
614 ELSEIF (idtmin(1)==3.AND.ismstr == 12.AND.jcvt==0.AND.ism12_11==0)
THEN
618 . r11, r21, r31, r12, r22, r32, r13, r23, r33,offg0)
622 IF(jale+jlag /= 0)
THEN
634 8 xd2, xd3, xd4, xd5,
635 9 xd6, xd7, xd8, yd1,
636 a yd2, yd3, yd4, yd5,
637 b yd6, yd7, yd8, zd1,
638 c zd2, zd3, zd4, zd5,
639 d zd6, zd7, zd8, nel)
654 1 off, voln, ngl, xd1,
655 2 xd2, xd3, xd4, xd5,
656 3 xd6, xd7, xd8, yd1,
657 4 yd2, yd3, yd4, yd5,
658 5 yd6, yd7, yd8, zd1,
659 6 zd2, zd3, zd4, zd5,
660 7 zd6, zd7, zd8, px1,
661 8 px2, px3, px4, py1,
662 9 py2, py3, py4, pz1,
663 a pz2, pz3, pz4, px1h1,
664 b px1h2, px1h3, px2h1, px2h2,
665 c px2h3, px3h1, px3h2, px3h3,
666 d px4h1, px4h2, px4h3, jac1,
667 e jac2, jac3, jac4, jac5,
668 f jac6, gbuf%SMSTR,gbuf%OFF, nel,
669 g voldp, jhbe, ismstr, jlag)
673 1 voln, deltax, x1, x2,
680 8 n3x, n4x, n5x, n6x,
681 9 n1y, n2y, n3y, n4y,
682 a n5y, n6y, n1z, n2z,
683 b n3z, n4z, n5z, n6z,
684 c nel, mtn, jale, jeul)
686 ELSEIF(jeul /= 0)
THEN
689 1 gbuf%VOL,veul, x1, x2,
696 8 px3, px4, py1, py2,
697 9 py3, py4, pz1, pz2,
698 a pz3, pz4, px5, px6,
699 b px7, px8, py5, py6,
700 c py7, py8, pz5, pz6,
701 d pz7, pz8, px1h1, px1h2,
702 e px1h3, px2h1, px2h2, px2h3,
703 f px3h1, px3h2, px3h3, px4h1,
704 g px4h2, px4h3, voln, deltax,
705 h n1x, n2x, n3x, n4x,
706 i n5x, n6x, n1y, n2y,
707 j n3y, n4y, n5y, n6y,
708 k n1z, n2z, n3z, n4z,
709 l n5z, n6z, nel, nft,
714 1 gbuf%VOL, veul, voln, deltax,
715 2 gbuf%TAG22,ixs, lft, llt,
722 IF(i22_aleul == 1)
THEN
724 1 voln, gbuf%TAG22,ixs, lft,
729 IF(jale+jeul > 0 .AND. iparg1(64)==1)
THEN
733 2 ixs, ale_connect,dxx, dxy,
734 3 dxz, dyx, dyy, dyz,
737 6 wzz, bufmat, nel, nft,
738 7 ipm, nummat, numels+nsvois )
742 1 px1, px2, px3, px4,
743 2 py1, py2, py3, py4,
744 3 pz1, pz2, pz3, pz4,
745 4 px5, px6, px7, px8,
746 5 py5, py6, py7, py8,
747 6 pz5, pz6, pz7, pz8,
748 7 vx1, vx2, vx3, vx4,
749 8 vx5, vx6, vx7, vx8,
750 9 vy1, vy2, vy3, vy4,
751 a vy5, vy6, vy7, vy8,
752 b vz1, vz2, vz3, vz4,
753 c vz5, vz6, vz7, vz8,
754 d dxx, dxy, dxz, dyx,
755 e dyy, dyz, dzx, dzy,
757 g wxx, wyy, wzz, vxr,
759 i nft, ismstr, jeul, jhbe,
762 IF (idtmin(1)==3.AND.ismstr == 12.AND.ism12_11==0.AND.jcvt==0)
THEN
763 CALL sordef12(lft,llt,dxx, dyy, dzz,
765 . r11, r21, r31, r12, r22, r32, r13, r23, r33,gbuf%OFF)
770 1 pm, flux(1,nf1),ale_connect,ixs,
771 2 ipm, bufmat, nel, nft,
772 3 jale, jeul , nummat, numels+nsvois)
774 divde(1:nel) = dt1*(dxx(1:nel)+ dyy(1:nel)+ dzz(1:nel))
777 1 pm, gbuf%VOL, gbuf%RHO, gbuf%EINT,
778 2 divde, flux(1,nf1),flu1(nf1), voln,
779 3 dvol, ngl, mxt, off,
780 4 iparg1(64), gbuf%TAG22, voldp, lbuf%VOL0DP,
781 5 amu, gbuf%OFF, nel, mtn,
782 6 jale, ismstr, jeul, jlag)
784 IF (ismstr == 12.AND.idtmin(1)==3.AND.ism12_11==0.AND.jcvt==0)
THEN
786 . r11, r21, r31, r12, r22, r32, r13, r23, r33,offg0)
792 1 gbuf%SIG,s1, s2, s3,
794 3 wyy, wzz, nel, mtn,
798 1 gbuf%SMSTR,gbuf%OFF, off, wxx,
799 2 wyy, wzz, nel, ismstr,
803 CALL srmalla3(gbuf%SIG,s1,s2,s3,s4,s5,s6,
807 1 gbuf%SMSTR,gbuf%OFF, wxx, wyy,
808 2 wzz, r11, r12, r13,
809 3 r21, r22, r23, r31,
810 4 r32, r33, nel, ismstr)
813 IF (ismstr <= 3.OR.(ismstr==4.AND.jlag>0))
THEN
816 IF (jcvt /= 0.AND.isorth/=0 )
THEN
818 1 gbuf%OFF, gbuf%SMSTR,x0, y0,
822 1 gbuf%OFF, gbuf%SMSTR,xd1, xd2,
824 3 xd7, xd8, yd1, yd2,
825 4 yd3, yd4, yd5, yd6,
826 5 yd7, yd8, zd1, zd2,
827 6 zd3, zd4, zd5, zd6,
835 tempel(i) = one_over_8 *( temp(nc1(i)) + temp(nc2(i))
836 . + temp(nc3(i)) + temp(nc4(i))
837 . + temp(nc5(i)) + temp(nc6(i))
838 . + temp(nc7(i)) + temp(nc8(i)))
846 l_nloc = nloc_dmg%L_NLOC
847 dnl => nloc_dmg%DNL(1:l_nloc)
852 DO j = 1,elbuf_tab(ng)%NLOCS%NL_ISOLNOD(i)
853 inod(j) = nloc_dmg%IDXI(elbuf_tab(ng)%NLOCS%NL_SOLNOD(j,i))
854 ipos(j) = nloc_dmg%POSI(inod(j))
858 nl_nbnod = elbuf_tab(ng)%NLOCS%NL_ISOLNOD(i)
859 DO j = 1, elbuf_tab(ng)%NLOCS%NL_ISOLNOD(i)
860 var_reg(i) = var_reg(i) + dnl(ipos(j))/nl_nbnod
866 IF (jale == 3 .AND. jlag > 0)
THEN
872 . ixs ,ale_connect ,vf ,afglob,
874 . nc1 ,nc2 ,nc3 ,nc4 ,nc5 ,nc6 ,
875 . nc7 ,nc8 ,fx1 ,fx2 ,fx3 ,fx4 ,
876 . fx5 ,fx6 ,fx7 ,fx8 ,fy1 ,fy2 ,
877 . fy3 ,fy4 ,fy5 ,fy6 ,fy7 ,fy8 ,
878 . fz1 ,fz2 ,fz3 ,fz4 ,fz5 ,fz6 ,
879 . fz7 ,fz8 ,phi1 ,phi2 ,flux0 ,flu01 ,
880 . fvx1 ,fvx2 ,fvx3 ,fvx4 ,fvx5 ,fvx6 ,
881 . fvx7 ,fvx8 ,fvy1 ,fvy2 ,fvy3 ,fvy4 ,
882 . fvy5 ,fvy6 ,fvy7 ,fvy8 ,fvz1 ,fvz2 ,
883 . fvz3 ,fvz4 ,fvz5 ,fvz6 ,fvz7 ,fvz8 ,
884 . fvdx1 ,fvdx2 ,fvdx3 ,fvdx4 ,fvdx5 ,fvdx6 ,
885 . fvdx7 ,fvdx8 ,fvdy1 ,fvdy2 ,fvdy3 ,fvdy4 ,
886 . fvdy5 ,fvdy6 ,fvdy7 ,fvdy8 ,fvdz1 ,fvdz2 ,
887 . fvdz3 ,fvdz4 ,fvdz5 ,fvdz6 ,fvdz7 ,fvdz8 ,
888 . fvdx ,fvdy ,fvdz ,fvd2 ,
889 . vx1 ,vx2 ,vx3 ,vx4 ,vx5 ,vx6 ,
890 . vx7 ,vx8 ,vy1 ,vy2 ,vy3 ,vy4 ,
891 . vy5 ,vy6 ,vy7 ,vy8 ,vz1 ,vz2 ,
892 . vz3 ,vz4 ,vz5 ,vz6 ,vz7 ,vz8 ,
893 . por ,icontact ,ifoam)
896 1 off, fvoln, ngl, fx1,
897 2 fx2, fx3, fx4, fx5,
898 3 fx6, fx7, fx8, fy1,
899 4 fy2, fy3, fy4, fy5,
900 5 fy6, fy7, fy8, fz1,
901 6 fz2, fz3, fz4, fz5,
902 7 fz6, fz7, fz8, fpx1,
903 8 fpx2, fpx3, fpx4, fpy1,
904 9 fpy2, fpy3, fpy4, fpz1,
905 a fpz2, fpz3, fpz4, fpx1h1,
906 b fpx1h2, fpx1h3, fpx2h1, fpx2h2,
907 c fpx2h3, fpx3h1, fpx3h2, fpx3h3,
908 d fpx4h1, fpx4h2, fpx4h3, nel,
912 1 fvoln, fdeltax, fx1, fx2,
913 2 fx3, fx4, fx5, fx6,
914 3 fx7, fx8, fy1, fy2,
915 4 fy3, fy4, fy5, fy6,
916 5 fy7, fy8, fz1, fz2,
917 6 fz3, fz4, fz5, fz6,
918 7 fz7, fz8, fn1x, fn2x,
919 8 fn3x, fn4x, fn5x, fn6x,
920 9 fn1y, fn2y, fn3y, fn4y,
921 a fn5y, fn6y, fn1z, fn2z,
922 b fn3z, fn4z, fn5z, fn6z,
927 1 fpx1, fpx2, fpx3, fpx4,
928 2 fpy1, fpy2, fpy3, fpy4,
929 3 fpz1, fpz2, fpz3, fpz4,
930 4 fvx1, fvx2, fvx3, fvx4,
931 5 fvx5, fvx6, fvx7, fvx8,
932 6 fvy1, fvy2, fvy3, fvy4,
933 7 fvy5, fvy6, fvy7, fvy8,
934 8 fvz1, fvz2, fvz3, fvz4,
935 9 fvz5, fvz6, fvz7, fvz8,
936 a fdxx, fdxy, fdxz, fdyx,
937 b fdyy, fdyz, fdzx, fdzy,
938 c fdzz, fd4, fd5, fd6,
939 d fwxx, fwyy, fwzz, fvxr,
940 e fvyr, fvzr, fqvis, nel,
944 fvoln(i) =
alpha(i)*fvoln(i)
945 dfe(i,1) = dfe(i,1)*fvoln(i)
946 dfe(i,2) = dfe(i,2)*fvoln(i)
947 dfe(i,3) = dfe(i,3)*fvoln(i)
950 CALL frho3(mbuf%VAR,frho0,fdxx, fdyy, fdzz,
951 . flux0,flu01,fvoln,ngl,mxt,off ,nel)
954 ialefvm_mat = ipm(251,ixs(1,nf1))
955 IF (ialefvm_mat > 1)
THEN
959 2 voln, n1x, n2x, n3x,
960 3 n4x, n5x, n6x, n1y,
961 4 n2y, n3y, n4y, n5y,
962 5 n6y, n1z, n2z, n3z,
963 6 n4z, n5z, n6z, dxx,
968 IF ((imon_mat==1).AND. itask == 0)
CALL startime(timers,35)
978 1 bpreld(3*nel+1),b1, b2, b3,
980 3 wyy, wzz, nel, mtn,
983 CALL boltst(iptr ,bpreld,lbuf%SIG ,tt ,nel ,
984 . npt ,sensors%NSENSOR,sensors%SENSOR_TAB)
989 CALL mmain(timers, output,
990 1 elbuf_tab, ng, pm, geo,
991 2 ale_connect, ixs, iparg,
992 3 v, tf, npf, bufmat,
993 4 sti, x, dt2t, neltst,
994 5 ityptst, offset, nel, w,
995 6 off, ngeo, mxt, ngl,
996 7 voln, vd2, dvol, deltax,
997 8 vis, qvis, cxx, s1,
1001 c wyy, wzz, jac1, jac2,
1002 d jac3, jac4, jac5, jac6,
1003 e vdx, vdy, vdz, muvoid,
1004 f ssp_eq, aire, sigy, et,
1005 g bufvois, lbuf%PLA, r3_free, amu,
1006 h mfxx, mfxy, mfxz, mfyx,
1007 i mfyy, mfyz, mfzx, mfzy,
1008 j mfzz, ipm, gama, fr_wav,
1009 k dxy, dyx, dyz, dzy,
1010 l dzx, dxz, istrain, tempel,
1011 m die, iexpan, ilay, mssa,
1012 n dmels, iptr, ipts, iptt,
1013 o table, fvd2, fdeltax, fcxx,
1014 p fqvis, iparg1, igeo, conde,
1015 q itask, nloc_dmg, var_reg, mat_elem,
1016 r h3d_strain, jplasol, jsph, sz_bufvois,
1017 t snpc, stf, sbufmat, glob_therm,
1018 . svis, sz_ix, iresp,
1019 . n2d, th_strain, ngroup, tt,
1020 . dt1, ntable, numelq, nummat,
1021 . numgeo, numnod, numels,
1022 . idel7nok, idtmin, maxfunc,
1023 . imon_mat, userl_avail, impl_s,
1024 . idyna, dt , fheat ,sensors)
1026 IF (ismstr == 12.AND.idtmin(1)==3)
THEN
1027 IF (ism12_11==0.AND.jcvt==0)
THEN
1029 . r11, r12, r13, r21, r22, r23, r31, r32, r33,offg0)
1031 IF (istrain == 1)
THEN
1032 CALL sordef12(lft,llt,dxx, dxy, dxz,
1034 . r11, r12, r13, r21, r22, r23, r31, r32, r33,offg0)
1039 IF (istrain == 1)
THEN
1042 1 dxx, dyy, dzz, d4,
1043 2 d5, d6, lbuf%STRA,wxx,
1044 3 wyy, wzz, off, nel,
1047 IF ((imon_mat==1).AND. itask == 0)
CALL stoptime(timers,35)
1058 CALL sgeodel3(ngl,gbuf%OFF,voln,deltax,gbuf%VOL,geo(1,ngeo(1)),l_max,dt,nel
1065 1 ngl, gbuf%OFF,voln, deltax,
1066 2 gbuf%VOL,itet, nel, ismstr,dt )
1067 IF (ismstr == 12.AND.idtmin(1)==3)
THEN
1069 1 gbuf%OFF, offg0, gbuf%SMSTR,x,
1070 2 xdp, nc1, nc2, nc3,
1071 3 nc4, nc5, nc6, nc7,
1073 IF (ism12_11>0 .AND. isorth == 0)
THEN
1075 . nc1 ,nc2 ,nc3 ,nc4 ,nc5 ,nc6 ,nc7 ,nc8 ,
1076 . gbuf%JAC_I,gbuf%SIG,lbuf%SIGL ,nel )
1080 IF (jlag+jale+jeul == 0)
THEN
1083 IF (iparg1(64) == 1)
THEN
1084 eint => elbuf_tab(ng)%GBUF%EINS(1:nel)
1086 eint => elbuf_tab(ng)%GBUF%EINT(1:nel)
1091 imat = ixs(1,lft+nft)
1092 ialefvm_flg = ipm(251,imat)
1093 IF(ialefvm_flg>=2)ifvm22 = 1
1094 CALL sbilan(partsav,eint,gbuf%RHO,gbuf%RK,gbuf%VOL,
1095 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
1096 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
1097 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
1098 . voln,iparts,gresav,grth,igrth, gbuf%OFF,
1099 . iexpan,gbuf%EINTTH,gbuf%FILL,gbuf%MOM,nel,ifvm22,
1100 . x1, x2, x3, x4, x5, x6, x7, x8,
1101 . y1, y2, y3, y4, y5, y6, y7, y8,
1102 . z1, z2, z3, z4, z5, z6, z7, z8,
1103 . itask,iparg1,sensors,gbuf%G_WPLA,gbuf%WPLA)
1105 CALL srbilan(partsav,eint,gbuf%RHO,gbuf%RK,gbuf%VOL,
1106 . vgxa, vgya, vgza, vga2, voln,iparts,
1107 . gresav,grth,igrth,gbuf%OFF,iexpan,gbuf%EINTTH,
1108 . gbuf%FILL,xgxa, xgya, xgza,
1109 . xgxa2,xgya2,xgza2,xgxya,xgyza,xgzxa,itask,iparg1,sensors,
1110 . nel,gbuf%G_WPLA,gbuf%WPLA)
1117 IF (jale == 3 .AND. jlag == 1 .AND.
ale%GLOBAL%INCOMP == 0)
THEN
1120 1 msf, mbuf%VAR,fvoln, nc1,
1121 2 nc2, nc3, nc4, nc5,
1122 3 nc6, nc7, nc8, msnf,
1126 1 fskym, mbuf%VAR,fvoln, iads,
1129 ELSEIF (jale+jeul > 0 .AND.
ale%GLOBAL%INCOMP == 0)
THEN
1132 1 ms, gbuf%RHO, veul(lveul*nft+44),gbuf%TAG22,
1133 2 voln, nc1, nc2, nc3,
1134 3 nc4, nc5, nc6, nc7,
1135 4 nc8, msnf, nvc, off,
1139 1 fskym, gbuf%RHO, veul(lveul*nft+44),gbuf%TAG22,
1140 2 voln, iads, off, ixs,
1145 ialefvm_mat = ipm(251,ixs(1,nf1))
1147 IF(ialefvm_mat > 1)ifvm_skip=1
1153 IF(
ale%GRID%NWALE == 7 .AND. jale == 1)
THEN
1159 elem_mass = gbuf%RHO(i)*gbuf%VOL(i)
1160 sum_eps(1) = sum_eps(1) + elem_mass*dxx(i)
1161 sum_eps(2) = sum_eps(2) + elem_mass*dyy(i)
1162 sum_eps(3) = sum_eps(3) + elem_mass*dzz(i)
1163 sum_eps(4) = sum_eps(4) + elem_mass*dxy(i)
1164 sum_eps(5) = sum_eps(5) + elem_mass*dxz(i)
1165 sum_eps(6) = sum_eps(6) + elem_mass*dyz(i)
1166 sum_eps(7) = sum_eps(7) + elem_mass*dyx(i)
1167 sum_eps(8) = sum_eps(8) + elem_mass*dzx(i)
1168 sum_eps(9) = sum_eps(9) + elem_mass*dzy(i)
1169 sum_m = sum_m + elem_mass
1170 sum_vol = sum_vol + gbuf%VOL(i)
1172#include "lockon.inc"
1173 ale%GRID%flow_tracking_data%EP(1) =
ale%GRID%flow_tracking_data%EP(1) + sum_eps(1)
1174 ale%GRID%flow_tracking_data%EP(2) =
ale%GRID%flow_tracking_data%EP(2) + sum_eps(2)
1175 ale%GRID%flow_tracking_data%EP(3) =
ale%GRID%flow_tracking_data%EP(3) + sum_eps(3)
1176 ale%GRID%flow_tracking_data%EP(4) =
ale%GRID%flow_tracking_data%EP(4) + sum_eps(4)
1177 ale%GRID%flow_tracking_data%EP(5) =
ale%GRID%flow_tracking_data%EP(5) + sum_eps(5)
1178 ale%GRID%flow_tracking_data%EP(6) =
ale%GRID%flow_tracking_data%EP(6) + sum_eps(6)
1179 ale%GRID%flow_tracking_data%EP(7) =
ale%GRID%flow_tracking_data%EP(7) + sum_eps(7)
1180 ale%GRID%flow_tracking_data%EP(8) =
ale%GRID%flow_tracking_data%EP(8) + sum_eps(8)
1181 ale%GRID%flow_tracking_data%EP(9) =
ale%GRID%flow_tracking_data%EP(9) + sum_eps(9)
1182 ale%GRID%flow_tracking_data%SUM_M =
ale%GRID%flow_tracking_data%SUM_M + sum_m
1183 ale%GRID%flow_tracking_data%SUM_VOL =
ale%GRID%flow_tracking_data%SUM_VOL + sum_vol
1184 ale%GRID%flow_tracking_data%NUM_ELEM_ALE =
ale%GRID%flow_tracking_data%NUM_ELEM_ALE + num_elem_ale
1186#include "lockoff.inc"
1195 3 vx6, vx7, vx8, vy1,
1196 4 vy2, vy3, vy4, vy5,
1197 5 vy6, vy7, vy8, vz1,
1198 6 vz2, vz3, vz4, vz5
1199 7 vz6, vz7, vz8, f11,
1200 8 f21, f31, f12, f22,
1201 9 f32, f13, f23, f33,
1202 a f14, f24, f34, f15,
1203 b f25, f35, f16, f26,
1204 c f36, f17, f27, f37,
1205 d f18, f28, f38, px1h1,
1206 e px1h2, px1h3, px2h1, px2h2,
1207 f px2h3, px3h1, px3h2, px3h3,
1208 g px4h1, px4h2, px4h3, voln,
1209 i gbuf%HOURG,partsav,iparts, nft,
1210 j mtn, jlag, eani , ngeo ,
1211 k ivector ,dt1 , mxt, geo,
1212 l nel, isctl, sti, cxx )
1215 1 pm, gbuf%RHO, off, vx1,
1216 2 vx2, vx3, vx4, vx5,
1217 3 vx6, vx7, vx8, vy1,
1218 4 vy2, vy3, vy4, vy5,
1219 5 vy6, vy7, vy8, vz1,
1220 6 vz2, vz3, vz4, vz5,
1221 7 vz6, vz7, vz8, f11,
1222 8 f21, f31, f12, f22,
1223 9 f32, f13, f23, f33,
1224 a f14, f24, f34, f15,
1225 b f25, f35, f16, f26,
1226 c f36, f17, f27, f37,
1227 d f18, f28, f38, px1h1,
1228 e px1h2, px1h3, px2h1, px2h2,
1229 f px2h3, px3h1, px3h2, px3h3,
1230 g px4h1, px4h2, px4h3, voln,
1231 h mxt, cxx, vis, vd2,
1232 i deltax, eani, ngeo, geo,
1233 j partsav, iparts, gbuf%OFF, gbuf%VOL,
1234 k iparg1, ifvm_skip,nel, nft,
1235 l mtn, ismstr, jlag, jhbe)
1240 1 pm, mbuf%VAR,off, fvx1,
1241 2 fvx2, fvx3, fvx4, fvx5,
1242 3 fvx6, fvx7, fvx8, fvy1,
1243 4 fvy2, fvy3, fvy4, fvy5,
1244 5 fvy6, fvy7, fvy8, fvz1,
1245 6 fvz2, fvz3, fvz4, fvz5,
1246 7 fvz6, fvz7, fvz8, ff11,
1247 8 ff21, ff31, ff12, ff22,
1248 9 ff32, ff13, ff23, ff33,
1249 a ff14, ff24, ff34, ff15,
1250 b ff25, ff35, ff16, ff26,
1251 c ff36, ff17, ff27, ff37,
1252 d ff18, ff28, ff38, fpx1h1,
1253 e fpx1h2, fpx1h3, fpx2h1, fpx2h2,
1254 f fpx2h3, fpx3h1, fpx3h2, fpx3h3,
1255 g fpx4h1, fpx4h2, fpx4h3, fvoln,
1256 h mxt, fcxx, vis, fvd2,
1257 i fdeltax, eani, ngeo, geo,
1258 j partsav, iparts, nel, nft,
1265 1 hh, gbuf%RHO,voln, vx1,
1266 2 vx2, vx3, vx4, vx5,
1267 3 vx6, vx7, vx8, vy1,
1268 4 vy2, vy3, vy4, vy5,
1269 5 vy6, vy7, vy8, vz1,
1270 6 vz2, vz3, vz4, vz5,
1271 7 vz6, vz7, vz8, f11,
1272 8 f21, f31, f12, f22,
1273 9 f32, f13, f23, f33,
1274 a f14, f24, f34, f15,
1275 b f25, f35, f16, f26,
1276 c f36, f17, f27, f37,
1277 d f18, f28, f38, nel)
1279 ialefvm_mat = ipm(251,ixs(1,nf1))
1280 IF(ialefvm_mat <= 1)
THEN
1281 IF (jale == 1 .OR. (jeul == 1.AND.integ8 == 0))
THEN
1284 1 pm, gbuf%RHO, voln, x1,
1291 8 vx2, vx3, vx4, vx5,
1293 a vy2, vy3, vy4, vy5,
1294 b vy6, vy7, vy8, vz1,
1295 c vz2, vz3, vz4, vz5,
1296 d vz6, vz7, vz8, f11,
1297 e f21, f31, f12, f22,
1298 f f32, f13, f23, f33,
1299 g f14, f24, f34, f15,
1300 h f25, f35, f16, f26,
1301 i f36, f17, f27, f37,
1302 j f18, f28, f38, px1,
1303 k px2, px3, px4, py1,
1304 l py2, py3, py4, pz1,
1305 m pz2, pz3, pz4, dxx,
1306 n dxy, dxz, dyx, dyy,
1307 o dyz, dzx, dzy, dzz,
1308 p vdx1, vdx2, vdx3, vdx4,
1309 q vdx5, vdx6, vdx7, vdx8,
1310 r vdy1, vdy2, vdy3, vdy4,
1311 s vdy5, vdy6, vdy7, vdy8,
1312 t vdz1, vdz2, vdz3, vdz4,
1313 u vdz5, vdz6, vdz7, vdz8,
1314 v vdx, vdy, vdz, deltax,
1315 w vis, mxt, qmv, bufmat,
1316 x iparg1, ixs, gbuf%TAG22,nc1,
1317 y nc2, nc3, nc4, nc5,
1318 z nc6, nc7, nc8, nale,
1319 1 nel, nft, mtn, ipm)
1321 ELSEIF (jeul == 1 .AND. integ8 == 1)
THEN
1324 1 pm, gbuf%RHO, veul(lveul*nft+44),f11,
1325 2 f21, f31, f12, f22,
1326 3 f32, f13, f23, f33,
1327 4 f14, f24, f34, f15,
1328 5 f25, f35, f16, f26,
1329 6 f36, f17, f27, f37,
1330 7 f18, f28, f38, px1,
1331 8 px2, px3, px4, py1,
1332 9 py2, py3, py4, pz1,
1333 a pz2, pz3, pz4, px5,
1334 b px6, px7, px8, py5,
1335 c py6, py7, py8, pz5,
1336 d pz6, pz7, pz8, dxx,
1337 e dxy, dxz, dyx, dyy,
1338 f dyz, dzx, dzy, dzz,
1339 g vdx, vdy, vdz, mxt,
1340 h qmv, bufmat, vx1, vx2,
1341 i vx3, vx4, vx5, vx6,
1342 j vx7, vx8, vy1, vy2,
1343 k vy3, vy4, vy5, vy6,
1344 l vy7, vy8, vz1, vz2,
1345 m vz3, vz4, vz5, vz6,
1346 n vz7, vz8, iparg1, nel,
1351 1 f32,f13,f23,f33,f14,
1354 4 f37,f18,f28,f38,gbuf%OFF,
1359 1 pm, mbuf%VAR, fvoln, fx1,
1360 2 fx2, fx3, fx4, fx5,
1361 3 fx6, fx7, fx8, fy1,
1362 4 fy2, fy3, fy4, fy5,
1363 5 fy6, fy7, fy8, fz1,
1364 6 fz2, fz3, fz4, fz5,
1365 7 fz6, fz7, fz8, fvx1,
1366 8 fvx2, fvx3, fvx4, fvx5,
1367 9 fvx6, fvx7, fvx8, fvy1,
1368 a fvy2, fvy3, fvy4, fvy5,
1369 b fvy6, fvy7, fvy8, fvz1,
1370 c fvz2, fvz3, fvz4, fvz5,
1371 d fvz6, fvz7, fvz8, ff11,
1372 e ff21, ff31, ff12, ff22,
1373 f ff32, ff13, ff23, ff33,
1374 g ff14, ff24, ff34, ff15,
1375 h ff25, ff35, ff16, ff26,
1376 i ff36, ff17, ff27, ff37,
1377 j ff18, ff28, ff38, fpx1,
1378 k fpx2, fpx3, fpx4, fpy1,
1379 l fpy2, fpy3, fpy4, fpz1,
1380 m fpz2, fpz3, fpz4, fdxx,
1381 n fdxy, fdxz, fdyx, fdyy,
1382 o fdyz, fdzx, fdzy, fdzz,
1383 p fvdx1, fvdx2, fvdx3, fvdx4,
1384 q fvdx5, fvdx6, fvdx7, fvdx8,
1385 r fvdy1, fvdy2, fvdy3, fvdy4,
1386 s fvdy5, fvdy6, fvdy7, fvdy8,
1387 t fvdz1, fvdz2, fvdz3, fvdz4,
1388 u fvdz5, fvdz6, fvdz7, fvdz8,
1389 v fvdx, fvdy, fvdz, fdeltax,
1390 w vis, mxt, qmv, bufmat,
1392 y nc2, nc3, nc4, nc5,
1393 z nc6, nc7, nc8, nale,
1400 eint => elbuf_tab(ng)%GBUF%EINT(1:nel)
1403 imat = ixs(1,lft+nft)
1404 ialefvm_flg = ipm(251,imat)
1405 IF(ialefvm_flg>=2)ifvm22 = 1
1406 CALL sbilan(partsav,eint,gbuf%RHO,gbuf%RK,gbuf%VOL,
1407 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
1408 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
1409 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
1410 . voln,iparts,gresav,grth,igrth,gbuf%OFF,
1411 . iexpan,gbuf%EINTTH,gbuf%FILL,gbuf%MOM,nel,ifvm22,
1412 . x1, x2, x3, x4, x5, x6, x7, x8,
1413 . y1, y2, y3, y4, y5, y6, y7, y8,
1414 . z1, z2, z3, z4, z5, z6, z7, z8,
1415 . itask,iparg1,sensors,gbuf%G_WPLA,gbuf%WPLA)
1417 CALL srbilan(partsav,eint ,gbuf%RHO,gbuf%RK,gbuf%VOL ,
1418 . vgxa ,vgya ,vgza ,vga2 ,voln ,
1419 . iparts ,gresav ,grth ,igrth ,gbuf%OFF ,
1420 . iexpan ,gbuf%EINTTH,gbuf%FILL,xgxa, xgya, xgza,
1421 . xgxa2,xgya2,xgza2,xgxya,xgyza,xgzxa,itask,iparg1,sensors,
1422 . nel,gbuf%G_WPLA,gbuf%WPLA)
1429 1 gbuf%SIG,px1, px2, px3,
1430 2 px4, py1, py2, py3,
1431 3 py4, pz1, pz2, pz3,
1432 4 pz4, px5, px6, px7,
1433 5 px8, py5, py6, py7,
1434 6 py8, pz5, pz6, pz7,
1435 7 pz8, f11, f21, f31,
1436 8 f12, f22, f32, f13,
1437 9 f23, f33, f14, f24,
1438 a f34, f15, f25, f35,
1439 b f16, f26, f36, f17,
1440 c f27, f37, f18, f28,
1441 d f38, voln, qvis, n1x,
1442 e n2x, n3x, n4x, n5x,
1443 f n6x, n1y, n2y, n3y,
1444 g n4y, n5y, n6y, n1z,
1445 h n2z, n3z, n4z, n5z,
1447 j nel, nft, jale, jeul,
1452 1 gbuf%SIG, lbuf%SIGD,x, nc1,
1453 2 nc2, nc3, nc4, nc5,
1454 3 nc6, nc7, nc8, px1,
1455 4 px2, px3, px4, py1,
1456 5 py2, py3, py4, pz1,
1457 6 pz2, pz3, pz4, px5,
1458 7 px6, px7, px8, py5,
1459 8 py6, py7, py8, pz5,
1460 9 pz6, pz7, pz8, f11,
1461 a f21, f31, f12, f22,
1462 b f32, f13, f23, f33,
1463 c f14, f24, f34, f15,
1464 d f25, f35, f16, f26,
1465 e f36, f17, f27, f37,
1467 g qvis, dr, gbuf%RHO
1468 h mx1, my1, mz1, mx2,
1469 i my2, mz2, mx3, my3,
1470 j mz3, mx4, my4, mz4,
1471 k mx5, my5, mz5, mx6,
1472 l my6, mz6, mx7, my7,
1473 m mz7, mx8, my8, mz8,
1474 n ixs, nel, ismstr, svis)
1483 sigf(i,1) = mbuf%VAR(nbf1 + i)
1484 sigf(i,2) = mbuf%VAR(nbf2 + i)
1485 sigf(i,3) = mbuf%VAR(nbf3 + i)
1491 1 sigf, dfe, fpx1, fpx2,
1492 2 fpx3, fpx4, fpy1, fpy2,
1493 3 fpy3, fpy4, fpz1, fpz2,
1494 4 fpz3, fpz4, ff11, ff21,
1495 5 ff31, ff12, ff22, ff32,
1496 6 ff13, ff23, ff33, ff14,
1497 7 ff24, ff34, ff15, ff25,
1498 8 ff35, ff16, ff26, ff36,
1499 9 ff17, ff27, ff37, ff18,
1500 a ff28, ff38, fvoln, fqvis,
1501 b fn1x, fn2x, fn3x, fn4x,
1502 c fn5x, fn6x, fn1y, fn2y,
1503 d fn3y, fn4y, fn5y, fn6y,
1504 e fn1z, fn2z, fn3z, fn4z,
1508 ialefvm_mat = ipm(251,ixs(1,nf1))
1509 IF (ialefvm_mat > 1)
THEN
1513 1 ixs, nv46 , gbuf%SIG, ale_connect,
1514 2 n1x, n2x, n3x, n4x, n5x, n6x,
1515 4 n1y, n2y, n3y, n4y, n5y, n6y,
1516 5 n1z, n2z, n3z, n4z, n5z, n6z,
1531 1 ixs, gbuf%SIG, qvis,
1532 2 n1x, n2x, n3x, n4x,
1533 3 n5x, n6x, n1y, n2y,
1534 4 n3y, n4y, n5y, n6y,
1535 5 n1z, n2z, n3z, n4z,
1537 7 gbuf%RHO, gbuf%VOL,
1538 8 nel, gbuf%MOM, lbuf%SSP, svis)
1541 1 ixs, gbuf%SIG, qvis,
1542 2 n1x, n2x, n3x, n4x, n5x, n6x,
1543 3 n1y, n2y, n3y, n4y, n5y, n6y,
1544 4 n1z, n2z, n3z, n4z, n5z, n6z,
1545 5 ipm, gbuf%RHO, gbuf%VOL, gbuf%TAG22,
1546 6 nel, gbuf%MOM, lbuf%SSP, svis)
1555 1 nloc_dmg ,var_reg ,nel ,off ,
1556 2 voln ,elbuf_tab(ng)%NLOCS,gbuf%VOL ,
1557 3 px1 ,px2 ,px3 ,px4 ,
1558 4 py1 ,py2 ,py3 ,py4 ,
1559 5 pz1 ,pz2 ,pz3 ,pz4 ,
1560 6 mxt(lft) ,itask ,dt2t ,nft )
1567 IF (mat_elem%MAT_PARAM(imat)%HEAT_FLAG == 1)
THEN
1569 1 pm, imat, voln, nc1,
1570 2 nc2, nc3, nc4, nc5,
1571 3 nc6, nc7, nc8, px1,
1572 4 px2, px3, px4, py1,
1573 5 py2, py3, py4, pz1,
1574 6 pz2, pz3, pz4, dt1,
1575 7 temp, tempel, fheat, them,
1576 8 gbuf%OFF,lbuf%OFF,partsav, iparts,
1577 9 gbuf%VOL,nel ,numnod ,glob_therm%THEACCFACT)
1580 1 pm, imat, voln, nc1,
1581 2 nc2, nc3, nc4, nc5,
1582 3 nc6, nc7, nc8, px1,
1583 4 px2, px3, px4, py1,
1584 5 py2, py3, py4, pz1,
1585 6 pz2, pz3, pz4, dt1,
1586 7 temp, tempel, die, them,
1587 8 gbuf%OFF,lbuf%OFF,partsav, iparts,
1588 9 gbuf%VOL,nel ,numnod ,glob_therm%THEACCFACT)
1595 1 r11, r21, r31, r12,
1596 2 r22, r32, r13, r23,
1597 3 r33, f11, f12, f13,
1598 4 f14, f15, f16, f17,
1599 5 f18, f21, f22, f23,
1600 6 f24, f25, f26, f27,
1601 7 f28, f31, f32, f33,
1602 8 f34, f35, f36, f37,
1606 1 r11, r21, r31, r12,
1607 2 r22, r32, r13, r23,
1608 3 r33, ff11, ff12, ff13,
1609 4 ff14, ff15, ff16, ff17,
1610 5 ff18, ff21, ff22, ff23,
1611 6 ff24, ff25, ff26, ff27,
1612 7 ff28, ff31, ff32, ff33,
1613 8 ff34, ff35, ff36, ff37,
1622 1 nel ,sti_c ,npropm ,nummat ,
1623 2 ismstr ,mxt ,istab ,pm ,
1624 3 gbuf%SIG ,gbuf%RHO ,cxx ,off ,
1625 4 gbuf%OFF ,ll ,voln ,fld ,
1628 IF (ismstr == 1.OR.ismstr >= 11.OR.jcvt > 0)
1630 . nc1, nc2, nc3, nc4,
1631 . nc5, nc6, nc7, nc8,
1638 . x, xdp, numnod, nel )
1674 . vx1, vx2, vx3, vx4,
1675 . vx5, vx6, vx7, vx8,
1676 . vy1, vy2, vy3, vy4,
1678 . vz1, vz2, vz3, vz4,
1679 . vz5, vz6, vz7, vz8,
1680 . f11, f12, f13, f14,
1681 . f15, f16, f17, f18,
1682 . f21, f22, f23, f24,
1683 . f25, f26, f27, f28,
1684 . f31, f32, f33, f34,
1685 . f35, f36, f37, f38,
1686 . sti, sti_c, fld , cns2,
1687 . ll , istab, fqmax, nel,
1688 . gbuf%EINT_DISTOR, dt1)
1692 1 gbuf%FILL,sti, f11, f21,
1693 2 f31, f12, f22, f32,
1694 3 f13, f23, f33, f14,
1695 4 f24, f34, f15, f25,
1696 5 f35, f16, f26, f36,
1697 6 f17, f27, f37, f18,
1703 1 gbuf%OFF,a, nc1, nc2,
1704 2 nc3, nc4, nc5, nc6,
1705 3 nc7, nc8, stifn, sti,
1706 4 f11, f21, f31, f12,
1707 5 f22, f32, f13, f23,
1708 6 f33, f14, f24, f34,
1709 7 f15, f25, f35, f16,
1710 8 f26, f36, f17, f27,
1711 9 f37, f18, f28, f38,
1712 a nvc, ar, fr_wave, fr_wav,
1713 b mx1, my1, mz1, mx2,
1714 c my2, mz2, mx3, my3
1716 e mx5, my5, mz5, mx6,
1717 f my6, mz6, mx7, my7,
1718 g mz7, mx8, my8, mz8,
1719 h them, fthe, condn, conde,
1720 i nel, jthe, isrot, ipartsph,glob_therm%NODADT_THERM)
1723 1 gbuf%OFF,sti, fsky, fsky,
1724 2 iads, f11, f21, f31,
1725 3 f12, f22, f32, f13,
1726 4 f23, f33, f14, f24,
1727 5 f34, f15, f25, f35,
1728 6 f16, f26, f36, f17,
1729 7 f27, f37, f18, f28,
1730 8 f38, nc1, nc2, nc3,
1731 9 nc4, nc5, nc6, nc7,
1732 a nc8, ar, fr_wave, fr_wav,
1733 b mx1, my1, mz1, mx2,
1734 c my2, mz2, mx3, my3,
1735 d mz3, mx4, my4, mz4,
1736 e mx5, my5, mz5, mx6,
1737 f my6, mz6, mx7, my7,
1738 g mz7, mx8, my8, mz8,
1739 h them, fthesky, condnsky,conde,
1740 i nel, nft, jthe, isrot,
1741 j ipartsph,glob_therm%NODADT_THERM)
1745 IF(iparit == 0 )
THEN
1747 1 gbuf%OFF,af, nc1, nc2,
1748 2 nc3, nc4, nc5, nc6,
1749 3 nc7, nc8, stifn, sti,
1750 4 ff11, ff21, ff31, ff12,
1751 5 ff22, ff32, ff13, ff23,
1752 6 ff33, ff14, ff24, ff34,
1753 7 ff15, ff25, ff35, ff16,
1754 8 ff26, ff36, ff17, ff27,
1755 9 ff37, ff18, ff28, ff38,
1760 1 gbuf%OFF,sti, ffsky, iads,
1761 2 ff11, ff21, ff31, ff12,
1762 3 ff22, ff32, ff13, ff23,
1763 4 ff33, ff14, ff24, ff34,
1764 5 ff15, ff25, ff35, ff16,
1765 6 ff26, ff36, ff17, ff27,
1766 7 ff37, ff18, ff28, ff38,
1767 8 nc1, nc2, nc3, nc4,
1768 9 nc5, nc6, nc7, nc8,
1773 IF (
ALLOCATED(var_reg))
DEALLOCATE(var_reg)