39 . LSUBMODEL ,MTAG6 ,UNITAB ,IPM ,PM,
40 . MAT_ID ,TITR ,ISRATE,
41 . ITYP ,MTAG17 ,MATPARAM )
65#include "implicit_f.inc"
75 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
76 INTEGER,
INTENT(INOUT) :: MAT_ID
77 INTEGER,
INTENT(INOUT) :: ISRATE
78 INTEGER,
DIMENSION(NPROPMI) ,
INTENT(INOUT) :: IPM
79 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
80 my_real,
DIMENSION(NPROPM) ,
INTENT(INOUT) :: pm
82 TYPE(
mlaw_tag_),
INTENT(INOUT) :: MTAG6,MTAG17
83 INTEGER,
INTENT(IN) :: ITYP
84 TYPE(matparam_struct_),
INTENT(INOUT) :: MATPARAM
88 LOGICAL :: IS_AVAILABLE,IS_ENCRYPTED,IS_EOS
89 INTEGER COUNT, IEOS, LAW6_OPT
91 . rho0, vis, psh, c0, c1, c2, c3, c4, c5, pmin, e0,
105 CALL hm_get_intv (
'Line_count' ,count ,is_available, lsubmodel)
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 CALL hm_get_boolv (
'EOS_DATA_EXIST' ,is_eos ,is_available)
109 CALL hm_get_intv (
'Law6_opt' ,law6_opt ,is_available, lsubmodel)
110 CALL hm_get_floatv(
'DAMP1' ,vis ,is_available, lsubmodel, unitab)
113 IF(count==3)is_eos=.true.
114 IF(invers_init<2018)is_eos=.true.
118 CALL hm_get_floatv(
'MAT_C0' ,c0 ,is_available, lsubmodel, unitab)
119 CALL hm_get_floatv(
'MAT_C1' ,c1 ,is_available, lsubmodel, unitab)
120 CALL hm_get_floatv(
'MAT_C2' ,c2 ,is_available, lsubmodel, unitab)
121 CALL hm_get_floatv(
'MAT_C3' ,c3 ,is_available, lsubmodel, unitab)
122 CALL hm_get_floatv(
'MAT_C4' ,c4 ,is_available, lsubmodel, unitab)
123 CALL hm_get_floatv(
'MAT_C5' ,c5 ,is_available, lsubmodel, unitab)
124 CALL hm_get_floatv(
'MAT_EA' ,e0 ,is_available, lsubmodel, unitab)
125 CALL hm_get_floatv(
'MAT_PSH' ,psh ,is_available, lsubmodel, unitab)
128 matparam%EOS%NUPARAM = 7
129 matparam%EOS%NIPARAM = 0
130 matparam%EOS%NFUNC = 0
131 matparam%EOS%NTABLE = 0
132 CALL matparam%EOS%CONSTRUCT()
133 matparam%EOS%UPARAM(1) = c0-psh
134 matparam%EOS%UPARAM(2) = c1
135 matparam%EOS%UPARAM(3) = c2
136 matparam%EOS%UPARAM(4) = c3
137 matparam%EOS%UPARAM(5) = c4
138 matparam%EOS%UPARAM(6) = c5
139 matparam%EOS%UPARAM(7) = zero
140 matparam%EOS%PSH = psh
154 IF (pmin == zero) pmin=-infinity
155 IF (rhor == zero) rhor=rho0
162 IF(rhor /= zero)
THEN
168 pm(31) = -psh + c0+c1*mu+ c3*mu**3+(c4+c5*mu)*e0
170 pm(31) = -psh + c0+c1*mu+c2*mu**2+c3*mu**3+(c4+c5*mu)*e0
197 WRITE(iout,2001) trim(titr),mat_id,6
201 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
203 WRITE(iout,2002)rho0,rhor
206 WRITE(iout,1500)c0,c1,c2,c3,c4,c5,pmin,pm(31),e0
208 WRITE(iout,2002)rho0,rhor
234 & 5x,
' VISCOUS FLUID ',/,
235 & 5x,
' -------------- ',//)
237 & 5x,
'VISCOSITY . . . . . . . . . . . . . . .=',1pg20.13)
239 & 5x,
'PSH PRESSURE SHIFT. . . . . . . . . . .=',1pg20.13/)
241 & 5x,
'C0. . . . . . . . . . . . . . . . . . .=',1pg20.13/,
242 & 5x,
'C1. . . . . . . . . . . . . . . . . . .=',1pg20.13/,
243 & 5x,
'C2. . . . . . . . . . . . . . . . . . .=',1pg20.13/,
244 & 5x,
'C3. . . . . . . . . . . . . . . . . . .=',1pg20.13/,
245 & 5x,
'C4. . . . . . . . . . . . . . . . . . .=',1pg20.13/,
246 & 5x,
'C5. . . . . . . . . . . . . . . . . . .=',1pg20.13/,
247 & 5x,
'PRESSURE CUTOFF . . . . . . . . . . . .=',1pg20.13/,
248 & 5x,
'INITIAL PRESSURE. . . . . . . . . . . .=',1pg20.13/,
249 & 5x,
'INITIAL INTERNAL ENERGY PER UNIT VOLUME=',1pg20.13//)
251 & 5x,
'PRESSURE CUTOFF . . . . . . . . . . . .=',1pg20.13//)
254 & 5x,
'MATERIAL NUMBER . . . . . . . . . . . .=',i10/,
255 & 5x,
'MATERIAL LAW. . . . . . . . . . . . . .=',i10/)
257 & 5x,
'INITIAL DENSITY . . . . . . . . . . . .=',1pg20.13/,
258 & 5x,
'REFERENCE DENSITY . . . . . . . . . . .=',1pg20.13)