OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
i21mainf.F File Reference
#include "implicit_f.inc"
#include "comlock.inc"
#include "mvsiz_p.inc"
#include "com04_c.inc"
#include "com08_c.inc"
#include "impl1_c.inc"
#include "param_c.inc"
#include "parit_c.inc"
#include "sms_c.inc"
#include "task_c.inc"
#include "timeri_c.inc"
#include "warn_c.inc"
#include "macro.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine i21mainf (timers, ipari, intbuf_tab, x, a, icodt, fsav, v, ms, itab, stifn, fskyi, isky, fcont, nin, lindmax, jtask, nb_jlt, nb_jlt_new, nb_stok_n, nstrf, secfcum, icontact, viscn, num_imp, ns_imp, ne_imp, ind_imp, nrtmdim, fncont, ftcont, rcontact, acontact, pcontact, intstamp, weight, temp, fthe, ftheskyi, mskyi_sms, iskyi_sms, nodnx_sms, nodglob, npc, tf, qfricint, ncont, indexcont, tagcont, condn, condnskyi, dt2t, neltst, ityptst, kinet, fbsav6, isensint, dimfb, niskyfi, h3d_data, pskids, tagncont, kloadpinter, loadpinter, loadp_hyd_inter, dgaploadint, s_loadpinter, interefric, nodadt_therm, theaccfact, intbuf_fric_tab)

Function/Subroutine Documentation

◆ i21mainf()

subroutine i21mainf ( type(timer_), intent(inout) timers,
integer, dimension(npari,ninter) ipari,
type(intbuf_struct_) intbuf_tab,
x,
a,
integer, dimension(*) icodt,
fsav,
v,
ms,
integer, dimension(*) itab,
stifn,
fskyi,
integer, dimension(*) isky,
fcont,
integer nin,
integer lindmax,
integer jtask,
integer nb_jlt,
integer nb_jlt_new,
integer nb_stok_n,
integer, dimension(*) nstrf,
secfcum,
integer, dimension(*) icontact,
viscn,
integer num_imp,
integer, dimension(*) ns_imp,
integer, dimension(*) ne_imp,
integer, dimension(*) ind_imp,
integer nrtmdim,
fncont,
ftcont,
rcontact,
acontact,
pcontact,
type(intstamp_data) intstamp,
integer, dimension(*) weight,
temp,
fthe,
ftheskyi,
mskyi_sms,
integer, dimension(*) iskyi_sms,
integer, dimension(*) nodnx_sms,
integer, dimension(*) nodglob,
integer, dimension(*) npc,
tf,
qfricint,
integer ncont,
integer, dimension(*) indexcont,
integer, dimension(*) tagcont,
condn,
condnskyi,
dt2t,
integer neltst,
integer ityptst,
integer, dimension(*) kinet,
double precision, dimension(12,6,dimfb) fbsav6,
integer, dimension(*) isensint,
integer dimfb,
integer niskyfi,
type(h3d_database) h3d_data,
pskids,
integer, dimension(nloadp_hyd_inter,numnod) tagncont,
integer, dimension(ninter+1), intent(in) kloadpinter,
integer, dimension(s_loadpinter), intent(in) loadpinter,
integer, dimension(nloadp_hyd), intent(in) loadp_hyd_inter,
dimension(s_loadpinter), intent(in) dgaploadint,
integer, intent(in) s_loadpinter,
integer, intent(in) interefric,
integer, intent(in) nodadt_therm,
intent(in) theaccfact,
type(intbuf_fric_struct_), dimension(ninterfric), target intbuf_fric_tab )

Definition at line 50 of file i21mainf.F.

