39 . NUVAR ,IFUNC ,MAXFUNC ,NFUNC , PARMAT ,
40 . UNITAB ,MAT_ID ,TITR ,MTAG , LSUBMODEL,
70#include "implicit_f.inc"
79 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
80 my_real,
INTENT(INOUT) :: PM(NPROPM),PARMAT(100),UPARAM(MAXUPARAM)
81 INTEGER,
INTENT(INOUT) :: IPM(NPROPMI),ISRATE,IFUNC(MAXFUNC),NFUNC,MAXFUNC,MAXUPARAM,NUPARAM, NUVAR,
83 INTEGER,
INTENT(IN) :: MAT_ID
84 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
86 TYPE(matparam_struct_) ,
INTENT(INOUT) ::
92 . c1, g,temp,v0,c2,yfac(2),fac_l,fac_t,fac_m,fac_c
94 my_real :: RHO0, RHOR, YFAC_UNIT
95 LOGICAL :: IS_AVAILABLE,IS_ENCRYPTED
99 is_encrypted = .false.
100 is_available = .false.
111 CALL hm_get_floatv(
'MAT_RHO' ,rho0 ,is_available, lsubmodel, unitab)
112 CALL hm_get_floatv(
'Refer_Rho' ,rhor ,is_available, lsubmodel, unitab)
114 CALL hm_get_floatv(
'MAT_E' ,e ,is_available, lsubmodel, unitab)
115 CALL hm_get_floatv(
'MAT_NU' ,nu ,is_available, lsubmodel, unitab)
116 CALL hm_get_floatv(
'CP' ,cp ,is_available, lsubmodel, unitab)
118 CALL hm_get_floatv(
'MAT_D' ,d ,is_available, lsubmodel, unitab)
119 CALL hm_get_floatv(
'MAT_N' ,n ,is_available, lsubmodel, unitab)
120 CALL hm_get_floatv(
'M64_Md' ,md ,is_available, lsubmodel, unitab)
121 CALL hm_get_floatv(
'M64_Vo' ,v0 ,is_available, lsubmodel, unitab)
122 CALL hm_get_floatv(
'M64_Vm' ,vmc ,is_available, lsubmodel, unitab)
124 CALL hm_get_intv (
'M64_FUNCT_ID_0' ,ifunc(1) ,is_available, lsubmodel)
125 CALL hm_get_intv (
'M64_FUNCT_ID_1' ,ifunc(2) ,is_available, lsubmodel)
126 CALL hm_get_floatv(
'M64_SCALE_0' ,yfac(1) ,is_available, lsubmodel, unitab)
127 CALL hm_get_floatv(
'M64_SCALE_1' ,yfac(2) ,is_available, lsubmodel, unitab)
128 CALL hm_get_floatv(
'M64_INI_TEMP' ,temp ,is_available, lsubmodel, unitab)
131 CALL hm_get_floatv_dim(
'M64_SCALE_0' ,yfac_unit ,is_available, lsubmodel, unitab)
134 IF(rhor == zero)rhor=rho0
137 IF(v0 == zero.OR.v0 >= one)v0=em20
143 IF(yfac(1) == zero) yfac(1)= one*yfac_unit
144 IF(yfac(2) == zero) yfac(2)= one*yfac_unit
145 IF(vmc == zero.OR.vmc > one) vmc = one
148 g = half*e/(one + nu)
149 c1=e/three/(one - two*nu)
151 uparam(2) = e/(one - nu*nu)
152 uparam(3) = nu*uparam
171 parmat(17) = (one - two*nu)/(one - nu)
177 WRITE(iout,1001) trim(titr
180 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
182 WRITE(iout,1002) rho0
183 WRITE(iout,1100)e,nu,cp,n,d,v0,md,vmc,temp
184 WRITE(iout,1200)(ifunc(j),yfac(j),j=1,2)
189 . 5x,40h trip-steels plastic law ,/,
190 & 5x,40h ------------------------ ,/)
193 & 5x,'material number . . . . . . . . . . . . =
',I10/,
194 & 5X,'material law. . . . . . . . . . . . . . =
',I10/)
196 & 5X,'initial density . . . . . . . . . . . . =
',1PG20.13/)
198 & 5X,'young
''s modulus. . . . . . . . . . . . . . . =
',E12.4/
199 & 5X,'poisson
''s ratio. . . . . . . . . . . . . . . =
',E12.4/
200 & 5X,'heat capacitivity . . .. . . . . . . . . . . =
',E12.4/
202 & 5X,'material parameter(n) . . . . . . . . .=
',E12.4/
203 & 5X,'material parameter(d) . . . . .. . . . .=
',E12.4/
204 & 5X,'material parameter(v0) . . . . .. . . . =
',E12.4/
205 & 5X,'limit marteniste temperature(md) . . . . . . =
',E12.4/
206 & 5X,'content martensite volume fraction(vmc) . . . =
',E12.4/
207 & 5X,'initial temperature . . . . . . . . . . . . =
',E12.4)
209 & 5X,'yield stress
FUNCTION number. . . . . . . . . =
',I8/
210 & 5X,'yield scale factor. . . . . . . . . . . . . . =
',E12.4)