35
36
37
38
42
43
44
45#include "implicit_f.inc"
46
47
48
49
50
51
52 INTEGER NTYP
53 INTEGER DEF_INTER(100)
54 TYPE(SUBMODEL_DATA) LSUBMODEL(NSUBMOD)
55
56
57
58#include "units_c.inc"
59
60
61
62 INTEGER
63 . IGSTI,IBID,IGAP,IREM25I2,IBAG,IDEL25,IEDGE,
64 . IGAP0,ISHARP,IVIS2,INACTI,MFROT,IFQ,MODFR,IDSENS,INTFRIC,
65 . IPRINT,IASSIGN,ITHK
67 . gapscale,percent_size,
68 . penmin,fric,gap,startt,stopt,visc,viscf,
70 CHARACTER(LEN=NCHARFIELD) :: BCFLAG, BCFLAGM
71 CHARACTER(LEN=NCHARKEY) :: KEY,KEY1
72 LOGICAL IS_AVAILABLE
73
74
75
76
77
78 igsti = 0
79 ibag=0
80 inacti = 0
81 idsens = 0
82 mfrot=0
83 ifq=0
84 intfric = 0
85 ithk = 0
86 modfr = 0
87
88 gapscale = zero
89 percent_size = zero
90 fric = zero
91 gap = zero
92 startt = zero
93 stopt=ep30
94 viscf = zero
95 visc = zero
96 pmax = ep30
97
98 iassign = 0
99
100 iprint = 0
101
102 is_available = .false.
103
104
105
106 CALL hm_get_intv(
'Istf',igsti,is_available,lsubmodel)
107 CALL hm_get_intv(
'Igap',igap,is_available,lsubmodel)
108 CALL hm_get_intv(
'Irem_i2',irem25i2,is_available,lsubmodel)
109 CALL hm_get_intv(
'TYPE24_Idel',idel25,is_available,lsubmodel)
110 CALL hm_get_intv(
'Iedge',iedge,is_available,lsubmodel)
111 CALL hm_get_intv(
'Itied',igap0,is_available,lsubmodel)
112 CALL hm_get_intv(
'Ishape',isharp,is_available,lsubmodel)
113 CALL hm_get_intv(
'Irs',intfric,is_available,lsubmodel)
114
115 key1='IGSTI'
116 CALL definter(key1 ,igsti ,iassign ,iprint ,
117 . ntyp ,def_inter)
118
119 key1='IGAP'
120 CALL definter(key1 ,igap ,iassign ,iprint ,
121 . ntyp ,def_inter)
122
123 key1='IREM25I2'
124 CALL definter(key1 ,irem25i2 ,iassign ,iprint ,
125 . ntyp ,def_inter)
126
127 key1='IEDGE'
128 CALL definter(key1 ,iedge ,iassign ,iprint ,
129 . ntyp ,def_inter)
130
131 key1='IBAG'
132 CALL definter(key1 ,ibag ,iassign ,iprint ,
133 . ntyp ,def_inter)
134
135 key1='IDEL25'
136 CALL definter(key1 ,idel25 ,iassign ,iprint
137 . ntyp ,def_inter)
138
139 key1='IGAP0'
140 CALL definter(key1 ,igap0 ,iassign ,iprint ,
141 . ntyp ,def_inter)
142
143 key1='ISHARP'
144 CALL definter(key1 ,isharp ,iassign ,iprint ,
145 . ntyp ,def_inter)
146
147 CALL hm_get_intv(
'Irs',inacti,is_available,lsubmodel)
148
149 key1='INACTI'
150 CALL definter(key1 ,inacti ,iassign ,iprint ,
151 . ntyp ,def_inter)
152
153 key1='ITHK'
154 CALL definter(key1 ,ithk ,iassign ,iprint ,
155 . ntyp ,def_inter)
156
157
158
159
160 iprint = 1
161
162 key1='IGSTI'
163 CALL definter(key1 ,igsti ,iassign ,iprint ,
164 . ntyp ,def_inter)
165
166 key1='IGAP'
167 CALL definter(key1 ,igap ,iassign ,iprint ,
168 . ntyp ,def_inter)
169
170 key1='IREM25I2'
171 CALL definter(key1 ,irem25i2 ,iassign ,iprint ,
172 . ntyp ,def_inter)
173
174 key1='IEDGE'
175 CALL definter(key1 ,iedge ,iassign ,iprint ,
176 . ntyp ,def_inter)
177
178 key1='IBAG'
179 CALL definter(key1 ,ibag ,iassign ,iprint ,
180 . ntyp ,def_inter)
181
182 key1='IDEL25'
183 CALL definter(key1 ,idel25 ,iassign ,iprint ,
184 . ntyp ,def_inter)
185
186 key1='IGAP0'
187 CALL definter(key1 ,igap0 ,iassign ,iprint ,
188 . ntyp ,def_inter)
189
190 key1='ISHARP'
191 CALL definter(key1 ,isharp ,iassign ,iprint ,
192 . ntyp ,def_inter)
193
194 key1='INACTI'
195 CALL definter(key1 ,inacti ,iassign ,iprint ,
196 . ntyp ,def_inter)
197
198 key1='ITHK'
199 CALL definter(key1 ,ithk ,iassign ,iprint ,
200 . ntyp ,def_inter)
201
202 WRITE(iout,5025) igsti,igap,igap0,isharp,iedge,idel25,irem25i2,inacti,modfr
203
204
205 RETURN
206
207
208 5025 FORMAT(/
209 . ' INTERFACE TYPE 25 '
210 . ' STIFFNESS FORMULATION. . . . . . . . . . ',i5/,
211 . ' GAP FLAG. . . . . . . . . . . . . . . . . ',i5/,
212 . ' ZERO GAP FOR SECONDARY SHELL ON FREE EDGE ',i5/,
213 . ' GAP SHAPE ALONG MAIN FREE EDGES . . . . ',/,
214 . ' (1:SQUARE,2:CYLINDRICAL) . . . . .',i5/,
215 . ' EDGE FLAG . . . . . . . . . . . . . . . . ',i5/,
216 . ' DELETION FLAG ON FAILURE OF MAIN ELEMENT',i5/,
217 . ' DE-ACTIVATION FLAG IF CONFLICTING W/ TYPE2',i10/,
218 . ' DE-ACTIVATION OF INITIAL PENETRATIONS . . ',i5/,
219 . ' FRICTION FORMULATION. . . . . . . . . . . ',i5/)
220
subroutine definter(key, ival, flag, iprint, ityp, def_inter)
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
integer, parameter ncharkey
integer, parameter ncharfield