OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
intti2.F File Reference
#include "implicit_f.inc"
#include "com04_c.inc"
#include "param_c.inc"
#include "task_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine intti2 (ipari, x, v, a, vr, ar, khie, ms, in, weight, wa, skew, intbuf_tab)

Function/Subroutine Documentation

◆ intti2()

subroutine intti2 ( integer, dimension(npari,*) ipari,
x,
v,
a,
vr,
ar,
integer khie,
ms,
in,
integer, dimension(*) weight,
wa,
skew,
type(intbuf_struct_), dimension(*) intbuf_tab )

Definition at line 33 of file intti2.F.

37C-----------------------------------------------
38C M o d u l e s
39C-----------------------------------------------
40 USE intbufdef_mod
41C-----------------------------------------------
42C I m p l i c i t T y p e s
43C-----------------------------------------------
44#include "implicit_f.inc"
45C-----------------------------------------------
46C C o m m o n B l o c k s
47C-----------------------------------------------
48#include "com04_c.inc"
49#include "param_c.inc"
50#include "task_c.inc"
51C-----------------------------------------------
52C D u m m y A r g u m e n t s
53C-----------------------------------------------
54 INTEGER IPARI(NPARI,*), WEIGHT(*),KHIE
55C REAL
57 . x(*), v(*), a(*),ar(*),vr(*), ms(*),in(*),
58 . wa(*),skew(*)
59
60 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
61C-----------------------------------------------
62C L o c a l V a r i a b l e s
63C-----------------------------------------------
64 INTEGER N, NTY, JI, JB, NMN, NINT,K,ITIED,ILAGM
65 INTEGER :: ILEV,II,J
66C-----------------------------------------------
67C LES WA NE SONT PLUS UTILISES !!!
68C=======================================================================
69 DO n=ninter,1,-1
70 nty = ipari(7,n)
71 ilagm = 0
72 ilagm = ipari(33,n)
73 IF (ilagm/=0) cycle
74 IF (npari>=26)THEN
75 IF(ipari(26,n)/=khie) cycle
76 ENDIF
77 ji =ipari(1,n)
78 jb =ipari(2,n)
79 nmn =ipari(6,n)
80 nint=n
81 IF (nty == 2) THEN
82 IF(ipari(5,n)>0) THEN ! check if NSN=IPARI(5,N)>0
83 ! Optimization :
84 ! If IPARI(5,N)=NSN=0, some variables are loaded in INTTI2V
85 ! if the number of TYPE2 interface is important (>3000) and if the number of
86 ! spmd domain is quite important (NSPMD>50), the initialisation time is important :
87 ! for_array_copy_in and other initialisations represent up to 5% of total CPUTIME
88 ! and break the scalability of the code
89 CALL intti2v(
90 . ipari(1,n),x ,v ,
91 . a ,vr ,ar ,ms ,in ,
92 . weight ,intbuf_tab(n) )
93 ELSE
94 ! WARNING : if NSN==0 and ILEV==2 or 4, ones needs to scale the mass
95 ilev = ipari(20,n)
96 IF(ilev==2.OR.ilev==4) THEN
97 DO ii=1,nmn
98 j=intbuf_tab(n)%MSR(ii)
99 ms(j)=intbuf_tab(n)%NMAS(ii)
100 ENDDO
101 ENDIF
102 ENDIF
103 ELSEIF (nty == 12) THEN
104 IF(ispmd==0)THEN
105 CALL intti12v(
106 . ipari(1,n),intbuf_tab(n) ,x ,v ,
107 . a ,ms ,weight ,wa ,skew )
108 ENDIF
109 ENDIF
110 ENDDO
111C-----------
112 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine intti12v(ipari, intbuf_tab, x, v, a, ms, weight, wa, skew)
Definition intti12.F:319
subroutine intti2v(ipari, x, v, a, vr, ar, ms, in, weight, intbuf_tab)
Definition intti2v.F:43