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, ETA, BULK,
97 . m1, m2, m3, m4, m5, m7,rho0,rhor
98 LOGICAL IS_AVAILABLE,IS_ENCRYPTED
102 is_encrypted = .false.
103 is_available = .false.
109 CALL hm_get_floatv(
'MAT_RHO' ,rho0 ,is_available, lsubmodel, unitab)
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)
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)