57#include "implicit_f.inc"
61 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
62 INTEGER IIN,IOUT,IUNIT
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,k0,k1,rhoi,rhor,mu0,df,ssp0,g0,dpdmu
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(
'EOS_K0', k0, is_available,lsubmodel,unitab)
86 CALL hm_get_floatv(
'LAW5_P0', p0, is_available,lsubmodel,unitab)
87 CALL hm_get_floatv(
'LAW5_PSH', psh, is_available,lsubmodel,unitab)
88 CALL hm_get_floatv(
'Refer_Rho', rho0, is_available_rho0,lsubmodel,unitab)
103 CALL ancmsg(msgid=67,msgtype=msgerror,anmode=aninfo,i1=imideos,
104 . c1=
'/EOS/MURNAGHAN',
105 . c2=
'K0 MUST BE POSITIVE')
113 IF(pm(79)==zero)pm(79)=three100
132 pm(31) = k0/k1 * (exp(k1*log(1+mu0)) - one ) + p0 - psh
133 pm(104)= k0/k1 * (exp(k1*log(1+mu0)) - one ) + p0 - psh
139 dpdmu = k0*exp( k1*log(1+mu0) )/(one+mu0)
140 dpdmu =
max(zero,dpdmu)
141 IF(rhor > zero) ssp0 = sqrt((dpdmu + two_third*g0)/rhor)
146 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
148 WRITE(iout,1500)k0,k1,p0,pm(31),psh
149 IF(is_available_rho0)
WRITE(iout,1501)pm(1)
154 & 5x,
' MURNAGHAN EOS ',/,
155 & 5x,
' ------------- ',/)
157 & 5x,
'K0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
158 & 5x,
'K1. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
159 & 5x,
'P0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
160 & 5x,
'INITIAL PRESSURE. . . . . . . . . . . . .=',1pg20.13/,
161 & 5x,
'PSH . . . . . . . . . . . . . . . . . . .=',1pg20.13)
163 & 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)