42 USE matparam_def_mod,
ONLY : matparam_struct_
58#include "implicit_f.inc"
62 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
63 INTEGER IIN,IOUT,IUNIT
65 TYPE(
submodel_data),
DIMENSION(NSUBMOD),
INTENT(IN) :: LSUBMODEL
66 INTEGER,
INTENT(IN) :: IMIDEOS
67 TYPE(matparam_struct_),
INTENT(INOUT) :: MAT_PARAM
75 my_real gamma, p0,t0, e0, psh, rho0,fac_l,fac_t,fac_m,fac_c,cv,mu0,pp,rhoi,rhor,g0,ssp0,dpdmu,df
76 LOGICAL :: IS_ENCRYPTED, IS_AVAILABLE, IS_AVAILABLE_RHO0
80 is_encrypted = .false.
81 is_available = .false.
82 is_available_rho0 = .false.
86 CALL hm_get_floatv(
'Gamma', gamma, is_available,lsubmodel,unitab)
87 CALL hm_get_floatv(
'LAW5_P0', p0, is_available,lsubmodel,unitab)
88 CALL hm_get_floatv(
'LAW5_PSH', psh, is_available,lsubmodel,unitab)
89 CALL hm_get_floatv(
'T_Initial', t0, is_available,lsubmodel,unitab)
90 CALL hm_get_floatv(
'Refer_Rho', rho0, is_available_rho0,lsubmodel,unitab)
119 e0 = p0/(gamma-one)/(one+mu0)
128 CALL ancmsg(msgid=67,msgtype=msgerror,anmode=aninfo,
130 . c1=
'/EOS/IDEAL-GAS',
131 . c2=
'INITIAL PRESSURE MUST BE POSITIVE')
135 CALL ancmsg(msgid=67,msgtype=msgerror,anmode=aninfo,
137 . c1=
'/EOS/IDEAL-GAS',
138 . c2=
'SPECIFIC HEAT RATIO (GAMMA) MUST BE GREATER THAN 1.0')
141 IF(t0 == zero)t0=three100
143 IF(rho0*t0 /= zero)
THEN
157 mat_param%EOS%Cv = cv
158 mat_param%EOS%Cp = gamma * cv
164 dpdmu = (gamma-one)*e0+(one+mu0)*(gamma-one)*df*df*(pm(31)+psh)
166 dpdmu=
max(zero,dpdmu)
167 IF(rhor > zero) ssp0 = sqrt((dpdmu + two_third*g0)/rhor)
173 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
175 WRITE(iout,1500)gamma,p0,psh,t0,e0,cv
177 IF(is_available_rho0)
WRITE(iout,1501)pm(1)
181 & 5x,
' IDEAL GAS EOS ',/,
182 & 5x,
' ------------- ',/)
184 & 5x,
'GAMMA . . . . . . . . . . . . . . . . . .=',1pg20.13/,
185 & 5x,
'P0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
186 & 5x,
'PSH . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
187 & 5x,
'T0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
188 & 5x,
'E0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
189 & 5x,
'COMPUTED HEAT CAPACITY (Cv) . . . . . . .=',1pg20.13)
191 & 5x,
'EOS REFERENCE DENSITY . . . . . . . . . .=',1pg20.13)
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)