42 USE matparam_def_mod,
ONLY : matparam_struct_
58#include "implicit_f.inc"
62 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
65 TYPE(
submodel_data),
DIMENSION(NSUBMOD),
INTENT(IN) :: LSUBMODEL
66 TYPE(matparam_struct_),
INTENT(INOUT) :: MAT_PARAM
67 INTEGER,
INTENT(IN) :: IMIDEOS
75 my_real gamma, p0, e0, psh, rho0, pstar, rhoi, rhor, mu0, pp, df, ssp0, g0, dpdmu
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(
'P_star', pstar, is_available,lsubmodel,unitab)
90 CALL hm_get_floatv(
'Refer_Rho', rho0, is_available_rho0,lsubmodel,unitab
91!-------------------------------------------------------------------------------
103 e0=(p0+gamma*pstar)/(gamma-one)
112 CALL ancmsg(msgid=67,msgtype=msgerror,anmode=aninfo,i1=imideos,c1=
'/EOS/STIFF-GAS',c2=
'GAMMA MUST BE GREATER THAN 1.0')
115 pm(32)=(gamma-one)*e0
119 mat_param%EOS%NUPARAM = 3
120 mat_param%EOS%NIPARAM = 0
121 mat_param%EOS%NFUNC = 0
122 mat_param%EOS%NTABLE = 0
123 CALL mat_param%EOS%CONSTRUCT()
125 mat_param%EOS%UPARAM(1) = gamma
126 mat_param%EOS%UPARAM(2) = p0
127 mat_param%EOS%UPARAM(3) = pstar
128 mat_param%EOS%PSH = psh
129 mat_param%EOS%E0 = e0
148 pp = -gamma*pstar-psh + (gamma-one)*(one+mu0)*e0
151 IF (mat_param%THERM%TINI == zero)
THEN
152 mat_param%THERM%TINI =three100
160 dpdmu = (gamma-one) *e0+(gamma-one)*(one+mu0)*df*df*(pp+psh)
161 dpdmu=
max(zero,dpdmu)
162 IF(rhor > zero) ssp0 = sqrt((dpdmu + two_third*g0)/rhor)
168 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
170 WRITE(iout,1500)gamma,p0,psh,pstar,e0
171 IF(is_available_rho0)
WRITE(iout,1501)pm(1)
176 & 5x,
' STIFFENED GAS EOS ',/,
177 & 5x,
' ----------------- ',/)
179 & 5x,
'GAMMA . . . . . . . . . . . . . . . . . .=',1pg20.13/,
180 & 5x,
'P0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
181 & 5x,
'PSH . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
182 & 5x,
'PSTAR . . . . . . . . . . . . . . . . . .=',1pg20.13/,
183 & 5x,
'COMPUTED E0 . . . . . . . . . . . . . . .=',1pg20.13)
185 & 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)