OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
cmain3.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "param_c.inc"
#include "com04_c.inc"
#include "com08_c.inc"
#include "scr18_c.inc"
#include "impl1_c.inc"
#include "timeri_c.inc"

Go to the source code of this file.

Functions/Subroutines

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)

Function/Subroutine Documentation

◆ cmain3()

subroutine cmain3 ( type(timer_), intent(inout) timers,
type (elbuf_struct_), target elbuf_str,
integer jft,
integer jlt,
integer nft,
integer, dimension(*) iparg,
integer nel,
integer mtn,
integer ipla,
integer ithk,
type (group_param_) group_param,
pm,
geo,
integer, dimension(*) npf,
tf,
bufmat,
ssp,
rho,
viscmx,
dt1c,
sigy,
area,
exx,
eyy,
exy,
exz,
eyz,
kxx,
kyy,
kxy,
nu,
off,
thk0,
integer, dimension(mvsiz) mat,
integer, dimension(mvsiz) pid,
type (mat_elem_), intent(inout) mat_elem,
for,
mom,
gstr,
type (failwave_str_), target failwave,
integer, dimension(nel) fwave_el,
thk,
eint,
integer iofc,
g,
a11,
a12,
vol0,
integer, dimension(mvsiz) indxdel,
integer, dimension(mvsiz) ngl,
zcfac,
shf,
gs,
intent(in) epsd_pg,
integer kfts,
integer jhbe,
alpe,
dir_a,
dir_b,
integer, dimension(npropgi,*) igeo,
integer, dimension(npropmi,*) ipm,
integer ifailure,
integer npg,
intent(inout) fheat,
tempel,
die,
integer jthe,
integer iexpan,
tempel0,
integer 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,
integer ng,
type (ttable), dimension(*) table,
integer ixfem,
offi,
type (sensors_), intent(in) sensors,
integer, dimension(mvsiz,*) a11_iply,
integer, dimension(*) elcrkini,
dir1_crk,
dir2_crk,
aldt,
integer, intent(in) idt_therm,
intent(in) theaccfact,
integer ismstr,
integer ir,
integer is,
integer nlay,
integer npt,
integer ixlay,
integer ixel,
integer isubstack,
type (stack_ply) stack,
f_def,
integer itask,
type (drape_), dimension(numel_drape) drape,
varnl,
type (nlocal_str_) nloc_dmg,
integer, dimension(sedrape) indx_drape,
intent(in) thke,
integer, intent(in) sedrape,
integer, intent(in) numel_drape,
type (dt_), intent(in) dt,
integer ncycle,
integer, intent(in) snpc,
integer, intent(in) stf,
integer, intent(in) nxlaymax,
integer, intent(inout) idel7nok,
integer, intent(in) userl_avail,
integer, intent(in) maxfunc,
integer, intent(in) varnl_npttot,
integer, intent(in) sbufmat,
integer, intent(in) sdir_a,
integer, intent(in) sdir_b,
intent(inout) for_g,
intent(out) ssp_eq,
integer, dimension(lipart1,npart), intent(in) ipart,
integer, intent(in) lipart1,
integer, dimension(nel), intent(in) ipartc )

Definition at line 57 of file cmain3.F.

