32
33
34
37
38
39
40#include "implicit_f.inc"
41
42
43
44 TYPE (H3D_KEYWORD) H3D_KEYWORD_SPH_SCALAR(*)
46 INTEGER IGEO(NPROPGI,NUMGEO)
47 INTEGER, INTENT(INOUT) :: NKEY
48
49
50
51#include "com04_c.inc"
52#include "param_c.inc"
53
54
55
56 INTEGER I,J,NIPMAX
57
58
59
60 i = 0
61
62 i = i + 1
63 h3d_keyword_sph_scalar(i)%KEY3 = 'MASS'
64 h3d_keyword_sph_scalar(i)%TEXT1 = 'Mass'
65
66 i = i + 1
67 h3d_keyword_sph_scalar(i)%KEY3 = 'DIAMETER'
68 h3d_keyword_sph_scalar(i)%TEXT1 = 'Diameter'
69
70 i = i + 1
71 h3d_keyword_sph_scalar(i)%KEY3 = 'EPSP'
72 h3d_keyword_sph_scalar(i)%TEXT1 = 'Plastic Strain'
73
74 i = i + 1
75 h3d_keyword_sph_scalar(i)%KEY3 = 'DENS'
76 h3d_keyword_sph_scalar(i)%TEXT1 = 'Density'
77
78 i = i + 1
79 h3d_keyword_sph_scalar(i)%KEY3 = 'ENER'
80 h3d_keyword_sph_scalar(i)%TEXT1 = 'Internal Energy per unit mass'
81
82 i = i + 1
83 h3d_keyword_sph_scalar(i)%KEY3 = 'TEMP'
84 h3d_keyword_sph_scalar(i)%TEXT1 = 'Temperature'
85
86 i = i + 1
87 h3d_keyword_sph_scalar(i)%KEY3 = 'P'
88 h3d_keyword_sph_scalar(i)%TEXT1 = 'Pressure'
89
90 i = i + 1
91 h3d_keyword_sph_scalar(i)%KEY3 = 'VONM'
92 h3d_keyword_sph_scalar(i)%TEXT1 = 'Von Mises'
93
94 i = i + 1
95 h3d_keyword_sph_scalar(i)%KEY3 = 'K'
96 h3d_keyword_sph_scalar(i)%TEXT1 = 'Turbulent Energy'
97
98 i = i + 1
99 h3d_keyword_sph_scalar(i)%KEY3 = 'TVIS'
100 h3d_keyword_sph_scalar(i)%TEXT1 = 'Turbulent Viscosity'
101
102 i = i + 1
103 h3d_keyword_sph_scalar(i)%KEY3 = 'VORTX'
104 h3d_keyword_sph_scalar(i)%TEXT1 = 'Vorticity'
105
106 i = i + 1
107 h3d_keyword_sph_scalar(i)%KEY3 = 'DAM1'
108 h3d_keyword_sph_scalar(i)%TEXT1 = 'Damage 1'
109
110 i = i + 1
111 h3d_keyword_sph_scalar(i)%KEY3 = 'DAM2'
112 h3d_keyword_sph_scalar(i)%TEXT1 = 'Damage 2'
113
114 i = i + 1
115 h3d_keyword_sph_scalar(i)%KEY3 = 'DAM3'
116 h3d_keyword_sph_scalar(i)%TEXT1 = 'Damage 3'
117
118 i = i + 1
119 h3d_keyword_sph_scalar(i)%KEY3 = 'SIGX'
120 h3d_keyword_sph_scalar(i)%TEXT1 = 'Stress X'
121
122 i = i + 1
123 h3d_keyword_sph_scalar(i)%KEY3 = 'SIGY'
124 h3d_keyword_sph_scalar(i)%TEXT1 = 'Stress Y'
125
126 i = i + 1
127 h3d_keyword_sph_scalar(i)%KEY3 = 'SIGZ'
128 h3d_keyword_sph_scalar(i)%TEXT1 = 'Stress Z'
129
130 i = i + 1
131 h3d_keyword_sph_scalar(i)%KEY3 = 'SIGXY'
132 h3d_keyword_sph_scalar(i)%TEXT1 = 'Stress XY'
133
134 i = i + 1
135 h3d_keyword_sph_scalar(i)%KEY3 = 'SIGYZ'
136 h3d_keyword_sph_scalar(i)%TEXT1 = 'Stress YZ'
137
138 i = i + 1
139 h3d_keyword_sph_scalar(i)%KEY3 = 'SIGZX'
140 h3d_keyword_sph_scalar(i)%TEXT1 = 'Stress ZX'
141
142 i = i + 1
143 h3d_keyword_sph_scalar(i)%KEY3 = 'USER'
144 h3d_keyword_sph_scalar(i)%IS_UVAR = 1
145 h3d_keyword_sph_scalar(i)%IS_UVAR_ALL = 1
146 h3d_keyword_sph_scalar(i)%TEXT1 = 'User Var'
147
148 i = i + 1
149 h3d_keyword_sph_scalar(i)%KEY3 = 'HOURGLASS'
150 h3d_keyword_sph_scalar(i)%TEXT1 = 'Hourglass Energy'
151
152 i = i + 1
153 h3d_keyword_sph_scalar(i)%KEY3 = 'BFRAC'
154 h3d_keyword_sph_scalar(i)%TEXT1 = 'Burn Fraction'
155
156 i = i + 1
157 h3d_keyword_sph_scalar(i)%KEY3 = 'DAMA'
158 h3d_keyword_sph_scalar(i)%TEXT1 = 'MAX DAMAGE'
159 h3d_keyword_sph_scalar(i)%COMMENT = 'maximum of damage over time and of all failure criteria acting in one material'
160
161 i = i + 1
162 h3d_keyword_sph_scalar(i)%KEY3 = 'DOMAIN'
163 h3d_keyword_sph_scalar(i)%TEXT1 = 'domain'
164
165 I = I + 1
166 H3D_KEYWORD_SPH_SCALAR(I)%KEY3 = 'fill'
167 H3D_KEYWORD_SPH_SCALAR(I)%TEXT1 = 'filling percentage'
168
169 I = I + 1
170 H3D_KEYWORD_SPH_SCALAR(I)%KEY3 = 'sigeq'
171 H3D_KEYWORD_SPH_SCALAR(I)%TEXT1 = 'equiv stress'
172
173 I = I + 1
174 H3D_KEYWORD_SPH_SCALAR(I)%KEY3 = 'tdet'
175 H3D_KEYWORD_SPH_SCALAR(I)%TEXT1 = 'detonation time'
176 H3D_KEYWORD_SPH_SCALAR(I)%COMMENT = 'only available
for jwl eos or time controlled detonation
'
177
178 I = I + 1
179 H3D_KEYWORD_SPH_SCALAR(I)%KEY3 = 'off'
180 H3D_KEYWORD_SPH_SCALAR(I)%TEXT1 = 'element status'
181 H3D_KEYWORD_SPH_SCALAR(I)%COMMENT = '0.0:deleted >0.&<1.:under failure process 1.0:activated <0:standby'
182
183 I = I + 1
184 H3D_KEYWORD_SPH_SCALAR(I)%KEY3 = 'enth'
185 H3D_KEYWORD_SPH_SCALAR(I)%TEXT1 = 'enthalpy'
186
187 I = I + 1
188 H3D_KEYWORD_SPH_SCALAR(I)%KEY3 = 'enthm'
189 h3d_keyword_sph_scalar(i)%TEXT1 = 'Enthalpy per unit mass'
190
191 i = i + 1
192 h3d_keyword_sph_scalar(i)%KEY3 = 'ENTHV'
193 h3d_keyword_sph_scalar(i)%TEXT1 = 'Enthalpy per unit volume'
194
195 i = i
196 h3d_keyword_sph_scalar(i)%KEY3 = 'EINT'
197 h3d_keyword_sph_scalar(i)%TEXT1 = 'Internal Energy'
198
199 i = i + 1
200 h3d_keyword_sph_scalar(i)%KEY3 = 'EINTM'
201 h3d_keyword_sph_scalar(i)%TEXT1 = 'Internal Energy per unit mass'
202
203 i = i + 1
204 h3d_keyword_sph_scalar(i)%KEY3 = 'EINTV'
205 h3d_keyword_sph_scalar(i)%TEXT1 = 'Internal Energy per unit volume'
206
207 i = i + 1
208 h3d_keyword_sph_scalar(i)%KEY3 = 'GROUP'
209 h3d_keyword_sph_scalar(i)%TEXT1 = 'Group identifier'
210
211 i = i + 1
212 h3d_keyword_sph_scalar(i)%KEY3 = 'INTERNAL.ID'
213 h3d_keyword_sph_scalar(i)%TEXT1 = 'Internal identifier'
214
215 i = i + 1
216 h3d_keyword_sph_scalar(i)%KEY3 = 'LOCAL.ID'
217 h3d_keyword_sph_scalar(i)%TEXT1 = 'Local identifier within the group'
218
219 i = i + 1
220 h3d_keyword_sph_scalar(i)%KEY3 = 'TILLOTSON'
221 h3d_keyword_sph_scalar(i)%TEXT1 = 'Region identifier in p,v diagram'
222 h3d_keyword_sph_scalar(i)%COMMENT = '1:compressed, 2:expanded cold, 3:transition, 4:hot expansion'
223
224 i = i + 1
225 h3d_keyword_sph_scalar(i)%KEY3 = 'FAILURE'
226 h3d_keyword_sph_scalar(i)%IS_ID = 1
227 h3d_keyword_sph_scalar(i)%IS_MODE = 1
228 h3d_keyword_sph_scalar(i)%TEXT1 = 'Failure'
229 h3d_keyword_sph_scalar(i)%COMMENT = 'Damage of current failure criterion'
230
231 i = i + 1
232 h3d_keyword_sph_scalar(i)%KEY3 = 'NEIGHBOURS'
233 h3d_keyword_sph_scalar(i)%TEXT1 = 'Number of Neighbours'
234
235 i = i + 1
236 h3d_keyword_sph_scalar(i)%KEY3 = 'VSTRAIN'
237 h3d_keyword_sph_scalar(i)%TEXT1 = 'Volumetric Strain'
238 h3d_keyword_sph_scalar(i)%COMMENT = 'mu=rho/rho0-1'
239
240
241 nkey=i
subroutine jwl(iflag, nel, pm, off, eint, mu, mu2, espe, dvol, df, vnew, mat, psh, pnew, dpdm, dpde)
for(i8=*sizetab-1;i8 >=0;i8--)