54
55
56
61 USE defaults_mod
63 USE reader_old_mod , ONLY : kline
64
65
66
67#include "implicit_f.inc"
68
69
70
71#include "com01_c.inc"
72#include "com04_c.inc"
73#include "scr17_c.inc"
74#include "scr19_c.inc"
75#include "units_c.inc"
76#include "param_c.inc"
77#include "tablen_c.inc"
78
79
80
81
82 CHARACTER(LEN=NCHARTITLE),INTENT(IN):: IDTITL
83 CHARACTER(LEN=NCHARLINE) :: KEYTYPE
85 INTEGER,INTENT(IN):: IG,ISKN(LISKN,*),SUB_ID,IUNIT,SUB_INDEX
86 my_real ,
INTENT(IN):: rtrans(ntransf,*)
87 TYPE(SUBMODEL_DATA),INTENT(IN) :: LSUBMODEL(NSUBMOD)
88
89 INTEGER,INTENT(OUT):: IGTYP
90
91 INTEGER,INTENT(INOUT) :: IGEO(NPROPGI), LBUFGEO, IADBUF, IAD_KNOT
93 . geo(npropg), knot(*)
94 DOUBLE PRECISION,INTENT(INOUT):: BUFGEO(*)
95 TYPE(PROP_TAG_) , DIMENSION(0:MAXPROP),INTENT(INOUT) :: PROP_TAG
96 TYPE(), INTENT(IN) :: DEFAULTS
97
98
99
100 INTEGER ISKW,IADFUN,IADMAT,IADPID,IADTAB
101 INTEGER I, NPG, JCVT, NUVAR(2)
104 CHARACTER FILNAM*512,CLAW*4
105 CHARACTER(LEN=NCHARTITLE) :: TITR
106
107
108 DO i = 1,100
109 pargeo(i) = zero
110 ENDDO
111
112 DO i = 1, bgeosize
113 bufgeo0(i) = zero
114 ENDDO
115
116 nuvar(1)= 0
117 nuvar(2)= 0
118 nuparam = 0
119 njfunc = 0
120 njmat = 0
121 njpid = 0
122 njtab = 0
123
124 igeo(1) =ig
125 igeo(5) = 4
126
127 CALL fretitl2(titr,igeo(npropgi-ltitr+1),ltitr)
128
129 SELECT CASE(keytype(1:len_trim(keytype)))
130
131 CASE ('TYPE28','NSTRAND')
132 igtyp =28
134 . titr ,igtyp ,prop_tag,lsubmodel,iunit)
135
136 CASE ('TYPE32','SPR_PRE')
137 igtyp =32
139 . igtyp,prop_tag,titr,lsubmodel)
140
141 CASE ('TYPE33','KJOINT')
142 igtyp =33
144 . iunit ,ig ,titr ,prop_tag,
145 . igtyp ,lsubmodel)
146
147 CASE ('TYPE34','SPH')
148 igtyp =34
150 . qa,qb,iskn,ig,titr,unitab,
151 . prop_tag,igtyp,lsubmodel)
152
153 CASE ('TYPE35','STITCH')
154 igtyp =35
156 . ig,igtyp ,prop_tag,lsubmodel)
157
158 CASE ('TYPE36','PREDIT')
159 igtyp =36
161 . iskn,ig,titr,igtyp,prop_tag,geo,
162 . lsubmodel,sub_index)
163 CASE ('USER4')
164
165
166
167
168 igtyp=37
170
171
172 CASE ('TYPE43','CONNECT')
173 igtyp=43
175 . nuvar ,pargeo ,igtyp ,prop_tag,
176 . unitab ,lsubmodel,defaults%SOLID)
177
178 CASE ('TYPE44','SPR_CRUS')
179 igtyp=44
181 . unitab,iskn ,igeo ,titr ,igtyp ,
182 . prop_tag,lsubmodel ,sub_index)
183
184 CASE ('TYPE45','KJOINT2')
185 igtyp =45
187 . ig,prop_tag,titr,lsubmodel,iunit)
188
189 CASE ('TYPE46','SPR_MUSCLE')
190 igtyp =46
192 . ig,prop_tag,lsubmodel,iunit)
193
194 CASE ('TYPE29','TYPE30','TYPE31',
195 . 'USER1' ,'USER2' ,'USER3')
196
197
198
200 . iout ,nuvar ,pargeo ,unitab,igtyp,
201 . ig ,titr ,lsubmodel,iunit ,iskn ,
202 . keytype ,prop_tag)
203
204 CASE DEFAULT
205 CALL ancmsg(msgid=1647,anmode=aninfo,msgtype=msgerror,
206 . i1=ig,c1='TITR',i2=igtyp)
207
208 END SELECT
209
210 igeo(11)=igtyp
211 geo(12) =igtyp+em01
212
213 lbufgeo = lbufgeo + nuparam + njfunc + njmat + njpid + njtab
214
215 DO i=1,nuparam
216 bufgeo(iadbuf+i-1)=bufgeo0(i)
217 ENDDO
218 iadfun = iadbuf + nuparam
219 DO i=1,njfunc
220 bufgeo(iadfun+i-1)=jfunc(i)
221 ENDDO
222 iadmat = iadfun + njfunc
223 DO i=1,njmat
224 bufgeo(iadmat+i-1)=jmat(i)
225 ENDDO
226 iadpid = iadmat + njmat
227 DO i=1,njpid
228 bufgeo(iadpid+i-1)=jpid(i)
229 ENDDO
230 iadtab = iadpid + njpid
231 DO i=1,njtab
232 bufgeo(iadtab+i-1)=jtab(i)
233 ENDDO
234
235 iskw = nint(pargeo(1))
236 stif = pargeo(2)
237 ifrwv =
max(ifrwv,nint(pargeo(3)))
238 npg = nint(pargeo(4))
239 jcvt = nint(pargeo(5))
240
241 IF (iskw == 0 .AND. igtyp /= 34) iskw = 1
242 geo(2)=iskw
243 igeo(2)=iskw
244 igeo(4)=npg
245 geo(3)=stif
246 geo(8)=5
247 geo(25) = nuvar(1)
248 geo(26) = nuparam
249 geo(27) = iadbuf
250 geo(28) = njfunc
251 geo(29) = iadfun
252 geo(30) = njmat
253 geo(31) = iadmat
254 geo(32) = njpid
255 geo(33) = iadpid
256 geo(35) = nuvar(2)
257 geo(36) = njtab
258 geo(37) = iadtab
259
260 igeo(16) = jcvt
261 igeo(27) = nuvar(1)
262 igeo(28) = nuvar(2)
263 igeo(52) = nuparam
264 igeo(53) = njfunc
265 igeo(54) = njmat
266 igeo(55) = njpid
267 igeo(56) = njtab
268 igeo(57) = iadbuf
269 igeo(58) = iadfun
270 igeo(59) = iadmat
271 igeo(60) = iadpid
272 igeo(61) = iadtab
273
274 iadbuf = iadtab + njtab
275
276 IF (igtyp > 28 .and. igtyp < 32 .or. igtyp > 36 .and. igtyp < 43) THEN
277 prop_tag(igtyp)%G_SIG = 6
278 prop_tag(igtyp)%G_VOL = 1
279 prop_tag(igtyp)%G_EINT = 1
280 prop_tag(igtyp)%G_OFF = 1
281 prop_tag(igtyp)%G_FILL = 1
282 prop_tag(igtyp)%L_SIG = 6
283 prop_tag(igtyp)%L_VOL = 1
284 prop_tag(igtyp)%L_EINT = 1
285 prop_tag(igtyp)%L_OFF = 1
286 prop_tag(igtyp)%NUVAR = igeo(27)
287 igeo(4) = 1
288 prop_tag(igtyp)%L_SIG = 6
289 prop_tag(igtyp)%L_VOL = 1
290 prop_tag(igtyp)%L_EINT = 1
291 ENDIF
292
293 RETURN
294
295 RETURN
subroutine hm_read_prop28(iout, nuvar, pargeo, unitab, id, titr, igtyp, prop_tag, lsubmodel, iunit)
subroutine hm_read_prop32(iout, nuvar, pargeo, unitab, ig, igtyp, prop_tag, titr, lsubmodel)
subroutine hm_read_prop33(iout, nuvar, pargeo, unitab, iunit, id, titr, prop_tag, igtyp, lsubmodel)
subroutine hm_read_prop34(geo, igeo, iout, nuvar, pargeo, qa, qb, iskn, ig, titr, unitab, prop_tag, igtyp, lsubmodel)
subroutine hm_read_prop35(iout, nuvar, pargeo, unitab, id, igtyp, prop_tag, lsubmodel)
subroutine hm_read_prop36(iout, nuvar, pargeo, unitab, iskn, ig, titr, igtyp, prop_tag, geo, lsubmodel, sub_id)
subroutine hm_read_prop43(geo, igeo, iout, ig, nuvar, pargeo, igtyp, prop_tag, unitab, lsubmodel, defaults_solid)
subroutine hm_read_prop44(iout, ig, nuvar, pargeo, unitab, iskn, igeo, titr, igtyp, prop_tag, lsubmodel, sub_id)
subroutine hm_read_prop45(iout, nuvar, pargeo, unitab, igtyp, id, prop_tag, titr, lsubmodel, iunit)
subroutine hm_read_prop46(iout, nuvar, pargeo, unitab, igtyp, id, prop_tag, lsubmodel, iunit)
subroutine hm_read_prop_user4(iout, nuvar, unitab, lsubmodel)
subroutine hm_read_prop_user(iout, nuvar, pargeo, unitab, igtyp, ig, title, lsubmodel, iunit, iskn, key, prop_tag)
integer, parameter nchartitle
integer, parameter ncharline
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)