38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
63 USE matparam_def_mod
65
66
67
68#include "implicit_f.inc"
69
70
71
72#include "units_c.inc"
73#include "param_c.inc"
74
75
76
77
78 TYPE (UNIT_TYPE_),INTENT(IN) ::UNITAB
79 INTEGER,INTENT(IN)::ID
80 CHARACTER(LEN=NCHARTITLE) ,INTENT(IN)::TITR
81 TYPE(SUBMODEL_DATA),INTENT(IN)::LSUBMODEL(*)
82
83 INTEGER,INTENT(INOUT)::IPM(NPROPMI),ISRATE
84 my_real,
INTENT(INOUT)::pm(npropm)
85 TYPE(MLAW_TAG_),INTENT(INOUT) :: MTAG
86 TYPE(MATPARAM_STRUCT_) ,INTENT(INOUT) :: MATPARAM
87
88
89
91 . young, anu, g, c0, c1, e0, e1mn2, en1n2, sdsp, rho0, rhor
92 LOGICAL IS_AVAILABLE,IS_ENCRYPTED
93
94
95
96 is_encrypted = .false.
97 is_available = .false.
98
100
101 CALL hm_get_floatv(
'MAT_RHO', rho0 ,is_available,lsubmodel,unitab)
102 CALL hm_get_floatv(
'Refer_Rho',rhor ,is_available,lsubmodel,unitab)
103 CALL hm_get_floatv(
'MAT_E', young ,is_available,lsubmodel,unitab)
105
106 IF (rhor == zero ) rhor=rho0
107
108 g=young/(two*(one+anu))
109 c0=zero
110 c1=young/(three*(one-two*anu))
111 e0=zero
112 e1mn2=young/(one-anu**2)
113 en1n2=anu*e1mn2
114 sdsp =sqrt(young/
max(rhor,em20))
115 israte = 0
116
117 pm(1) =rhor
118 pm(20)=young
119 pm(21)=anu
120 pm(70)=zero
121 pm(72)=zero
122 pm(32)=c1
123 pm(89) =rho0
124
125 mtag%G_EINT = 0
126 mtag%L_EINT = 0
127 mtag%L_DP_DRHO = 0
128
129
136
137 WRITE(iout,1001) trim(titr),
id,0
138 WRITE(iout,1000)
139 IF(is_encrypted)THEN
140 WRITE(iout,'(5X,A,//)')'CONFIDENTIAL DATA'
141 ELSE
142 WRITE(iout,1100)rho0,young,anu
143 ENDIF
144
145
146 RETURN
147 1000 FORMAT(
148 & 5x,' VOID MATERIAL ',/,
149 & 5x,' ------------- ',//)
150 1001 FORMAT(
151 & 5x,a,/,
152 & 5x,' MATERIAL NUMBER . . . . . . . . . . . .=',i10/,
153 & 5x,' MATERIAL LAW. . . . . . . . . . . . . .=',i10/)
154 1100 FORMAT(
155 & 5x,'INITIAL DENSITY . . . . . . . . . . . .=',1pg20.13/,
156 & 5x,'YOUNG MODULUS . . . . . . . . . . . . .=',1pg20.13/,
157 & 5x,'POISSON''S RATIO . . . . . . . . . . . .=',1pg20.13/)
158
159 RETURN
subroutine hm_get_floatv(name, rval, is_available, lsubmodel, unitab)
subroutine hm_option_is_encrypted(is_encrypted)
subroutine init_mat_keyword(matparam, keyword)
integer, parameter nchartitle