39 . NUVAR ,IFUNC ,MAXFUNC ,NFUNC , PARMAT ,
40 . UNITAB ,MAT_ID ,TITR ,MTAG , LSUBMODEL,
71#include "implicit_f.inc"
80 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
81 my_real,
DIMENSION(NPROPM) ,
INTENT(INOUT) :: PM
82 my_real,
DIMENSION(100) ,
INTENT(INOUT) :: PARMAT
83 my_real,
DIMENSION(MAXUPARAM) ,
INTENT(INOUT) :: uparam
84 INTEGER,
DIMENSION(MAXFUNC) ,
INTENT(INOUT) :: IFUNC
85 INTEGER,
INTENT(INOUT) :: IPM(NPROPMI),FSMOOTH,IMATVIS,NFUNC,MAXFUNC,MAXUPARAM,NUPARAM,NUVAR
87 INTEGER,
INTENT(IN) :: MAT_ID
88 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
90 TYPE(matparam_struct_)
INTENT(INOUT) :: MATPARAM
96 . E, NU, G, A0, FCUT, EPS0, PMIN, RCP, TINI
98 LOGICAL IS_AVAILABLE,IS_ENCRYPTED
102 is_encrypted = .false.
103 is_available = .false.
110 CALL hm_get_floatv(
'Refer_Rho' ,rhor ,is_available, lsubmodel, unitab)
113 CALL hm_get_floatv(
'MAT_E' , e ,is_available, lsubmodel, unitab)
114 CALL hm_get_floatv(
'MAT_NU' , nu ,is_available, lsubmodel, unitab)
115 CALL hm_get_floatv(
'MAT103_A0' , a0 ,is_available, lsubmodel, unitab)
116 CALL hm_get_floatv(
'MAT103_M1' , m1 ,is_available, lsubmodel, unitab)
117 CALL hm_get_floatv('mat103_m2
' , M2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
118 CALL HM_GET_FLOATV('mat103_m3
' , M3 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
119 CALL HM_GET_FLOATV('mat103_m4
' , M4 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
121 CALL HM_GET_FLOATV('mat103_m5
' , M5 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
122 CALL HM_GET_FLOATV('mat103_m7
' , M7 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
124 CALL HM_GET_INTV('mat_fsmooth
' , FSMOOTH ,IS_AVAILABLE, LSUBMODEL)
125 CALL HM_GET_FLOATV('fcut
' , FCUT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
126 CALL HM_GET_FLOATV('mat_srp
' , EPS0 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
127 CALL HM_GET_FLOATV('mat_pc
' , PMIN ,IS_AVAILABLE, LSUBMODEL, UNITAB)
129 CALL HM_GET_FLOATV('mat_spheat
' ,RCP ,IS_AVAILABLE, LSUBMODEL, UNITAB)
130 CALL HM_GET_FLOATV('mat_t0
' ,TINI ,IS_AVAILABLE, LSUBMODEL, UNITAB)
131 CALL HM_GET_FLOATV('mat103_eta
',ETA ,IS_AVAILABLE, LSUBMODEL, UNITAB)
136 IF(PMIN == ZERO) PMIN=-INFINITY
137 IF(RCP == ZERO) RCP = INFINITY
138 IF(RHOR==ZERO)RHOR=RHO0
145 CALL ANCMSG(MSGID=276,MSGTYPE=MSGERROR,ANMODE=ANINFO,I1=103,I2=MAT_ID,C1=TITR)
149 CALL ANCMSG(MSGID=300,MSGTYPE=MSGERROR,ANMODE=ANINFO,I1=103,I2=MAT_ID,C1=TITR)
159 UPARAM(2) = ONE/UNITAB%FAC_T_WORK
175 BULK = E/THREE/(ONE-TWO*NU)
191!---------------------------------------------------------
194 MATPARAM%IEOS = 18 ! Linear EOS is used by default
196!---------------------------------------------------------
198 ! Material compatibility with /EOS option
199 CALL INIT_MAT_KEYWORD(MATPARAM,"EOS")
201 ! EOS/Thermo keyword for pressure treatment in elements
202 CALL INIT_MAT_KEYWORD(MATPARAM,"HYDRO_EOS")
204 ! Properties compatibility
205 CALL INIT_MAT_KEYWORD(MATPARAM,"SOLID_ISOTROPIC")
206 CALL INIT_MAT_KEYWORD(MATPARAM,"SPH")
210 WRITE(IOUT,1010) TRIM(TITR),MAT_ID,103
213 WRITE(IOUT,'(5x,a,//)
')'confidential data
'
215 WRITE(IOUT,1020)RHO0,RHOR
216 WRITE(IOUT,1100) E, NU, A0, M1, M2, M3, M4, M5, M7
217 WRITE(IOUT,1200) FSMOOTH, FCUT, EPS0, PMIN, RCP, TINI, ETA
221 & 5X,' hensel spittel material
',/,
222 & 5X,' -----------------------
',/,
226 & 5X,'material number. . . . . . . . . . . . . . .=
',I10/,
227 & 5X,'material law . . . . . . . . . . . . . . . .=
',I10/)
229 & 5X,'initial density . . . . . . . . . . . .=
',1PG20.13/,
230 & 5X,'reference density . . . . . . . . . . .=
',1PG20.13)
232 & 5X,'young modulus. . . . . . . . . . . . . . . .=
',1PG20.13/
233 & 5X,'poisson ratio. . . . . . . . . . . . . . . .=
',1PG20.13/
234 & 5X,'yield
PARAMETER a0 . . . . . . . . . . . . .=
',1PG20.13/
235 & 5X,'yield
PARAMETER m1 . . . . . . . . . . . . .=
',1PG20.13/
236 & 5X,'yield
PARAMETER m2 . . . . . . . . . . . . .=
',1PG20.13/
237 & 5X,'yield
PARAMETER m3 . . . . . . . . . . . . .=
',1PG20.13/
238 & 5X,'yield
PARAMETER m4 . . . . . . . . . . . . .=
',1PG20.13/
239 & 5X,'yield
PARAMETER m5 . . . . . . . . . . . . .=
',1PG20.13/
240 & 5X,'yield
PARAMETER m7 . . . . . . . . . . . . .=
',1PG20.13/)
242 & 5X,'strain rate smoothing flag . . . . . . . . .=
',I10/
243 & 5X,'cut off frequency strain rate smoothing . . =
',1PG20.13/
244 & 5X,'reference strain . . . . . . . . . . . . . .=
',1PG20.13/
245 & 5X,'pressure cut-off . . . . . . . . . . . . . .=
',1PG20.13/
246 & 5X,'specific heat rho*cp . . . . . . . . . . . .=
',1PG20.13/
247 & 5X,'initial temperature k
',1PG20.13/
248 & 5X,'heat conversion
PARAMETER eta. . . . . . . .=
',1PG20.13/)
subroutine hm_read_mat103(uparam, maxuparam, nuparam, fsmooth, imatvis, nuvar, ifunc, maxfunc, nfunc, parmat, unitab, mat_id, titr, mtag, lsubmodel, pm, ipm, matparam)