55 2 W ,SPBUF ,WA ,NLOC_DMG ,
56 3 ITAB ,PLD ,BUFMAT ,BUFGEO ,PARTSAV ,
57 4 FSAV ,DT2T ,IPARG ,NPC ,KXSP ,
58 5 IXSP ,NOD2SP ,NELTST ,ITYPTST ,IPART ,
59 6 IPARTSP ,FV ,NEL ,IPM ,GRESAV ,
60 7 GRTH ,IGRTH ,TABLE ,ISTRAIN ,VOLN ,
61 8 IGEO ,IEXPAN ,TEMP ,ITASK ,SPH2SOL ,
62 9 MAT_ELEM ,H3D_STRAIN,OUTPUT ,SNPC ,STF,
63 A SBUFMAT ,SVIS,NSVOIS,IDTMINS, IRESP,
64 . IDEL7NG, IDEL7NOK, IDTMIN, MAXFUNC,LIPART1,
65 . IMON_MAT, USERL_AVAIL, impl_s,
66 V idyna, DT , GLOB_THERM,sensors)
84#include "implicit_f.inc"
92#include "vect01_c.inc"
103 TYPE(timer_) ,
INTENT(INOUT) :: TIMERS
104 INTEGER,
INTENT(IN) :: SNPC
105 INTEGER,
INTENT(IN) :: STF
106 INTEGER,
INTENT(IN) :: SBUFMAT
107 INTEGER,
INTENT(IN) :: NSVOIS
108 INTEGER,
INTENT(IN) :: IDTMINS
109 INTEGER ,
INTENT(IN) ::
110 INTEGER ,
INTENT(IN) :: IDEL7NG
111 INTEGER ,
INTENT(INOUT) :: IDEL7NOK
112 integer,
dimension(102) :: IDTMIN
113 INTEGER ,
INTENT(IN) :: MAXFUNC
114 INTEGER ,
INTENT(IN) :: LIPART1
115 INTEGER,
INTENT(IN) :: IMPL_S
116 INTEGER,
INTENT(IN) :: IDYNA
117 INTEGER,
INTENT(IN) :: USERL_AVAIL
118 INTEGER,
INTENT(IN) :: IMON_MAT
119 INTEGER KXSP(,*),IXSP(KVOISPH,*),NOD2SP(*),(*),
120 . ipart(lipart1,*) ,ipartsp(*), npc(*), iparg(nparg,*),ng,
121 . neltst,ityptst,nel,grth(*),igrth(*) , istrain,
122 . ipm(npropmi,*),igeo(*),iexpan,itask,sph2sol(*),h3d_strain
124 . x(3,*) ,v(3,*) ,ms(*) ,
125 . pm(npropm,*),geo(npropg,*),bufmat(*) ,bufgeo(*) ,w(3,*) ,
126 . pld(*) ,fsav(nthvki,*) ,spbuf(nspbuf,*) ,
127 . wa(*) , partsav(*) ,dt2t, fv(*),
128 . gresav(*),voln(mvsiz),temp(*)
129 my_real,
DIMENSION(MVSIZ,6),
INTENT(INOUT) :: svis
130 TYPE (ELBUF_STRUCT_),
TARGET,
DIMENSION(NGROUP) :: ELBUF_TAB
131 TYPE (NLOCAL_STR_) ,
TARGET :: NLOC_DMG
132 TYPE(output_),
INTENT(INOUT) :: OUTPUT
133 TYPE (MAT_ELEM_) ,
INTENT(INOUT) :: MAT_ELEM
134 TYPE (DT_) ,
INTENT(IN) :: DT
135 type (glob_therm_) ,
intent(inout) :: glob_therm
136 type (sensors_) ,
intent(in) :: sensors
140 INTEGER NF1, IFLAG, NB3S, I, OFFSET, IPRT,ILAY
142 INTEGER MXT(MVSIZ),NGL(MVSIZ), IBIDON(1),IBID
144 . vd2(mvsiz) , dvol(mvsiz),deltax(mvsiz),
145 . vis(mvsiz) , qvis(mvsiz), cxx(mvsiz) ,
146 . s1(mvsiz) , s2(mvsiz) , s3(mvsiz) ,
147 . s4(mvsiz) , s5(mvsiz) , s6(mvsiz) ,
148 . dxx(mvsiz) , dyy(mvsiz) , dzz(mvsiz) ,
149 . d4(mvsiz) , d5(mvsiz) , d6(mvsiz) ,
150 . rx(mvsiz) , ry(mvsiz) , rz(mvsiz) ,
151 . sx(mvsiz) , sy(mvsiz) , sz(mvsiz) ,gama(mvsiz,6),
152 . vdx(mvsiz), vdy(mvsiz), vdz(mvsiz) ,ssp_eq(mvsiz),aire(mvsiz),
158 . wxx(mvsiz) , wyy(mvsiz) , wzz(mvsiz), bid(mvsiz)
164 INTEGER NC1(MVSIZ),NGEO(MVSIZ)
166 . OFF(MVSIZ) , RHOO(MVSIZ),
167 . VX1(MVSIZ), VY1(MVSIZ), VZ1(MVSIZ),
168 . DXY(MVSIZ),DYX(MVSIZ),
169 . dyz(mvsiz),dzy(mvsiz),
170 . dzx(mvsiz),dxz(mvsiz),die(mvsiz)
173 . sigy(mvsiz),et(mvsiz),
174 . r1_free(mvsiz),r3_free(mvsiz),r4_free(mvsiz)
177 .
DIMENSION(:),
POINTER :: eint
180 TYPE(G_BUFEL_) ,
POINTER :: GBUF
181 TYPE(L_BUFEL_) ,
POINTER :: LBUF
182 TYPE() :: ALE_CONNECT
187 sz_ix=numelq+numels+nsvois
191 gbuf => elbuf_tab(ng)%GBUF
192 lbuf => elbuf_tab(ng)%BUFLY(1)%LBUF(1,1,1)
199 1 kxsp(1,nf1), vd2, vis, gbuf%OFF,
200 2 off, nc1, ngl, mxt,
201 3 ngeo, ipart, ipartsp(nf1),nel)
205 1 spbuf, wa, rhoo, gbuf%RHO,
206 2 deltax, gbuf%OFF,dxx, dxy,
207 3 dxz, dyx, dyy, dyz,
208 4 dzx, dzy, dzz, mumax,
214 IF(jlag+jale+jeul/=0)
THEN
216 1 off, pm, gbuf%VOL, gbuf%EINT,
217 2 rhoo, gbuf%RHO, voln, dvol,
218 3 ngl, mxt, lft, llt,
223 1 dxx, dxy, dxz, dyx,
224 2 dyy, dyz, dzx, dzy,
226 4 wxx, wyy, wzz, nel)
230 1 gbuf%SIG,s1, s2, s3,
232 3 wyy, wzz, nel, mtn,
235 1 gbuf%GAMA,wxx, wyy, wzz,
236 2 gama, nel, lft, llt,
241 1 kxsp, temp, tempel, lft,
250 CALL mmain(timers, output,
251 1 elbuf_tab, ng, pm, geo,
252 2 ale_connect, ibidon, iparg,
253 3 v, pld, npc, bufmat,
254 4 sti, x, dt2t, neltst,
255 5 ityptst, offset, nel, w,
256 6 off, ngeo, mxt, ngl,
257 7 voln, vd2, dvol, deltax,
258 8 vis, qvis, cxx, s1,
264 e vdx, vdy, vdz, mumax,
265 f ssp_eq, aire, sigy, et,
266 g r1_free, lbuf%PLA, r3_free, r4_free,
267 h dxx, dxy, dxz, dyx,
268 i dyy, dyz, dzx, dzy,
269 j dzz, ipm, gama, bid,
270 k bid, bid, bid, bid,
271 l bid, bid, istrain, tempel,
272 m die, iexpan, ilay, bid,
274 o table, bid, bid, bid,
275 p bid, iparg(1,ng), igeo, bid,
276 q itask, nloc_dmg, varnl, mat_elem,
277 r h3d_strain, jplasol, jsph, sz_r1_free,
278 s snpc, stf, sbufmat, glob_therm,
279 * svis, sz_ix, iresp,
280 t n2d, th_strain, ngroup, tt,
281 . dt1, ntable, numelq, nummat,
282 . numgeo, numnod, numels,
283 . idel7nok, idtmin, maxfunc,
284 . imon_mat, userl_avail, impl_s,
285 . idyna, dt , bid ,sensors)
288 CALL sstra3(dxx,dyy ,dzz ,d4 ,d5 ,
289 . d6 ,lbuf%STRA,wxx ,wyy ,wzz ,
290 . off,nel, iparg(37,ng))
296 1 gbuf%OFF, off, kxsp(1,nf1), sph2sol(nf1),
301 iflag=mod(ncycle,ncpri)
302 IF(iflag==0.OR.tt>=output%TH%THIS.OR.mdess/=0 .OR.tt>=tabfis(1).
303 . or.tt>=tabfis(2).OR.tt>=tabfis(3).OR.tt>=tabfis(4).
304 . or.tt>=tabfis(5).OR.tt>=tabfis(6).OR.tt>=tabfis(7).
305 . or.tt>=tabfis(8).OR.tt>=tabfis(9).OR.tt>=tabfis(10))
THEN
307 eint => elbuf_tab(ng)%GBUF%EINS(1:nel)
309 eint => elbuf_tab(ng)%GBUF%EINT(1:nel)
312 1 v, partsav, nc1, eint,
313 2 gbuf%RHO, gbuf%RK, gbuf%VOL, voln,
314 3 ipartsp(nf1),gbuf%OFF, gresav, grth,
315 4 igrth(nf1), gbuf%EINTTH, iexpan, x,
316 5 lft, llt, jtur, igre)
322 1 gbuf%SIG,qvis, sti, cxx,
323 2 wa, ssp_eq, die, nel,
subroutine mmain(pm, elbuf_str, ix, nix, x, geo, iparg, nel, skew, bufmat, ipart, ipartel, nummat, matparam, imat, ipm, ngl, pid, npf, tf, mfxx, mfxy, mfxz, mfyx, mfyy, mfyz, mfzx, mfzy, mfzz, rx, ry, rz, sx, sy, sz, gama, voln, dvol, s1, s2, s3, s4, s5, s6, dxx, dyy, dzz, d4, d5, d6, wxx, wyy, wzz)
subroutine spstres(timers, elbuf_tab, ng, pm, geo, x, v, ms, w, spbuf, wa, nloc_dmg, itab, pld, bufmat, bufgeo, partsav, fsav, dt2t, iparg, npc, kxsp, ixsp, nod2sp, neltst, ityptst, ipart, ipartsp, fv, nel, ipm, gresav, grth, igrth, table, istrain, voln, igeo, iexpan, temp, itask, sph2sol, mat_elem, h3d_strain, output, snpc, stf, sbufmat, svis, nsvois, idtmins, iresp, idel7ng, idel7nok, idtmin, maxfunc, lipart1, imon_mat, userl_avail, impl_s, idyna, dt, glob_therm, sensors)