OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
hm_read_prop_generic.F File Reference
#include "implicit_f.inc"
#include "com01_c.inc"
#include "com04_c.inc"
#include "scr17_c.inc"
#include "scr19_c.inc"
#include "units_c.inc"
#include "param_c.inc"
#include "tablen_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine hm_read_prop_generic (igtyp, ig, idtitl, keytype, geo, igeo, lbufgeo, bufgeo, iadbuf, unitab, iskn, knot, iad_knot, prop_tag, lsubmodel, rtrans, sub_id, iunit, sub_index, defaults)

Function/Subroutine Documentation

◆ hm_read_prop_generic()

subroutine hm_read_prop_generic ( integer, intent(out) igtyp,
integer, intent(in) ig,
character(len=nchartitle), intent(in) idtitl,
character(len=ncharline) keytype,
dimension(npropg), intent(inout) geo,
integer, dimension(npropgi), intent(inout) igeo,
integer, intent(inout) lbufgeo,
double precision, dimension(*), intent(inout) bufgeo,
integer, intent(inout) iadbuf,
type (unit_type_), intent(in) unitab,
integer, dimension(liskn,*), intent(in) iskn,
dimension(*), intent(inout) knot,
integer, intent(inout) iad_knot,
type(prop_tag_), dimension(0:maxprop), intent(inout) prop_tag,
type(submodel_data), dimension(nsubmod), intent(in) lsubmodel,
dimension(ntransf,*), intent(in) rtrans,
integer, intent(in) sub_id,
integer, intent(in) iunit,
integer, intent(in) sub_index,
type(defaults_), intent(in) defaults )

Definition at line 49 of file hm_read_prop_generic.F.

