69
70
71
72 USE elbufdef_mod
74 USE group_param_mod
75 USE defaults_mod
76 use glob_therm_mod
78
79
80
81#include "implicit_f.inc"
82
83
84
85#include "mvsiz_p.inc"
86
87
88
89#include "vect01_c.inc"
90#include "param_c.inc"
91#include "scr03_c.inc"
92#include "com01_c.inc"
93#include "com04_c.inc"
94#include "remesh_c.inc"
95
96
97
98 INTEGER NVC, IHBE, ISOLNOD, NDDIM, ILEV,NRIG_MAT,NUMEL
99
100INTEGER ,INTENT(IN) :: IGTYP
101 INTEGER IXC(NIXC,*),IXS(NIXS,*),IXTG(NIXTG,*),IXS10(6,*),
102 . IPARTS(*),IPARTC(*),IPARTT(*),IGEO(NPROPGI,*),
103 . NSHNOD(*), SH4TREE(KSH4TREE,*), SH3TREE(*),
104 . IRIG_NODE(*) ,(NUMEL, 10),SH3TRIM(*)
105 INTEGER *8 I8MI(6,*),IPM(NPROPMI,*),PERTURB(NPERTURB)
107 . pm(npropm,*), geo(npropg,*),ms(*),msc(*),mss(8,*),
108 . mstg(*),intg(*),ptg(3,*),in(*),inc(*),thkc(*),thkt(*),
109 . x(3,*),v(3,*),veul(lveul,*),dtelem(*),partsav(20,*),
110 . msnf(*), mssf(8,*), wma(*), etnod(*), stc(*), sttg(*),
111 . mcp(*),mcpc(*),temp(*),mcps(8,*),ins(8,*),mcpsx(12,*),
112 . mssx(12,*),stifn(*), stifr(*),
113 . xrefc(4,3,*),xreftg(3,3,*),xrefs(8,3,*), mssa(*),bufmat(*),
114 . rnoise(*),strc(*),strtg(*)
115 TYPE(GROUP_PARAM_) :: GROUP_PARAM
116 TYPE(DEFAULTS_), INTENT(IN) :: DEFAULTS
117 TYPE(glob_therm_) ,intent(in) :: glob_therm
118
119
120
121 INTEGER I, NDEPAR, NDSA,NC(20),N,JJ,KK,J,K,,NF1,NF2,
122 . ILAW,IMAT,,IBID(MVSIZ),NREFSTA,IMAS_DS
123 INTEGER NC10(MVSIZ,10)
124 INTEGER, DIMENSION(MVSIZ) :: IX1,,IX3,IX4,IX5,IX6,IX7,IX8,MXT,PID,NGL
126 . void(mvsiz),
127 . rx(mvsiz) ,ry(mvsiz) ,rz(mvsiz) ,sx(mvsiz) ,
128 . sy(mvsiz) ,sz(mvsiz) ,tx(mvsiz) ,ty(mvsiz) ,tz(mvsiz) ,
129 . f1x(mvsiz) ,f1y(mvsiz) ,f1z(mvsiz) ,
130 . f2x(mvsiz) ,f2y(mvsiz) ,f2z(mvsiz),bid(mvsiz),rhocp(mvsiz),
131 . temp0(mvsiz),fill(mvsiz),bidg(mvsiz),
132 . px1(mvsiz),px2(mvsiz),px3(mvsiz),px4(mvsiz),
133 . py1(mvsiz),py2(mvsiz),py3(mvsiz),py4(mvsiz),
134 . pz1(mvsiz),pz2(mvsiz),pz3(mvsiz),pz4(mvsiz),
135 . void6(nel,6), mass(mvsiz),
136 . volp(mvsiz,5),deltax(mvsiz),deltax2(mvsiz),
137 . xx(mvsiz,10), yy(mvsiz,10), zz(mvsiz,10),
138 . vx(mvsiz,10), vy(mvsiz,10), vz(mvsiz,10),
139 . px(mvsiz,10,5),py(mvsiz,10,5),pz(mvsiz,10,5),
140 . masscp(mvsiz),volu(mvsiz),volg(mvsiz),
141 . sti(mvsiz) ,nx(mvsiz,10,5),dtx(mvsiz),stie,
142 . a11,b1,b2,stir,bid1(mvsiz), ddeltax(mvsiz)
144 . x1,x2,x3,x4,x5,x6,x7,x8,
145 . y1,y2,y3,y4,y5,y6,y7,y8,
146 . z1,z2,z3,z4,z5,z6,z7,z8,
147 . e1x,e2x,e3x,e1y,e2y,e3y,e1z,e2z,e3z,
148 . x2l,x3l,x4l,y2l,y3l,y4l,x31,y31,z31
150
151 TYPE(ELBUF_STRUCT_) ,POINTER :: BIDBUF
152 TYPE (STACK_PLY) :: STACK
153 TYPE (DRAPE_) , DIMENSION(NUMELC_DRAPE+NUMELTG_DRAPE), TARGET :: DRAPE
154
155 DOUBLE PRECISION
156 . XD1(MVSIZ), XD2(MVSIZ), XD3(MVSIZ), XD4(MVSIZ),
157 . XD5(MVSIZ), XD6(MVSIZ), XD7(MVSIZ), XD8(MVSIZ),
158 . YD1(MVSIZ), YD2(MVSIZ), YD3(MVSIZ), YD4(MVSIZ),
159 . YD5(MVSIZ), YD6(MVSIZ), YD7(MVSIZ), YD8(MVSIZ),
160 . ZD1(MVSIZ), ZD2(MVSIZ), ZD3(MVSIZ), ZD4(MVSIZ),
161 . ZD5(MVSIZ), ZD6(MVSIZ), ZD7(MVSIZ), ZD8(MVSIZ),VOLDP(MVSIZ)
162
163 bidbuf => null()
164
165 ibid(1:mvsiz) = 0
166 bid(1:mvsiz) = zero
167 nrefsta = nxref
168 nxref = 0
169 imas_ds = defaults%SOLID%IMAS
170 dtx(1:mvsiz) = zero
171 IF (ity == 1.AND. ismstr == 10) ismstr = 4
172
173 IF (ity == 1.AND. isolnod == 4)THEN
174
175
176 CALL s4coor3(x ,xrefs(1,1,nft+1),ixs(1,nft+1),ngl ,mxt ,
177 . pid ,ix1 ,ix2 ,ix3 ,ix4 ,
178 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
179 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 )
180 DO i=1,nel
181 rho(i) = pm(89,mxt(i))
182 dtelem(nft+i) = 1.e30
183 fill(i) = one
184 rhocp(i) = pm(69,mxt(i))
185 temp0(i) = pm(79,mxt(i))
186 ENDDO
187
188 DO i=1,nel
189 n = i + nft
190 nindx = nindx + 1
191 nc(1) =ixs(2,n)
192 nc(2) =ixs(4,n)
193 nc(3) =ixs(6,n)
194 nc(4) =ixs(7,n)
195
196 DO j = 1,4
197 jj = nc(j)
198 irig_node(jj) = 1
199 connec(nindx, j) = nc(j)
200 ENDDO
201 ENDDO
202
203 CALL s4deri3(vol,veul(1,nft+1) ,geo ,igeo ,rx ,
204 . ry ,rz ,sx ,sy ,
205 . sz ,tx ,ty ,tz ,
206 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
207 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 ,
208 . px1 ,px2 ,px3 ,px4 ,
209 . py1 ,py2 ,py3 ,py4 ,
210 . pz1 ,pz2 ,pz3 ,pz4 ,bid1,
211 . ddeltax,volu ,ngl ,pid ,mxt ,
212 . pm ,voldp )
213
214 IF(jlag+jale+jeul > 0) THEN
216 1 rho ,ms ,partsav,x ,v ,
217 2 iparts(nft+1),mss(1,nft+1),msnf ,mssf(1,nft+1),wma ,
218 3 rhocp ,mcp ,mcps(1,nft+1) ,temp0,
219 4 temp ,mssa ,ix1 ,ix2 ,ix3 ,ix4 ,
220 5 fill, volu ,imas_ds ,glob_therm%NINTEMP)
221 ENDIF
222
223 CALL dtmain(geo ,pm ,void ,pid ,mxt ,void ,
224 . void ,void ,void ,void ,void ,bufmat,
225 . ddeltax,
area, volu, dtx, igeo,igtyp)
226
227 DO i=1,nel
228 dtelem(nft+i)=dtx(i)
229 stie = fourth * rho(i) * vol(i) /
max(em20,dtx(i)*dtx(i))
230 stifn(ixs(2,i+nft))=stifn(ixs(2,i+nft)) + stie
231 stifn(ixs(4,i+nft))=stifn(ixs(4,i+nft)) + stie
232 stifn(ixs(6,i+nft))=stifn(ixs(6,i+nft)) + stie
233 stifn(ixs(7,i+nft))=stifn(ixs(7,i+nft)) + stie
234 ENDDO
235
236 ELSEIF (ity == 1.AND. isolnod == 10)THEN
237
238
239 nf1 = nft+1
240 nf2 = nf1-numels8
242 . xx, yy, zz, vx, vy, vz, nc10,
243 . ngl,mxt,pid,mass,dtelem(nft+1),sti,
244 . void6,void,void,void,
245 . temp0, temp ,nel,glob_therm%NINTEMP)
247 . xx, yy, zz, px,py,pz, nx,
248 . rx, ry, rz, sx, sy, sz, tx, ty, tz,volu,void,
249 . bidbuf,volg)
250 CALL s10len3(volp,ngl,deltax,deltax2,
251 . px,py,pz,volu,void,volg,
252 . rx, ry, rz, sx, sy, sz, tx, ty, tz,
253 . nel,mxt,pm,v_piter,ibid)
254
255 DO i=1,nel
256 masscp(i) = zero
257 mass(i) = zero
258 rho(i) = pm(89,mxt(i))
259 fill(i) = one
260 dtelem(nft+i) = 1.e30
261 rhocp(i) = pm(69,mxt(i))
262 temp0(i) = pm(79,mxt(i))
263 ENDDO
264 DO ip=1,npt
265 DO i=1,nel
266 mass(i) = mass(i) + volp(i,ip)*rho(i)
267 sti(i) = sti(i) + rho(i) * volp(i,ip) /
268 .
max(em20,dtx(i)*dtx(i))
269 ENDDO
270 ENDDO
271
272 CALL s10mass3(mass,ms,partsav,iparts(nf1),mss(1,nf1),volu,
273 . xx ,yy ,zz ,vx ,vy ,vz ,
274 . nc10 ,sti,stifn ,deltax2 ,mssx(1,nf1),masscp,
275 . mcp ,mcps(1,nf1),mcpsx(1,nf1),in ,stifr,
276 . ins(1,nf1),mssa ,x ,fill ,imas_ds)
277
278
279 DO i=1,nel
280 nindx = nindx + 1
281 n = i + nft
282 nc(1) = nc10(i,1)
283 nc(2) = nc10(i,2)
284 nc(3) = nc10(i,3)
285 nc(4) = nc10(i,4)
286 nc(5) = nc10(i,5)
287 nc(6) = nc10(i,6)
288 nc(7) = nc10(i,7)
289 nc(8) = nc10(i,8)
290 nc(9) = nc10(i,9)
291 nc(10) = nc10(i,10)
292 DO j = 1,10
293 IF(nc(j) > 0 ) THEN
294 jj = nc(j)
295 irig_node(jj) = 1
296 connec(nindx,j) = jj
297 ENDIF
298 ENDDO
299 ENDDO
300
301 ELSEIF(ity == 1.AND.isolnod == 16)THEN
302
303 ELSEIF(ity == 1.AND.isolnod == 20)THEN
304
305
306 ELSEIF(ity == 1)THEN
307
308
309 DO i=1,nel
310 rhocp(i) = zero
311 temp0(i) = zero
312 ENDDO
313
314
315 DO i=1,nel
316 n = i + nft
317 nindx = nindx + 1
318 nc(1) =ixs(2, n)
319 nc(2) =ixs(3, n)
320 nc(3) =ixs(4, n)
321 nc(4) =ixs(5, n)
322 nc(5) =ixs(6, n)
323 nc(6) =ixs(7, n)
324 nc(7) =ixs(8, n)
325 nc(8) =ixs(9, n)
326
327 DO j = 1,8
328 jj = nc(j)
329 irig_node(jj) = 1
330 IF(nc(j) > 0) connec(nindx, j) = nc(j)
331 ENDDO
332 ENDDO
333
334 CALL scoor3(x,xrefs(1,1,nft+1),ixs(1,nft+1) ,geo ,mxt ,pid ,ngl ,
335 . ix1 ,ix2 ,ix3 ,ix4 ,ix5 ,ix6 ,ix7 ,ix8 ,
336 . x1 ,x2 ,x3 ,x4 ,x5 ,x6 ,x7 ,x8 ,
337 . y1 ,y2 ,y3 ,y4 ,y5 ,y6 ,y7 ,y8 ,
338 . z1 ,z2 ,z3 ,z4 ,z5 ,z6 ,z7 ,z8 ,
339 . rx ,ry ,rz ,sx ,sy ,sz ,tx ,ty ,tz ,
340 . e1x ,e1y ,e1z ,e2x ,e2y ,e2z ,e3x ,e3y ,e3z ,
341 . f1x ,f1y ,f1z ,f2x ,f2y ,f2z ,temp0, temp,glob_therm%NINTEMP,
342 . xd1 ,xd2 ,xd3 ,xd4 ,xd5 ,xd6 ,xd7 ,xd8 ,
343 . yd1 ,yd2 ,yd3 ,yd4 ,yd5 ,yd6 ,yd7 ,yd8 ,
344 . zd1 ,zd2 ,zd3 ,zd4 ,zd5 ,zd6 ,zd7 ,zd8 )
345
346 DO i=1,nel
347 rho(i) = pm(89,mxt(i))
348 dtelem(nft+i) = ep30
349 fill(i) = one
350 ENDDO
351 CALL sderi3(vol,veul(1,nft+1),geo,igeo,
352 . xd1 ,xd2 ,xd3 ,xd4 ,xd5 ,xd6 ,xd7 ,xd8 ,
353 . yd1 ,yd2 ,yd3 ,yd4 ,yd5 ,yd6 ,yd7 ,yd8 ,
354 . zd1 ,zd2 ,zd3 ,zd4 ,zd5 ,zd6 ,zd7 ,zd8 ,
355 . rx ,ry ,rz ,sx ,sy ,sz ,ngl ,pid ,
356 . px1 ,px2 ,px3 ,px4 ,py1 ,py2 ,py3 ,py4 ,
357 . pz1 ,pz2 ,pz3 ,pz4 ,volu ,voldp,nel ,jeul ,
358 . nxref,imulti_fvm )
360 . x1 ,x2 ,x3 ,x4 ,x5 ,x6 ,x7 ,x8
361 . y1 ,y2 ,y3 ,y4 ,y5 ,y6 ,y7 ,y8 ,
362 . z1 ,z2 ,z3 ,z4 ,z5 ,z6 ,z7 ,z8,
363 . ddeltax, volu)
365 1 rho ,ms ,partsav,x ,v ,
366 2 iparts(nft+1),mss(1,nft+1) ,volu ,
367 3 msnf ,mssf(1,nft+1),in ,
368 4 void ,ins ,wma , rhocp ,mcp ,
369 5 mcps(1,nft+1),mssa ,bid ,bid ,fill,
370 6 ix1, ix2, ix3, ix4, ix5, ix6, ix7, ix8)
371
372
373 CALL dtmain(geo ,pm ,void ,pid ,mxt ,void ,
374 . void ,void ,void ,void ,void ,bufmat, ddeltax,
area, volu, dtx , igeo,igtyp)
375
376 DO i=1,nel
377 n = i + nft
378 dtelem(n)= ep30
379 stie = fourth * rho(i) * vol(i) /
max(em20,dtx(i)*dtx(i))
380 stifn(ixs(2,n))=stifn(ixs(2,n))+stie
381 stifn(ixs(3,n))=stifn(ixs(3,n))+stie
382 stifn(ixs(4,n))=stifn(ixs(4,n))+stie
383 stifn(ixs(5,n))=stifn(ixs(5,n))+stie
384 stifn(ixs(6,n))=stifn(ixs(6,n))+stie
385 stifn(ixs(7,n))=stifn(ixs(7,n))+stie
386 stifn(ixs(8,n))=stifn(ixs(8,n))+stie
387 stifn(ixs(9,n))=stifn(ixs(9,n))+stie
388 ENDDO
389
390 ELSEIF (ity==3) THEN
391
392
393 imat = ixc(1,1+nft)
394 iprop = ixc(nixc-1,1+nft)
395
396 CALL ccoori(x,xrefc(1,1,nft+1),ixc(1,nft+1),
397 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
398 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 ,
399 . ix1 ,ix2 ,ix3 ,ix4 ,ngl )
400
401 CALL cveok3(nvc,4,ix1,ix2,ix3,ix4)
403 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
404 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 ,
405 . e1x ,e2x ,e3x ,e1y ,e2y ,e3y
406
407 CALL cinmas(x,xrefc(1,1,nft+1),ixc,geo,pm,ms,in,
408 . thkc,ihbe,partsav,v,ipartc(nft+1),
409 . msc(nft+1),inc(nft+1),
area ,
410 . i8mi ,igeo ,etnod ,imat ,iprop ,
411 . nshnod ,stc(nft+1),sh4tree ,mcp ,mcpc(nft+1) ,
412 . temp ,bid , bid
413 . bid,bid,isubstack,ibid,bidbuf,
414 . stack,bidg, rnoise ,drape ,glob_therm%NINTEMP
415 . perturb,ix1 ,ix2
416 CALL cderii(px1 ,px2 ,py1 ,py2,
417 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
418 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 ,
419 . e1x ,e2x ,e3x ,e1y ,e2y ,e3y ,e1z ,e2z ,e3z ,
420 . x2l ,x3l ,x4l ,y2l ,y3l ,y4l )
421
422
423 IF(nadmesh == 0)THEN
424 DO i=1,nel
425 n=nft+i
426 a11 =pm(24,imat)
427 b1 = px1(i)*px1(i)+py1(i)*py1(i)
428 b2 = px2(i)*px2(i)+py2(i)*py2(i)
429 stie =
max(b1,b2) * thkc(i) * a11 /
area(i)
430 stir = one_over_12*stie * (thkc(i)*thkc(i) +
area(i))
431 stifn(ixc(2,n))=stifn(ixc(2,n))+stie
432 stifn(ixc(3,n))=stifn(ixc(3,n))+stie
433 stifn(ixc(4,n))=stifn(ixc(4,n))+stie
434 stifn(ixc(5,n))=stifn(ixc(5,n))+stie
435 stifr(ixc(2,n))=stifr(ixc(2,n))+stir
436 stifr(ixc(3,n))=stifr(ixc(3,n))+stir
437 stifr(ixc(4,n))=stifr(ixc(4,n))+stir
438 stifr(ixc(5,n))=stifr(ixc(5,n))+stir
439 strc(n) = stir
440 ENDDO
441 ELSE
442 DO i=1,nel
443 n=nft+i
444 IF(sh4tree(3,n) >= 0)THEN
445 a11 =pm(24,imat)
446 b1 = px1(i)*px1(i)+py1(i)*py1(i)
447 b2 = px2(i)*px2(i)+py2(i)*py2(i)
448 stie =
max(b1,b2) * thkc(i) * a11 /
area(i)
449 stir = one_over_12*stie * (thkc(i)*thkc(i) +
area(i))
450 stifn(ixc(2,n))=stifn(ixc(2,n))+stie
451 stifn(ixc(3,n))=stifn(ixc(3,n))+stie
452 stifn(ixc(4,n))=stifn(ixc(4,n))+stie
453 stifn(ixc(5,n))=stifn(ixc(5,n))+stie
454 stifr(ixc(2,n))=stifr(ixc(2,n))+stir
455 stifr(ixc(3,n))=stifr(ixc(3,n))+stir
456 stifr(ixc(4,n))=stifr(ixc(4,n))+stir
457 stifr(ixc(5,n))=stifr(ixc(5,n))+stir
458 strc(n) = stir
459 END IF
460 END DO
461 END IF
462
463 ndepar=numels+nft
464 DO i=1,nel
465 dtelem(ndepar+i) = ep30
466 ENDDO
467
468
469 DO i=1,nel
470 n = i + nft
471 nindx = nindx + 1
472 nc(1) = ixc(2, n)
473 nc(2) = ixc(3, n)
474 nc(3) = ixc(4, n)
475 nc(4) = ixc(5, n)
476 connec(nindx,1) = nc(1)
477 connec(nindx,2) = nc(2)
478 connec(nindx,3) = nc(3)
479 connec(nindx,4) = nc(4)
480
481 irig_node(nc(1)) = 1
482 irig_node(nc(2)) = 1
483 irig_node(nc(3)) = 1
484 irig_node(nc(4)) = 1
485 ENDDO
486
487 ELSEIF(ity==7)THEN
488
489
490 imat = ixtg(1,1+nft)
491 iprop = ixtg(nixtg-1,1+nft)
492
493 CALL c3coori(x,xreftg(1,1,nft+1),ixtg(1,nft+1),ngl,
494 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
495 . z1 ,z2 ,z3 ,ix1 ,ix2 ,ix3 )
496 CALL c3veok3(nvc ,ix1 ,ix2 ,ix3)
498 . x1 ,x2 ,x3 ,y1 ,y2 ,y3 ,
499 . z1 ,z2 ,z3 ,e1x ,e2x ,e3x ,
500 . e1y ,e2y ,e3y ,e1z ,e2z ,e3z ,
501 . x31, y31, z31 ,x2l ,x3l ,y3l )
502 CALL c3inmas(x,xreftg(1,1,nft+1),ixtg,geo,pm,ms,in,thkt,
503 . partsav,v,ipartt(nft+1),mstg(nft+1),intg(nft+1),
504 . ptg(1,nft+1),igeo ,imat ,iprop ,
area ,
505 . etnod,nshnod,sttg(nft+1), sh3tree,mcp ,
506 . mcps(1,nft+1) , temp,sh3trim,isubstack,ibid,
507 . bidbuf, stack,bidg ,rnoise,drape,
508 . perturb,ix1 ,ix2 ,ix3 ,glob_therm%NINTEMP,
509 . x2l ,x3l ,y3l , ibid, ibid )
510 CALL c3derii(lft,llt,pm,geo,px1,py1,py2,s
511 . tifn ,stifr ,ixtg(1,nft+1),
512 . thkt,sh3tree,aldt,bufmat , ipm ,igeo ,
513 . stack%PM , isubstack, strtg(nft+1),imat,iprop
514 .
area ,dt ,x31 ,y31 ,z31 ,
515 . e1x ,e2x ,e3x ,e1y ,e2y ,e3y ,
516 . e1z ,e2z ,e3z ,x2l ,x3l ,y3l ,
517 . group_param)
518
519 ndepar=numels+numelc+numelt+numelp+numelr+nft
520 DO i=1,nel
521 dtelem(ndepar+i) = ep30
522 ENDDO
523
524
525 DO i=1,nel
526 n = i + nft
527 nindx = nindx + 1
528 nc(1) = ixtg(2, n)
529 nc(2) = ixtg(3, n)
530 nc(3) = ixtg(4, n)
531
532 connec(nindx , 1) = nc(1)
533 connec(nindx , 2) = nc(2)
534 connec(nindx , 3) = nc(3)
535
536 irig_node(nc(1)) = 1
537 irig_node(nc(2)) = 1
538 irig_node(nc(3)) = 1
539 ENDDO
540 ENDIF
541
542 nxref = nrefsta
543
544 RETURN
subroutine c3coori(x, xreftg, ixp, ngl, x1, x2, x3, y1, y2, y3, z1, z2, z3, ix1, ix2, ix3)
subroutine c3derii(jft, jlt, pm, geo, px1, py1, py2, stifn, stifr, ixtg, thk, sh3tree, aldt, uparam, ipm, igeo, pm_stack, isubstack, strtg, imat, iprop, area, dt, x31g, y31g, z31g, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, x2, x3, y3, group_param)
subroutine c3inmas(x, xreftg, ixtg, geo, pm, ms, tiner, thke, partsav, v, ipart, mstg, intg, ptg, igeo, imat, iprop, area, etnod, nshnod, sttg, sh3tree, mcp, mcptg, temp, sh3trim, isubstack, nlay, elbuf_str, stack, thki, rnoise, drape, perturb, ix1, ix2, ix3, nintemp, x2, x3, y3, idrape, indx)
subroutine c3veok3(nvc, ix1, ix2, ix3)
subroutine ccoori(x, xrefc, ixc, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, ix1, ix2, ix3, ix4, ngl)
subroutine cderii(px1, px2, py1, py2, x1g, x2g, x3g, x4g, y1g, y2g, y3g, y4g, z1g, z2g, z3g, z4g, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, x2l, x3l, x4l, y2l, y3l, y4l)
subroutine ceveci(jft, jlt, area, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z)
subroutine cinmas(x, xrefc, ix, geo, pm, ms, tiner, thke, ihbe, partsav, v, ipart, msc, inc, area, i8mi, igeo, etnod, imid, iprop, nshnod, stc, sh4tree, mcp, mcps, temp, ms_layer, zi_layer, ms_layerc, zi_layerc, msz2c, zply, isubstack, nlay, elbuf_str, stack, thki, rnoise, drape, nintemp, perturb, ix1, ix2, ix3, ix4, idrape, indx)
subroutine cveok3(nvc, nod, ix1, ix2, ix3, ix4)
subroutine dtmain(geo, pm, ipm, pid, mat, fv, eint, temp, deltax, rk, re, bufmat, ddeltax, aire, vol, dtx, igeo, igtyp)
subroutine area(d1, x, x2, y, y2, eint, stif0)
subroutine s10mass3(mass, ms, partsav, ipart, mss, volu, xx, yy, zz, vx, vy, vz, nc, sti, stifn, deltax2, mssx, masscp, mcp, mcps, mcpsx, in, stifr, ins, mssa, x, fill, imas_ds)
subroutine s4mass3(rho, ms, partsav, x, v, ipart, mss, msnf, mssf, wma, rhocp, mcp, mcps, temp0, temp, mssa, ix1, ix2, ix3, ix4, fill, volu, imas_ds, nintemp)
subroutine smass3(rho, ms, partsav, x, v, ipart, mss, volu, msnf, mssf, in, vr, ins, wma, rhocp, mcp, mcps, mssa, rhof, frac, fill, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8)
subroutine c3evec3(jft, jlt, area, x1, x2, x3, y1, y2, y3, z1, z2, z3, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, x31, y31, z31, x2l, x3l, y3l)
subroutine s10coor3_old(x, v, ixs, ixs10, xx, yy, zz, vx, vy, vz, nc, ngl, mxt, ngeo, mass, dtelem, sti, sigg, eintg, rhog, qg, temp0, temp, nel, nintemp)
subroutine s10deri3(vol, ngl, xx, yy, zz, px, py, pz, nx, rx, ry, rz, sx, sy, sz, tx, ty, tz, volu, voln, elbuf_str, volg)
subroutine s10len3(vol, ngl, deltax, deltax2, px, py, pz, volu, voln, volg, rx, ry, rz, sx, sy, sz, tx, ty, tz, nel, mxt, pm, v_piter, iint)
subroutine s4coor3(x, xrefs, ixs, ngl, mxt, ngeo, ix1, ix2, ix3, ix4, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4)
subroutine s4deri3(vol, veul, geo, igeo, rx, ry, rz, sx, sy, sz, tx, ty, tz, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, jac_i, deltax, det, ngl, ngeo, mxt, pm, voldp)
subroutine scoor3(x, xrefs, ixs, geo, mxt, ngeo, ngl, ix1, ix2, ix3, ix4, ix5, ix6, ix7, ix8, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z, f1x, f1y, f1z, f2x, f2y, f2z, temp0, temp, nintemp, xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8, yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8, zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8)
subroutine sderi3(vol, veul, geo, igeo, xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8, yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8, zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8, jac1, jac2, jac3, jac4, jac5, jac6, ngl, ngeo, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, det, voldp, nel, jeul, nxref, imulti_fvm)
subroutine sdlen3(x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, deltax, voln)