OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
cbaforc3.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "scr14_c.inc"
#include "scr18_c.inc"
#include "parit_c.inc"
#include "param_c.inc"
#include "timeri_c.inc"
#include "com04_c.inc"
#include "vectorize.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine cbaforc3 (timers, elbuf_str, jft, jlt, nft, npt, ipari, mtn, ipri, ithk, neltst, ityptst, itab, mat_elem, istrain, ipla, tt, dt1, dt2t, pm, geo, partsav, ixc, failwave, bufmat, tf, npf, iadc, x, d, dr, v, vr, f, m, stifn, stifr, fsky, tani, offset, eani, indxof, ipartc, thke, nvc, iofc, ihbe, f11, f12, f13, f14, f21, f22, f23, f24, f31, f32, f33, f34, m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, kfts, ismstr, igeo, group_param, ipm, ifailure, itask, jthe, temp, fthe, fthesky, iexpan, ishplyxfem, ms, in, ms_ply, zi_ply, inod_pxfem, iel_pxfem, iadc_pxfem, gresav, grth, igrth, msc, dmelc, jsms, table, iparg, sensors, msz2, condn, condnsky, isubstack, stack, drape_sh4n, nel, nloc_dmg, vpinch, fpinch, stifpinch, indx_drape, igre, jtur, dt, ncycle, snpc, stf, glob_therm, nxlaymax, idel7nok, userl_avail, maxfunc, sbufmat, ipart, lipart1)

Function/Subroutine Documentation

◆ cbaforc3()

subroutine cbaforc3 ( type(timer_), intent(inout) timers,
type(elbuf_struct_), target elbuf_str,
integer jft,
integer jlt,
integer nft,
integer npt,
integer, dimension(npari,*) ipari,
integer mtn,
integer ipri,
integer ithk,
integer neltst,
integer ityptst,
integer, dimension(*) itab,
type (mat_elem_), intent(inout) mat_elem,
integer istrain,
integer ipla,
tt,
dt1,
dt2t,
pm,
geo,
partsav,
integer, dimension(nixc,*) ixc,
type (failwave_str_) failwave,
bufmat,
tf,
integer, dimension(*) npf,
integer, dimension(4,*) iadc,
x,
d,
dr,
v,
vr,
f,
m,
stifn,
stifr,
fsky,
tani,
integer offset,
eani,
integer, dimension(mvsiz) indxof,
integer, dimension(*) ipartc,
thke,
integer nvc,
integer iofc,
integer ihbe,
f11,
f12,
f13,
f14,
f21,
f22,
f23,
f24,
f31,
f32,
f33,
f34,
m11,
m12,
m13,
m14,
m21,
m22,
m23,
m24,
m31,
m32,
m33,
m34,
integer kfts,
integer ismstr,
integer, dimension(npropgi,*) igeo,
type (group_param_) group_param,
integer, dimension(*) ipm,
integer ifailure,
integer itask,
integer jthe,
temp,
fthe,
fthesky,
integer iexpan,
integer ishplyxfem,
ms,
in,
ms_ply,
zi_ply,
integer, dimension(*) inod_pxfem,
integer, dimension(*) iel_pxfem,
integer, dimension(4,*) iadc_pxfem,
gresav,
integer, dimension(*) grth,
integer, dimension(*) igrth,
msc,
dmelc,
integer jsms,
type(ttable), dimension(*) table,
integer, dimension(*) iparg,
type (sensors_), intent(inout) sensors,
msz2,
condn,
condnsky,
integer isubstack,
type (stack_ply) stack,
type (drape_), dimension(numelc_drape) drape_sh4n,
integer nel,
type (nlocal_str_), target nloc_dmg,
vpinch,
fpinch,
stifpinch,
integer, dimension(scdrape) indx_drape,
integer, intent(in) igre,
integer, intent(in) jtur,
type (dt_), intent(in) dt,
integer, intent(in) ncycle,
integer, intent(in) snpc,
integer, intent(in) stf,
type (glob_therm_), intent(inout) glob_therm,
integer, intent(in) nxlaymax,
integer, intent(inout) idel7nok,
integer, intent(in) userl_avail,
integer, intent(in) maxfunc,
integer, intent(in) sbufmat,
integer, dimension(lipart1, npart), intent(in) ipart,
integer, intent(in) lipart1 )

Definition at line 99 of file cbaforc3.F.

