45
46
47
50
51
52
53#include "implicit_f.inc"
54
55
56
57 TYPE (UNIT_TYPE_),INTENT(IN) ::UNITAB
58 INTEGER IPLA(4)
60 . av(4), rho0_(4), e0(4), pm(4), c0(4)
61 . c1(4), c2(4), c3(4), c4(4), c5(4) ,
62 . gg(4), y(4), bb(4), n(4) ,
63 . cc(4), epdr(4), cm(4), t0(4), tmelt(4),
64 . thetl(4),sph(4) , plamx(4), sigmx(4), xka(4) ,
65 . xkb(4), nu(4), a0(4), a1(4), a2(4) ,
66 . amx(4),
67 . b1,b2,r1,r2,w,vdet,pcj,
68 . pext,vis,visv
69 INTEGER :: IBFRAC
71 TYPE(SUBMODEL_DATA),INTENT(IN) :: (NSUBMOD)
72
73
74
75 LOGICAL :: IS_AVAILABLE
76 INTEGER :: I
77
78
79
80
81
82
83
84 CALL hm_get_floatv(
'PEXT' ,pext ,is_available, lsubmodel, unitab)
85 CALL hm_get_floatv(
'MAT_NU' ,vis ,is_available, lsubmodel, unitab)
86 CALL hm_get_floatv('mat_lamda
' ,VISV ,IS_AVAILABLE, LSUBMODEL, UNITAB)
87
88 I=1
89 IF(IPLA(I)==0)THEN
90 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_etan' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
91 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_beta' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
92 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e0' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
93 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pc' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
94 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c0' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
95 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c1' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
96 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c2' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
97 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c3' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
98 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c4' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
99 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c5' ,C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
100 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eps' ,GG(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
101 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_m' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
102 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_tmax' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
103 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_bulk' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
104 CALL HM_GET_FLOAT_ARRAY_INDEX('damp1' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
105 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_a0' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
106 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_a1' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
107 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_a2' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
108 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_amax' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
109 ELSEIF(IPLA(I)==1)THEN
110 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_etan' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
111 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_beta' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
112 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e0' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
113 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pc' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
114 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c0' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
115 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c1' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
116 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c2' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
117 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c3' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
118 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c4' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
119 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c5' ,C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
120 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eps' ,GG(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
121 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ea' ,Y(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
122 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eb' ,BB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
123 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ec' ,N(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
124 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_prab' ,CC(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
125 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_prbc' ,EPDR(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
126 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_prca' ,CM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
127 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_m' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
128 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_tmax' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
129 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_bulk' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
130 CALL HM_GET_FLOAT_ARRAY_INDEX('damp1' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
131 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_a0' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
132 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_a1' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
133 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_a2' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
134 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_amax' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
135 ELSEIF(IPLA(I)==2)THEN
136 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_etan' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
137 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_beta' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
138 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e0' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
139 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pc' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
140 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c0' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
141 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c1' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
142 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c2' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
143 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c3' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
144 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c4' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
145 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_c5' ,C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
146 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eps' ,A0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
147 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ea' ,A1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
148 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eb' ,a2(i) ,i ,is_available, lsubmodel, unitab
160 ENDIF
161
162 i=2
163 IF(ipla(i)==0)THEN
167 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigt23' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
168 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigc12' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
169 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigc23' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
170 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_alpha' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
171 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_efib' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
172 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_redfact' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
173 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_k_unload',C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
174 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ftfc' ,GG(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
175 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_fbfc' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
176 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_f2fc' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
177 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sofc' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
178 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ppres' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
179 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ypres' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
180 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_bpmod' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
181 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_dil_y' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
182 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_dil_f' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
183 ELSEIF(IPLA(I)==1)THEN
184 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigyc1' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
185 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigyc2' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
186 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigt12' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
187 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigt23' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
188 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigc12' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
189 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigc23' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
190 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_alpha' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
191 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_efib' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
192 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_redfact' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
193 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_k_unload',C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
194 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ftfc' ,GG(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
195 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_compac' ,Y(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
196 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_cap_beg' ,BB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
197 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_cap_end' ,N(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
198 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_tpmod' ,CC(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
199 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e2' ,EPDR(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
200 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_g0' ,CM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
201 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_fbfc' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
202 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_f2fc' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
203 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sofc' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
204 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ppres' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
205 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ypres' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
206 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_bpmod' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
207 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_dil_y' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
208 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_dil_f' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
209 ELSEIF(IPLA(I)==2)THEN
210 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigyc1' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
211 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigyc2' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
212 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigt12' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
213 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigt23' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
214 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigc12' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
215 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sigc23' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
216 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_alpha' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
217 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_efib' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
218 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_redfact' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
219 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_k_unload',C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
220 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ftfc' ,A0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
221 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_compac' ,A1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
222 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_cap_beg' ,A2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
223 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_cap_end' ,AMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
224 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_tpmod' ,Y(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
225 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e2' ,NU(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
226 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_fbfc' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
227 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_f2fc' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
228 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_sofc' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
229 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ppres' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
230 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ypres' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
231 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_bpmod' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
232 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_dil_y' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
233 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_dil_f' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
234 ENDIF
235
236 I=3
237 IF(IPLA(I)==0)THEN
238 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ssig' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
239 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_setan' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
240 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir1' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
241 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir2' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
242 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir3' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
243 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epst1' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
244 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsm1' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
245 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epst2' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
246 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsm2' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
247 CALL HM_GET_FLOAT_ARRAY_INDEX('wpmax' ,C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
248 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsf1' ,GG(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
249 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsf2' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
250 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_damage2' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
251 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_p0' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
252 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_phi ' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
253 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_gama0' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
254 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e1' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
255 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eta1' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
256 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eta2' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
257 ELSEIF(IPLA(I)==1)THEN
258 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ssig' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
259 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_setan' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
260 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir1' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
261 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir2' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
262 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir3' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
263 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epst1' ,C1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
264 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsm1' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
265 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epst2' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
266 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsm2' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
267 CALL HM_GET_FLOAT_ARRAY_INDEX('wpmax' ,C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
268 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsf1' ,GG(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
269 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_gi' ,Y(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
270 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_decay' ,BB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
271 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_co1' ,N(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
272 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_co2' ,CC(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
273 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_co3' ,EPDR(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
274 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_nut' ,CM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
275 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsf2' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
276 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_damage2' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
277 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_p0' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
278 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_phi ' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
279 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_gama0' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
280 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e1' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
281 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eta1' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
282 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eta2' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
283 ELSEIF(IPLA(I)==2)THEN
284 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_ssig' ,AV(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
285 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_setan' ,RHO0_(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
286 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir1' ,E0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
287 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir2' ,PM(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
288 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_pdir3' ,C0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
289 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epst1' ,c1(i) ,i ,is_available, lsubmodel, unitab)
308 ENDIF
309
310 i=4
325
326 RETURN
subroutine hm_get_float_array_index(name, rval, index, is_available, lsubmodel, unitab)
subroutine hm_get_floatv(name, rval, is_available, lsubmodel, unitab)
subroutine hm_get_int_array_index(name, ival, index, is_available, lsubmodel)