54C-----------------------------------------------
55C M o d u l e s
56C-----------------------------------------------
57 USE unitab_mod
58 USE message_mod
59 USE elbuftag_mod
61 USE defaults_mod
63 USE reader_old_mod , ONLY : kline
64C-----------------------------------------------
65C I m p l i c i t T y p e s
66C-----------------------------------------------
67#include "implicit_f.inc"
68C-----------------------------------------------
69C C o m m o n B l o c k s
70C-----------------------------------------------
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"
78C-----------------------------------------------
79C D u m m y A r g u m e n t s
80C-----------------------------------------------
81C INPUT ARGUMENTS
82 CHARACTER(LEN=NCHARTITLE),INTENT(IN):: IDTITL
83 CHARACTER(LEN=NCHARLINE) :: KEYTYPE
84 TYPE (unit_type_),INTENT(IN) ::unitab
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)
88C OUTPUT ARGUMENTS
89 INTEGER,INTENT(OUT):: IGTYP
90C MODIFIED ARGUMENT
91 INTEGER,INTENT(INOUT) :: IGEO(NPROPGI), LBUFGEO, IADBUF, IAD_KNOT
92 my_real ,INTENT(INOUT)::
93 . geo(npropg), knot(*)
94 DOUBLE PRECISION,INTENT(INOUT):: BUFGEO(*)
95 TYPE(PROP_TAG_) , DIMENSION(0:MAXPROP),INTENT(INOUT) :: PROP_TAG
96 TYPE(DEFAULTS_), INTENT(IN) :: DEFAULTS
97C-----------------------------------------------
98C L o c a l V a r i a b l e s
99C-----------------------------------------------
100 INTEGER ISKW,IADFUN,IADMAT,IADPID,IADTAB
101 INTEGER I, NPG, JCVT, NUVAR(2)
102 my_real pargeo(100), stif
103 my_real qa,qb
104 CHARACTER FILNAM*512,CLAW*4
105 CHARACTER(LEN=NCHARTITLE) :: TITR
106C=======================================================================
107c------------------------------
108 DO i = 1,100
109 pargeo(i) = zero
110 ENDDO
111C
112 DO i = 1, bgeosize
113 bufgeo0(i) = zero
114 ENDDO
115C
116 nuvar(1)= 0
117 nuvar(2)= 0
118 nuparam = 0
119 njfunc = 0
120 njmat = 0
121 njpid = 0
122 njtab = 0
123C
124 igeo(1) =ig
125 igeo(5) = 4 ! ISMSTR
126C
127 CALL fretitl2(titr,igeo(npropgi-ltitr+1),ltitr)
128C
129 SELECT CASE(keytype(1:len_trim(keytype)))
130
131 CASE ('TYPE28','NSTRAND')
132 igtyp =28
133 CALL hm_read_prop28(iout , nuvar ,pargeo,unitab,ig,
134 . titr ,igtyp ,prop_tag,lsubmodel,iunit)
135
136 CASE ('TYPE32','SPR_PRE')
137 igtyp =32
138 CALL hm_read_prop32(iout , nuvar ,pargeo,unitab,ig,
139 . igtyp,prop_tag,titr,lsubmodel)
140
141 CASE ('TYPE33','KJOINT')
142 igtyp =33
143 CALL hm_read_prop33(iout ,nuvar ,pargeo,unitab,
144 . iunit ,ig ,titr ,prop_tag,
145 . igtyp ,lsubmodel)
146
147 CASE ('TYPE34','SPH')
148 igtyp =34
149 CALL hm_read_prop34(geo,igeo,iout,nuvar,pargeo,
150 . qa,qb,iskn,ig,titr,unitab,
151 . prop_tag,igtyp,lsubmodel)
152
153 CASE ('TYPE35','STITCH')
154 igtyp =35
155 CALL hm_read_prop35(iout , nuvar ,pargeo,unitab,
156 . ig,igtyp ,prop_tag,lsubmodel)
157
158 CASE ('TYPE36','PREDIT')
159 igtyp =36
160 CALL hm_read_prop36(iout , nuvar ,pargeo,unitab,
161 . iskn,ig,titr,igtyp,prop_tag,geo,
162 . lsubmodel,sub_index)
163 CASE ('USER4')
164C--------------------------------------------------
165C rupture property for interface type 2
166C ( not a true user property )
167C--------------------------------------------------
168 igtyp=37
169 CALL hm_read_prop_user4(iout ,nuvar ,unitab ,lsubmodel)
170
171
172 CASE ('TYPE43','CONNECT')
173 igtyp=43
174 CALL hm_read_prop43(geo ,igeo ,iout ,ig ,
175 . nuvar ,pargeo ,igtyp ,prop_tag,
176 . unitab ,lsubmodel,defaults%SOLID)
177
178 CASE ('TYPE44','SPR_CRUS')
179 igtyp=44
180 CALL hm_read_prop44(iout ,ig ,nuvar ,pargeo,
181 . unitab,iskn ,igeo ,titr ,igtyp ,
182 . prop_tag,lsubmodel ,sub_index)
183
184 CASE ('TYPE45','KJOINT2')
185 igtyp =45
186 CALL hm_read_prop45(iout , nuvar ,pargeo,unitab,igtyp,
187 . ig,prop_tag,titr,lsubmodel,iunit)
188
189 CASE ('TYPE46','SPR_MUSCLE')
190 igtyp =46
191 CALL hm_read_prop46(iout , nuvar ,pargeo,unitab,igtyp,
192 . ig,prop_tag,lsubmodel,iunit)
193
194 CASE ('TYPE29','TYPE30','TYPE31',
195 . 'USER1' ,'USER2' ,'USER3')
196C--------------------------------------------------
197C HM READING PROPERTY USERnn
198C--------------------------------------------------
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) ! This message can not occur !
207
208 END SELECT
209C
210 igeo(11)=igtyp
211 geo(12) =igtyp+em01
212C-----
213 lbufgeo = lbufgeo + nuparam + njfunc + njmat + njpid + njtab
214C
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
234C
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))
240C
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
259C
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
273C-----------
274 iadbuf = iadtab + njtab
275C-----------
276 IF (igtyp > 28 .and. igtyp < 32 .or. igtyp > 36 .and. igtyp < 43) THEN ! prop user
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) ! User solid property
287 igeo(4) = 1 ! NPT
288 prop_tag(igtyp)%L_SIG = 6
289 prop_tag(igtyp)%L_VOL = 1
290 prop_tag(igtyp)%L_EINT = 1
291 ENDIF ! IF (IGTYP)
292C-----------
293 RETURN
294
295 RETURN
#define my_real
Definition cppsort.cpp:32
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)
#define max(a, b)
Definition macros.h:21
integer, parameter nchartitle
integer, parameter ncharline
integer nsubmod
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:895
subroutine fretitl2(titr, iasc, l)
Definition freform.F:799