131C-----------------------------------------------
132C M o d u l e s
133C-----------------------------------------------
134 USE timer_mod
135 USE table_mod
136 USE stack_mod
137 USE failwave_mod
138 USE mat_elem_mod
139 USE nlocal_reg_mod
141 USE drape_mod
142 USE sensor_mod
143 USE elbufdef_mod
144 USE dt_mod
145 use glob_therm_mod
146 use dttherm_mod
147 use element_mod , only : nixc
148C-----------------------------------------------
149C I M P L I C I T T Y P E S
150C-----------------------------------------------
151#include "implicit_f.inc"
152C-----------------------------------------------
153C G L O B A L P A R A M E T E R S
154C-----------------------------------------------
155#include "mvsiz_p.inc"
156C-----------------------------------------------
157C C O M M O N B L O C K S
158C-----------------------------------------------
159#include "scr14_c.inc"
160#include "scr18_c.inc"
161#include "parit_c.inc"
162#include "param_c.inc"
163#include "timeri_c.inc"
164#include "com04_c.inc"
165C-----------------------------------------------
166C D U M M Y A R G U M E N T S
167C-----------------------------------------------
168 TYPE(TIMER_), INTENT(INOUT) :: TIMERS
169 INTEGER,INTENT(IN) :: USERL_AVAIL ! Flag for User libraries availability
170 INTEGER,INTENT(IN) :: MAXFUNC ! Maximum number of functions
171 INTEGER,INTENT(INOUT) :: IDEL7NOK ! Element deletion flag for IDEL flag in contact interfaces
172 INTEGER,INTENT(IN) :: SBUFMAT ! size of bufmat
173 INTEGER,INTENT(IN) :: STF ! size of STF
174 INTEGER,INTENT(IN) :: SNPC ! size of NPC
175 INTEGER, INTENT(IN) :: NXLAYMAX
176 INTEGER, INTENT(IN) :: IGRE,JTUR,NCYCLE
177 INTEGER JFT,JLT,NFT,NPT,MTN,IPRI,ITHK,NELTST,
178 . ITYPTST ,ISTRAIN,IPLA ,OFFSET,NVC,
179 . IOFC ,IHBE ,KFTS,ISMSTR,IFAILURE,
180 . IEXPAN, ISHPLYXFEM,ITASK,JTHE,IBID,JSMS,ISUBSTACK,NEL
181 INTEGER IXC(NIXC,*), IADC(4,*), IPARTC(*), NPF(*),IGEO(NPROPGI,*),
182 . IPM(*),INDXOF(MVSIZ),INOD_PXFEM(*),IEL_PXFEM(*),ITAB(*),
183 . IADC_PXFEM(4,*),GRTH(*),IGRTH(*),IPARG(*),IPARI(NPARI,*),
184 . INDX_DRAPE(SCDRAPE)
185C real or real*8
186 my_real
187 . f11(mvsiz), f12(mvsiz), f13(mvsiz), f14(mvsiz),
188 . f21(mvsiz), f22(mvsiz), f23(mvsiz), f24(mvsiz),
189 . f31(mvsiz), f32(mvsiz), f33(mvsiz), f34(mvsiz),
190 . m11(mvsiz), m12(mvsiz), m13(mvsiz), m14(mvsiz),
191 . m21(mvsiz), m22(mvsiz), m23(mvsiz), m24(mvsiz),
192 . m31(mvsiz), m32(mvsiz), m33(mvsiz), m34(mvsiz),
193 . tf(*), pm(npropm,*),geo(npropg,*),partsav(*),
194 . bufmat(*), x(3,*), d(*), dr(*),
195 . v(3,*),vr(3,*),f(3,*),m(3,*),stifn(*),
196 . stifr(*),fsky(*),tani(6,*),eani(*),thke(*),temp(*),
197 . fthe(*),fthesky(*),in(*),ms(*),ms_ply(*), zi_ply(*),
198 . gresav(*), msc(*), dmelc(*),msz2(*),
199 . condn(*),condnsky(*),
200 . fpinch(3,*),stifpinch(*),vpinch(3,*)
201 my_real
202 . tt, dt1, dt2t
203 TYPE(TTABLE) TABLE(*)
204 TYPE(ELBUF_STRUCT_), TARGET :: ELBUF_STR
205 TYPE (STACK_PLY) :: STACK
206 TYPE (FAILWAVE_STR_) :: FAILWAVE
207 TYPE (GROUP_PARAM_) :: GROUP_PARAM
208 TYPE (NLOCAL_STR_), TARGET :: NLOC_DMG
209 TYPE (DRAPE_) :: DRAPE_SH4N(NUMELC_DRAPE)
210 TYPE (MAT_ELEM_),INTENT(INOUT) :: MAT_ELEM
211 TYPE (SENSORS_) ,INTENT(INOUT) :: SENSORS
212 TYPE (DT_) ,INTENT(IN) :: DT
213 type (glob_therm_) ,intent(inout) :: glob_therm
214 integer, intent(in) :: LIPART1
215 INTEGER, DIMENSION(LIPART1, NPART), INTENT(IN) :: IPART
216
217C-----------------------------------------------
218C L O C A L V A R I A B L E S
219C-----------------------------------------------
220 INTEGER
221 . I,J,JG,IR,IS,IT,NPTR,NPTS,NPTT,NLAY,MX,
222 . NPLAT,IDRIL,LENF,LENM,LENS,NNOD,
223 . NG,NPG,PT1,PT2,PT3,PT4,PTF,PTM,PTS,L_DIRA,L_DIRB,
224 . IPPID,JPID,IPTHK,IPPOS,IPMAT,IPMAT_IPLY,MATLY,IFAILWAVE,
225 . J1,J2 ,IPANG,IGTYP,IGMAT,ILAY,NPTTOT,IREP,KK(5),
226 . LENFPINCH,LENMPINCH,LENEPINCHXZ,LENEPINCHYZ,LENEPINCHZZ,
227 . PTFP,PTMP,PTEPXZ,PTEPYZ,PTEPZZ,NPINCH,IDRAPE,ACTIFXFEM,
228 . SEDRAPE,NUMEL_DRAPE
229 INTEGER MAT(MVSIZ), PID(MVSIZ), NGL(MVSIZ),MAT_IPLY(MVSIZ,NPT),
230 . IPLAT(MVSIZ),ISTACK(MVSIZ,NPT),FWAVE_EL(NEL)
231 parameter(npg = 4)
232 parameter(nnod = 4)
233 my_real
234 . rxyz(mvsiz,2*nnod),
235 . vcore(mvsiz,3*nnod),vxyz(mvsiz,3*nnod),off(mvsiz),
236 . vqn(mvsiz,9*nnod),vqg(mvsiz,9*nnod),vnrm(mvsiz,3*nnod),
237 . bm(mvsiz,9*nnod),bmf(mvsiz,9*nnod),bf(mvsiz,6*nnod),
238 . bc(mvsiz,10*nnod),vq(mvsiz,9),vjfi(mvsiz,6,4),
239 . tc(mvsiz,4),jac(mvsiz,npg),hx(mvsiz,npg),hy(mvsiz,npg),
240 . veta(4,npg),vksi(4,npg),vf(mvsiz,12),vm(mvsiz,8),
241 . vastn(mvsiz,4*nnod),area(mvsiz),
242 . lc(mvsiz),vdef(mvsiz,8),cdet(mvsiz),thk2(mvsiz),
243 . exx(mvsiz) ,eyy(mvsiz) ,exy(mvsiz) ,exz(mvsiz) ,eyz(mvsiz),
244 . kxx(mvsiz) ,kyy(mvsiz) ,kxy(mvsiz) ,sigy(mvsiz),
245 . dt1c(mvsiz),ssp(mvsiz) ,viscmx(mvsiz),rho(mvsiz) ,
246 . nu(mvsiz) ,g(mvsiz) ,a11(mvsiz) ,a12(mvsiz) ,vol0(mvsiz),
247 . thk0(mvsiz),sti(mvsiz) ,stir(mvsiz) ,shf(mvsiz) ,
248 . gs(mvsiz) ,alpe(mvsiz),ym(mvsiz) ,bid,zcfac(mvsiz,2),
249 . x13(mvsiz) ,y13(mvsiz), x24(mvsiz) ,amu(mvsiz),
250 . dd(mvsiz,6),volg(mvsiz),y24(mvsiz),facn(mvsiz,2),die(mvsiz),
251 . tempel(mvsiz),them(mvsiz,4),
252 . zl(mvsiz),ply_f(mvsiz,5, npt), ply_vxyz(mvsiz,3*nnod,npt),
253 . fly11(mvsiz, npt), fly21(mvsiz, npt), fly31(mvsiz, npt),
254 . fly12(mvsiz, npt), fly22(mvsiz, npt), fly32(mvsiz, npt),
255 . fly13(mvsiz, npt), fly23(mvsiz, npt), fly33(mvsiz, npt),
256 . fly14(mvsiz, npt), fly24(mvsiz, npt), fly34(mvsiz, npt),
257 . ply_exx(mvsiz,npt), ply_eyy(mvsiz,npt), ply_exy(mvsiz,npt),
258 . ply_ezx(mvsiz,npt), ply_eyz(mvsiz,npt), ply_fn(mvsiz,12,npt),
259 . thkly(mvsiz,npt),posly(mvsiz,npt),
260 . del_ply(mvsiz,12,npt),th_iply(mvsiz,npt),
261 . sig_iply(mvsiz,3,npt),vni(4,4),
262 . vfi(mvsiz,12,npt),delg_ply(mvsiz,3,npt),
263 . r11(mvsiz),r12(mvsiz),r13(mvsiz),
264 . r21(mvsiz),r22(mvsiz),r23(mvsiz),
265 . r31(mvsiz),r32(mvsiz),r33(mvsiz),
266 . a11_ply(mvsiz,npt),a11_iply(mvsiz,npt),sti_ply(mvsiz,npt),
267 . offi(mvsiz,npt),rlz(mvsiz,nnod),vrlz(mvsiz),
268 . bm0rz(mvsiz,4,nnod),bmkrz(mvsiz,4,nnod),bmerz(mvsiz,4,nnod),
269 . bmrz(mvsiz,3,nnod),brz(mvsiz,4,nnod),krz(mvsiz),
270 . vmz(mvsiz,nnod),ux1(mvsiz),ux2(mvsiz),ux3(mvsiz),ux4(mvsiz),
271 . uy1(mvsiz),uy2(mvsiz),uy3(mvsiz),uy4(mvsiz),
272 . conde(mvsiz),a11r(mvsiz),
273 . vl1(mvsiz,3),vl2(mvsiz,3),vl3(mvsiz,3),vl4(mvsiz,3),
274 . xl2(mvsiz),xl3(mvsiz),xl4(mvsiz),yl2(mvsiz),yl3(mvsiz),yl4(mvsiz),
275 . vdefpinch(mvsiz,3), vpinchxyz(mvsiz,nnod), bcp(mvsiz,2*nnod),
276 . bp(mvsiz,nnod), tnpg(mvsiz,nnod,npg), vfpinch(mvsiz,4), facp(mvsiz),
277 . e, anu, a11pinch, fp(mvsiz,3,4),
278 . vpincht1(mvsiz,nnod),vpincht2(mvsiz,nnod),dbetadxy(mvsiz,3),
279 . bpinchdamp(mvsiz,8),vfpinchdampx(mvsiz,4),vfpinchdampy(mvsiz,4),
280 . ezzavg(mvsiz),areapinch(mvsiz),zla(mvsiz)
281 INTEGER
282 . NPLATT,PTW ,LENW,PTT,IPOUT,IMAT
283 INTEGER IPLATT(MVSIZ)
284 my_real
285 . vcoret(mvsiz,3*nnod),bmt(mvsiz,9*nnod),vqgt(mvsiz,9*nnod),
286 . vjfit(mvsiz,6,4),jact(mvsiz,npg),hxt(mvsiz,npg),hyt(mvsiz,npg),
287 . areat(mvsiz),x13t(mvsiz) ,y13t(mvsiz), x24t(mvsiz),y24t(mvsiz),
288 . bm0rzt(mvsiz,4,nnod),bmkrzt(mvsiz,4,nnod),bmerzt(mvsiz,4,nnod),
289 . bmrzt(mvsiz,4,nnod),f_def(mvsiz,8,npg),
290 . x1g(mvsiz), x2g(mvsiz), x3g(mvsiz), x4g(mvsiz),
291 . y1g(mvsiz), y2g(mvsiz), y3g(mvsiz), y4g(mvsiz),
292 . z1g(mvsiz), z2g(mvsiz), z3g(mvsiz), z4g(mvsiz),
293 . vrl1(mvsiz,3),vrl2(mvsiz,3),vrl3(mvsiz,3),vrl4(mvsiz,3),
294 . uxyz(mvsiz,12),axyz(mvsiz,4),wxy(mvsiz),xlcore(mvsiz,2*(nnod-1))
295 my_real , DIMENSION(NEL) :: zoffset
296! variables for heat transfer
297 my_real, dimension(mvsiz) :: fheat
298 my_real, dimension(mvsiz) :: epsd_pg,epsd_glob
299 my_real, dimension(mvsiz) :: ssp_eq,ssp_max
300 my_real :: dtinv,asrate,eps_m2,eps_k2
301!
302C-----------------------------------------------
303 INTEGER, DIMENSION(NEL) :: OFFLY
304 my_real, DIMENSION(:) ,POINTER :: dir_a, dir_b, dadv
305 my_real, ALLOCATABLE, DIMENSION(:) :: dir1_crk,dir2_crk,dira,dirb
306 my_real
307 . ezzpg(mvsiz,4)
308 TARGET :: dira,dirb
309 INTEGER :: NDDL, NC1(MVSIZ), NC2(MVSIZ), NC3(MVSIZ), NC4(MVSIZ),
310 . INLOC
311 my_real,
312 . DIMENSION(:,:), ALLOCATABLE :: var_reg
313C-------------------------------------
314
315
316 TYPE(G_BUFEL_) ,POINTER :: GBUF
317
318 TYPE(L_BUFEL_DIR_) ,POINTER :: LBUF_DIR
319 TYPE(PINCH_LOCAL_STRUCT_) :: PINCH_LOCAL
320 INTEGER SDIR_A ! Size of DIR_A
321 INTEGER SDIR_B ! Size of DIR_B
322C=======================================================================
323C INITIALISATION
324C--------------------------
325 istack = 0
326 gbuf => elbuf_str%GBUF
327 idrape = elbuf_str%IDRAPE
328 ibid = 0
329 bid = zero
330 idril = iparg(41)
331 irep = iparg(35)
332 inloc = iparg(78)
333 actifxfem = iparg(70)
334 npinch= iparg(90)
335 sedrape = scdrape
336 numel_drape = numelc_drape
337 tempel(:) = zero
338 fheat(: ) = zero
339 imat = mat(1)
340
341C
342 nlay = elbuf_str%NLAY
343 nptr = elbuf_str%NPTR
344 npts = elbuf_str%NPTS
345cc NPT = MAX(NLAY,NPTT) --> set to = IPARG(6) , keeping it original
346!
347 DO j=1,5
348 kk(j) = nel*(j-1)
349 ENDDO
350!
351C to allow for NPT = 0 (global LAW_3
352 DO i=jft,jlt
353 mat(i) = ixc(1,i)
354 pid(i) = ixc(6,i)
355 ngl(i) = ixc(7,i)
356 ENDDO
357C
358 npttot = 0
359 DO ilay=1,nlay
360 npttot = npttot + elbuf_str%BUFLY(ilay)%NPTT
361 ENDDO
362 IF (npt == 0) npttot = npt ! compatibility with global integration
363C
364!-------------------------------------------
365! array for the non-local variable
366 nddl = npttot
367 ALLOCATE(var_reg(nel,nddl))
368!-------------------------------------------
369C
370c--------------------------------------------
371c Front wave
372c--------------------------------------------
373 ifailwave = iparg(79)
374 IF (ifailwave > 0) THEN
375 fwave_el(:) = zero
376 offly(:) = elbuf_str%BUFLY(1)%OFF(:)
377 DO i=2,nlay
378 DO j=1,nel
379 offly(j) = max(offly(j), elbuf_str%BUFLY(i)%OFF(j))
380 ENDDO
381 ENDDO
382 dadv => gbuf%DMG
383 CALL set_failwave_sh4n(failwave ,fwave_el ,dadv ,
384 . nel ,ixc ,itab ,ngl ,offly )
385 ENDIF
386c-------------------------------------
387 l_dira = elbuf_str%BUFLY(1)%LY_DIRA
388 l_dirb = elbuf_str%BUFLY(1)%LY_DIRB
389 igtyp = igeo(11,pid(1))
390 IF(idrape > 0 .AND. (igtyp == 51 .OR. igtyp == 52)) THEN
391 ALLOCATE(dira(npttot*nel*l_dira))
392 ALLOCATE(dirb(npttot*nel*l_dirb))
393 dira = zero
394 dirb = zero
395 IF (l_dira == 0) THEN
396 CONTINUE
397 ELSEIF (irep == 0) THEN
398 npttot = 0
399 DO ilay=1,nlay
400 nptt = elbuf_str%BUFLY(ilay)%NPTT
401 DO it=1,nptt
402 j = npttot + it
403 lbuf_dir => elbuf_str%BUFLY(ilay)%LBUF_DIR(it)
404 j1 = 1+(j-1)*l_dira*nel
405 j2 = j*l_dira*nel
406 dira(j1:j2) = lbuf_dir%DIRA(1:nel*l_dira)
407 ENDDO
408 npttot = npttot + nptt
409 ENDDO
410 ENDIF
411 sdir_a = npttot*nel*l_dira
412 sdir_b = npttot*nel*l_dirb
413 dir_a => dira(1:npttot*nel*l_dira)
414 dir_b => dirb(1:npttot*nel*l_dirb)
415 ELSE ! idrape
416 sdir_a=nlay*nel*l_dira
417 sdir_b=nlay*nel*l_dirb
418 ALLOCATE(dira(nlay*nel*l_dira))
419 ALLOCATE(dirb(nlay*nel*l_dirb))
420 dira=zero
421 dirb=zero
422 IF (l_dira == 0) THEN
423 CONTINUE
424 ELSEIF (irep == 0) THEN
425 DO j=1,nlay
426 j1 = 1+(j-1)*l_dira*nel
427 j2 = j*l_dira*nel
428 dira(j1:j2) = elbuf_str%BUFLY(j)%DIRA(1:nel*l_dira)
429 ENDDO
430 ENDIF
431 sdir_a=nlay*nel*l_dira
432 sdir_b=nlay*nel*l_dirb
433 dir_a => dira(1:nlay*nel*l_dira)
434 dir_b => dirb(1:nlay*nel*l_dirb)
435 ENDIF ! IDRAPE
436c-------------------------------------
437 ALLOCATE(dir1_crk(0))
438 ALLOCATE(dir2_crk(0))
439c-------------------------------------
440 DO i=jft,jlt
441 DO j=1,8
442 vm(i,j) = zero
443 ENDDO
444 DO j=1,12
445 vf(i,j) = zero
446 ENDDO
447 DO j=1,4
448 vfpinch(i,j) = zero
449 ezzpg(i,j) = zero
450 vfpinchdampx(i,j) = zero
451 vfpinchdampy(i,j) = zero
452 ENDDO
453 alpe(i) = one
454 a11r(i) = zero
455 ENDDO
456C
457c CALL CMATBUF3(IGTYP,MTN,NPT,NEL,NBM_S,IPM,MAT,
458c . IGEO, PID,ISUBSTACK)
459 igtyp = igeo(11,ixc(6,1))
460 igmat = igeo(98 ,ixc(6,1))
461C
462C initialization for thermal ---
463 DO i=jft,jlt
464 them(i,1) = zero
465 them(i,2) = zero
466 them(i,3) = zero
467 them(i,4) = zero
468 ENDDO
469C
470 IF(npinch > 0) THEN
471 ALLOCATE(pinch_local%EPINCHXZ(mvsiz))
472 ALLOCATE(pinch_local%EPINCHYZ(mvsiz))
473 ALLOCATE(pinch_local%EPINCHZZ(mvsiz))
474 ENDIF
475C
476 ssp_max = zero
477C--------------------------
478C CALCULS PRELIMINAIRES
479C--------------------------
480 CALL cbacoor(elbuf_str ,jft,jlt,x,v,
481 . vr,ixc,pm,gbuf%OFF,lc,
482 1 area,vxyz, rxyz,vcore,jac,hx,hy,vksi,veta,
483 2 vqn,vqg,vq,vjfi,vnrm,vastn,nplat,iplat,
484 3 x13 ,x24 ,y13,y24,off, dd,nlay,
485 4 irep,npttot,ismstr,nel ,idril ,
486 5 gbuf%SMSTR,dir_a,dir_b,facn,zl,
487 6 r11 ,r12 ,r13 ,r21 ,r22 ,r23 ,
488 7 r31 ,r32 ,r33 ,inod_pxfem ,rlz ,
489 8 thke ,ishplyxfem ,ux1 ,ux2 ,ux3 ,
490 9 ux4 ,uy1 ,uy2 ,uy3 ,uy4 ,
491 a vl1 ,vl2 ,vl3 ,vl4 ,xl2 ,
492 b xl3 ,xl4 ,yl2 ,yl3 ,yl4 ,xlcore,npinch)
493C
494 CALL cncoef3(jft ,jlt ,pm ,mat ,geo ,
495 2 pid ,off ,area ,shf ,thk0 ,
496 3 thk2 ,nu ,g ,ym ,
497 4 a11 ,a12 ,gbuf%THK,thke ,ssp ,
498 5 rho ,volg ,gs ,mtn ,ithk ,
499 6 npttot ,dt1c ,dt1 ,ihbe ,amu ,
500 7 krz ,igeo ,a11r ,isubstack, stack%PM,
501 8 nel ,zoffset)
502C
503 IF(npinch > 0) THEN
504 CALL cbacoorpinch(
505 1 tnpg ,vpinchxyz ,vpinch ,
506 2 vq ,vqn ,ixc ,jft ,jlt ,
507 3 nplat ,iplat ,gbuf%THK ,dt1c ,
508 4 facp ,lc ,
509 5 vpincht1,vpincht2)
510
511 DO i=jft,jlt
512 ezzavg(i) = fourth*(vpinchxyz(i,1)+vpinchxyz(i,2)+vpinchxyz(i,3)+vpinchxyz(i,4))*dt1c(i)
513 areapinch(i) = area(i)
514 ENDDO
515 ENDIF
516C
517 IF(ishplyxfem > 0) THEN
518 DO j=1,npt
519 DO i=jft,jlt
520 ply_fn(i,1:12,j) = zero
521 vfi(i,1:12,j) = zero
522 offi(i,j) = one
523 ENDDO
524 ENDDO
525 ippid = 2
526 ipmat = ippid + npt
527 ipmat_iply = ipmat + npt
528 ipang = 1
529 ipthk = ipang + npt
530 ippos = ipthk + npt
531 DO j=1,npt
532 DO i=jft,jlt
533 thkly(i,j) = stack%GEO(ipthk + j ,isubstack)*thk0(i)
534 matly = stack%IGEO(ipmat + j ,isubstack)
535 jpid = stack%IGEO(ippid + j, isubstack)
536 istack(i,j) = igeo(102 ,jpid)
537 posly(i,j) = stack%GEO(ippos + j ,isubstack)*thk0(i)
538 a11_ply(i,j) = pm(24,matly)
539 ENDDO
540 ENDDO
541 DO j=1,npt -1
542 DO i=jft,jlt
543 th_iply(i,j) = half*(thkly(i,j) + thkly(i,j +1 ))
544 mat_iply(i,j) = stack%IGEO(ipmat_iply + j ,isubstack)
545 ENDDO
546 ENDDO
547C
548 CALL cbavit_ply(jft,jlt,ixc,gbuf%OFF,off,nplat,iplat,npt,
549 1 vcore,dd,zl,vq , ply_vxyz,x13 ,x24 ,
550 2 y13,y24,area ,inod_pxfem ,del_ply,vni,istack,vr)
551
552 ENDIF
553C
554 IF (idril > 0) THEN
555 CALL cbaderirz(jft ,jlt ,area ,x13 ,x24 ,
556 2 y13 ,y24 ,bm0rz,bmkrz,bmerz,
557 3 vcore,nplat,iplat,ismstr)
558 DO i=jft,jlt
559 DO j=1,4
560 vmz(i,j) = zero
561 ENDDO
562 END DO
563 ELSE
564C-------------assumed membrane shear strain-----------------
565 CALL cbadefsh(jft,jlt,x13,x24,y13,y24,bm,vdef,vxyz,nplat,iplat)
566 CALL cbaeners(jft ,jlt ,off ,area ,thk0,
567 . vdef ,gbuf%FOR ,gbuf%EINT ,dt1 ,nel )
568 END IF !(IDRIL > 0) THEN
569C
570 IF(ishplyxfem > 0)
571 . CALL cbadefsh_ply(jft,jlt,npt,nplat,iplat,x13,x24,y13,y24,
572 . ply_vxyz,dt1c ,ply_exy)
573C-----------------------------------------------
574 lenf = nel*gbuf%G_FORPG/npg
575 lenm = nel*gbuf%G_MOMPG/npg
576C
577 IF (npinch > 0) THEN
578 lenfpinch = nel*gbuf%G_FORPGPINCH/npg
579 lenmpinch = nel*gbuf%G_MOMPGPINCH/npg
580 lenepinchxz = nel*gbuf%G_EPGPINCHXZ/npg
581 lenepinchyz = nel*gbuf%G_EPGPINCHYZ/npg
582 lenepinchzz = nel*gbuf%G_EPGPINCHZZ/npg
583 ENDIF
584C
585 lens = nel*gbuf%G_STRPG/npg
586 lenw = nel*gbuf%G_STRWPG/npg
587!-------------------------------------------------------------------
588 IF (ismstr == 10 ) THEN
589!
590 CALL cbacoort(elbuf_str,jft,jlt,x,v,
591 . vr,dr,ixc,pm,gbuf%OFF,areat,
592 1 uxyz, axyz,vcoret,jact,hxt,
593 2 hyt,vq,vqgt,vjfit,nplatt,iplatt,
594 3 x13t ,x24t ,y13t,y24t,npttot ,
595 4 gbuf%SMSTR , idril ,xlcore,zl,vqn,nel)
596C
597 IF (idril > 0) THEN
598 CALL cbaderirz(jft ,jlt ,areat,x13t,x24t ,
599 2 y13t ,y24t ,bm0rzt,bmkrzt,bmerzt,
600 3 vcoret,nplatt,iplatt,ismstr)
601C------ assumed membrane shear strain---(no assumed shear for Ismstr=10-
602 END IF !(IDRIL > 0)
603!
604! Gauss Points
605 DO is = 1,npts
606 DO ir = 1,nptr
607 ng = nptr*(is-1) + ir
608 ptf = (ng-1)*lenf+1
609 ptm = (ng-1)*lenm+1
610 pts = (ng-1)*lens+1
611c
612 DO i=jft,jlt
613 cdet(i) = jact(i,ng)
614 vol0(i) = thk0(i)*cdet(i)
615 ENDDO
616C-----------------------------------------------
617C DEFORMATIONS, MATRICE [B]
618C-----------------------------------------------
619 IF (idril > 0) THEN
620 CALL cbaderirzt(jft,jlt,ng,bm0rzt,bmkrzt,bmerzt,bmrzt)
621 END IF !(IDRIL > 0) THEN
622C------- no warped element w/ NPT=1
623 IF (npttot == 1) THEN
624 CALL cbadeft1(jft,jlt,ng,vcoret,uxyz,f_def(1,1,ng),
625 1 hxt,hyt,bmt,nplatt,iplatt,idril,
626 2 bmrzt,axyz,wxy )
627 ELSE
628 CALL cbaderit1(jft,jlt,ng,vcoret,vqgt,vjfit,
629 2 hxt,hyt,veta,vksi,bmt,nplatt,iplatt,
630 3 idril)
631 CALL cbadeft(jft,jlt,uxyz,axyz,f_def(1,1,ng),
632 2 bmt,nplatt,iplatt,idril,bmrzt )
633 END IF ! NPT == 1
634C
635 ENDDO ! NPTR
636 ENDDO ! NPTS
637 END IF ! ISMSTR == 10
638C-----------------------------------------------
639 IF (npttot == 1 .AND. mtn==58) THEN
640 zla(jft:jlt)= zl(jft:jlt)*zl(jft:jlt)/area(jft:jlt)
641 CALL cbal58warp(elbuf_str,nel,x,ixc,r13,r23,r33,gbuf%OFF,zla )
642 END IF
643!---------------------------------------------------------------------
644 ! Loop over Gauss points
645!---------------------------------------------------------------------
646 epsd_glob(1:nel) = zero
647
648 DO is = 1,npts
649 DO ir = 1,nptr
650 ng = nptr*(is-1) + ir
651 ptf = (ng-1)*lenf+1
652 ptm = (ng-1)*lenm+1
653 pts = (ng-1)*lens+1
654 ptw = (ng-1)*lenw+1
655 ptt = (ng-1)*nel + 1
656c-------- can extent the off later
657 DO i=jft,jlt
658 cdet(i) = jac(i,ng)
659 vol0(i) = thk0(i)*cdet(i)
660 ENDDO
661 IF(ishplyxfem > 0) THEN
662 DO j=1,npt
663 DO i=jft,jlt
664 offi(i,j) = one
665 ENDDO
666 ENDDO
667 ENDIF
668C-----------------------------------------------
669C DEFORMATIONS, MATRICE [B]
670C-----------------------------------------------
671 IF (npttot == 1) THEN
672 CALL cbadef1(jft,jlt,ng,vcore,vxyz,vdef,
673 1 hx,hy,bm,nplat,iplat,idril)
674C----
675 ELSE
676 CALL cbadef(jft,jlt,ng,vcore,area,cdet,vqn,vqg,vjfi,
677 1 vxyz,rxyz,vdef,vnrm,vastn,
678 2 hx,hy,veta,vksi,bm,bmf,bf,bc,tc,nplat,iplat,
679 3 idril,brz )
680 IF (ismstr == 10 )
681 1 CALL cbadeftw(jft,jlt,vxyz,rxyz,
682 2 bm,bmf,bf,nplat,iplat,
683 3 wxy )
684 END IF ! NPT == 1
685 IF (idril > 0) THEN
686 CALL cbadefrz(jft ,jlt ,area ,rlz ,vdef ,
687 1 vxyz ,bm0rz,bmkrz,bmerz ,vrlz ,
688 2 bmrz ,brz ,bm ,nplat ,iplat,
689 3 ng )
690 END IF
691C
692 IF (npinch > 0) THEN
693 CALL cbadefpinch(
694 1 jft ,jlt ,ng ,vqg ,vdef ,
695 2 veta ,vksi ,tc ,nplat ,iplat ,
696 3 bcp ,bp ,vpinchxyz ,vdefpinch ,tnpg,
697 4 dbetadxy ,vpincht1 ,vpincht2 ,bpinchdamp)
698 ENDIF
699C
700C----------------------------------
701C calculation of strains
702C----------------------------------
703 CALL cbastra3(gbuf%STRA,gbuf%STRPG(pts),
704 1 jft, jlt, nft, npg,vdef,
705 2 exx, eyy, exy, exz, eyz,
706 3 kxx, kyy, kxy, dt1c, tani,
707 4 iepsdot, istrain,ux1 ,ux2 ,ux3 ,
708 6 ux4 ,uy1 ,uy2 ,uy3 ,uy4 ,
709 7 x13, x24, y13, y24, bm ,
710 8 ismstr ,mtn ,nplat,iplat,idril,
711 9 wxy ,f_def(1,1,ng),gbuf%STRWPG(ptw),nel)
712C
713 IF (idril == 0) THEN
714 CALL cbaener(gbuf%FORPG(ptf),gbuf%EINT,jft ,jlt ,off ,
715 . vol0 ,exy ,nel )
716 ENDIF
717!
718 IF (ishplyxfem > 0 ) THEN
719 DO j=1,npt
720 jg = (ng - 1)*3
721 DO i=jft,jlt
722 delg_ply(i,1,j) = del_ply(i,1 + jg ,j)
723 delg_ply(i,2,j) = del_ply(i,2 + jg ,j)
724 delg_ply(i,3,j) = del_ply(i,3 + jg ,j)
725 ENDDO
726 ENDDO
727C
728 CALL cbadef_ply(jft,jlt,ng,npt,nplat,iplat, vqg,
729 . ply_vxyz,veta,vksi,bm,bc,tc,dt1c,
730 . ply_exx, ply_eyy, ply_eyz, ply_ezx )
731 ENDIF
732C
733 IF(npinch > 0) THEN
734C
735 ng = nptr*(is-1) + ir
736 ptfp = (ng-1)*lenfpinch + 1
737 ptmp = (ng-1)*lenmpinch + 1
738 ptepxz = (ng-1)*lenepinchxz + 1
739 ptepyz = (ng-1)*lenepinchyz + 1
740 ptepzz = (ng-1)*lenepinchzz + 1
741C
742 CALL cbastra3pinch(
743 1 jft ,jlt ,nplat ,iplat ,
744 2 vdefpinch ,pinch_local%EPINCHXZ ,
745 3 pinch_local%EPINCHYZ ,pinch_local%EPINCHZZ,
746 4 dt1c ,ng ,ezzpg ,
747 5 gbuf%EPGPINCHXZ(ptepxz),
748 6 gbuf%EPGPINCHYZ(ptepyz),
749 7 gbuf%EPGPINCHZZ(ptepzz) )
750C
751 ENDIF
752!-------------------------------------------------------------------------------
753! global element strain rate (shell energy equivalent) - by Gauss points
754!-----------------------------------------------------------
755! e = 1/t integ[1/2 e (eps_m + k z)^2 dz ]
756! e = 1/2 e eps_eq^2
757! eps_eq = sqrt[ eps_m^2 + 1/12 k^2t^2 ]
758!-------------------------------------------------------------------------------
759 dtinv = dt1 / max(dt1**2,em20) ! inverse of dt
760#include "vectorize.inc"
761 do i = 1,nel
762 eps_k2 = (kxx(i)**2+kyy(i)**2+kxx(i)*kyy(i)+fourth*kxy(i)**2)
763 . * one_over_9*gbuf%thk(i)**2
764 eps_m2 = four_over_3*(exx(i)**2+eyy(i)**2+exx(i)*eyy(i) + fourth*exy(i)**2)
765 epsd_pg(i) = sqrt(eps_k2 + eps_m2)*dtinv
766 epsd_glob(i) = epsd_glob(i) + epsd_pg(i) / npg
767 end do
768!-------------------------------------------------------------------------------
769 IF (jthe > 0 ) THEN
770 CALL cbatempel(jft ,jlt ,ng ,ixc ,temp ,tempel)
771 ENDIF
772C-----------------------------------------------------------------------
773 IF (inloc>0) THEN
774 CALL cbavarnl(jft ,jlt ,ng ,ixc ,nloc_dmg ,
775 . var_reg ,nddl ,nc1 ,nc2 ,nc3 ,
776 . nc4 ,nel )
777 ENDIF
778C-----------------
779C CONTRAINTES
780C-----------------
781 IF ((itask==0).AND.(imon_mat == 1)) CALL startime(timers,35)
782C-----------------
783 IF (npinch > 0) THEN
784 CALL cmain3pinch(
785 1 elbuf_str ,jft ,jlt ,nft ,iparg ,
786 2 nel ,mtn ,ipla ,ithk ,group_param,
787 3 pm ,geo ,npf ,tf ,bufmat ,
788 4 ssp ,rho ,viscmx ,dt1c ,sigy ,
789 5 cdet ,exx ,eyy ,exy ,exz ,
790 6 eyz ,kxx ,kyy ,kxy ,nu ,
791 7 off ,thk0 ,mat ,pid ,
792 8 gbuf%FORPG(ptf),gbuf%MOMPG(ptm) ,gbuf%STRPG(pts),failwave,fwave_el,
793 9 gbuf%THK ,gbuf%EINT ,iofc ,
794 a g ,a11 ,a12 ,vol0 ,indxof ,
795 b ngl ,zcfac ,shf ,gs ,epsd_pg ,
796 c kfts ,ihbe ,alpe ,
797 d dir_a ,dir_b ,igeo ,
798 e ipm ,ifailure ,npg ,
799 f tempel ,die ,jthe ,iexpan ,gbuf%TEMPG(ptt) ,
800 g ishplyxfem,ply_exx ,
801 h ply_eyy ,ply_exy ,ply_ezx ,ply_eyz ,ply_f ,
802 i delg_ply ,th_iply ,sig_iply ,r11 ,r12 ,
803 j r13 ,r21 ,r22 ,r23 ,r31 ,
804 k r32 ,r33 ,ng ,table ,ibid ,
805 l offi ,a11_iply ,ibid ,
806 m dir1_crk ,dir2_crk ,lc ,
807 n ismstr ,ir ,is ,nlay ,npt ,
808 o ibid ,ibid ,isubstack ,stack ,
809 p f_def(1,1,ng),itask ,drape_sh4n ,var_reg(1,1),
810 q pinch_local , gbuf%FORPGPINCH(ptfp), gbuf%MOMPGPINCH(ptmp),ezzavg ,
811 r areapinch )
812 ssp_eq(jft:jlt) = ssp(jft:jlt)
813 ELSE
814 CALL cmain3(timers,
815 1 elbuf_str ,jft ,jlt ,nft ,iparg ,
816 2 nel ,mtn ,ipla ,ithk ,group_param,
817 3 pm ,geo ,npf ,tf ,bufmat ,
818 4 ssp ,rho ,viscmx ,dt1c ,sigy ,
819 5 cdet ,exx ,eyy ,exy ,exz ,
820 6 eyz ,kxx ,kyy ,kxy ,nu ,
821 7 off ,thk0 ,mat ,pid ,mat_elem ,
822 8 gbuf%FORPG(ptf),gbuf%MOMPG(ptm) ,gbuf%STRPG(pts),failwave,fwave_el,
823 9 gbuf%THK ,gbuf%EINT ,iofc ,
824 a g ,a11 ,a12 ,vol0 ,indxof ,
825 b ngl ,zcfac ,shf ,gs ,epsd_pg ,
826 c kfts ,ihbe ,alpe ,
827 d dir_a ,dir_b ,igeo ,
828 e ipm ,ifailure ,npg ,fheat ,
829 f tempel ,die ,jthe ,iexpan ,gbuf%TEMPG(ptt) ,
830 g ishplyxfem,ply_exx ,
831 h ply_eyy ,ply_exy ,ply_ezx ,ply_eyz ,ply_f ,
832 i delg_ply ,th_iply ,sig_iply ,r11 ,r12 ,
833 j r13 ,r21 ,r22 ,r23 ,r31 ,
834 k r32 ,r33 ,ng ,table ,ibid ,
835 l offi ,sensors ,a11_iply ,ibid ,
836 m dir1_crk ,dir2_crk ,lc ,glob_therm%IDT_THERM ,glob_therm%THEACCFACT,
837 n ismstr ,ir ,is ,nlay ,npt ,
838 o ibid ,ibid ,isubstack ,stack ,
839 p f_def(1,1,ng),itask ,drape_sh4n,var_reg(1,1),nloc_dmg ,
840 r indx_drape ,thke ,sedrape ,numel_drape ,dt ,
841 q ncycle ,snpc ,stf ,nxlaymax, idel7nok ,
842 s userl_avail ,maxfunc ,npttot ,sbufmat, sdir_a ,
843 t sdir_b ,gbuf%FORPG_G(ptf) ,ssp_eq,
844 x ipart ,lipart1 ,ipartc )
845 ENDIF
846 ssp_max(jft:jlt) = max(ssp_max(jft:jlt),ssp_eq(jft:jlt))
847C-----------------
848 IF ((itask==0).AND.(imon_mat == 1)) CALL stoptime(timers,35)
849C
850 IF (idril == 0) THEN
851 CALL cbaener(gbuf%FORPG(ptf),gbuf%EINT,jft ,jlt ,off ,
852 . vol0 ,exy ,nel )
853 ENDIF
854C----------------------------------------------------------------------------
855C THICKNESS CORRECTION
856C----------------------------
857 IF(npinch == 0) THEN
858 IF (ithk > 0) THEN
859 DO i=jft,jlt
860 gbuf%THK(i) = gbuf%THK(i) - three_over_4*(gbuf%THK(i)-thk0(i))
861 thk0(i) = gbuf%THK(i)
862 ENDDO
863 ENDIF
864 ENDIF
865C----------------------------------------------------------------------------
866C FORCES VISCOCITE
867C----------------------------
868 CALL cbavisc(jft ,jlt ,vdef ,amu ,off ,
869 2 shf ,nu ,rho ,ssp ,cdet,
870 3 thk0 ,gbuf%FORPG(ptf),gbuf%MOMPG(ptm),npttot,mtn ,
871 4 ipartc ,partsav ,dt1 ,nel )
872C----------------------------------------------------------------------------
873C FORCES INTERNES
874C----------------------------
875 IF (npttot == 1) THEN
876 CALL cbafori1(jft ,jlt ,gbuf%FORPG(ptf),bm ,vf ,
877 . nplat ,iplat ,vol0 ,nel )
878 ELSE
879 CALL cbafori(jft ,jlt ,ng ,cdet ,thk0,
880 2 thk2 ,gbuf%FORPG(ptf),gbuf%MOMPG(ptm),nel ,bm ,
881 3 bmf ,bf ,bc ,tc ,vf ,
882 4 vm ,nplat ,iplat ,vol0 )
883 END IF !(NPT == 1) THEN
884C
885 IF (idril > 0) THEN
886 CALL cbaforrz(jft ,jlt ,vol0 ,gbuf%FORPG(ptf),gbuf%HOURG,
887 2 vf ,vmz ,bm ,bmrz ,brz ,
888 3 krz ,vrlz ,gbuf%EINT,off ,dt1c ,
889 4 nplat,iplat,ng ,nel)
890 END IF
891C
892 IF (ishplyxfem > 0)
893 . CALL cbafint_ply(jft,jlt,npt,ng,nplat,iplat,cdet,thkly,thk2,
894 1 vol0, ply_f,bm,bc,tc,sig_iply,vni,area,
895 2 ply_fn ,vfi,ixc)
896
897 IF (npinch > 0) THEN
898 CALL cbaforipinch(
899 1 jft ,jlt ,ng ,nel ,nplat ,iplat ,
900 2 cdet ,thk0 ,thk2 ,vol0 ,
901 3 gbuf%FORPGPINCH(ptfp) , gbuf%MOMPGPINCH(ptmp),
902 4 bcp ,bp ,vfpinch ,dbetadxy,
903 5 rho ,lc ,ssp ,bpinchdamp,
904 6 vfpinchdampx ,vfpinchdampy)
905 ENDIF
906C-------------------------
907c Thermal Analysis
908C--------------------------
909C
910 IF (jthe /= 0) THEN
911 IF (mat_elem%MAT_PARAM(mat(1))%HEAT_FLAG == 1) THEN
912 CALL cbatherm(jft ,jlt ,pm(1,mat(1)) ,thk0 ,ixc ,
913 . bm ,area ,dt1c(1) ,temp ,tempel,fheat ,
914 . nplat ,iplat,them ,glob_therm%THEACCFACT)
915 ELSE
916 CALL cbatherm(jft ,jlt ,pm(1,mat(1)) ,thk0 ,ixc ,
917 . bm ,area ,dt1c(1) ,temp ,tempel,die ,
918 . nplat ,iplat,them ,glob_therm%THEACCFACT)
919 END IF
920 ENDIF
921c-------------------------
922c Virtual internal forces of regularized non local ddl
923c--------------------------
924 IF (inloc > 0) THEN
925 CALL cbafint_reg(
926 1 nloc_dmg, var_reg(1,1), thk0, nel,
927 2 gbuf%OFF, area, nc1, nc2,
928 3 nc3, nc4, elbuf_str%NLOC(ir,is), ixc(1,jft),
929 4 nddl, itask, ng, jft,
930 5 jlt, x13, y13, x24,
931 6 y24, dt2t, gbuf%THK_I, gbuf%AREA,
932 7 nft)
933 ENDIF
934 ENDDO ! NPTR
935 ENDDO ! NPTS
936C---------------------------------------
937C-----end of loop over 4 gauss points
938!-------------------------------------------------------------------------------
939! global element strain rate filtering for output
940
941 asrate = one ! to be changed for default value
942 gbuf%epsd(1:nel) = asrate * epsd_glob(1:nel) + (one - asrate) * gbuf%epsd(1:nel)
943!-------------------------------------------------------------------------------
944C
945 IF (npinch > 0) THEN
946 CALL cbapinchthk(
947 1 jft ,jlt ,nplat ,iplat ,
948 2 dt1c ,gbuf%THK ,thk0 ,ezzpg)
949 ENDIF
950C
951C----
952C---------------------------------------
953C Post -processing - Average values
954C---------------------------------------
955C---
956C = FOR, MOM =
957C---
958 pt1 = 0
959 pt2 = pt1 + lenf
960 pt3 = pt2 + lenf
961 pt4 = pt3 + lenf
962 DO i=jft,jlt
963 DO j=1,5
964 gbuf%FOR(kk(j)+i) = fourth*(gbuf%FORPG(pt1+kk(j)+i)
965 . + gbuf%FORPG(pt2+kk(j)+i)
966 . + gbuf%FORPG(pt3+kk(j)+i)
967 . + gbuf%FORPG(pt4+kk(j)+i))
968 ENDDO
969 ENDDO
970!
971 pt2 = pt1 + lenm
972 pt3 = pt2 + lenm
973 pt4 = pt3 + lenm
974 DO i=jft,jlt
975 DO j=1,3
976 gbuf%MOM(kk(j)+i) = fourth*(gbuf%MOMPG(pt1+kk(j)+i)
977 . + gbuf%MOMPG(pt2+kk(j)+i)
978 . + gbuf%MOMPG(pt3+kk(j)+i)
979 . + gbuf%MOMPG(pt4+kk(j)+i))
980 ENDDO
981 ENDDO
982c------------------------------
983C Shear treatment membrane
984 IF (idril == 0) THEN
985 CALL cbaforct(jft ,jlt ,volg ,x13 ,x24 ,
986 2 y13 ,y24 ,gbuf%FOR,vf ,nplat,
987 3 iplat ,off ,nel )
988C
989 CALL cbaeners(jft ,jlt ,off ,area ,thk0,
990 . vdef ,gbuf%FOR ,gbuf%EINT ,dt1 ,nel )
991 END IF
992C
993 IF (npttot == 1) THEN
994 CALL cbavisnp1(jft, jlt,vxyz,rxyz,vcore,
995 2 amu, off,rho ,ssp ,area,thk0 ,
996 3 g ,dt1 ,vf ,
997 4 ipartc,partsav,kfts)
998 ENDIF
999C----------------------------
1000C TRANSFORME FORCES LOCALES AUX GLOBALES
1001C----------------------------
1002 CALL cbaproj(
1003 1 jft ,jlt ,vqn ,vq ,vf ,
1004 2 vm ,nplat ,iplat ,
1005 3 f11 ,f12 ,f13 ,f14 ,f21 ,
1006 4 f22 ,f23 ,f24 ,f31 ,f32 ,
1007 5 f33 ,f34 ,m11 ,m12 ,m13 ,
1008 6 m14 ,m21 ,m22 ,m23 ,m24 ,
1009 7 m31 ,m32 ,m33 ,m34 ,vcore ,
1010 8 dd ,vmz ,idril ,off )
1011 IF( ishplyxfem > 0 ) CALL cbaproj_ply(
1012 1 jft ,jlt ,npt ,nplat ,iplat ,vqn,
1013 2 vq ,ply_fn ,vfi ,vcore ,dd ,
1014 6 fly11 ,fly12 ,fly13 ,fly14 ,fly21 ,
1015 7 fly22 ,fly23 ,fly24 ,fly31 ,fly32 ,
1016 8 fly33 ,fly34 ,off)
1017 IF (npinch > 0) THEN
1018 CALL cbapinchproj(
1019 1 jft ,jlt ,vqn ,vq ,vfpinch,
1020 2 nplat ,iplat ,fp ,vcore ,dd ,thk0,
1021 3 vfpinchdampx,vfpinchdampy)
1022 ENDIF
1023C--------------------------
1024C balances by material
1025C--------------------------
1026 ipout=2
1027 IF(ipri == 1)
1028 1 CALL cbilan(
1029 1 jft, jlt, pm, v,
1030 2 ixc, gbuf%THK, gbuf%EINT, partsav,
1031 3 area, mat, ipartc, x,
1032 4 vr, bid, bid, bid,
1033 5 thk2, ipout, off, nft,
1034 6 gresav, grth, igrth, vl1,
1035 7 vl2, vl3, vl4, vrl1,
1036 8 vrl2, vrl3, vrl4, x1g,
1037 9 x2g, x3g, x4g, y1g,
1038 a y2g, y3g, y4g, z1g,
1039 b z2g, z3g, z4g, ibid,
1040 c iexpan, gbuf%EINTTH,itask, gbuf%VOL,
1041 d actifxfem, igre, sensors, nel,
1042 e gbuf%G_WPLA, gbuf%WPLA )
1043C----------------------------
1044C CALCUL DT
1045C----------------------------
1046 IF(npinch > 0) THEN
1047C
1048 IF(mtn == 1) THEN
1049 mx = mat(jft)
1050 e = pm(20,mx)
1051 anu = pm(21,mx)
1052 a11pinch = e / (one-two*anu)
1053 ELSEIF(mtn == 91) THEN
1054 mx = mat(jft)
1055 e = pm(20,mx)
1056 anu = pm(21,mx)
1057 a11pinch = e / (one-two*anu)
1058 ENDIF
1059C
1060 CALL cndt3pinch(
1061 1 jft ,jlt ,off , dt2t ,amu ,
1062 2 neltst ,ityptst,sti , stir ,gbuf%OFF,
1063 3 ssp ,viscmx ,rho , volg ,thk0,thk2,
1064 4 a11 ,lc ,alpe , ngl ,ismstr,
1065 5 iofc ,nnod ,area , g ,shf ,
1066 6 msc ,dmelc ,jsms , bid ,igtyp ,
1067 7 igmat ,a11r ,gbuf%G_DT, gbuf%DT, a11pinch)
1068C
1069 ELSE
1070C
1071 CALL cndt3(
1072 1 jft ,jlt ,off , dt2t ,amu ,
1073 2 neltst ,ityptst,sti , stir ,gbuf%OFF,
1074 3 ssp ,viscmx ,rho , volg ,thk0,thk2,
1075 4 a11 ,lc ,alpe , ngl ,ismstr,
1076 5 iofc ,nnod ,area , g ,shf ,
1077 6 msc ,dmelc ,jsms , bid ,igtyp ,
1078 7 igmat ,a11r ,gbuf%G_DT, gbuf%DT,mtn ,
1079 8 pm ,mat(jft) , nel ,zoffset ,ssp_max)
1080C
1081 ENDIF
1082C--------------------------
1083C THERMAL TIME STEP
1084C--------------------------
1085 IF (jthe > 0.AND. glob_therm%IDT_THERM == 1)THEN
1086 call dttherm(nel ,pm(1,imat),npropm,glob_therm,mat_elem%mat_param(imat),
1087 . jtur ,tempel ,vol0 ,rho ,
1088 . lc ,off ,conde ,gbuf%re ,gbuf%rk )
1089 ENDIF
1090C
1091 IF(ishplyxfem > 0) THEN
1092 CALL cndt_ply(
1093 . jft ,jlt ,npt,off , lc ,area ,thkly,
1094 . th_iply ,a11_ply ,a11_iply,sti_ply , offi,viscmx)
1095 ENDIF
1096C--------------------------
1097C NON-LOCAL TIME STEP
1098C--------------------------
1099 IF (inloc > 0) THEN
1100 CALL dtcba_reg(nloc_dmg,thk0 ,nel ,gbuf%OFF,
1101 . lc ,ixc(1,jft) ,nddl ,dt2t )
1102 ENDIF
1103C--------------------------
1104C ASSEMBLE
1105C--------------------------
1106 IF(iparit == 3)THEN
1107 CALL cupdt3f(jft ,jlt ,f ,m ,nvc ,
1108 2 gbuf%OFF,off ,sti ,stir,stifn,
1109 3 stifr ,ixc ,pm ,area ,gbuf%THK,
1110 4 f11 ,f12 ,f13 ,f14 ,f21 ,
1111 5 f22 ,f23 ,f24 ,f31 ,f32 ,
1112 6 f33 ,f34 ,m11 ,m12 ,m13 ,
1113 7 m14 ,m21 ,m22 ,m23 ,m24 ,
1114 8 m31 ,m32 ,m33 ,m34 ,gbuf%EINT,
1115 9 partsav,mat ,ipartc,glob_therm%NODADT_THERM)
1116 ELSEIF(iparit == 0)THEN
1117 CALL cupdtn3(jft ,jlt ,f ,m ,nvc ,
1118 2 gbuf%OFF,off ,sti ,stir,stifn,
1119 3 stifr ,ixc ,pm ,area ,gbuf%THK,
1120 4 f11 ,f12 ,f13 ,f14 ,f21 ,
1121 5 f22 ,f23 ,f24 ,f31 ,f32 ,
1122 6 f33 ,f34 ,m11 ,m12 ,m13 ,
1123 7 m14 ,m21 ,m22 ,m23 ,m24 ,
1124 8 m31 ,m32 ,m33 ,m34 ,gbuf%EINT,
1125 a partsav,mat ,ipartc ,facn ,jthe,
1126 b them , fthe ,condn ,conde,glob_therm%NODADT_THERM)
1127C
1128 IF(npinch > 0) THEN
1129 CALL cupdtn3pinch(
1130 1 jft ,jlt ,nvc ,ixc ,
1131 2 fp ,fpinch ,sti ,stifpinch ,facp )
1132 ENDIF
1133C
1134 ELSE
1135 CALL cupdtn3p(jft ,jlt ,gbuf%OFF,off ,sti,
1136 2 stir ,fsky ,fsky ,iadc ,
1137 4 f11 ,f12 ,f13 ,f14 ,f21,
1138 5 f22 ,f23 ,f24 ,f31 ,f32,
1139 6 f33 ,f34 ,m11 ,m12 ,m13,
1140 7 m14 ,m21 ,m22 ,m23 ,m24,
1141 8 m31 ,m32 ,m33 ,m34 ,ixc,
1142 a gbuf%EINT,partsav,mat,ipartc,pm ,
1143 b area ,gbuf%THK,facn ,jthe,them ,
1144 c fthesky,condnsky,conde,glob_therm%NODADT_THERM )
1145 ENDIF
1146C
1147 IF(ishplyxfem > 0) THEN
1148 CALL cupdt_ply(
1149 1 jft, jlt, nvc, gbuf%OFF,
1150 2 off, iadc_pxfem,iel_pxfem, inod_pxfem,
1151 3 ixc, ms, in, ms_ply,
1152 4 zi_ply, istack, posly, fly11,
1153 5 fly12, fly13, fly14, fly21,
1154 6 fly22, fly23, fly24, fly31,
1155 7 fly32, fly33, fly34, facn,
1156 8 sti_ply, msz2, nft, npt)
1157 ENDIF
1158C------------
1159 IF (ALLOCATED(dirb)) DEALLOCATE(dirb)
1160 IF (ALLOCATED(dira)) DEALLOCATE(dira)
1161 IF (ALLOCATED(var_reg)) DEALLOCATE(var_reg)
1162C
1163 IF(npinch > 0) THEN
1164 DEALLOCATE(pinch_local%EPINCHXZ)
1165 DEALLOCATE(pinch_local%EPINCHYZ)
1166 DEALLOCATE(pinch_local%EPINCHZZ)
1167 ENDIF
1168C
1169C------------
1170 RETURN
subroutine cbacoor(elbuf_str, jft, jlt, x, v, vr, ixc, pm, offg, ll, area, vxyz, rxyz, vcore, jac, hx, hy, vksi, veta, vqn, vqg, vq, vjfi, vnrm, vastn, nplat, iplat, x13_t, x24_t, y13_t, y24_t, off, di, nlay, irep, npt, ismstr, nel, isrot, smstr, dir_a, dir_b, facn, zl1, r11, r12, r13, r21, r22, r23, r31, r32, r33, inod, rlz, thk, iplycxfem, ux1, ux2, ux3, ux4, uy1, uy2, uy3, uy4, vl1, vl2, vl3, vl4, xl2, xl3, xl4, yl2, yl3, yl4, xlcor, npinch)
Definition cbacoor.F:48
subroutine cbacoort(elbuf_str, jft, jlt, x, v, vr, dr, ixc, pm, offg, area, vxyz, rlz, vcore, jac, hx, hy, vq, vqg, vjfi, nplat, iplat, x13_t, x24_t, y13_t, y24_t, npt, smstr, isrot, xlcor, zl, vqn, nel)
Definition cbacoor.F:1183
subroutine cbacoorpinch(tnpg, vpinchxyz, vpinch, vq, vqn, ixc, jft, jlt, nplat, iplat, thk, dt1c, facp, lc, vpincht1, vpincht2)
subroutine cbadefrz(jft, jlt, area, rlz, vdef, vxyz, bm0rz, bmkrz, bmerz, vrlz, bmrz, brz, bm, nplat, iplat, ng)
Definition cbadef.F:847
subroutine cbaderirz(jft, jlt, area, x13, x24, y13, y24, bm0rz, bmkrz, bmerz, vcore, nplat, iplat, ismstr)
Definition cbadef.F:779
subroutine cbadeft1(jft, jlt, ng, vcore, vxyz, vdef, hx, hy, bm, nplat, iplat, isrot, bmrz, rxyz, wxy)
Definition cbadef.F:1432
subroutine cbaderirzt(jft, jlt, ng, bm0rz, bmkrz, bmerz, bmrz)
Definition cbadef.F:1708
subroutine cbadeftw(jft, jlt, vxyz, rxyz, bm, bmf, bf, nplat, iplat, wxy)
Definition cbadef.F:1764
subroutine cbadef1(jft, jlt, ng, vcore, vxyz, vdef, hx, hy, bm, nplat, iplat, isrot)
Definition cbadef.F:1199
subroutine cbadef(jft, jlt, ng, vcore, area, cdet, vqn, vq, vjfi, vxyz, rxyz, vdef, vnrm, vastn, hx, hy, veta, vksi, bm, bmf, bf, bc, tc, nplat, iplat, isrot, brz)
Definition cbadef.F:32
subroutine cbadefsh(jft, jlt, x13, x24, y13, y24, bm, vdef, vxyz, nplat, iplat)
Definition cbadef.F:724
subroutine cbaderit1(jft, jlt, ng, vcore, vq, vjfi, hx, hy, veta, vksi, bm, nplat, iplat, isrot)
Definition cbadef.F:1523
subroutine cbadeft(jft, jlt, vxyz, rlz, vdef, bm, nplat, iplat, isrot, bmrz)
Definition cbadef.F:1270
subroutine cbadefsh_ply(jft, jlt, npt, nplat, iplat, x13, x24, y13, y24, vxyz, dt1c, exy)
Definition cbadef_ply.F:260
subroutine cbadef_ply(jft, jlt, ng, npt, nplat, iplat, vq, vxyz, veta, vksi, bm, bc, tc, dt1c, exx, eyy, eyz, ezx)
Definition cbadef_ply.F:31
subroutine cbadefpinch(jft, jlt, ng, vqg, vdef, veta, vksi, tc, nplat, iplat, bcp, bp, vpinchxyz, vdefpinch, tnpg, dbetadxy, vpincht1, vpincht2, bpinchdamp)
Definition cbadefpinch.F:33
subroutine cbaeners(jft, jlt, off, area, thk0, def, forpg, eint, dt, nel)
Definition cbaener.F:60
subroutine cbaener(forpg, eint, jft, jlt, off, vol, exy, nel)
Definition cbaener.F:30
subroutine cbafint_ply(jft, jlt, npt, ng, nplat, iplat, cdet, thkly, th12, vol, ff0, bm, bc, tc, sig_iply, vni, area, vf, vfi, ixc)
Definition cbafint_ply.F:33
subroutine cbafint_reg(nloc_dmg, var_reg, thk, nel, off, area, nc1, nc2, nc3, nc4, bufnl, imat, nddl, itask, ng, jft, jlt, x13, y13, x24, y24, dt2t, thk0, area0, nft)
Definition cbafint_reg.F:39
subroutine cbafori1(jft, jlt, ff, bm, vf, nplat, iplat, vol, nel)
Definition cbafori.F:458
subroutine cbaforct(jft, jlt, vol, x13, x24, y13, y24, vstre, vf, nplat, iplat, off, nel)
Definition cbafori.F:284
subroutine cbaforrz(jft, jlt, vol, ff, vsrz, vf, vmz, bm, bmrz, brz, krz, vrlz, eint, off, dt1c, nplat, iplat, ng, nel)
Definition cbafori.F:361
subroutine cbafori(jft, jlt, ng, cdet, thk0, th12, ff0, mm0, nel, bm, bmf, bf, bc, tc, vf, vm, nplat, iplat, vol)
Definition cbafori.F:32
subroutine cbaforipinch(jft, jlt, ng, nel, nplat, iplat, cdet, thk0, th12, vol, ff, mm, bcp, bp, vfpinch, dbetadxy, rho, lc, ssp, bpinchdamp, vfpinchdampx, vfpinchdampy)
subroutine cbapinchproj(jft, jlt, vqn, vq, vfpinch, nplat, iplat, fp, corel, di, thk0, vfpinchdampx, vfpinchdampy)
subroutine cbapinchthk(jft, jlt, nplat, iplat, dt1c, thk, thk0, ezzpg)
Definition cbapinchthk.F:33
subroutine cbaproj(jft, jlt, vqn, vq, vf, vm, nplat, iplat, f11, f12, f13, f14, f21, f22, f23, f24, f31, f32, f33, f34, m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, corel, di, vmz, isrot, off)
Definition cbaproj.F:37
subroutine cbaproj_ply(jft, jlt, npt, nplat, iplat, vqn, vq, vf, vfi, corel, di, f11, f12, f13, f14, f21, f22, f23, f24, f31, f32, f33, f34, off)
Definition cbaproj_ply.F:34
subroutine cbastra3(gstr, gstrpg, jft, jlt, nft, npg, vdef, exx, eyy, exy, exz, eyz, kxx, kyy, kxy, dt1c, epsdot, iepsdot, istrain, ux1, ux2, ux3, ux4, uy1, uy2, uy3, uy4, x13, x24, y13, y24, bm, ismstr, mtn, nplat, iplat, isrot, wxy, f_def, gstrwpg, nel)
Definition cbastra3.F:37
subroutine cbastra3pinch(jft, jlt, nplat, iplat, vdefpinch, epinchxz, epinchyz, ezz, dt1c, ng, ezzpg, epgpinchxz, epgpinchyz, epgpinchzz)
subroutine cbatempel(jft, jlt, ng, ixc, temp, tempel)
Definition cbatempel.F:32
subroutine cbatherm(jft, jlt, pm, thk, ixc, bm, area, dtime, tempnc, tel, dheat, nplat, iplat, fphi, theaccfact)
Definition cbatherm.F:33
subroutine cbavarnl(jft, jlt, ng, ixc, nloc_dmg, varnl, nddl, nc1, nc2, nc3, nc4, nel)
Definition cbavarnl.F:34
subroutine cbavisnp1(jft, jlt, vxyz, rxyz, vcore, amu, off, rho, ssp, area, thk, g, dt1, vf, ipartc, evis, kfts)
Definition cbavisc.F:104
subroutine cbavisc(jft, jlt, vdef, amu, off, shf, nu, rho, ssp, area, thk, for, mom, npt, mtn, ipartc, evis, dt1, nel)
Definition cbavisc.F:34
subroutine cbavit_ply(jft, jlt, ixc, offg, off, nplat, iplat, npt, vcore, di, zl, vq, vxyz, x13_t, x24_t, y13_t, y24_t, area, inod, del_ply, vni, istack, vr)
Definition cbavit_ply.F:35
subroutine cbal58warp(elbuf_str, nel, x, ixc, e3x, e3y, e3z, offg, zllc2)
Definition cbawarpoff.F:35
subroutine cbilan(jft, jlt, pm, v, ixc, thk, eint, partsav, area, mat, ipartc, x, vr, vol0, vol00, thk0, thk02, ifla, off, nft1, gresav, grth, igrth, vl1, vl2, vl3, vl4, vrl1, vrl2, vrl3, vrl4, x1g, x2g, x3g, x4g, y1g, y2g, y3g, y4g, z1g, z2g, z3g, z4g, ixfem, iexpan, eintth, itask, gvol, actifxfem, igre, sensors, nel, g_wpla, wpla)
Definition cbilan.F:53
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)
Definition cmain3.F:88
subroutine cmain3pinch(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, for, mom, gstr, failwave, fwave_el, thk, eint, iofc, g, a11, a12, vol0, indxdel, ngl, zcfac, shf, gs, epsp, kfts, jhbe, alpe, dir_a, dir_b, igeo, ipm, ifailure, npg, 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, a11_iply, elcrkini, dir1_crk, dir2_crk, aldt, ismstr, ir, is, nlay, npt, ixlay, ixel, isubstack, stack, f_def, itask, drape, varnl, pinch_local, forp, momp, ezzavg, areapinch)
Definition cmain3pinch.F:68
subroutine cncoef3(jft, jlt, pm, mat, geo, pid, off, area, shf, thk0, thk02, nu, g, ym, a11, a12, thk, thke, ssp, rho, volg, gs, mtn, ithk, npt, dt1c, dt1, ihbe, amu, krz, igeo, a11r, isubstack, pm_stack, nel, zoffset)
Definition cncoef3.F:303
subroutine cndt3(jft, jlt, off, dt2t, amu, neltst, ityptst, sti, stir, offg, ssp, viscmx, rho, vol0, thk0, thk02, a1, aldt, alpe, ngl, ismstr, iofc, nne, area, g, shf, msc, dmelc, jsms, ptg, igtyp, igmat, a11r, g_dt, dtel, mtn, pm, imat, nel, zoffset, ssp_eq)
Definition cndt3.F:42
subroutine cndt3pinch(jft, jlt, off, dt2t, amu, neltst, ityptst, sti, stir, offg, ssp, viscmx, rho, vol0, thk0, thk02, a1, aldt, alpe, ngl, ismstr, iofc, nne, area, g, shf, msc, dmelc, jsms, ptg, igtyp, igmat, a11r, g_dt, dtel, a11pinch)
Definition cndt3pinch.F:35
subroutine cndt_ply(jft, jlt, npt, off, aldt, area, thk, thk_iply, a1, a1_iply, sti, offi, viscmx)
Definition cndt_ply.F:30
#define my_real
Definition cppsort.cpp:32
subroutine cupdt3f(jft, jlt, i8f, i8m, nvc, offg, off, sti, stir, i8stifn, i8stifr, ixc, pm, area, thk, f11, f12, f13, f14, f21, f22, f23, f24, f31, f32, f33, f34, m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, eint, partsav, mat, ipartc, nodadt_therm)
Definition cupdt3.F:43
subroutine cupdt_ply(jft, jlt, nvc, offg, off, iadc, iel, inod, ixc, ms, in, ms_ply, zi_ply, istack, posly, fly11, fly12, fly13, fly14, fly21, fly22, fly23, fly24, fly31, fly32, fly33, fly34, fac, sti, msz2, nft, npt)
Definition cupdt_ply.F:40
subroutine cupdtn3p(jft, jlt, offg, off, sti, stir, fsky, fskyv, iadc, f11, f12, f13, f14, f21, f22, f23, f24, f31, f32, f33, f34, m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, ixc, eint, partsav, mat, ipartc, pm, area, thk, fac, jthe, them, fthesky, condnsky, conde, nodadt_therm)
Definition cupdtn3.F:498
subroutine cupdtn3(jft, jlt, f, m, nvc, offg, off, sti, stir, stifn, stifr, ixc, pm, area, thk, f11, f12, f13, f14, f21, f22, f23, f24, f31, f32, f33, f34, m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, eint, partsav, mat, ipartc, fac, jthe, them, fthe, condn, conde, nodadt_therm)
Definition cupdtn3.F:41
subroutine cupdtn3pinch(jft, jlt, nvc, ixc, fp, fpinch, sti, stifpinch, facp)
subroutine dtcba_reg(nloc_dmg, thk, nel, off, le, imat, nddl, dt2t)
Definition dtcba_reg.F:32
subroutine area(d1, x, x2, y, y2, eint, stif0)
#define max(a, b)
Definition macros.h:21
integer scdrape
Definition drape_mod.F:92
integer numelc_drape
Definition drape_mod.F:92
subroutine startime(event, itask)
Definition timer.F:93
subroutine stoptime(event, itask)
Definition timer.F:135
subroutine set_failwave_sh4n(failwave, fwave_el, dadv, nel, ixc, itab, ngl, offly)