OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
inter_dcod_friction.F File Reference
#include "implicit_f.inc"
#include "com04_c.inc"
#include "scr17_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine inter_dcod_friction (ntyp, ni, ipari, nom_opt, nom_optfric, intbuf_fric_tab)

Function/Subroutine Documentation

◆ inter_dcod_friction()

subroutine inter_dcod_friction ( integer ntyp,
integer ni,
integer, dimension(*) ipari,
integer, dimension(lnopt1,*) nom_opt,
integer, dimension(lnopt1,*) nom_optfric,
type(intbuf_fric_struct_), dimension(*) intbuf_fric_tab )

Definition at line 39 of file inter_dcod_friction.F.

41C-----------------------------------------------
42C DECODE USER NUMBERS
43C-----------------------------------------------
44C M o d u l e s
45C-----------------------------------------------
46 USE message_mod
47 USE intstamp_mod
48 USE intbuf_fric_mod
50C-----------------------------------------------
51C I m p l i c i t T y p e s
52C-----------------------------------------------
53#include "implicit_f.inc"
54C-----------------------------------------------
55C C o m m o n B l o c k s
56C-----------------------------------------------
57#include "com04_c.inc"
58#include "scr17_c.inc"
59C-----------------------------------------------
60C D u m m y A r g u m e n t s
61C-----------------------------------------------
62 INTEGER NTYP,NI,IPARI(*),NOM_OPT(LNOPT1,*),NOM_OPTFRIC(LNOPT1,*)
63 TYPE(INTBUF_FRIC_STRUCT_) INTBUF_FRIC_TAB(*)
64C-----------------------------------------------
65C L o c a l V a r i a b l e s
66C-----------------------------------------------
67 INTEGER I,J,ID,IERR1,IERR2,OK,IDF ,INTFRIC,IFQ
68 CHARACTER(LEN=NCHARTITLE) :: TITR
69C DATA IUN/1/
70C
71C=======================================================================
72C
73 id = nom_opt(1,ni)
74 CALL fretitl2(titr,nom_opt(lnopt1-ltitr+1,ni),ltitr)
75C
76C------------------------------------------------
77C Friction model for interface
78C-------------------------------------------
79C
80 ok = 0
81 IF(ntyp==7.OR.ntyp==11.OR.ntyp==19.OR.ntyp==21.OR.ntyp==24.OR.ntyp==25) THEN
82 IF (ipari(72) > 0) THEN
83 ok = 0
84 DO j=1,ninterfric
85 idf = nom_optfric(1,j)
86 IF(ipari(72) == idf) THEN
87 ipari(72)=j
88 ok = 1
89 EXIT
90 ENDIF
91 ENDDO
92 IF (ok == 0) THEN
93 CALL ancmsg(msgid=1592,
94 . msgtype=msgerror,
95 . anmode=aninfo_blind_1,
96 . i1=id,
97 . c1=titr,
98 . i2=ipari(72))
99 ENDIF
100 ENDIF
101 IF (ntyp==11.AND.ipari(72) > 0) THEN
102 intfric = ipari(72)
103 IF(intbuf_fric_tab(intfric)%FRICMOD > 0 ) THEN
104 CALL ancmsg(msgid=1595,
105 . msgtype=msgwarning,
106 . anmode=aninfo_blind_1,
107 . i1=id,
108 . c1=titr,
109 . i2=nom_optfric(1,intfric))
110 ENDIF
111 ipari(30) = intbuf_fric_tab(intfric)%FRICFORM ! we put the iform flag to the value set in friction interface
112 ENDIF
113
114 IF ((ntyp==21.OR.ntyp==24.OR.ntyp==25).AND.ipari(72) > 0) THEN ! correction of filtering parameter if Iform = 0 in friction interface
115 intfric = ipari(72)
116 ifq = intbuf_fric_tab(intfric)%IFFILTER
117 IF (ifq<10) ifq = ifq + 10
118 intbuf_fric_tab(intfric)%IFFILTER = ifq
119 IF (ifq==10) intbuf_fric_tab(intfric)%XFILTR_FRIC = one
120 ENDIF
121
122 IF ((ntyp==7.OR.ntyp==21.OR.ntyp==24..OR.ntyp==25).AND.ipari(72) > 0) THEN ! we put the MFROT ifq flag to the value set in friction interface
123 intfric = ipari(72)
124 ipari(30) = intbuf_fric_tab(intfric)%FRICMOD
125 ipari(31) = intbuf_fric_tab(intfric)%IFFILTER
126 ENDIF
127
128 ENDIF
129 RETURN
130C-----
initmumps id
integer, parameter nchartitle
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 fretitl2(titr, iasc, l)
Definition freform.F:804