OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
hm_read_mat51_iform11.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| hm_read_mat51_iform11 ../starter/source/materials/mat/mat051/hm_read_mat51_iform11.f
25!||--- called by ------------------------------------------------------
26!|| hm_read_mat51 ../starter/source/materials/mat/mat051/hm_read_mat51.F
27!||--- calls -----------------------------------------------------
28!|| hm_get_float_array_index ../starter/source/devtools/hm_reader/hm_get_float_array_index.F
29!|| hm_get_floatv ../starter/source/devtools/hm_reader/hm_get_floatv.F
30!|| hm_get_int_array_index ../starter/source/devtools/hm_reader/hm_get_int_array_index.F
31!||--- uses -----------------------------------------------------
32!|| submodel_mod ../starter/share/modules1/submodel_mod.F
33!||====================================================================
35 . AV, RHO0_, E0, PM, C0 ,
36 . C1, C2, C3, C4, C5 ,
37 . IPLA, GG, Y, BB, N ,
38 . CC, EPDR, CM, T0, TMELT,
39 . THETL, SPH, PLAMX, SIGMX, XKA,
40 . XKB, NU, A0, A1, A2 ,
41 . AMX,
42 . B1 , B2 , R1 , R2 ,W,
43 . VDET , PCJ , IBFRAC , PEXT ,VIS,
44 . VISV ,LSUBMODEL,UNITAB)
45C-----------------------------------------------
46C M o d u l e s
47C-----------------------------------------------
48 USE submodel_mod
49 USE unitab_mod
50C-----------------------------------------------
51C I m p l i c i t T y p e s
52C-----------------------------------------------
53#include "implicit_f.inc"
54C-----------------------------------------------
55C D u m m y A r g u m e n t s
56C-----------------------------------------------
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
70 my_real BID
71 TYPE(SUBMODEL_DATA),INTENT(IN) :: LSUBMODEL(NSUBMOD)
72C-----------------------------------------------
73C L o c a l P a r a m e t e r s
74C-----------------------------------------------
75 LOGICAL :: IS_AVAILABLE
76 INTEGER :: I
77C-----------------------------------------------
78C P r e c o n d i t i o n
79C-----------------------------------------------
80 !PRECONDITION
81C-----------------------------------------------
82C S o u r c e L i n e s
83C-----------------------------------------------
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)
149 CALL hm_get_float_array_index('MAT_EC' ,amx(i) ,i ,is_available, lsubmodel, unitab)
150 CALL hm_get_float_array_index('MAT_PRAB' ,y(i) ,i ,is_available, lsubmodel, unitab)
151 CALL hm_get_float_array_index('MAT_PRBC' ,nu(i) ,i ,is_available, lsubmodel, unitab)
152 CALL hm_get_float_array_index('MAT_M' ,t0(i) ,i ,is_available, lsubmodel, unitab)
153 CALL hm_get_float_array_index('MAT_TMAX' ,tmelt(i) ,i ,is_available, lsubmodel, unitab)
154 CALL hm_get_float_array_index('MAT_BULK' ,thetl(i) ,i ,is_available, lsubmodel, unitab)
155 CALL hm_get_float_array_index('DAMP1' ,sph(i) ,i ,is_available, lsubmodel, unitab)
156 CALL hm_get_float_array_index('MAT_A0' ,plamx(i) ,i ,is_available, lsubmodel, unitab)
157 CALL hm_get_float_array_index('MAT_A1' ,sigmx(i) ,i ,is_available, lsubmodel, unitab)
158 CALL hm_get_float_array_index('MAT_A2' ,xka(i) ,i ,is_available, lsubmodel, unitab)
159 CALL hm_get_float_array_index('MAT_AMAX' ,xkb(i) ,i ,is_available, lsubmodel, unitab)
160 ENDIF
161
162 i=2
163 IF(ipla(i)==0)THEN
164 CALL hm_get_float_array_index('MAT_SIGYC1' ,av(i) ,i ,is_available, lsubmodel, unitab)
165 CALL hm_get_float_array_index('MAT_SIGYC2' ,rho0_(i) ,i ,is_available, lsubmodel, unitab)
166 CALL hm_get_float_array_index('MAT_SIGT12' ,e0(i) ,i ,is_available, lsubmodel, unitab)
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)
290 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsm1' ,C2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
291 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epst2' ,C3(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
292 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsm2' ,C4(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
293 CALL HM_GET_FLOAT_ARRAY_INDEX('wpmax' ,C5(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
294 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsf1' ,A0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
295 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_gi' ,A1(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
296 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_decay' ,A2(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
297 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_co1' ,AMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
298 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_co2' ,Y(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
299 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_co3' ,NU(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
300 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_epsf2' ,T0(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
301 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_damage2' ,TMELT(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
302 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_p0' ,THETL(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
303 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_phi ' ,SPH(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
304 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_gama0' ,PLAMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
305 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_e1' ,SIGMX(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
306 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eta1' ,XKA(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
307 CALL HM_GET_FLOAT_ARRAY_INDEX('mat_eta2' ,XKB(I) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
308 ENDIF
309
310 I=4
311 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_alpha' ,AV(4) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
312 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_rho' ,RHO0_(4),I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
313 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_e0' ,E0(4) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
314 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_pmin' ,PM(4) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
315 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_c0' ,C0(4) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
316 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_b1' ,B1 ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
317 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_b2' ,B2 ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
318 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_r1' ,R1 ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
319 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_r2' ,R2 ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
320 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_w' ,W ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
321 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_d' ,VDET ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
322 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_pcj' ,PCJ ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
323 CALL HM_GET_FLOAT_ARRAY_INDEX('mlaw51_c14' ,C1(4) ,I ,IS_AVAILABLE, LSUBMODEL, UNITAB)
324 CALL HM_GET_INT_ARRAY_INDEX ('mat_ibfrac' ,IBFRAC ,I ,IS_AVAILABLE, LSUBMODEL)
325C-----------------------------------------------
326 RETURN
327 END SUBROUTINE
#define my_real
Definition cppsort.cpp:32
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_read_mat51_iform11(av, rho0_, e0, pm, c0, c1, c2, c3, c4, c5, ipla, gg, y, bb, n, cc, epdr, cm, t0, tmelt, thetl, sph, plamx, sigmx, xka, xkb, nu, a0, a1, a2, amx, b1, b2, r1, r2, w, vdet, pcj, ibfrac, pext, vis, visv, lsubmodel, unitab)
program starter
Definition starter.F:39