OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
inirig_mat.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "vect01_c.inc"
#include "param_c.inc"
#include "scr03_c.inc"
#include "com01_c.inc"
#include "com04_c.inc"
#include "remesh_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine inirig_mat (ixc, ixs, ixtg, ixs10, x, v, pm, geo, ms, in, ptg, msc, mss, mstg, inc, intg, thkc, thkt, partsav, iparts, ipartc, ipartt, veul, dtelem, ihbe, isolnod, nvc, i8mi, msnf, mssf, igeo, etnod, nshnod, stc, sttg, wma, sh4tree, sh3tree, mcp, mcpc, temp, mcps, mssx, mcpsx, ins, stifn, stifr, connec, irig_node, numel, nindx, xrefc, xreftg, xrefs, mssa, sh3trim, isubstack, bufmat, ipm, stack, rnoise, strc, strtg, perturb, nel, group_param, igtyp, defaults, glob_therm)

Function/Subroutine Documentation

◆ inirig_mat()

subroutine inirig_mat ( integer, dimension(nixc,*) ixc,
integer, dimension(nixs,*) ixs,
integer, dimension(nixtg,*) ixtg,
integer, dimension(6,*) ixs10,
x,
v,
pm,
geo,
ms,
in,
ptg,
msc,
mss,
mstg,
inc,
intg,
thkc,
thkt,
partsav,
integer, dimension(*) iparts,
integer, dimension(*) ipartc,
integer, dimension(*) ipartt,
veul,
dtelem,
integer ihbe,
integer isolnod,
integer nvc,
integer *8, dimension(6,*) i8mi,
msnf,
mssf,
integer, dimension(npropgi,*) igeo,
etnod,
integer, dimension(*) nshnod,
stc,
sttg,
wma,
integer, dimension(ksh4tree,*) sh4tree,
integer, dimension(*) sh3tree,
mcp,
mcpc,
temp,
mcps,
mssx,
mcpsx,
ins,
stifn,
stifr,
integer, dimension(numel, 10) connec,
integer, dimension(*) irig_node,
integer numel,
integer nindx,
xrefc,
xreftg,
xrefs,
mssa,
integer, dimension(*) sh3trim,
integer isubstack,
bufmat,
integer *8, dimension(npropmi,*) ipm,
type (stack_ply) stack,
rnoise,
strc,
strtg,
integer *8, dimension(nperturb) perturb,
integer nel,
type(group_param_) group_param,
integer, intent(in) igtyp,
type(defaults_), intent(in) defaults,
type(glob_therm_), intent(in) glob_therm )

Definition at line 55 of file inirig_mat.F.

