39 . LSUBMODEL ,MTAG ,UNITAB ,IPM ,PM ,
40 . MAT_ID ,TITR ,ISRATE ,MATPARAM)
64#include "implicit_f.inc"
74 INTEGER,
INTENT(INOUT) :: MAT_ID
75 INTEGER,
INTENT(INOUT) :: ISRATE
76 INTEGER,
DIMENSION(NPROPMI) ,
INTENT(INOUT) :: IPM
77 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
78 my_real,
DIMENSION(NPROPM) ,
INTENT(INOUT) :: pm
80 TYPE(
submodel_data),
DIMENSION(NSUBMOD),
INTENT(IN) :: LSUBMODEL
82 TYPE(matparam_struct_),
INTENT(INOUT) :: MATPARAM
86 LOGICAL :: IS_AVAILABLE,IS_ENCRYPTED,IS_EOS, EOS_EMBEDDED
89 . young, anu, ca, cb, cn, epsm, sigm, bulk,
93 . c0,c1,c2,c3,c4,c5,psh,rho0,rhor
102 is_encrypted = .false.
103 is_available = .false.
107 CALL hm_get_floatv(
'MAT_RHO' ,rho0 ,is_available, lsubmodel, unitab)
108 CALL hm_get_floatv(
'Refer_Rho' ,rhor ,is_available, lsubmodel, unitab)
110 CALL hm_get_floatv(
'MAT_E' ,young ,is_available, lsubmodel, unitab)
111 CALL hm_get_floatv(
'MAT_NU' ,anu ,is_available, lsubmodel, unitab)
113 CALL hm_get_floatv(
'MAT_SIGY' ,ca ,is_available, lsubmodel, unitab)
114 CALL hm_get_floatv(
'MAT_BETA' ,cb ,is_available, lsubmodel, unitab)
115 CALL hm_get_floatv(
'MAT_HARD' ,cn ,is_available, lsubmodel, unitab)
116 CALL hm_get_floatv(
'MAT_EPS' ,epsm ,is_available, lsubmodel, unitab)
117 CALL hm_get_floatv(
'MAT_SIG' ,sigm ,is_available, lsubmodel, unitab)
119 CALL hm_get_floatv(
'MAT_PC' ,pmin ,is_available, lsubmodel, unitab
121 CALL hm_get_intv (
'Line_count' ,count ,is_available, lsubmodel)
123 IF(invers_init>=2018)
THEN
125 ELSEIF(invers_init>=110)
THEN
126 IF(count==3)eos_embedded=.true.
136 IF(invers_init>=140)
THEN
144 CALL hm_get_floatv(
'MAT_C0' ,c0 ,is_available, lsubmodel, unitab)
145 CALL hm_get_floatv(
'MAT_C1' ,c1 ,is_available, lsubmodel, unitab)
146 CALL hm_get_floatv(
'MAT_C2' ,c2 ,is_available, lsubmodel, unitab)
147 CALL hm_get_floatv(
'MAT_C3' ,c3 ,is_available, lsubmodel, unitab)
149 CALL hm_get_floatv(
'MAT_C5' ,c5 ,is_available, lsubmodel, unitab)
150 CALL hm_get_floatv(
'MAT_E0' ,e0 ,is_available, lsubmodel, unitab)
151 CALL hm_get_floatv(
'MAT_PSH' ,psh ,is_available, lsubmodel, unitab)
154 matparam%EOS%NUPARAM = 7
155 matparam%EOS%NIPARAM = 0
156 matparam%EOS%NFUNC = 0
157 matparam%EOS%NTABLE = 0
158 CALL matparam%EOS%CONSTRUCT()
159 matparam%EOS%UPARAM(1) = c0-psh
160 matparam%EOS%UPARAM(2) = c1
161 matparam%EOS%UPARAM(3) = c2
162 matparam%EOS%UPARAM(4) = c3
163 matparam%EOS%UPARAM(5) = c4
164 matparam%EOS%UPARAM(6) = c5
165 matparam%EOS%UPARAM(7) = zero
166 matparam%EOS%PSH = psh
182 IF (pmin==zero) pmin=-ep20
183 IF (rhor==zero) rhor=rho0
186 IF(cn==zero.OR.cn==one) cn = onep0001
187 IF(epsm==zero) epsm = ep20
188 IF(sigm==zero) sigm = ep20
189 g = young/(two*(one +anu
190 IF(.NOT.eos_embedded)bulk = young/(three*(one - two*anu))
191 IF(.NOT.eos_embedded)e0 = zero
207 pm(105) = (one -two*anu)/(one - anu)
227 WRITE(iout,2001) titr,mat_id,3
231 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
233 WRITE(iout,2002)rho0,rhor
234 WRITE(iout,1300)young,anu,g,bulk
235 WRITE(iout,1400)ca,cb,cn,epsm,sigm
244 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
246 WRITE(iout,2500)c0,c1,c2,c3,c4,c5,e0,pm(1),psh
253 & 5x,
' ELASTIC PLASTIC HYDRODYNAMIC ',/,
254 & 5x,
' ---------------------------- ',//)
256 & 5x,
'YOUNG',1h
','s modulus . . . . . . . . . . . .=
',1PG20.13/,
257 & 5X,'poisson
',1H',
'S RATIO . . . . . . . . . . . .=',1pg20.13/,
258 & 5x,
'SHEAR MODULUS . . . . . . . . . . . . . .=',1pg20.13/,
259 & 5x,
'BULK MODULUS . . . . . . . . . . . . . .=',1pg20.13//)
261 & 5x,
'YIELD COEFFICIENT CA. . . . . . . . . .=',1pg20.13/,
262 & 5x,
'YIELD COEFFICIENT CB. . . . . . . . . .=',1pg20.13/,
263 & 5x,
'YIELD COEFFICIENT CN. . . . . . . . . .=',1pg20.13/,
264 & 5x,
'EPS-MAX . . . . . . . . . . . . . . . .=',1pg20.13/,
265 & 5x,
'SIG-MAX . . . . . . . . . . . . . . . .=',1pg20.13//)
267 & 5x,
'PRESSURE CUTOFF . . . . . . . . . . . .=',1pg20.13//)
269 & 5x,
' POLYNOMIAL EOS ',/,
270 & 5x,
' -------------- ',/,
271 & 5x,
' INPUT 100 IS OBSOLETE ',/,
272 & 5x,
' IT CAN BE ERASED BY /EOS CARD ',/)
274 & 5x,
'C0. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
275 & 5x,
'C1. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
276 & 5x,
'C2. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
277 & 5x,
'C3. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
278 & 5x,
'C4. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
279 & 5x,
'C5. . . . . . . . . . . . . . . . . . . .=',1pg20.13/,
280 & 5x,
'INITIAL INTERNAL ENERGY PER UNIT VOLUME .=',1pg20.13/,
281 & 5x,
'REFERENCE DENSITY . . . . . . . . . . . .=',1pg20.13/,
282 & 5x,
'PRESSURE SHIFT. . . . . . . . . . . . . .=',1pg20.13//)
285 & 5x,
' MATERIAL NUMBER . . . . . . . . . . . .=',i10/,
286 & 5x,
' MATERIAL LAW. . . . . . . . . . . . . .=',i10/)
288 & 5x,
' INITIAL DENSITY . . . . . . . . . . . .=',1pg20.13/,
289 & 5x,
' 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)