40 . NUVAR ,NUMTABL ,MAXTABL ,ITABLE ,PARMAT ,UNITAB ,
41 . PM ,LSUBMODEL,MAT_ID ,TITR ,MATPARAM ,NVARTMP ,
74#include "implicit_f.inc"
84 TYPE (UNIT_TYPE_),
INTENT(IN) :: UNITAB
85 INTEGER,
INTENT(IN) :: MAT_ID,MAXTABL
86 my_real,
DIMENSION(NPROPM) ,
INTENT(INOUT) :: PM
87 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
88 INTEGER,
INTENT(INOUT) :: NUVAR,NUMTABL,NVARTMP,IMATVIS
89 INTEGER,
DIMENSION(MAXTABL) ,
INTENT(INOUT) :: ITABLE
90 my_real,
DIMENSION(100),
INTENT(INOUT) :: parmat
92 TYPE (MATPARAM_STRUCT_) ,
INTENT(INOUT) :: MATPARAM
96 LOGICAL :: IS_AVAILABLE,IS_ENCRYPTED
98 my_real :: RHO0,NU,BULK,E,EMOD,G,A11,SCAL,HU, SHAPE,
99 . scale_1_unit,xscale_1_unit,xfac(2)
102 is_encrypted = .false.
103 is_available = .false.
109 CALL hm_get_floatv(
'MAT_RHO' ,rho0 ,is_available, lsubmodel, unitab)
112 CALL hm_get_floatv(
'MAT_E' ,emod ,is_available, lsubmodel, unitab)
116 CALL hm_get_floatv(
'MAT_HU' ,hu ,is_available, lsubmodel, unitab)
117 CALL hm_get_floatv(
'MAT_SHAPE' ,shape ,is_available, lsubmodel, unitab)
120 CALL hm_get_intv (
'FUN_1' ,itable(1),is_available, lsubmodel)
121 CALL hm_get_floatv(
'XSCALE_1' ,xfac(1) ,is_available, lsubmodel, unitab)
122 CALL hm_get_floatv(
'SCALE_1' ,xfac(2) ,is_available, lsubmodel, unitab)
125 CALL hm_get_floatv_dim(
'XSCALE_1' ,xscale_1_unit ,is_available, lsubmodel, unitab
126 IF (xfac(1) == zero) xfac(1) = one * xscale_1_unit
128 IF (xfac(2) == zero) xfac(2) = one * scale_1_unit
132 g = emod / two / (one+nu)
133 bulk = emod / three / (one-two * nu)
134 a11 = emod * (one - nu) / (one + nu) / (one-two
135 IF (hu == zero) hu = one
146 ALLOCATE(matparam%UPARAM(matparam%NUPARAM))
147 matparam%UPARAM(1) = emod
148 matparam%UPARAM(2) = bulk
149 matparam%UPARAM(3) = g
150 matparam%UPARAM(4) = xfac(1)
151 matparam%UPARAM(5) = xfac(2)
152 matparam%UPARAM(6) = hu
153 matparam%UPARAM(7) = shape
164 parmat(17) = (one - two*nu)/(one - nu)
168 CALL INIT_MAT_KEYWORD(MATPARAM,"compressible
")
170 ! Properties compatibility
171 CALL INIT_MAT_KEYWORD(MATPARAM,"solid_isotropic
")
173!--------------------------
175!--------------------------
176 WRITE(IOUT,900) TRIM(TITR),MAT_ID,ILAW
179 WRITE(IOUT,'(5X,A,//)')'CONFIDENTIAL DATA'
181 WRITE(IOUT,1050) RHO0
182 WRITE(IOUT,1110) E,BULK,G
183 WRITE(IOUT,1150) HU,SHAPE
184 WRITE(IOUT,1200) ITABLE(1),XFAC(1),XFAC(2)
188 & 5X,'MATERIAL NUMBER . . . . . . . . . . . . . . . =',I10/,
189 & 5X,'MATERIAL LAW. . . . . . . . . . . . . . . . . =',I10/)
191 & 5X,'-----------------------------------------------',/
192 & 5X,' MATERIAL MODEL: ISOTROPIC PATH DEPENDENT FOAM ',/,
193 & 5X,'-----------------------------------------------',/)
195 & 5X,'INITIAL DENSITY. . . . . . . . . . . . . . . .=',1PG20.13/)
197 & 5X,'INITIAL YOUNG MODULUS E. . . . . . . . . . . .=',1PG20.13/
198 & 5X,'INITIAL BULK MODULUS K . . . . . . . . . . . .=',1PG20.13/
199 & 5X,'INITIAL SHEAR MODULUS G. . . . . . . . . . . .=',1PG20.13/)
201 & 5X,'HYSTERETIC UNLOADING FACTOR HU . . . . . . . .=',1PG20.13/
202 & 5X,'SHAPE FACTOR FOR UNLOADING . . . . . . . . . .=',1PG20.13/)
204 & 5X,'LOADING TABLE IDENTIFIER . . . . . . . . . . .=',I10/
205 & 5X,'REFERENCE STRAIN RATE (SCALE FACTOR) . . . . .=',1PG20.13/
206 & 5X,'LOADING STRESS SCALE FACTOR. . . . . . . . . .=',1PG20.13/)
subroutine hm_read_mat190(nuvar, numtabl, maxtabl, itable, parmat, unitab, pm, lsubmodel, mat_id, titr, matparam, nvartmp, imatvis)