88C-----------------------------------------------
89C M o d u l e s
90C-----------------------------------------------
91 USE timer_mod
92 USE mulawc_mod
93 USE table_mod
94 USE mat_elem_mod
95 USE stack_mod
96 USE failwave_mod
97 USE drape_mod
99 USE sensor_mod
100 USE elbufdef_mod
101 USE dt_mod
102C-----------------------------------------------
103C I m p l i c i t T y p e s
104C-----------------------------------------------
105#include "implicit_f.inc"
106C-----------------------------------------------
107C G l o b a l P a r a m e t e r s
108C-----------------------------------------------
109#include "mvsiz_p.inc"
110C-----------------------------------------------
111C C o m m o n B l o c k s
112C-----------------------------------------------
113#include "param_c.inc"
114#include "com04_c.inc"
115#include "com08_c.inc"
116#include "scr18_c.inc"
117#include "impl1_c.inc"
118#include "timeri_c.inc"
119C-----------------------------------------------
120C D u m m y A r g u m e n t s
121C-----------------------------------------------
122 TYPE(TIMER_), INTENT(INOUT) :: TIMERS
123 INTEGER,INTENT(IN) :: USERL_AVAIL ! Flag for User libraries availability
124 INTEGER,INTENT(IN) :: MAXFUNC ! Maximum number of functions
125 INTEGER,INTENT(INOUT) :: IDEL7NOK ! Element deletion flag for IDEL flag in contact interfaces
126 INTEGER,INTENT(IN) :: NXLAYMAX ! XFEM : maximum number of layers
127 INTEGER,INTENT(IN) :: VARNL_NPTTOT ! Total number of integration points
128 INTEGER,INTENT(IN) :: SBUFMAT ! Size of BUFMAT
129 INTEGER,INTENT(IN) :: SDIR_A ! Size of DIR_A
130 INTEGER,INTENT(IN) :: SDIR_B ! Size of DIR_B
131 INTEGER,INTENT(IN) :: STF ! Size of TF
132 INTEGER,INTENT(IN) :: SNPC ! Size of NPF
133 INTEGER JFT,JLT,NFT,IR,IS,NPT,NG,NPG,NLAY,NEL,MTN,IPLA,IOFC,ITHK,
134 . KFTS,JHBE,IFAILURE,JTHE,IEXPAN,ISHPLYXFEM,ISMSTR,
135 . IXLAY,IXEL,IXFEM,ISUBSTACK,ITASK , NCYCLE
136 INTEGER , INTENT(IN) :: SEDRAPE,NUMEL_DRAPE
137 INTEGER MAT(MVSIZ), PID(MVSIZ), INDXDEL(MVSIZ), NGL(MVSIZ),NPF(*),
138 . IGEO(NPROPGI,*),IPM(NPROPMI,*),IPARG(*),
139 . A11_IPLY(MVSIZ,*),ELCRKINI(*),FWAVE_EL(NEL)
140 INTEGER , DIMENSION(SEDRAPE) :: INDX_DRAPE
141 INTEGER, INTENT(IN) :: IDT_THERM
142 my_real ,intent(in) :: theaccfact
143 my_real ,dimension(mvsiz) ,intent(in) :: epsd_pg
144 my_real pm(npropm,*), geo(npropg,*),tf(*),thk(*),eint(jlt,*),for(nel,5),
145 . mom(nel,3),gstr(nel,8),bufmat(*),g(*),a11(*),a12(*),vol0(*),
146 . shf(*),gs(*),sigy(mvsiz),rho(mvsiz),ssp(mvsiz),viscmx(mvsiz),
147 . off(mvsiz) ,thk0(mvsiz) ,nu(mvsiz),dt1c(mvsiz),
148 . exx(mvsiz), eyy(mvsiz), exy(mvsiz), exz(mvsiz), eyz(mvsiz),
149 . kxx(mvsiz), kyy(mvsiz), kxy(mvsiz), area(mvsiz),
150 . zcfac(mvsiz,2),alpe(mvsiz),dir_a(sdir_a),dir_b(sdir_b),tempel(*),die(*),
151 . tempel0(mvsiz), ply_f(mvsiz,5,*),
152 . ply_exx(mvsiz,*),ply_eyy(mvsiz,*),ply_exy(mvsiz,*),
153 . ply_exz(mvsiz,*),ply_eyz(mvsiz,*),del_ply(mvsiz,3,*) ,
154 . th_iply(mvsiz,*), sig_iply(mvsiz,3,*),
155 . e1x(mvsiz), e1y(mvsiz), e1z(mvsiz),
156 . e2x(mvsiz), e2y(mvsiz), e2z(mvsiz),
157 . e3x(mvsiz), e3y(mvsiz), e3z(mvsiz),offi(mvsiz,*),
158 . dir1_crk(*),dir2_crk(*),
159 . f_def(mvsiz,*),aldt(mvsiz),varnl(nel,*)
160 my_real, DIMENSION(NEL), INTENT(IN) :: thke
161 my_real, dimension(mvsiz), intent(inout) :: fheat
162 my_real, dimension(mvsiz), intent( out) :: ssp_eq
163 TYPE (TTABLE) TABLE(*)
164 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
165 TYPE (STACK_PLY) :: STACK
166 TYPE (FAILWAVE_STR_) ,TARGET :: FAILWAVE
167 TYPE (GROUP_PARAM_) :: GROUP_PARAM
168 TYPE (DRAPE_) :: DRAPE(NUMEL_DRAPE)
169 TYPE (MAT_ELEM_) ,INTENT(INOUT) :: MAT_ELEM
170 TYPE (NLOCAL_STR_) :: NLOC_DMG
171 TYPE (SENSORS_) ,INTENT(IN) :: SENSORS
172 TYPE (DT_), INTENT(IN) :: DT
173 my_real, dimension(nel,5), intent(inout) :: for_g
174 integer, intent(in) :: LIPART1
175
176 INTEGER, DIMENSION(LIPART1,NPART), INTENT(IN) :: IPART
177 INTEGER, DIMENSION(NEL), INTENT(IN) :: IPARTC
178C-----------------------------------------------
179C L o c a l V a r i a b l e s
180C-----------------------------------------------
181 INTEGER I,J,IT,MX,IGTYP,IFUNC_ALPHA,IPMAT_IPLY,ILAW,ILAY,LAYNPT_MAX,NLAY_MAX
182 INTEGER MAT_IPLY(MVSIZ,NPT),IDAMP_FREQ_RANGE
183 INTEGER MAT_USR,MAT_RAD
184 INTEGER, DIMENSION(:) , ALLOCATABLE :: MATLY !! MATLY(MVSIZ*LAY_MAX)
185 my_real, DIMENSION(:) , ALLOCATABLE :: thkly !! THKLY(MVSIZ*LAY_MAX*LAYNPT_MAX)
186 my_real, DIMENSION(:,:), ALLOCATABLE :: posly,thk_ly
187 my_real dtemp(mvsiz),etimp(mvsiz),tens(nel,5),eth(mvsiz)
188 my_real epsyz(mvsiz),epszx(mvsiz)
189 my_real alpha,df,deintth,fscal_alpha,dm,zshift
190C-------------------------------------
191
192 TYPE(L_BUFEL_) ,POINTER :: LBUF
193 TYPE(G_BUFEL_) ,POINTER :: GBUF
194 TYPE(BUF_DAMP_RANGE_) ,POINTER :: DAMP_BUF
195C-----------------------------------------------
196 my_real finter
197 EXTERNAL finter
198C=======================================================================
199 gbuf => elbuf_str%GBUF
200 igtyp=igeo(11,pid(1))
201 mx = mat(jft)
202 dm = group_param%VISC_DM ! membrane damping
203 IF (impl_s>0) dm = zero
204 idamp_freq_range = iparg(93)
205 damp_buf => elbuf_str%DAMP_RANGE
206 zcfac(1:mvsiz,1:2) = zero
207 ssp_eq = zero
208!
209 ! check material type used in shell layers
210 mat_usr = 0
211 mat_rad = 0
212 do ilay=1,nlay
213 ilaw = elbuf_str%bufly(ilay)%ilaw
214 if (ilaw > 28 .and. ilaw < 32 .or. ilaw == 99 .or. ilaw == 200) then
215 mat_usr = 1
216 else
217 mat_rad = 1
218 end if
219 end do
220C--------------------------------------------------
221C add source terme for law not user
222 IF (jthe > 0 .AND. (mtn < 28 .OR. mtn == 32)) THEN
223 die(jft:jlt) = eint(jft:jlt,1) + eint(jft:jlt,2)
224 ELSE
225 die(jft:jlt) = zero
226 ENDIF
227c-----------------
228 IF (iexpan > 0 .AND. jthe > 0) THEN
229c
230 IF (tt == zero) tempel0(jft:jlt) = tempel(jft:jlt)
231 dtemp(jft:jlt) = tempel(jft:jlt) - tempel0(jft:jlt)
232 tempel0(jft:jlt) = tempel(jft:jlt)
233c
234 IF (igtyp /= 11 .AND. igtyp /= 17 .AND. igtyp /=51 .AND. igtyp /= 52) THEN
235 ifunc_alpha = ipm(219, mx)
236 fscal_alpha = pm(191, mx)
237 DO i=jft,jlt
238 alpha = finter(ifunc_alpha,tempel(i),npf,tf,df)
239 alpha = alpha * fscal_alpha
240 eth(i) = alpha*dtemp(i)
241 deintth = -half*(for(i,1) + for(i,2))*eth(i)*thk0(i)*area(i)
242 gbuf%EINTTH(i) = gbuf%EINTTH(i) + deintth
243 eint(i,1) = eint(i,1) + deintth
244 ENDDO
245 ENDIF
246 ENDIF
247! Npt_max
248 laynpt_max = 1
249 IF(igtyp == 51 .OR. igtyp == 52) THEN
250 DO ilay=1,nlay
251 laynpt_max = max(laynpt_max , elbuf_str%BUFLY(ilay)%NPTT)
252 ENDDO
253 ENDIF
254 nlay_max = max(nlay,npt,ixlay, elbuf_str%NLAY)
255 ALLOCATE(matly(mvsiz*nlay_max), thkly(mvsiz*nlay_max*laynpt_max),
256 . posly(mvsiz,nlay_max*laynpt_max),thk_ly(nel,nlay_max*laynpt_max))
257c
258c----------------------------
259 IF (npt == 0) THEN
260 ! Radioss laws 1,2,22,36,43,56,60,86 with global integration
261c----------------------------
262 ilay = 1
263 it = 1
264 lbuf => elbuf_str%BUFLY(ilay)%LBUF(ir,is,it)
265 zshift = geo(199, pid(1))
266c
267 CALL mulawglc(elbuf_str,
268 1 jft ,jlt ,pm ,for ,mom ,thk ,
269 2 eint ,off ,gstr ,dir_a ,shf ,
270 3 mat ,area ,exx ,eyy ,exy ,nel ,
271 4 exz ,eyz ,kxx ,kyy ,kxy ,dm ,
272 5 pid ,tf ,npf ,mtn ,dt1c ,a11 ,
273 6 bufmat ,ssp ,rho ,viscmx ,iofc ,a12 ,
274 7 indxdel ,ngl ,zcfac ,gs ,sigy ,g ,
275 8 thk0 ,epsd_pg,ipla ,igeo ,ipm ,table ,
276 9 ir ,is ,f_def ,ismstr ,nu ,vol0 ,
277 a kfts ,zshift ,idamp_freq_range,mat_elem,damp_buf ,
278 b for_g )
279 ssp_eq(jft:jlt) = ssp(jft:jlt)
280c----------------------------
281 ELSE IF (mat_usr == 1) THEN
282c--- user material law libraries here
283c
284 CALL layini(elbuf_str,jft ,jlt ,geo ,igeo ,
285 . mat ,pid ,thkly ,matly ,posly ,
286 . igtyp ,ixfem ,ixlay ,nlay ,npt ,
287 . isubstack,stack ,drape ,nft ,thke ,
288 . nel ,thk_ly ,indx_drape,sedrape ,numel_drape)
289c
290 CALL usermat_shell (timers, elbuf_str ,mat_elem,
291 1 jft ,jlt ,nel ,pm ,for ,mom ,
292 2 gstr ,thk ,eint ,off ,dir_a ,dir_b ,
293 3 mat ,area ,exx ,eyy ,exy ,exz ,
294 4 eyz ,kxx ,kyy ,kxy ,geo ,thk_ly ,
295 5 pid ,tf ,npf ,dt1c ,dm ,
296 6 bufmat ,ssp ,rho ,viscmx ,ipla ,iofc ,
297 7 indxdel ,ngl ,thkly ,zcfac ,ng ,
298 8 shf ,sigy ,thk0 ,epsd_pg,
299 9 posly ,igeo ,ipm ,failwave,fwave_el,
300 a ifailure,aldt ,tempel ,die ,
301 b e1x ,e1y ,e1z ,e2x ,e2y ,e2z ,
302 c e3x ,e3y ,e3z ,table ,ixfem ,elcrkini,
303 d dir1_crk,dir2_crk,iparg ,jhbe ,ismstr ,jthe ,
304 e tens ,ir ,is ,nlay ,npt ,ixlay ,
305 f ixel ,f_def ,itask ,stack%PM ,isubstack,stack ,
306 g varnl ,nloc_dmg,nlay_max,laynpt_max,dt ,ssp_eq ,
307 j ipart ,ipartc )
308cc----------------------------
309 ELSE ! Radioss material laws , NPT > 0
310c----------------------------
311!
312! position, thickness and material in integration points
313!
314 CALL layini(elbuf_str,jft ,jlt ,geo ,igeo ,
315 . mat ,pid ,thkly ,matly ,posly ,
316 . igtyp ,ixfem ,ixlay ,nlay ,npt ,
317 . isubstack,stack ,drape ,nft ,thke ,
318 . nel ,thk_ly ,indx_drape, sedrape,numel_drape)
319c
320 CALL mulawc(timers,elbuf_str ,
321 1 jft ,jlt ,nel ,pm ,for ,mom ,
322 2 gstr ,thk ,eint ,off ,dir_a ,dir_b ,
323 3 mat ,area ,exx ,eyy ,exy ,exz ,
324 4 eyz ,kxx ,kyy ,kxy ,geo ,thk_ly ,
325 5 pid ,tf ,npf ,mtn ,dt1c ,dm ,
326 6 bufmat ,ssp ,rho ,viscmx ,ipla ,iofc ,
327 7 indxdel ,ngl ,thkly ,matly ,zcfac ,mat_elem,
328 8 shf ,gs ,sigy ,thk0 ,epsd_pg ,vol0 ,
329 9 posly ,igeo ,ipm ,failwave,fwave_el,
330 a ifailure,aldt ,tempel ,die ,fheat ,
331 b table ,ixfem ,elcrkini,
332 d sensors ,ng ,idt_therm,theaccfact,
333 e dir1_crk,dir2_crk,iparg ,jhbe ,ismstr ,jthe ,
334 f tens ,ir ,is ,nlay ,npt ,ixlay ,
335 g ixel ,ithk ,f_def ,ishplyxfem,
336 h itask ,isubstack,stack ,alpe ,
337 i ply_exx ,ply_eyy ,ply_exy ,ply_exz ,ply_eyz ,ply_f ,
338 j varnl ,etimp ,nloc_dmg,nlay_max,laynpt_max ,dt,
339 k ncycle ,snpc ,stf,impl_s ,imconv ,npropgi,
340 * npropmi ,npropm ,npropg,imon_mat,numgeo ,
341 * numstack, dt1 ,tt ,nxlaymax ,idel7nok,userl_avail,
342 * maxfunc,nummat,varnl_npttot, sbufmat ,sdir_a ,sdir_b ,nparg,
343 * idamp_freq_range,damp_buf ,ssp_eq ,ipart ,lipart1,
344 t ipartc ,npart)
345 ENDIF ! IF (NPT == 0)
346C----------------------------------------------------------------------
347 IF (iexpan > 0 .AND. jthe > 0. and. idt_therm==0) THEN
348 CALL thermexpc(elbuf_str,
349 1 jft ,jlt ,gbuf%FORTH ,for ,eint ,
350 2 off ,eth ,thk0 ,exx ,eyy ,
351 3 pm ,npt ,area ,a11 ,a12 ,
352 4 mat ,mtn ,gbuf%EINTTH ,dir_a ,ir ,
353 5 is ,nlay ,thk ,nel ,igtyp ,
354 6 npf , tf , ipm ,tempel ,dtemp,
355 7 thkly ,posly,mom, matly )
356 ENDIF
357
358 IF (jthe > 0 .AND. (mtn < 28 .OR. mtn == 32)) THEN
359 DO i=jft,jlt
360 die(i) = (eint(i,1) + eint(i,2) - die(i)) * pm(90,mat(1))
361 ENDDO
362 ENDIF
363 IF (jthe /= 0) THEN
364 gbuf%TEMP(1:nel) = tempel(1:nel)
365 ENDIF
366C-------------------------------------------------------------------
367C delamination for new formulation of shells
368C-----------------------------------------------
369 IF (ishplyxfem > 0) THEN
370 ipmat_iply = 2 + 2*npt
371 DO j=1,npt-1
372 DO i=jft,jlt
373 mat_iply(i,j) = stack%IGEO(ipmat_iply + j ,isubstack)
374 ENDDO
375 ENDDO
376 DO i=jft,jlt
377 epsyz(i)= gstr(i,4)
378 epszx(i)= gstr(i,5)
379 ENDDO
380c----------
381 CALL delamination(elbuf_str,mat_elem%MAT_PARAM,
382 . jft ,jlt ,ir ,is ,npt ,
383 . mat_iply ,ipm ,pm ,bufmat ,npf ,
384 . tf ,dt1c ,ngl ,off ,th_iply ,
385 . del_ply ,sig_iply ,offi ,a11_iply,for ,
386 . mom ,ply_f ,thk0 ,shf ,epszx ,
387 . epsyz ,area ,pid ,geo ,ssp ,
388 . posly ,thkly ,kxx ,kyy ,kxy ,
389 . exz ,eyz ,eint ,gstr ,nel ,
390 . nummat )
391
392 ENDIF ! PLYXFEM
393C---------------------------------------------------------
394 IF (impl_s > 0) THEN
395 IF (mtn /=78) etimp(jft:jlt) = zcfac(jft:jlt,1)
396 CALL put_etfac(nel ,etimp ,mtn)
397 END IF
398 DEALLOCATE(matly, thkly, posly, thk_ly)
399c-----------
400 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine delamination(elbuf_str, mat_param, jft, jlt, ir, is, npt, mat_iply, ipm, pm, bufmat, npf, tf, dt1c, ngl, off, th_iply, del_ply, sig, offi, a11, for, mom, ply_f, thk0, shf, exz, eyz, area, pid, geo, ssp, posly, thkly, kxx, kyy, kxy, dexz, deyz, eint, gstr, nel, nummat)
#define alpha
Definition eval.h:35
subroutine area(d1, x, x2, y, y2, eint, stif0)
subroutine layini(elbuf_str, jft, jlt, geo, igeo, mat, pid, thkly, matly, posly, igtyp, ixfem, ixlay, nlay, npt, isubstack, stack, drape, nft, thk, nel, ratio_thkly, indx_drape, sedrape, numel_drape)
Definition layini.F:47
#define max(a, b)
Definition macros.h:21
subroutine mulawglc(elbuf_str, jft, jlt, pm, for, mom, thk, eint, off, gstr, dir, shf, mat, area, exx, eyy, exy, nel, exz, eyz, kxx, kyy, kxy, dm, pid, tf, npf, mtn, dt1c, a1, bufmat, ssp, rho, viscmx, iofc, a2, indx, ngl, zcfac, gs, sigy, g, thk0, epsd_glob, ipla, igeo, ipm, table, ir, is, f_def, ismstr, nu, vol0, kfts, zshift, idamp_freq_range, mat_elem, damp_buf, for_g)
Definition mulawglc.F:59
for(i8=*sizetab-1;i8 >=0;i8--)
subroutine put_etfac(nel, et, mtn)
Definition put_etfac.F:36
subroutine thermexpc(elbuf_str, jft, jlt, forth, for, eint, off, eth, thk0, exx, eyy, pm, npt, area, a1, a2, mat, mtn, eintth, dir, ir, is, nlay, thk, nel, igtyp, npf, tf, ipm, tempel, dtemp, thkly, posly, mom, matly)
Definition thermexpc.F:40
subroutine usermat_shell(timers, elbuf_str, mat_elem, jft, jlt, nel, pm, for, mom, gstr, thk, eint, off, dir_a, dir_b, mat, area, exx, eyy, exy, exz, eyz, kxx, kyy, kxy, geo, thk_ly, pid, tf, npf, dt1c, dm, bufmat, ssp, rho, viscmx, ipla, iofc, indx, ngl, thkly, zcfac, ng, shf, sigy, thk0, epsd_pg, posly, igeo, ipm, failwave, fwave_el, ifailure, aldt, tempel, die, r11, r12, r13, r21, r22, r23, r31, r32, r33, table, ixfem, elcrkini, dir1_crk, dir2_crk, iparg, jhbe, ismstr, jthe, tensx, ir, is, nlay, npt, ixlay, ixel, f_def, itask, pm_stack, isubstack, stack, varnl, nloc_dmg, nlay_max, laynpt_max, dt, ssp_eq, ipart, ipartc)