66C-----------------------------------------------
67C M o d u l e s
68C-----------------------------------------------
69 USE timer_mod
70 USE intstamp_mod
71 USE intbufdef_mod
72 USE h3d_mod
73 USE message_mod
74 USE outputs_mod
75 USE my_alloc_mod
76 USE intbuf_fric_mod
77C-----------------------------------------------
78C I m p l i c i t T y p e s
79C-----------------------------------------------
80#include "implicit_f.inc"
81#include "comlock.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 "com04_c.inc"
90#include "com08_c.inc"
91#include "impl1_c.inc"
92#include "param_c.inc"
93#include "parit_c.inc"
94#include "sms_c.inc"
95#include "task_c.inc"
96#include "timeri_c.inc"
97#include "warn_c.inc"
98#include "macro.inc"
99C-----------------------------------------------
100C D u m m y A r g u m e n t s
101C-----------------------------------------------
102 TYPE(TIMER_), INTENT(INOUT) :: TIMERS
103 INTEGER NELTST, ITYPTST, NIN, NSTRF(*), NRTMDIM
104 INTEGER IPARI(NPARI,NINTER), ICODT(*),ICONTACT(*),
105 . ITAB(*), ISKY(*), ISKYI_SMS(*), NODNX_SMS(*),
106 . TAGMSR_I21_SMS, NODGLOB(*), NPC(*),INDEXCONT(*),
107 . TAGCONT(*),KINET(*),
108 . TAGNCONT(NLOADP_HYD_INTER,NUMNOD)
109 INTEGER NB_JLT,NB_JLT_NEW,NB_STOK_N,JTASK,
110 . LINDMAX, NCONT,NISKYFI
111 INTEGER NUM_IMP,NS_IMP(*),NE_IMP(*),IND_IMP(*), WEIGHT(*),
112 . ISENSINT(*),DIMFB
113 INTEGER , INTENT(IN) :: S_LOADPINTER
114 INTEGER , INTENT(IN) :: KLOADPINTER(NINTER+1)
115 INTEGER , INTENT(IN) :: LOADPINTER(S_LOADPINTER)
116 INTEGER , INTENT(IN) :: LOADP_HYD_INTER(NLOADP_HYD)
117 INTEGER , INTENT(IN) :: INTEREFRIC
118 INTEGER , INTENT(IN) :: NODADT_THERM
119 !
120 my_real , intent(in) :: theaccfact
121 my_real , INTENT(IN) :: dgaploadint(s_loadpinter)
122 my_real
123 . x(*), a(3,*), fsav(*), v(3,*),
124 . ms(*),stifn(*),fskyi(lskyi,4), fcont(3,*),
125 . secfcum(7,numnod,nsect), viscn(*),
126 . fncont(3,*), ftcont(3,*), rcontact(*), acontact(*),
127 . pcontact(*), temp(*), fthe(*), ftheskyi(lskyi), mskyi_sms(*),
128 . tf(*), qfricint(*),condn(*),condnskyi(lskyi), pskids(*), dt2t
129 DOUBLE PRECISION FBSAV6(12,6,DIMFB)
130 TYPE(INTSTAMP_DATA) INTSTAMP
131 TYPE(INTBUF_STRUCT_) INTBUF_TAB
132 TYPE(H3D_DATABASE) :: H3D_DATA
133 TYPE(INTBUF_FRIC_STRUCT_), TARGET, DIMENSION(NINTERFRIC) :: INTBUF_FRIC_TAB
134C-----------------------------------------------
135C L o c a l V a r i a b l e s
136C-----------------------------------------------
137 INTEGER I, I_STOK, JLT_NEW, JLT , NFT, J,
138 . IBC, NOINT, NSEG, ISECIN, IBAG, IADM,
139 . IGAP, INACTI, IFQ, MFROT, IGSTI, NISUB,
140 . NB_LOC, I_STOK_LOC,DEBUT,
141 . INTTH,IFORM, NCAND, MSTR, ILEV, IKTHE, IROT, H,
142 . IFORM_THE,INVN,IFTLIM, IERROR, NINSKID,INTFRIC,
143 . NSETPRTS ,NPARTFRIC,JJ,IORTHFRIC,NTY
144 INTEGER IX1(MVSIZ), IX2(MVSIZ), IX3(MVSIZ), IX4(MVSIZ),
145 . NSVG(MVSIZ),
146 . CAND_N_N(MVSIZ), CAND_E_N(MVSIZ),
147 . NSMS(MVSIZ)
148 INTEGER,DIMENSION(:),ALLOCATABLE :: INDEX2
149 INTEGER :: NSN
150C REAL
151 my_real
152 . startt, fric, gap, stopt,
153 . visc,stiglo,gapmin,viscf,
154 . kmin, kmax, gapmax, kthe, xthe, tint, rhoh, dti ,pmaxskid
155C-----------------------------------------------
156C REAL
157 my_real
158 . lb(mvsiz), lc(mvsiz),
159 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
160 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
161 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
162 . xi(mvsiz), yi(mvsiz), zi(mvsiz), stif(mvsiz),
163 . nx(mvsiz), ny(mvsiz), nz(mvsiz), pene(mvsiz),
164 . gapv(mvsiz),vxi(mvsiz),vyi(mvsiz),vzi(mvsiz),msi(mvsiz),
165 . gap0(mvsiz), area0(mvsiz), tempi(mvsiz), phi(mvsiz),
166 . mxi(mvsiz), myi(mvsiz), mzi(mvsiz), stri(mvsiz),
167 . asi(mvsiz), bsi(mvsiz),dist(mvsiz),
168 . xp(mvsiz), yp(mvsiz), zp(mvsiz), kt(mvsiz), c(mvsiz),
169 . penrad(mvsiz), tempm(mvsiz),efrict(mvsiz),condint(mvsiz),
170 . h1(mvsiz), h2(mvsiz), h3(mvsiz), h4(mvsiz),
171 . phi1(mvsiz),phi2(mvsiz),phi3(mvsiz),phi4(mvsiz),pratio(mvsiz),
172 . efric_l(mvsiz)
173 my_real
174 . rcurvi(mvsiz), anglmi(mvsiz), anglt, padm
175 INTEGER NRTMFT, NRTMLT, NRADM, ITRIA(MVSIZ)
176 my_real
177 . fni(mvsiz),
178 . fxt(mvsiz), fyt(mvsiz), fzt(mvsiz),
179 . fxn(mvsiz), fyn(mvsiz), fzn(mvsiz),
180 . vxm, vym, vzm, fx, fy, fz, stf, pmax,
181 . xg(3), rot(9), wxm, wym, wzm, frad, drad, fheat, xfric,dcond
182 INTEGER ICURV,SFSAVPARIT,IFRIC,FCOND
183 my_real
184 . , DIMENSION(:,:,:), ALLOCATABLE :: fsavparit
185 my_real
186 . fric_coefs(mvsiz,10),viscffric(mvsiz),fricc(mvsiz)
187
188 INTEGER IPARTFRICSI(MVSIZ), IPARTFRICMI(MVSIZ)
189
190 INTEGER, DIMENSION(:) ,POINTER :: TABCOUPLEPARTS_FRIC
191 INTEGER, DIMENSION(:) ,POINTER :: TABPARTS_FRIC
192 INTEGER, DIMENSION(:) ,POINTER :: ADPARTS_FRIC
193 INTEGER, DIMENSION(:) ,POINTER :: IFRICORTH
194 my_real, DIMENSION(:) ,POINTER :: tabcoef_fric
195
196 INTEGER,TARGET, DIMENSION(1):: TABCOUPLEPARTS_FRIC_BID
197 INTEGER,TARGET, DIMENSION(1):: TABPARTS_FRIC_BID
198 INTEGER,TARGET, DIMENSION(1):: ADPARTS_FRIC_BID
199 INTEGER,TARGET, DIMENSION(1):: IFRICORTH_BID
200 my_real,TARGET, DIMENSION(1):: tabcoef_fric_bid
201C----------------------------------------------------
202 CALL my_alloc(index2,lindmax)
203C----------------------------------------------------
204C
205 nsn =ipari(5,nin)
206 ibc =ipari(11,nin)
207 IF(ipari(33,nin)==1) RETURN
208 noint =ipari(15,nin)
209 ilev =ipari(20,nin)
210 igap =ipari(21,nin)
211 inacti=ipari(22,nin)
212 isecin=ipari(28,nin)
213 mfrot =ipari(30,nin)
214 ifq =ipari(31,nin)
215 ibag =ipari(32,nin)
216 igsti=ipari(34,nin)
217 nisub =ipari(36,nin)
218 icurv =ipari(39,nin)
219C adaptive meshing
220 iadm =ipari(44,nin)
221 nradm=ipari(49,nin)
222 padm =intbuf_tab%VARIABLES(24)
223 anglt=intbuf_tab%VARIABLES(25)
224C heat interface
225 intth = ipari(47,nin)
226 ikthe = ipari(42,nin)
227 iform_the = ipari(48,nin)
228 kthe = intbuf_tab%VARIABLES(20)
229 xthe = intbuf_tab%VARIABLES(30)
230 tint = intbuf_tab%VARIABLES(21)
231 frad = intbuf_tab%VARIABLES(31)
232 drad = intbuf_tab%VARIABLES(32)
233 fcond = ipari(53,nin) ! function of variation of heat exchange as funct of distance
234 dcond = intbuf_tab%VARIABLES(36) ! max conduction distance
235C
236 mstr=intstamp%MSR
237C
238 stiglo=-intbuf_tab%STFAC(1)
239 startt=intbuf_tab%VARIABLES(3)
240 stopt =intbuf_tab%VARIABLES(11)
241 IF(startt>tt) RETURN
242 IF(tt>stopt) RETURN
243C
244 fric =intbuf_tab%VARIABLES(1)
245 gap =intbuf_tab%VARIABLES(2)
246 gapmin=intbuf_tab%VARIABLES(13)
247 visc =intbuf_tab%VARIABLES(14)
248 ifric =ipari(50,nin)
249 xfric =intbuf_tab%VARIABLES(34)
250C
251 pmax =intbuf_tab%VARIABLES(15)
252C
253 gapmax=intbuf_tab%VARIABLES(16)
254 kmin =intbuf_tab%VARIABLES(17)
255 kmax =intbuf_tab%VARIABLES(18)
256C
257 fheat =intbuf_tab%VARIABLES(33)
258C
259 invn =ipari(51,nin) ! Flag to detect inverted normals
260C
261 iftlim =ipari(52,nin) ! Flag to limit tangential force using YLD/sqrt(3)
262C
263 vxm=intstamp%V(1)
264 vym=intstamp%V(2)
265 vzm=intstamp%V(3)
266 wxm=intstamp%VR(1)
267 wym=intstamp%VR(2)
268 wzm=intstamp%VR(3)
269 irot=intstamp%IROT
270 xg(1:3) =intstamp%XG(1:3)
271 rot(1:9)=intstamp%ROT(1:9)
272
273 ninskid = 0
274 IF(h3d_data%N_SCAL_SKID > 0) THEN
275 ninskid = h3d_data%N_SKID_INTER(nin)
276 ENDIF
277 pmaxskid=intbuf_tab%VARIABLES(35)
278
279C--- Corresponding Friction model
280 intfric=ipari(72,nin)
281 nsetprts = 0
282 npartfric = 0
283 IF(intfric /= 0) THEN
284 tabcoupleparts_fric => intbuf_fric_tab(intfric)%TABCOUPLEPARTS_FRIC
285 tabcoef_fric => intbuf_fric_tab(intfric)%TABCOEF_FRIC
286 tabparts_fric => intbuf_fric_tab(intfric)%TABPARTS_FRIC
287 adparts_fric => intbuf_fric_tab(intfric)%ADPARTS_FRIC
288 nsetprts = intbuf_fric_tab(intfric)%NSETPRTS
289 npartfric = intbuf_fric_tab(intfric)%S_TABPARTS_FRIC
290 ELSE
291 tabcoupleparts_fric => tabcoupleparts_fric_bid
292 tabparts_fric => tabparts_fric_bid
293 tabcoef_fric => tabcoef_fric_bid
294 adparts_fric => adparts_fric_bid
295 ifricorth => ifricorth_bid
296 ENDIF
297C
298c----------------------------------------------------
299C IADM!=0 + Icurv!=0 non available (starter error).
300c----------------------------------------------------
301 i_stok = intbuf_tab%I_STOK(1)
302
303C
304C decoupage statique
305 nb_loc = i_stok / nthread
306 IF (jtask==nthread) THEN
307 i_stok_loc = i_stok-nb_loc*(nthread-1)
308 ELSE
309 i_stok_loc = nb_loc
310 ENDIF
311 debut = (jtask-1)*nb_loc
312C
313 i_stok = 0
314C
315 IF (impl_s==1) THEN
316 num_imp = 0
317 visc =zero
318 ENDIF
319C
320 DO i = debut+1, debut+i_stok_loc
321 j=intbuf_tab%CAND_N(i)
322C irtlm(1,cand_n) == cand_e
323 IF(abs(intbuf_tab%IRTLM(1+2*(j-1)))==intbuf_tab%CAND_E(i)) THEN
324 i_stok = i_stok + 1
325 index2(i_stok) = i
326c INTBUF_TAB%CAND_N(I) = -INTBUF_TAB%CAND_N(I)
327 ENDIF
328 ENDDO
329C
330c------------------------------------------------
331C
332 sfsavparit = 0
333 DO i=1,nisub+1
334 IF(isensint(i)/=0) THEN
335 sfsavparit = sfsavparit + 1
336 ENDIF
337 ENDDO
338 IF (sfsavparit /= 0) THEN
339 ALLOCATE(fsavparit(nisub+1,11,i_stok),stat=ierror)
340 IF(ierror/=0) THEN
341 CALL ancmsg(msgid=19,anmode=aninfo,
342 . c1='(/INTER/TYPE21)')
343 CALL arret(2)
344 ENDIF
345 DO j=1,i_stok
346 DO i=1,11
347 DO h=1,nisub+1
348 fsavparit(h,i,j) = zero
349 ENDDO
350 ENDDO
351 ENDDO
352 ELSE
353 ALLOCATE(fsavparit(0,0,0),stat=ierror)
354 IF(ierror/=0) THEN
355 CALL ancmsg(msgid=19,anmode=aninfo,
356 . c1='(/INTER/TYPE21)')
357 CALL arret(2)
358 ENDIF
359 ENDIF
360c
361c------------------------------------------------
362 IF (debug(3)>=1) THEN
363 nb_jlt = nb_jlt + i_stok_loc
364 nb_stok_n = nb_stok_n + i_stok
365 ENDIF
366C
367 DO nft = 0 , i_stok - 1 , nvsiz
368 jlt = min( nvsiz, i_stok - nft )
369C preparation candidats retenus
370 CALL i7cdcor3(
371 1 jlt,index2(nft+1),intbuf_tab%CAND_E,intbuf_tab%CAND_N,
372 2 cand_e_n,cand_n_n)
373C cand_n et cand_e remplace par cand_n_n et cand_e_n
374 CALL i21cor3(
375 1 jlt ,nin ,x ,intbuf_tab%IRECTM,nsn ,
376 2 intbuf_tab%NSV,cand_e_n ,cand_n_n ,intbuf_tab%STF,
377 + intbuf_tab%STFNS,
378 3 intbuf_tab%XM0,intbuf_tab%NOD_NORMAL,intbuf_tab%IRTLM,intbuf_tab%CSTS,
379 + intbuf_tab%MSR_L,
380 4 ms ,v ,xi ,yi ,zi ,
381 5 ix1 ,ix2 ,ix3 ,ix4 ,nsvg ,
382 6 igsti ,stif ,kmin ,kmax ,igap ,
383 7 gap ,intbuf_tab%GAP_S,gapv ,gapmax ,gapmin ,
384 8 nx ,ny ,nz ,pene ,vxm ,
385 9 vym ,vzm ,vxi ,vyi ,vzi ,
386 a msi ,itria ,lb ,lc ,iadm ,
387 b intbuf_tab%RCURV,intbuf_tab%ANGLM,nradm ,anglt ,rcurvi,
388 c anglmi ,fxt ,fyt ,fzt ,intbuf_tab%FTSAVX,
389 d intbuf_tab%FTSAVY,intbuf_tab%FTSAVZ ,intbuf_tab%GAP_S(1+nsn),
390 . intbuf_tab%AREAS,gap0 ,
391 e area0 ,intth ,temp ,tempi ,irot ,
392 f xg ,rot ,intbuf_tab%AS,intbuf_tab%BS,asi ,
393 g bsi ,xp ,yp ,zp ,nodnx_sms ,
394 h nsms ,mstr ,intbuf_tab%PENIS,intbuf_tab%IFPEN,ilev,
395 i x1 ,y1 ,z1 ,x2 ,y2 ,
396 j z2 ,x3 ,y3 ,z3 ,x4 ,
397 k y4 ,z4 ,drad ,penrad ,tint ,
398 l tempm ,iform_the ,h1 ,h2 ,h3 ,
399 m h4 ,dist ,itab ,noint ,intbuf_tab%VARIABLES(23),
400 n invn , intfric,intbuf_tab%IPARTFRICS,ipartfricsi,intbuf_tab%IPARTFRICM,
401 o ipartfricmi,ipari(5,nin) )
402
403C-------------------------------------------------------------------------------
404C Friction model : computation of friction coefficients based on Material of connected Parts
405C-------------------------------------------------------------------------------
406 IF(jtask==1) CALL startime(timers,macro_timer_fric)
407 viscf = zero
408 iorthfric = 0
409 jj = 0
410 nty = 21
412 1 intfric ,jlt ,ipartfricsi ,ipartfricmi ,adparts_fric ,
413 2 nsetprts ,tabcoupleparts_fric,npartfric,tabparts_fric,tabcoef_fric ,
414 3 fric ,viscf ,intbuf_tab%FRIC_P,fric_coefs , fricc ,
415 4 viscffric ,nty ,mfrot ,iorthfric ,ifric ,
416 5 jj , tint ,tempi ,npc ,tf ,
417 6 temp , h1 ,h2 ,h3 ,h4 ,
418 7 ix1 , ix2 ,ix3 ,ix4 ,iform )
419
420 IF(jtask==1) CALL stoptime(timers,macro_timer_fric)
421
422 IF (imonm > 0 .AND. jtask == 1) CALL startime(timers,20)
423
424 ipari(29,nin) = 1
425 IF (debug(3)>=1)
426 . nb_jlt_new = nb_jlt_new + jlt
427C
428 CALL i21for3(
429 1 jlt ,nin ,noint ,ibc ,icodt ,
430 2 fsav ,gap ,stiglo ,visc ,inacti ,
431 3 mfrot ,ifq ,ibag ,iadm ,ipari(39,nin) ,
432 4 stif ,gapv ,itab ,intbuf_tab%PENIS,intbuf_tab%ALPHA0,
433 5 intbuf_tab%IFPEN ,icontact ,rcontact,acontact ,pcontact,
434 6 nsvg ,x1 ,y1 ,z1 ,x2 ,
435 7 y2 ,z2 ,x3 ,y3 ,z3 ,
436 8 x4 ,y4 ,z4 ,xi ,yi ,
437 9 zi ,vxi ,vyi ,vzi ,msi ,
438 a vxm ,vym ,vzm ,nx ,ny ,
439 b nz ,pene ,fxt ,fyt ,fzt ,
440 c fxn ,fyn ,fzn ,rcurvi ,anglmi ,
441 d padm ,cand_n_n,weight ,igap ,gap0 ,
442 e area0 ,pmax ,irot ,xg ,mxi ,
443 g myi ,mzi ,stri ,wxm ,wym ,
444 h wzm ,xp ,yp ,zp ,kt ,
445 i c ,ilev ,fni ,intth ,fheat ,
446 j efrict ,qfricint(nin),ifric ,xfric ,tempi ,
447 k tempm ,npc ,tf ,ix1 ,ix2 ,
448 l ix3 ,ix4 ,dt2t ,neltst ,ityptst ,
449 m kinet ,nisub ,isensint ,fsavparit,nft ,
450 n iftlim ,ninskid ,pratio ,pmaxskid ,interefric ,
451 o efric_l ,fricc ,fric_coefs)
452C
453 IF( intth > 0 ) THEN
454 CALL i21therm(jlt ,xi ,yi ,zi ,kthe ,
455 2 tempi ,phi ,area0 ,noint ,asi ,
456 3 bsi ,gapv ,pene ,ikthe ,xthe ,
457 4 fni ,npc ,tf ,frad ,drad ,
458 5 penrad ,tempm ,fheat ,efrict,condint,
459 6 iform_the,h1 ,h2 ,h3 ,h4 ,
460 7 phi1 ,phi2 ,phi3 ,phi4 ,x1 ,
461 8 y1 ,z1 ,x2 ,y2 ,z2 ,
462 9 x3 ,y3 ,z3 ,x4 ,y4 ,
463 a z4 ,itab ,nsvg ,intbuf_tab%MSR_L,ix1 ,
464 b ix2 ,ix3 ,ix4 ,temp ,fcond ,
465 c dcond ,theaccfact)
466 ENDIF
467C
468 IF(idtmins==2.OR.idtmins_int/=0)THEN
469 dti=dt2t
470 CALL i21sms2(jlt ,mstr ,nsvg ,nin ,noint ,
471 2 mskyi_sms ,iskyi_sms,nsms ,kt ,c ,
472 3 dti )
473 IF(dti<dt2t)THEN
474 dt2t = dti
475 neltst = noint
476 ityptst = 10
477 ENDIF
478 END IF
479C
480 IF(idtmins_int/=0)THEN
481 stif(1:jlt)=zero
482 END IF
483C
484 CALL i21ass3(jlt ,a ,nin ,noint ,fxn ,
485 2 fyn ,fzn ,fxt ,fyt ,fzt ,
486 3 ix1 ,ix2 ,ix3 ,ix4 ,nsvg ,
487 4 fcont ,fncont ,ftcont ,lb ,lc ,
488 5 itria ,stifn ,stif ,fskyi ,isky ,
489 6 isecin ,nstrf ,secfcum ,intbuf_tab%FTSAVX,
490 . intbuf_tab%FTSAVY,
491 7 intbuf_tab%FTSAVZ ,cand_n_n ,intstamp,weight ,
492 . intbuf_tab%MSR21,
493 8 intth ,phi ,fthe ,ftheskyi ,mxi ,
494 9 myi ,mzi ,stri ,nodglob ,ncont ,
495 a indexcont,tagcont ,condn ,condint ,condnskyi,
496 b iform_the, phi1 ,phi2 ,phi3 ,phi4 ,
497 c h1 ,h2 ,h3 ,h4 ,niskyfi ,
498 d intbuf_tab%MSR_L ,itab ,h3d_data ,ninskid ,
499 e pratio ,h3d_data%N_SCAL_SKID,pskids ,ipari(95,nin),
500 f tagncont ,kloadpinter,loadpinter ,loadp_hyd_inter,
501 g dgaploadint,dist,gapv,s_loadpinter ,efric_l ,
502 h fheat ,efrict ,interefric ,
503 . nodadt_therm)
504C
505 IF (imonm > 0 .AND. jtask == 1) CALL stoptime(timers,20)
506C
507 ENDDO
508
509c
510 IF (sfsavparit /= 0)THEN
511 CALL sum_6_float_sens(fsavparit, nisub+1, 11, i_stok,1,i_stok,
512 . fbsav6, 12, 6, dimfb, isensint )
513 ENDIF
514 IF (ALLOCATED(fsavparit)) DEALLOCATE (fsavparit)
515 DEALLOCATE(index2)
516C
517 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine frictionparts_model_isot(intfric, jlt, ipartfricsi, ipartfricmi, adparts_fric, nset, tabcoupleparts_fric, npartfric, tabparts_fric, tabcoef_fric, fric, viscf, frot_p, fric_coefs, fricc, viscffric, nty, mfrot, iorthfric, ifric, jlt_tied, tint, tempi, npc, tf, temp, h1, h2, h3, h4, ix1, ix2, ix3, ix4, iform)
subroutine i21ass3(jlt, a, nin, noint, fxn, fyn, fzn, fxt, fyt, fzt, ix1, ix2, ix3, ix4, nsvg, fcont, fncont, ftcont, lb, lc, itria, stifn, stif, fskyi, isky, isecin, nstrf, secfcum, ftxsav, ftysav, ftzsav, cand_n, intstamp, weight, msr, intth, phi, fthe, ftheskyi, mxi, myi, mzi, stri, nodglob, ncont, indexcont, tagcont, condn, condint, condnskyi, iform, phi1, phi2, phi3, phi4, h1, h2, h3, h4, niskyfi, msrl, itab, h3d_data, ninskid, pratio, ninterskid, pskids, iflagloadp, tagncont, kloadpinter, loadpinter, loadp_hyd_inter, dgaploadint, dist, gapv, s_loadpinter, efric_l, fheat, efrict, interefric, nodadt_therm)
Definition i21ass3.F:53
subroutine i21cor3(jlt, nin, x, irect, nsn, nsv, cand_e, cand_n, stf, stfn, xm0, nod_normal, irtlm, csts, msr, ms, v, xi, yi, zi, ix1, ix2, ix3, ix4, nsvg, igsti, stif, kmin, kmax, igap, gap, gap_s, gapv, gapmax, gapmin, nx, ny, nz, pene, vxm, vym, vzm, vxi, vyi, vzi, msi, itria, lb, lc, iadm, rcurv, anglm, nradm, anglt, rcurvi, anglmi, fxt, fyt, fzt, ftxsav, ftysav, ftzsav, gap_s0, area_s0, gap0, area0, intth, temp, tempi, irot, xg, rot, as, bs, asi, bsi, xp, yp, zp, nodnx_sms, nsms, mstr, peni, ifpen, ilev, x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4, drad, penrad, tint, tempm, iform, h1, h2, h3, h4, dist, itab, noint, depth, invn, intfric, ipartfrics, ipartfricsi, ipartfricm, ipartfricmi, nrtm)
Definition i21cor3.F:55
subroutine i21for3(jlt, nin, noint, ibcc, icodt, fsav, gap, stiglo, visc, inacti, mfrot, ifq, ibag, iadm, icurv, stif, gapv, itab, peni, alpha0, ifpen, icontact, rcontact, acontact, pcontact, nsvg, x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4, xi, yi, zi, vxi, vyi, vzi, msi, vxm, vym, vzm, nx, ny, nz, pene, fxt, fyt, fzt, fxn, fyn, fzn, rcurvi, anglmi, padm, cand_n_n, weight, igap, gap0, area0, pmax, irot, xg, mxi, myi, mzi, stri, wxm, wym, wzm, xp, yp, zp, kt, c, ilev, fni, intth, fheat, efrict, qfric, ifric, xfric, tempi, tempm, npc, tf, ix1, ix2, ix3, ix4, dt2t, neltst, ityptst, kinet, nisub, isensint, fsavparit, nft, iftlim, pskidflag, pratio, pmaxskid, interefric, efric_l, fricc, fric_coefs)
Definition i21for3.F:54
subroutine i21sms2(jlt, mstr, nsvg, nin, noint, mskyi_sms, iskyi_sms, nsms, kt, c, dti)
Definition i21sms2.F:37
subroutine i21therm(jlt, xi, yi, zi, kthe, tempi, phi, areas, noint, asi, bsi, gapv, pene, ifunctk, xthe, fni, npc, tf, frad, drad, penrad, tempm, fheat, efrict, condint, iform, h1, h2, h3, h4, phi1, phi2, phi3, phi4, x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4, itab, nsv, msr, ix1, ix2, ix3, ix4, temp, fcond, dcond, theaccfact)
Definition i21therm.F:42
subroutine i7cdcor3(jlt, index, cand_e, cand_n, cand_e_n, cand_n_n)
Definition i7cdcor3.F:38
#define min(a, b)
Definition macros.h:20
subroutine sum_6_float_sens(f, a, b, c, jft, jlt, f6, d, e, g, isensint)
Definition parit.F:540
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
Definition message.F:889
subroutine arret(nn)
Definition arret.F:87
subroutine startime(event, itask)
Definition timer.F:93
subroutine stoptime(event, itask)
Definition timer.F:135
character *8 function stri(n)
Definition stri.F:24