44 SUBROUTINE intvo3(output, IPARI,X ,A ,
45 2 ICODT,FSAV ,MWA ,V ,MS ,
46 3 FSKYI,ISKY ,FCONT,FNCONT,FTCONT,
47 4 ICONTACT,RCONTACT,NUM_IMP,NS_IMP ,
48 5 NE_IMP ,STIFN,ITAB,INTBUF_TAB,H3D_DATA)
58#include "implicit_f.inc"
73 type(output_),
intent(inout) :: output
74 INTEGER IPARI(*), ICODT(*), MWA(*), ISKY(*),
76 INTEGER NUM_IMP,NS_IMP(*),NE_IMP(*),ITAB(*)
79 . x(*), a(3,*), fsav(*), v(3,*), ms(*),
80 . fskyi(lskyi,nfskyi),fcont(3,*), fncont(3,*), ftcont(3,*),
81 . rcontact(*),stifn(*)
83 TYPE(intbuf_struct_) INTBUF_TAB
84 TYPE(H3D_DATABASE) :: H3D_DATA
93 INTEGER IBC, NCIMP, NRTM4, NOINT, NGROUS, NGROUM, NG,IGIMP
94 INTEGER MFROT, IBAG, IADM, , IFT0
96 INTEGER,
DIMENSION(MVSIZ) :: IX11,IX12,IX13,IX14
97 my_real,
DIMENSION(MVSIZ) :: x11,x12,x13,x14,xi
98 my_real,
DIMENSION(MVSIZ) :: y11,y12,y13,y14,yi
99 my_real,
DIMENSION(MVSIZ) :: z11,z12,z13,z14,zi
100 my_real,
DIMENSION(MVSIZ) :: xface,n1,n2,n3
102 my_real,
DIMENSION(MVSIZ) :: x0,y0,z0,ans,stif
103 my_real,
DIMENSION(MVSIZ) :: xx1,xx2,xx3,xx4
104 my_real,
DIMENSION(MVSIZ) :: yy1,yy2,yy3,yy4
105 my_real,
DIMENSION(MVSIZ) :: zz1,zz2,zz3,zz4
106 my_real,
DIMENSION(MVSIZ) :: xi1,xi2,xi3,xi4
107 my_real,
DIMENSION(MVSIZ) :: yi1,yi2,yi3,yi4
108 my_real,
DIMENSION(MVSIZ) :: zi1,zi2,zi3,zi4
109 my_real,
DIMENSION(MVSIZ) :: xn1,xn2,xn3,xn4
110 my_real,
DIMENSION(MVSIZ) :: yn1,yn2,yn3,yn4
111 my_real,
DIMENSION(MVSIZ) :: zn1,zn2,zn3,zn4
112 my_real,
DIMENSION(MVSIZ) :: xp,yp,zp
113 my_real,
DIMENSION(MVSIZ) :: h1,h2,h3,h4
116 . startt, fric, gap, stopt,
117 . visc,viscf,fnor,depth
118 INTEGER :: NMN, NTY, NSN
119 INTEGER :: LFT, LLT, NFT
134 ngrous=1+(nsn-1)/nvsiz
135 ngroum=1+(nmn-1)/nvsiz
137 startt=intbuf_tab%VARIABLES(3)
138 stopt =intbuf_tab%VARIABLES(11)
142 fric =intbuf_tab%VARIABLES(1)
143 gap =intbuf_tab%VARIABLES(2)
144 visc =intbuf_tab%VARIABLES(14)
145 viscf=intbuf_tab%VARIABLES(15)
146 fnor =intbuf_tab%VARIABLES(4)
147 depth=intbuf_tab%VARIABLES(5)
155 llt=min0(nvsiz,nsn-nft)
157 1 x, intbuf_tab%IRECTM,intbuf_tab%LMSR, intbuf_tab%MSR,
158 2 intbuf_tab%NSV, intbuf_tab%ILOCS, intbuf_tab%NSEGM, xi,
159 3 yi, zi, xface, lft,
162 1 x, intbuf_tab%IRECTM,intbuf_tab%LMSR, intbuf_tab%MSR,
163 2 intbuf_tab%NSV, intbuf_tab%ILOCS, intbuf_tab%IRTLM, intbuf_tab%NSEGM,
164 3 xface, lft, llt, nft)
166 1 x, intbuf_tab%IRECTM,intbuf_tab%MSR, intbuf_tab%NSV,
167 2 intbuf_tab%IRTLM, ix11, ix12, ix13,
168 3 ix14, x11, x12, x13,
169 4 x14, y11, y12, y13,
170 5 y14, z11, z12, z13,
171 6 z14, lft, llt, nft)
173 1 x11, x12, x13, x14,
176 4 z13, z14, zi, xface,
179 7 xx1, xx2, xx3, xx4,
180 8 yy1, yy2, yy3, yy4,
181 9 zz1, zz2, zz3, zz4,
182 a xi1, xi2, xi3, xi4,
183 b yi1, yi2, yi3, yi4,
185 d xn1, xn2, xn3, xn4,
186 e yn1, yn2, yn3, yn4,
187 f zn1, zn2, zn3, zn4,
190 1 gap,
area, thk, alp,
193 1 igimp, nty, dist, x11,
195 3 y11, y12, y13, y14,
197 5 z14, zi, xface, n1,
203 CALL i3for3(output,lft ,llt ,nft ,
204 2 a ,intbuf_tab%MSR,intbuf_tab%NSV,intbuf_tab%IRTLM,intbuf_tab%STFM,
205 3 intbuf_tab%STFNS,ibc ,icodt ,1 ,fsav ,
206 4 igimp ,fskyi ,isky ,fcont ,h3d_data,
207 5 n1 ,n2 ,n3 ,ix11 ,ix12 ,
209 7 thk ,h1 ,h2 ,h3 ,h4 ,
210 8 xface ,stif ,xx3 ,yy3 ,zz3 ,
211 7 xx4 ,yy4 ,yi1 ,yi2 ,yi3 ,
212 8 zz4 ,zi1 ,zi2 ,zi3 ,xi1 ,
216 CALL i3fri3(output,lft ,llt ,nft ,x ,a ,
217 2 intbuf_tab%IRECTM,intbuf_tab%MSR,intbuf_tab%NSV,intbuf_tab%IRTLM,
218 3 nty,intbuf_tab%CSTS,intbuf_tab%IRTLOM,intbuf_tab%FRICOS,
219 4 intbuf_tab%VARIABLES(1),1,fsav,fskyi,isky,
220 5 fcont,h3d_data,n1 ,n2 ,n3 ,
221 6 ix11 ,ix12 ,ix13 ,ix14 ,h1 ,
222 7 h2 ,h3 ,h4 ,ssc ,ttc ,
223 8 xface ,stif ,xp ,yp ,zp ,
229 llt=min0(nvsiz,nmn-nft)
231 1 x, intbuf_tab%IRECTS,intbuf_tab%LNSV, intbuf_tab%NSV,
232 2 intbuf_tab%MSR, intbuf_tab%ILOCM, intbuf_tab%NSEGS, xi,
233 3 yi, zi, xface, lft,
236 1 x, intbuf_tab%IRECTS,intbuf_tab%LNSV, intbuf_tab%NSV,
237 2 intbuf_tab%MSR, intbuf_tab%ILOCM, intbuf_tab%IRTLS, intbuf_tab%NSEGS,
238 3 xface, lft, llt, nft)
240 1 x, intbuf_tab%IRECTS,intbuf_tab%NSV, intbuf_tab%MSR,
241 2 intbuf_tab%IRTLS, ix11, ix12, ix13,
242 3 ix14, x11, x12, x13,
243 4 x14, y11, y12, y13,
244 5 y14, z11, z12, z13,
245 6 z14, lft, llt, nft)
247 1 x11, x12, x13, x14,
250 4 z13, z14, zi, xface,
253 7 xx1, xx2, xx3, xx4,
254 8 yy1, yy2, yy3, yy4,
255 9 zz1, zz2, zz3, zz4,
256 a xi1, xi2, xi3, xi4,
257 b yi1, yi2, yi3, yi4,
258 c zi1, zi2, zi3, zi4,
259 d xn1, xn2, xn3, xn4,
260 e yn1, yn2, yn3, yn4,
261 f zn1, zn2, zn3, zn4,
264 1 gap,
area, thk, alp,
267 1 igimp, nty, dist, x11,
269 3 y11, y12, y13, y14,
271 5 z14, zi, xface, n1,
277 CALL i3for3(output, lft ,llt ,nft , a ,
278 2 intbuf_tab%NSV,intbuf_tab%MSR,intbuf_tab%IRTLS,intbuf_tab%STFS,
279 3 intbuf_tab%STFNM,ibc ,icodt ,-1 ,fsav ,
280 4 igimp ,fskyi ,isky ,fcont ,h3d_data,
281 5 n1 ,n2 ,n3 ,ix11 ,ix12 ,
283 7 thk ,h1 ,h2 ,h3 ,h4 ,
284 8 xface ,stif ,xx3 ,yy3 ,zz3 ,
285 7 xx4 ,yy4 ,yi1 ,yi2 ,yi3 ,
286 8 zz4 ,zi1 ,zi2 ,zi3 ,xi1 ,
291 CALL i3fri3(output, lft ,llt ,nft ,x ,a ,
292 2 intbuf_tab%IRECTS,intbuf_tab%NSV,intbuf_tab%MSR,intbuf_tab%IRTLS,
293 3 nty,intbuf_tab%CSTM,intbuf_tab%IRTLOS,intbuf_tab%FRICOM,
294 4 intbuf_tab%VARIABLES(1),-1 ,fsav ,fskyi ,isky ,fcont,h3d_data ,n1 ,n2 ,n3 ,
295 6 ix11 ,ix12 ,ix13 ,ix14 ,h1 ,
296 7 h2 ,h3 ,h4 ,ssc ,ttc ,
297 8 xface ,stif ,xp ,yp ,zp ,
313 llt=min0(nvsiz,nsn-nft)
315 1 x, intbuf_tab%IRECTM,intbuf_tab%LMSR, intbuf_tab%MSR,
316 2 intbuf_tab%NSV, intbuf_tab%ILOCS, intbuf_tab%NSEGM, xi,
317 3 yi, zi, xface, lft,
320 1 x, intbuf_tab%IRECTM,intbuf_tab%LMSR, intbuf_tab%MSR,
321 2 intbuf_tab%NSV, intbuf_tab%ILOCS, intbuf_tab%IRTLM, intbuf_tab%NSEGM,
322 3 xface, lft, llt, nft)
324 1 x, intbuf_tab%IRECTM,intbuf_tab%MSR, intbuf_tab%NSV,
325 2 intbuf_tab%IRTLM, ix11, ix12, ix13,
326 3 ix14, x11, x12, x13,
327 4 x14, y11, y12, y13,
328 5 y14, z11, z12, z13,
329 6 z14, lft, llt, nft)
331 1 x11, x12, x13, x14,
334 4 z13, z14, zi, xface,
337 7 xx1, xx2, xx3, xx4,
338 8 yy1, yy2, yy3, yy4,
339 9 zz1, zz2, zz3, zz4,
340 a xi1, xi2, xi3, xi4,
341 b yi1, yi2, yi3, yi4,
342 c zi1, zi2, zi3, zi4,
343 d xn1, xn2, xn3, xn4,
344 e yn1, yn2, yn3, yn4,
345 f zn1, zn2, zn3, zn4,
348 1 gap,
area, thk, alp,
351 1 igimp, nty, dist, x11,
353 3 y11, y12, y13, y14,
355 5 z14, zi, xface, n1,
361 CALL i5for3(output, lft ,llt ,nft , a ,
362 2 intbuf_tab%MSR,intbuf_tab%NSV,intbuf_tab%IRTLM,intbuf_tab%STFM,
363 3 intbuf_tab%STFNS,ibc ,icodt ,fsav ,igimp ,
364 4 fskyi ,isky ,fcont ,fncont ,icontact ,
365 5 ibag ,iadm ,h3d_data,
366 6 ix11 ,ix12 ,ix13 ,ix14 ,n1 ,
367 7 n2 ,n3 ,xface ,h1 ,h2 ,
368 8 h3 ,h4 ,thk ,ans ,stif ,
372 1 intbuf_tab%IRECTM,intbuf_tab%MSR, intbuf_tab%NSV, intbuf_tab%IRTLM,
373 2 num_imp, ns_imp, ne_imp, ans,
376 IF(fric==0.AND.mfrot==0)
GOTO 150
379 CALL i5fri3(output, lft ,llt ,nft ,ipari ,x ,a ,
380 2 intbuf_tab%IRECTM,intbuf_tab%MSR,intbuf_tab%NSV,intbuf_tab%IRTLM,
381 3 nty ,intbuf_tab%CSTS,intbuf_tab%IRTLOM,intbuf_tab%FRICOS,
382 4 fric ,1 ,fsav ,fskyi ,
383 5 isky ,fcont ,v ,intbuf_tab%VARIABLES(4),
384 6 intbuf_tab%FRIC_P,intbuf_tab%XFILTR,intbuf_tab%FTSAV,ftcont,h3d_data ,
386 7 n3 ,ix11 ,ix12 ,ix13 ,ix14 ,
387 8 xp ,yp ,zp ,ssc ,ttc ,
388 9 xface ,stif ,h1 ,h2 ,h3 ,
394 ELSEIF(nty==7.OR.nty==22)
THEN
subroutine i3cst3(x1, x2, x3, x4, xi, y1, y2, y3, y4, yi, z1, z2, z3, z4, zi, xface, n1, n2, n3, ssc, ttc, x0, y0, z0, xx1, xx2, xx3, xx4, yy1, yy2, yy3, yy4, zz1, zz2, zz3, zz4, xi1, xi2, xi3, xi4, yi1, yi2, yi3, yi4, zi1, zi2, zi3, zi4, xn1, xn2, xn3, xn4, yn1, yn2, yn3, yn4, zn1, zn2, zn3, zn4, area, lft, llt)
subroutine i3for3(output, lft, llt, nft, e, msr, nsv, irtl, stf, stfn, ibc, icodt, imast, fsav, igimp, fskyi, isky, fcont, h3d_data, n1, n2, n3, ix1, ix2, ix3, ix4, ans, thk, h1, h2, h3, h4, xface, stif, fni, fxi, fyi, fzi, fx1, fx2, fx3, fx4, fy1, fy2, fy3, fy4, fz1, fz2, fz3, fz4)