40 . MAT_ID, TITR ,MATPARAM)
54#include "implicit_f.inc"
63 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
64 INTEGER,
INTENT(IN) :: MAT_ID
65 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
68 INTEGER,
DIMENSION(NPROPMI) ,
INTENT(INOUT) :: IPM
69 my_real,
DIMENSION(NPROPM) ,
INTENT(INOUT) :: pm
70 TYPE(matparam_struct_),
INTENT(INOUT) :: MATPARAM
86 INTEGER IFR, IFP, IFE, IFT, IFQ, ITYP, INOD, ICOMP
88 . gam, vcrt2, gamrp, gam1, p0, c1, ssp2, ef,
89 . rho0, psh, carl, gam2, e0, vcrt, rcrt, pcrt, ssp,
92 . fac_length_, fac_time_
93 LOGICAL :: IS_ENCRYPTED, IS_AVAILABLE
98 is_encrypted = .false.
99 is_available = .false.
106 CALL hm_get_floatv(
'MAT_RHO' ,rho0 ,is_available, lsubmodel, unitab)
107 CALL hm_get_floatv(
'Refer_Rho' ,rhor ,is_available, lsubmodel, unitab)
108 IF (rhor == zero)
THEN
113 ale%GLOBAL%IS_BOUNDARY_MATERIAL = .true.
140 CALL hm_get_intv(
'Itype', ityp, is_available, lsubmodel)
142 CALL hm_get_floatv(
'MAT_PSH', psh, is_available, lsubmodel, unitab)
143 CALL hm_get_floatv(
'SCALE', tscal, is_available, lsubmodel, unitab)
150 CALL hm_get_intv(
'NODE1', inod, is_available, lsubmodel)
151 CALL hm_get_floatv(
'GAMMA', gam, is_available, lsubmodel, unitab)
152 CALL hm_get_floatv(
'K_cdi', dc, is_available, lsubmodel, unitab)
154 CALL hm_get_intv(
'FUN_A1', ifr, is_available, lsubmodel)
156 CALL hm_get_intv(
'FUN_A2', ifp, is_available, lsubmodel)
157 CALL hm_get_floatv(
'MAT_PScale', p0, is_available, lsubmodel, unitab)
159 CALL hm_get_intv(
'NODE1', inod, is_available, lsubmodel)
160 CALL hm_get_floatv(
'MAT_C1', c1, is_available, lsubmodel, unitab)
161 CALL hm_get_floatv(
'K_cdi', dc, is_available, lsubmodel, unitab)
163 CALL hm_get_intv(
'FUN_A1', ifr, is_available, lsubmodel)
165 CALL hm_get_intv(
'FUN_A2', ifp, is_available, lsubmodel)
166 CALL hm_get_floatv(
'MAT_PScale', p0, is_available, lsubmodel, unitab)
168 CALL hm_get_intv(
'FUN_A6', ife, is_available, lsubmodel)
169 CALL hm_get_floatv(
'MAT_E0', e0, is_available, lsubmodel, unitab)
171 CALL hm_get_intv(
'FUN_A1', ifr, is_available, lsubmodel)
173 CALL hm_get_intv(
'FUN_A2', ifp, is_available, lsubmodel)
174 CALL hm_get_floatv(
'MAT_PScale', p0, is_available, lsubmodel, unitab)
176 CALL hm_get_intv(
'FUN_A6', ife, is_available, lsubmodel)
177 CALL hm_get_floatv(
'MAT_E0', e0, is_available, lsubmodel, unitab
179 CALL hm_get_floatv(
'MAT_C0', ssp, is_available, lsubmodel, unitab)
180 CALL hm_get_floatv(
'h', carl, is_available, lsubmodel, unitab)
181 IF(carl*ssp==zero)
THEN
189 CALL ancmsg(msgid=1665, msgtype=msgerror, anmode=aninfo,
195 CALL hm_get_intv(
'Xt_fun', ift, is_available, lsubmodel)
196 CALL hm_get_intv(
'Yt_fun', ifq, is_available, lsubmodel)
201 IF(carl==zero)carl = em01 * fac_length_
202 IF(t0==zero) t0 = three100
203 IF(tscal == zero) tscal = one * fac_time_
206 gam1 = one/(gam - one)
208 gamrp= gam2*(gam-one)
212 vcrt2= two*gam*(p0+psh)/rho0/(gam + one)
214 rcrt = (one-gamrp*rho0*vcrt2/(p0+psh))**gam1
215 pcrt = (p0+psh)*rcrt**gam
224 IF(carl>zero)alp0=half*ssp/carl
233 WRITE(iout, 800)trim(titr),mat_id,11
237 WRITE(iout,'(5x,a,//)
')'confidential data
'
239 WRITE(IOUT,1000)ITYP,PSH,TSCAL
240 WRITE(IOUT, 850) RHO0,RHOR
243 WRITE(IOUT,1100)GAM,P0,E0,VCRT,RCRT,PCRT,INOD
244 WRITE(IOUT,1350)EF,DC
245 WRITE(IOUT,1300)IFR,IFP
247 WRITE(IOUT,1200)C1,P0,E0,INOD
249 WRITE(IOUT,1301)IFR,IFP,IFE
251 WRITE(IOUT,1400)P0,E0
252 WRITE(IOUT,1302)IFR,IFP,IFE
254 WRITE(IOUT,1353)SSP,CARL,INOD
258 IF(ITYP/=3)WRITE(IOUT,2001) IFT,IFQ
277 PM(34) = -HALF*SSP2/CARL**2
281 PM(51) = INOD ! USR2SYS APRES FSDCOD, IF(IFORM8==2) INOD=USR2SYS(INOD,ITABM1,MESS)
301 ! EOS/Thermo keyword for pressure treatment in elements
302 CALL INIT_MAT_KEYWORD(MATPARAM,"HYDRO_EOS")
304 CALL INIT_MAT_KEYWORD(MATPARAM,"INCOMPRESSIBLE")
306 ! Properties compatibility
307 CALL INIT_MAT_KEYWORD(MATPARAM,"SOLID_ISOTROPIC")
316 & 5X,'material number. . . . . . . . . . . . . . .=
',I10/,
317 & 5X,'material law . . . . . . . . . . . . . . . .=
',I10/)
319 & 5X,'initial density . . . . . . . . . . . .=
',1PG20.13/,
320 & 5X,'reference density . . . . . . . . . . .=
',1PG20.13/)
322 & 5X,40H LAW FOR FLUID BOUNDARY ELEMENTS ,/,
323 & 5X,40H ------------------------------- ,/)
325 & 5X,40H LAW FOR FLUID BOUNDARY ELEMENTS ,/,
326 & 5X,40H ------------------------------- ,/,
327 & 5X,40HITYP. . . . . . . . . . . . . . . . . .=,I10/,
328 & 5X,'ityp = 0 : gas inlet
',/,
329 & 5X,'ityp = 1 : liquid inlet
',/,
330 & 5X,'ityp = 2 : imposed inlet/outlet - time dependent
',/,
331 & 5X,'ityp = 3 : non-reflecting boundary
',/,
332 & 5X,'psh: pressure shift . . . . . . . . . .=
',1PG20.13/,
333 & 5X,'time scale factor . . . . . . . . . . .=
',1PG20.13/)
335 & 5X,40HGAMMA CONSTANT. . . . . . . . . . . . .=,E12.4/,
336 & 5X,40HSTAGNATION PRESSURE . . . . . . . . . .=,E12.4/,
337 & 5X,40HSTAGNATION ENERGY . . . . . . . . . . .=,E12.4/,
338 & 5X,40HCRITICAL VELOCITY . . . . . . . . . . .=,E12.4/,
339 & 5X,40HCRITICAL DENSITY. . . . . . . . . . . .=,E12.4/,
340 & 5X,40HCRITICAL PRESSURE . . . . . . . . . . .=,E12.4/,
341 & 5X,40HREFERENCE NODE (VELOCITY) . . . . . . .=,I10/)
343 & 5X,40HBULK MODULUS. . . . . . . . . . . . . .=,E12.4/,
344 & 5X,40HSTAGNATION PRESSURE . . . . . . . . . .=,E12.4/,
345 & 5X,40HSTAGNATION ENERGY . . . . . . . . . . .=,E12.4/,
346 & 5X,40HREFERENCE NODE (VELOCITY) . . . . . . .=,I10/)
348 & 5X,40HSTAGNATION DENSITY LOAD CURVE. . . . .=,I10/,
349 & 5X,40HSTAGNATION PRESSURE LOAD CURVE. . . . .=,I10/)
351 & 5X,40HSTAGNATION DENSITY LOAD CURVE. . . . .=,I10/,
352 & 5X,40HSTAGNATION PRESSURE LOAD CURVE. . . . .=,I10/,
353 & 5X,40HSTAGNATION ENERGY LOAD CURVE. . . . .=,I10/)
355 & 5X,40HDENSITY LOAD CURVE . . . . . . . . .=,I10/,
356 & 5X,40HPRESSURE LOAD CURVE . . . . . . . . .=,I10/,
357 & 5X,40HENERGY LOAD CURVE . . . . . . . . .=,I10/)
359 & 5X,40HDISCHARGE COEFFICIENT (ENTRY LOSS). . .=,E12.4/)
361 & 5X,40HFINAL STAGNATION ENERGY . . . . . . . .=,E12.4/,
362 & 5X,40HDISCHARGE COEFFICIENT (ENTRY LOSS). . .=,E12.4/)
364 & 5X,40HCHARACTERISTIC SOUND SPEED. . . . . . .=,E12.4/,
365 & 5X,40HCHARACTERISTIC LENGTH . . . . . . . . .=,E12.4/,
366 & 5X,40HREFERENCE NODE (VELOCITY) . . . . . . .=,I10/)
368 & 5X,40HINITIAL PRESSURE(P-PSH) . . . . . . . .=,E12.4/,
369 & 5X,40HINITIAL ENERGY. . . . . . . . . . . . .=,E12.4/)
371 & 5X,' thermal boundary
',/,
372 & 5X,' ----------------
',/,
373 & 5X,'temperature load curve. . . . . . . . .=
',I10/,
374 & 5X,'flux load curve. . . . . . . . . . . .=
',I10/)
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)