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