69C-----------------------------------------------
70C M o d u l e s
71C-----------------------------------------------
72 USE elbufdef_mod
73 USE stack_mod
74 USE group_param_mod
75 USE defaults_mod
76 use glob_therm_mod
77 USE drape_mod
78C-----------------------------------------------
79C I m p l i c i t T y p e s
80C-----------------------------------------------
81#include "implicit_f.inc"
82C-----------------------------------------------
83C G l o b a l P a r a m e t e r s
84C-----------------------------------------------
85#include "mvsiz_p.inc"
86C-----------------------------------------------
87C C o m m o n B l o c k s
88C-----------------------------------------------
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"
95C-----------------------------------------------
96C D u m m y A r g u m e n t s
97C-----------------------------------------------
98 INTEGER NVC, IHBE, ISOLNOD, NDDIM, ILEV,NRIG_MAT,NUMEL,
99 . 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,*),IPM(NPROPMI,*),PERTURB(NPERTURB)
106 my_real
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
118C-----------------------------------------------
119C L o c a l V a r i a b l e s
120C-----------------------------------------------
121 INTEGER I, NDEPAR, NDSA,NC(20),N,JJ,KK,J,K,IP,NF1,NF2,
122 . ILAW,IMAT,IPROP,IBID(MVSIZ),NREFSTA,IMAS_DS
123 INTEGER NC10(MVSIZ,10)
124 INTEGER, DIMENSION(MVSIZ) :: IX1,IX2,IX3,IX4,IX5,IX6,IX7,IX8,MXT,PID,NGL
125 my_real
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)
143 my_real, DIMENSION(MVSIZ) :: area,vol,rho,aldt,dt,
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
149 my_real :: v_piter(nel,3,10)
150C
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)
162C-----------------------------------------------
163 bidbuf => null()
164C
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
172C-----------------------------------------------
173 IF (ity == 1.AND. isolnod == 4)THEN
174C-----------------------------------------------
175C Solid 4 nodes tetrahedron
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
187C
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)
195C
196 DO j = 1,4
197 jj = nc(j)
198 irig_node(jj) = 1
199 connec(nindx, j) = nc(j)
200 ENDDO
201 ENDDO
202C
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 )
213C
214 IF(jlag+jale+jeul > 0) THEN
215 CALL s4mass3(
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
222C
223 CALL dtmain(geo ,pm ,void ,pid ,mxt ,void ,
224 . void ,void ,void ,void ,void ,bufmat,
225 . ddeltax, area, volu, dtx, igeo,igtyp)
226C
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
235C---------------------------------------------
236 ELSEIF (ity == 1.AND. isolnod == 10)THEN
237C---------------------------------------------
238C Solid 10 nodes tetrahedron-
239 nf1 = nft+1
240 nf2 = nf1-numels8
241 CALL s10coor3_old(x,v,ixs(1,nf1),ixs10(1,nf2),
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)
246 CALL s10deri3(volp,ngl,
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)
254C
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
271C
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)
277C
278C Create dependency to rigid material
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
300c--------------------------------------
301 ELSEIF(ity == 1.AND.isolnod == 16)THEN
302C Solid 16 nodes brick not supported
303 ELSEIF(ity == 1.AND.isolnod == 20)THEN
304C Solid 20 nodes brick not supported
305C--------------------------------------
306 ELSEIF(ity == 1)THEN
307C--------------------------------------
308C Solid 8 nodes brick
309 DO i=1,nel
310 rhocp(i) = zero
311 temp0(i) = zero
312 ENDDO
313C
314C Creation de la dependance au mat_rigid
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)
326C
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
333C
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 )
359 CALL sdlen3(
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)
364 CALL smass3(
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)
371C
372C Element time step
373 CALL dtmain(geo ,pm ,void ,pid ,mxt ,void ,
374 . void ,void ,void ,void ,void ,bufmat, ddeltax, area, volu, dtx , igeo,igtyp)
375C
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
389C--------------------------------------
390 ELSEIF (ity==3) THEN
391C--------------------------------------
392C 4-nodes shell
393 imat = ixc(1,1+nft) ! material number
394 iprop = ixc(nixc-1,1+nft) ! property number
395C
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 )
400C
401 CALL cveok3(nvc,4,ix1,ix2,ix3,ix4)
402 CALL ceveci(lft ,llt ,area,
403 . x1 ,x2 ,x3 ,x4 ,y1 ,y2 ,
404 . y3 ,y4 ,z1 ,z2 ,z3 ,z4 ,
405 . e1x ,e2x ,e3x ,e1y ,e2y ,e3y ,e1z ,e2z ,e3z )
406C
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,bid,bid,
413 . bid,bid,isubstack,ibid,bidbuf,
414 . stack,bidg, rnoise ,drape ,glob_therm%NINTEMP,
415 . perturb,ix1 ,ix2 ,ix3 ,ix4 ,ibid, ibid )
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 )
421C
422C Nodal time step
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
467C
468C Create dependency to rigid material
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)
480C
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
486C--------------------------------------
487 ELSEIF(ity==7)THEN
488C--------------------------------------
489C 3-nodes shell
490 imat = ixtg(1,1+nft) ! material number
491 iprop = ixtg(nixtg-1,1+nft) ! property number
492C
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)
497 CALL c3evec3(lft,llt,area,
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)
518C
519 ndepar=numels+numelc+numelt+numelp+numelr+nft
520 DO i=1,nel
521 dtelem(ndepar+i) = ep30
522 ENDDO
523C
524C Create dependency to rigid material
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)
531C
532 connec(nindx , 1) = nc(1)
533 connec(nindx , 2) = nc(2)
534 connec(nindx , 3) = nc(3)
535C
536 irig_node(nc(1)) = 1
537 irig_node(nc(2)) = 1
538 irig_node(nc(3)) = 1
539 ENDDO
540 ENDIF
541C
542 nxref = nrefsta
543C-----------
544 RETURN
subroutine c3coori(x, xreftg, ixp, ngl, x1, x2, x3, y1, y2, y3, z1, z2, z3, ix1, ix2, ix3)
Definition c3coori.F:39
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)
Definition c3derii.F:38
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)
Definition c3inmas.F:46
subroutine c3veok3(nvc, ix1, ix2, ix3)
Definition c3veok3.F:36
subroutine ccoori(x, xrefc, ixc, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, ix1, ix2, ix3, ix4, ngl)
Definition ccoori.F:40
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)
Definition cderii.F:35
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)
Definition ceveci.F:37
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)
Definition cinmas.F:95
#define my_real
Definition cppsort.cpp:32
subroutine cveok3(nvc, nod, ix1, ix2, ix3, ix4)
Definition cveok3.F:35
subroutine dtmain(geo, pm, ipm, pid, mat, fv, eint, temp, deltax, rk, re, bufmat, ddeltax, aire, vol, dtx, igeo, igtyp)
Definition dtmain.F:67
subroutine area(d1, x, x2, y, y2, eint, stif0)
#define max(a, b)
Definition macros.h:21
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)
Definition s10mass3.F:37
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)
Definition s4mass3.F:41
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)
Definition smass3.F:44
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)
Definition c3evec3.F:39
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)
Definition s10coor3.F:226
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)
Definition s10deri3.F:39
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)
Definition s10len3.F:33
subroutine s4coor3(x, xrefs, ixs, ngl, mxt, ngeo, ix1, ix2, ix3, ix4, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4)
Definition s4coor3.F:40
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)
Definition s4deri3.F:47
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)
Definition scoor3.F:52
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)
Definition sderi3.F:44
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)
Definition sdlen3.F:41