57#include "implicit_f.inc"
61 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
64 TYPE(
submodel_data),
DIMENSION(NSUBMOD),
INTENT(IN) :: LSUBMODEL
65 INTEGER,
INTENT(IN) :: IMIDEOS
73 my_real gamma, p0,t0, e0, psh, rho0,fac_l,fac_t,fac_m,fac_c,pstar, fac_r,a,b,rhoi,rhor,mu0,df,ssp0,g0,dpdmu,pp
74 LOGICAL :: IS_ENCRYPTED, IS_AVAILABLE, IS_AVAILABLE_RHO0
78 is_encrypted = .false.
79 is_available = .false.
80 is_available_rho0 = .false.
84 CALL hm_get_floatv(
'Gamma', gamma, is_available,lsubmodel,unitab)
85 CALL hm_get_floatv(
'LAW5_P0', p0, is_available,lsubmodel,unitab)
86 CALL hm_get_floatv(
'LAW5_PSH', psh, is_available,lsubmodel,unitab)
90 CALL hm_get_floatv(
'Refer_Rho', rho0, is_available_rho0,lsubmodel,unitab)
105 IF(gamma <= zero)
THEN
111 . c2=
'GAMMA MUST BE GREATER THAN 1.0')
119 IF(pm(79)==zero)pm(79)=three100
137 IF(mu0 <= -one)mu0=-one+ep12
140 e0 = (p0-a*exp(b*log(one+mu0)))/(gamma-one)/(one+mu0)
146 CALL ancmsg(msgid=67,msgtype=msgerror,anmode=aninfo,
149 . c2=
'PARAMETERS RESULTS INTO A NEGATIVE INITIAL ENERGY')
159 pp = (gamma-one)*(one+mu0)*e0 + a*exp(b*log(one+mu0))
161 dpdmu = (gamma-one)*e0+a*b/(one+mu0)*exp((b-one)*log(one+mu0))+(gamma-one)*df*pp
162 dpdmu =
max(zero,dpdmu)
163 IF(rhor > zero) ssp0 = sqrt
169 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
171 WRITE(iout,1500)gamma,p0,psh,a,b
172 IF(is_available_rho0)
WRITE(iout,1501)pm(1)
177 & 5x,
' LANDAU-STANYUKOVICH-ZELDOVICH-KOMPANEETS EOS (LSZK) ',/,
178 & 5x,
' --------------------------------------------------- ',/)
180 & 5x,
'GAMMA . . . . . . . . . . . . . . . . . .=',1pg20.13/,
181 & 5x,
'P0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
182 & 5x,
'PSH . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
183 & 5x,
'A . . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
184 & 5x,
'b . . . . . . . . . . . . . . . . . . . .=',1pg20.13)
186 & 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)