OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
s8eforc3.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!|| s8eforc3 ../engine/source/elements/solid/solide8e/s8eforc3.F
25!||--- called by ------------------------------------------------------
26!|| forint ../engine/source/elements/forint.F
27!||--- calls -----------------------------------------------------
28!|| ancmsg ../engine/source/output/message/message.F
29!|| basis8 ../engine/source/elements/solid/solide8/basis8.F
30!|| boltst ../engine/source/elements/solid/solide/boltst.F
31!|| csmall3 ../engine/source/elements/solid/solide/csmall3.F
32!|| degenes8 ../engine/source/elements/solid/solide/degenes8.F
33!|| jacob_f0 ../engine/source/elements/solid/solide8e/jacob_f0.F
34!|| mmain ../engine/source/materials/mat_share/mmain.F90
35!|| nsvis_sm12 ../engine/source/elements/solid/solide10/nsvis_sm12.F
36!|| s8e_sig_a ../engine/source/elements/solid/solide8e/s8e_sig_a.F
37!|| s8e_sigp ../engine/source/elements/solid/solide8e/s8e_sig.F
38!|| s8edefo3 ../engine/source/elements/solid/solide8e/s8edefo3.F
39!|| s8edefoc3 ../engine/source/elements/solid/solide8e/s8edefoc3.F
40!|| s8edefot12 ../engine/source/elements/solid/solide8e/s8edefot12.F
41!|| s8edefot3 ../engine/source/elements/solid/solide8e/s8edefot3.F
42!|| s8edefw3 ../engine/source/elements/solid/solide8e/s8edefw3.F
43!|| s8ederi_2 ../engine/source/elements/solid/solide8e/s8ederi_2.F
44!|| s8ederi_bij ../engine/source/elements/solid/solide8e/s8ederi_bij.F
45!|| s8ederic3 ../engine/source/elements/solid/solide8e/s8ederic3.F
46!|| s8edericm3 ../engine/source/elements/solid/solide8e/s8edericm3.F
47!|| s8ederict3 ../engine/source/elements/solid/solide8e/s8ederict3.F
48!|| s8edericto3 ../engine/source/elements/solid/solide8e/s8edericto3.F
49!|| s8ederig3 ../engine/source/elements/solid/solide8e/s8ederig3.F
50!|| s8ederipr3 ../engine/source/elements/solid/solide8e/s8ederipr3.F
51!|| s8ederish2 ../engine/source/elements/solid/solide8e/s8ederish2.F
52!|| s8efint3 ../engine/source/elements/solid/solide8e/s8efint3.F
53!|| s8efmoy3 ../engine/source/elements/solid/solide8e/s8efmoy3.F
54!|| s8egetbij ../engine/source/elements/solid/solide8e/s8egetbij.F
55!|| s8egetpij ../engine/source/elements/solid/solide8e/s8egetpij.F
56!|| s8ejacip3 ../engine/source/elements/solid/solide8e/s8ejacip3.F
57!|| s8ejacit3 ../engine/source/elements/solid/solide8e/s8ejacit3.F
58!|| s8eprst_ini ../engine/source/elements/solid/solide8e/s8eprst_ini.F
59!|| s8eselecsh ../engine/source/elements/solid/solide8e/s8eselecsh.F
60!|| s8eselecsht ../engine/source/elements/solid/solide8e/s8eselecsht.F
61!|| s8etherm ../engine/source/elements/solid/solide8e/s8etherm.F
62!|| s8etotsh10 ../engine/source/elements/solid/solide8e/s8etotsh10.F
63!|| s8evis3 ../engine/source/elements/solid/solide8e/s8evis3.F
64!|| s8for_distor ../engine/source/elements/solid/solide/s8for_distor.F
65!|| s8fupd11t12 ../engine/source/elements/solid/solide8e/s8fupd11t12.F
66!|| s8get_x3 ../engine/source/elements/solid/solide/s8get_x3.F
67!|| s8sav12 ../engine/source/elements/solid/solide/s8sav12.F
68!|| s8sav3 ../engine/source/elements/solid/solide/s8sav3.F
69!|| s8savsr3 ../engine/source/elements/solid/solide/s8savsr3.F
70!|| s8zderims3 ../engine/source/elements/solid/solide8z/s8zderims3.F
71!|| s8zfint_reg ../engine/source/elements/solid/solide8z/s8zfint_reg.F
72!|| s8zfintp3 ../engine/source/elements/solid/solide8z/s8zfintp3.F
73!|| s8zsigp3 ../engine/source/elements/solid/solide8z/s8zsigp3.F
74!|| s8ztempel ../engine/source/elements/solid/solide8z/s8ztempel.F
75!|| s8zzero3 ../engine/source/elements/solid/solide8z/s8zzero3.F
76!|| sbilan ../engine/source/elements/solid/solide/sbilan.F
77!|| scoor3 ../engine/source/elements/solid/solide/scoor3.F
78!|| scoor_cp2sp ../engine/source/elements/solid/solidez/scoor_cp2sp.F
79!|| scumu3 ../engine/source/elements/solid/solide/scumu3.F
80!|| scumu3p ../engine/source/elements/solid/solide/scumu3p.F
81!|| sdistor_ini ../engine/source/elements/solid/solide/sdistror_ini.F90
82!|| sdlen_dege ../engine/source/elements/solid/solide/sdlen_dege.F
83!|| sdlen_sm11 ../engine/source/elements/solid/solide/sdlen_sm11.F
84!|| sdlenmax ../engine/source/elements/solid/solide/sdlenmax.F
85!|| sfillopt ../engine/source/elements/solid/solide/sfillopt.F
86!|| sgcoor3 ../engine/source/elements/solid/solide/sgcoor3.F
87!|| sgeodel3 ../engine/source/elements/solid/solide/sgeodel3.F
88!|| smallb3 ../engine/source/elements/solid/solide/smallb3.F
89!|| smallg3 ../engine/source/elements/solid/solide/smallg3.F
90!|| smallgeo3 ../engine/source/elements/solid/solide/smallgeo3.F
91!|| sordef12 ../engine/source/elements/solid/solidez/sordef12.F
92!|| sordeft12 ../engine/source/elements/solid/solidez/sordeft12.F
93!|| sordeft3 ../engine/source/elements/solid/solidez/sordeft3.F
94!|| sordeftb ../engine/source/elements/solid/solide8e/sordeftb.F
95!|| srbilan ../engine/source/elements/solid/solide/srbilan.F
96!|| srcoor12 ../engine/source/elements/solid/solide/srcoor12.F
97!|| srcoor3 ../engine/source/elements/solid/solide/srcoor3.F
98!|| srho3 ../engine/source/elements/solid/solide/srho3.F
99!|| srota3 ../engine/source/elements/solid/solide/srota3.F
100!|| sroto12_sig ../engine/source/elements/solid/solidez/sroto12_sig.F
101!|| srrota3 ../engine/source/elements/solid/solide/srrota3.F
102!|| srrotadp ../engine/source/elements/solid/solide/srrotadp.F
103!|| sstra3 ../engine/source/elements/solid/solide/sstra3.F
104!|| startime ../engine/source/system/timer_mod.F90
105!|| stoptime ../engine/source/system/timer_mod.F90
106!|| sz_dt1 ../engine/source/elements/solid/solidez/sz_dt1.F90
107!||--- uses -----------------------------------------------------
108!|| ale_connectivity_mod ../common_source/modules/ale/ale_connectivity_mod.F
109!|| dt_mod ../engine/source/modules/dt_mod.F
110!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.F90
111!|| element_mod ../common_source/modules/elements/element_mod.F90
112!|| glob_therm_mod ../common_source/modules/mat_elem/glob_therm_mod.F90
113!|| mat_elem_mod ../common_source/modules/mat_elem/mat_elem_mod.F90
114!|| message_mod ../engine/share/message_module/message_mod.F
115!|| mmain_mod ../engine/source/materials/mat_share/mmain.F90
116!|| nlocal_reg_mod ../common_source/modules/nlocal_reg_mod.F
117!|| output_mod ../common_source/modules/output/output_mod.F90
118!|| sdistor_ini_mod ../engine/source/elements/solid/solide/sdistror_ini.F90
119!|| sensor_mod ../common_source/modules/sensor_mod.F90
120!|| sz_dt1_mod ../engine/source/elements/solid/solidez/sz_dt1.F90
121!|| table_mod ../engine/share/modules/table_mod.F
122!|| timer_mod ../engine/source/system/timer_mod.F90
123!||====================================================================
124 SUBROUTINE s8eforc3(TIMERS, OUTPUT,
125 1 ELBUF_TAB, NG, PM, GEO,
126 2 IXS, X, A, V,
127 3 MS, W, FLUX, FLU1,
128 4 VEUL, FV, ALE_CONNECT,IPARG,
129 5 TF, NPF, BUFMAT, PARTSAV,
130 6 NLOC_DMG, DT2T, NELTST, ITYPTST,
131 7 STIFN, FSKY, IADS, OFFSET,
132 8 EANI, IPARTS, ICP, F11,
133 9 F21, F31, F12, F22,
134 A F32, F13, F23, F33,
135 B F14, F24, F34, F15,
136 C F25, F35, F16, F26,
137 D F36, F17, F27, F37,
138 E F18, F28, F38, NEL,
139 F NVC, IPM, ITASK, ISTRAIN,
140 G TEMP, FTHE, FTHESKY, IEXPAN,
141 H GRESAV, GRTH, IGRTH, MSSA,
142 I DMELS, TABLE, IGEO, XDP,
143 J VOLN, CONDN, CONDNSKY, D,
144 K SENSORS, IOUTPRT, MAT_ELEM, H3D_STRAIN,
145 L DT, SNPC, STF, SBUFMAT,SVIS,
146 M NSVOIS, IDTMINS, IRESP, MAXFUNC ,
147 V USERL_AVAIL,GLOB_THERM ,impl_s, idyna )
148C-----------------------------------------------
149C M o d u l e s
150C-----------------------------------------------
151 USE timer_mod
152 USE mmain_mod
153 USE output_mod, only : output_
154 USE table_mod
155 USE mat_elem_mod
156 USE message_mod
159 USE sensor_mod
160 USE dt_mod
161 USE elbufdef_mod
162 USE sdistor_ini_mod, ONLY : sdistor_ini
163 use glob_therm_mod
164 USE sz_dt1_mod, only : sz_dt1
165 use element_mod , only : nixs
166C-----------------------------------------------
167C I m p l i c i t T y p e s
168C-----------------------------------------------
169#include "implicit_f.inc"
170C-----------------------------------------------
171C G l o b a l P a r a m e t e r s
172C-----------------------------------------------
173#include "mvsiz_p.inc"
174C-----------------------------------------------
175C C o m m o n B l o c k s
176C-----------------------------------------------
177#include "com01_c.inc"
178#include "com04_c.inc"
179#include "com08_c.inc"
180#include "scr07_c.inc"
181#include "vect01_c.inc"
182#include "parit_c.inc"
183#include "param_c.inc"
184#include "timeri_c.inc"
185#include "scr17_c.inc"
186#include "scr18_c.inc"
187C-----------------------------------------------
188C D u m m y A r g u m e n t s
189C-----------------------------------------------
190 TYPE(timer_) ,INTENT(INOUT) :: TIMERS
191 TYPE(OUTPUT_), INTENT(INOUT) :: OUTPUT
192 INTEGER, INTENT(IN) :: SNPC
193 INTEGER, INTENT(IN) :: STF
194 INTEGER, INTENT(IN) :: SBUFMAT
195 INTEGER, INTENT(IN) :: NSVOIS
196 INTEGER, INTENT(IN) :: IDTMINS
197 INTEGER ,INTENT(IN) :: IRESP
198 INTEGER ,INTENT(IN) :: MAXFUNC
199 INTEGER, INTENT(IN) :: IMPL_S
200 INTEGER, INTENT(IN) :: IDYNA
201 INTEGER, INTENT(IN) :: USERL_AVAIL
202 INTEGER IXS(NIXS,*), IPARG(NPARG,NGROUP),NPF(*),
203 . IADS(8,*),IPARTS(*), IPM(NPROPMI,*),GRTH(*),IGRTH(*),IGEO(NPROPGI,*),
204 . IOUTPRT
205C
206 INTEGER NELTST,ITYPTST,OFFSET,NEL,ICP,
207 . NVC ,ITASK, ISTRAIN, IEXPAN,NG,H3D_STRAIN
208
209 DOUBLE PRECISION
210 . XDP(3,*)
211 my_real
212 . DT2T
213C
214 my_real
215 . pm(npropm,*), geo(npropg,*), x(*), a(*), v(3,*), ms(*), w(*),
216 . flux(6,*),flu1(*), veul(*), fv(*), tf(*),
217 . partsav(*),stifn(*), fsky(*),eani(*),bufmat(*),
218 . f11(mvsiz),f21(mvsiz),f31(mvsiz),
219 . f12(mvsiz),f22(mvsiz),f32(mvsiz),
220 . f13(mvsiz),f23(mvsiz),f33(mvsiz),
221 . f14(mvsiz),f24(mvsiz),f34(mvsiz),
222 . f15(mvsiz),f25(mvsiz),f35(mvsiz),
223 . f16(mvsiz),f26(mvsiz),f36(mvsiz),
224 . f17(mvsiz),f27(mvsiz),f37(mvsiz),
225 . f18(mvsiz),f28(mvsiz),f38(mvsiz),
226 . temp(*),fthe(*),fthesky(*),gresav(*), mssa(*), dmels(*), voln(mvsiz),
227 . condn(*),condnsky(*),d(*)
228 my_real, DIMENSION(MVSIZ,6), INTENT(INOUT) :: svis
229 TYPE(ttable) TABLE(*)
230 TYPE (ELBUF_STRUCT_), TARGET, DIMENSION(NGROUP) :: ELBUF_TAB
231 TYPE (NLOCAL_STR_) , TARGET :: NLOC_DMG
232 TYPE(t_ale_connectivity), INTENT(IN) :: ALE_CONNECT
233 TYPE (MAT_ELEM_) ,INTENT(INOUT) :: MAT_ELEM
234 TYPE (SENSORS_) ,INTENT(INOUT) :: SENSORS
235 TYPE(DT_), INTENT(INOUT) :: DT
236 type (glob_therm_) ,intent(inout) :: glob_therm
237C-----------------------------------------------
238C L o c a l V a r i a b l e s
239C-----------------------------------------------
240 INTEGER NF1, IFLAG, I,
241 . ILAY,IP,IR,IS,IT,NPTR,NPTS,NPTT,J
242 INTEGER IBID,IBIDV(1), MX, IFVM22
243 INTEGER MXT(MVSIZ),NGL(MVSIZ),NGEO(MVSIZ)
244 my_real
245 . VD2(MVSIZ) , DVOL(MVSIZ),DELTAX(MVSIZ),
246 . VIS(MVSIZ) , QVIS(MVSIZ), CXX(MVSIZ) ,
247 . S1(MVSIZ) , S2(MVSIZ) , S3(MVSIZ) ,
248 . S4(MVSIZ) , S5(MVSIZ) , S6(MVSIZ) ,
249 . DXX(MVSIZ) , DYY(MVSIZ) , DZZ(MVSIZ) ,
250 . D4(MVSIZ) , D5(MVSIZ) , D6(MVSIZ) ,
251 . ajc1(mvsiz) , ajc2(mvsiz) , ajc3(mvsiz) ,
252 . ajc4(mvsiz) , ajc5(mvsiz) , ajc6(mvsiz) ,
253 . ajc7(mvsiz) , ajc8(mvsiz) , ajc9(mvsiz) ,
254 . aj1(mvsiz) , aj2(mvsiz) , aj3(mvsiz) ,
255 . aj4(mvsiz) , aj5(mvsiz) , aj6(mvsiz) ,
256 . ajp1(mvsiz,8) , ajp2(mvsiz,8) , ajp3(mvsiz,8) ,
257 . ajp4(mvsiz,8) , ajp5(mvsiz,8) , ajp6(mvsiz,8) ,
258 . ajp7(mvsiz,8) , ajp8(mvsiz,8) , ajp9(mvsiz,8) ,
259 . vdx(mvsiz) , vdy(mvsiz) , vdz(mvsiz),ssp_eq(mvsiz),aire(mvsiz),
260 . e0(mvsiz),c1,fac(mvsiz) ,pr(8,8),ps(8,8),pt(8,8)
261C-----
262C variables used as arguments by the materials.
263 my_real
264 . sti(mvsiz),stin(mvsiz),gama(mvsiz,6),
265 . wxx(mvsiz) , wyy(mvsiz) , wzz(mvsiz),
266 . wxx0(mvsiz) , wyy0(mvsiz) , wzz0(mvsiz),
267 . conde(mvsiz), conden(mvsiz)
268C Variables used in argument by materials if SPH only.
269 my_real
270 . muvoid(mvsiz)
271 INTEGER IOFFS, ITET
272 INTEGER SZ_R1_FREE
273 my_real
274 . OFFS(MVSIZ),DSV(MVSIZ),SDV(MVSIZ),L_MAX(MVSIZ)
275C-----
276C variables used only in solid routines (as arguments).
277 INTEGER NC1(MVSIZ), NC2(MVSIZ), NC3(MVSIZ), NC4(MVSIZ),
278 . NC5(MVSIZ), NC6(MVSIZ), NC7(MVSIZ), NC8(MVSIZ)
279
280 DOUBLE PRECISION
281 . XD1(MVSIZ), XD2(MVSIZ), XD3(MVSIZ), XD4(MVSIZ),
282 . XD5(MVSIZ), XD6(MVSIZ), XD7(MVSIZ), XD8(MVSIZ),
283 . YD1(MVSIZ), YD2(MVSIZ), YD3(MVSIZ), YD4(MVSIZ),
284 . YD5(MVSIZ), YD6(MVSIZ), YD7(MVSIZ), YD8(MVSIZ),
285 . ZD1(MVSIZ), ZD2(MVSIZ), ZD3(MVSIZ), ZD4(MVSIZ),
286 . zd5(mvsiz), zd6(mvsiz), zd7(mvsiz), zd8(mvsiz),
287 . x0(mvsiz,8),y0(mvsiz,8),z0(mvsiz,8)
288
289 my_real
290 . off(mvsiz) ,offg(mvsiz) , rhoo(mvsiz),
291 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
292 . x5(mvsiz), x6(mvsiz), x7(mvsiz), x8(mvsiz),
293 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
294 . y5(mvsiz), y6(mvsiz), y7(mvsiz), y8(mvsiz),
295 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
296 . z5(mvsiz), z6(mvsiz), z7(mvsiz), z8(mvsiz),
297 . vx1(mvsiz),vx2(mvsiz),vx3(mvsiz),vx4(mvsiz),
298 . vx5(mvsiz),vx6(mvsiz),vx7(mvsiz),vx8(mvsiz),
299 . vy1(mvsiz),vy2(mvsiz),vy3(mvsiz),vy4(mvsiz),
300 . vy5(mvsiz),vy6(mvsiz),vy7(mvsiz),vy8(mvsiz),
301 . vz1(mvsiz),vz2(mvsiz),vz3(mvsiz),vz4(mvsiz),
302 . vz5(mvsiz),vz6(mvsiz),vz7(mvsiz),vz8(mvsiz),
303 . pxc1(mvsiz),pxc2(mvsiz),pxc3(mvsiz),pxc4(mvsiz),
304 . pyc1(mvsiz),pyc2(mvsiz),pyc3(mvsiz),pyc4(mvsiz),
305 . pzc1(mvsiz),pzc2(mvsiz),pzc3(mvsiz),pzc4(mvsiz),
306 . vdx1(mvsiz),vdx2(mvsiz),vdx3(mvsiz),vdx4(mvsiz),
307 . vdx5(mvsiz),vdx6(mvsiz),vdx7(mvsiz),vdx8(mvsiz),
308 . vdy1(mvsiz),vdy2(mvsiz),vdy3(mvsiz),vdy4(mvsiz),
309 . vdy5(mvsiz),vdy6(mvsiz),vdy7(mvsiz),vdy8(mvsiz),
310 . vdz1(mvsiz),vdz2(mvsiz),vdz3(mvsiz),vdz4(mvsiz),
311 . vdz5(mvsiz),vdz6(mvsiz),vdz7(mvsiz),vdz8(mvsiz),
312 . vgxa(mvsiz),vgya(mvsiz),vgza(mvsiz), vga2(mvsiz),
313 . hx(mvsiz,4), hy(mvsiz,4), hz(mvsiz,4),offg0(mvsiz),
314 . xgxa(mvsiz),xgya(mvsiz),xgza(mvsiz),
315 . xgxya(mvsiz),xgyza(mvsiz),xgzxa(mvsiz),
316 . xgxa2(mvsiz),xgya2(mvsiz),xgza2(mvsiz)
317 my_real
318 . dxy(mvsiz),dyx(mvsiz),
319 . dyz(mvsiz),dzy(mvsiz),
320 . dzx(mvsiz),dxz(mvsiz),divde(mvsiz)
321 my_real
322 . r11(mvsiz),r12(mvsiz),r13(mvsiz),
323 . r21(mvsiz),r22(mvsiz),r23(mvsiz),
324 . r31(mvsiz),r32(mvsiz),r33(mvsiz)
325 my_real
326 . wi,smax(mvsiz),volg(mvsiz),pp(mvsiz),bid(mvsiz)
327 my_real
328 . sigy(mvsiz), et(mvsiz), nu(mvsiz),nu1(mvsiz),
329 . r1_free(mvsiz),r3_free(mvsiz)
330 my_real
331 . vx0(mvsiz,8),vy0(mvsiz,8),vz0(mvsiz,8),
332 . tempel(mvsiz),them(mvsiz,8),die(mvsiz)
333 INTEGER NNPT,IDEG(MVSIZ),ISTAB(MVSIZ),ICP0
334 PARAMETER (NNPT = 8)
335 my_real
336 . mfxx(mvsiz,nnpt),mfxy(mvsiz,nnpt),mfyx(mvsiz,nnpt),
337 . mfyy(mvsiz,nnpt),mfyz(mvsiz,nnpt),mfzy(mvsiz,nnpt),
338 . mfzz(mvsiz,nnpt),mfzx(mvsiz,nnpt),mfxz(mvsiz,nnpt),
339 . bxx(mvsiz,nnpt),byy(mvsiz,nnpt),bzz(mvsiz,nnpt),
340 . bxy(mvsiz,nnpt),byz(mvsiz,nnpt),bxz(mvsiz,nnpt),
341 . ni(8),detf0(mvsiz),jfac(mvsiz,nnpt)
342C-----
343 TYPE(g_bufel_) ,POINTER :: GBUF
344 TYPE(l_bufel_) ,POINTER :: LBUF
345c-----------------------------------------------------
346 my_real
347 . BXY1(MVSIZ),BXY2(MVSIZ),BXY3(MVSIZ),BXY4(MVSIZ),
348 . bxy5(mvsiz),bxy6(mvsiz),bxy7(mvsiz),bxy8(mvsiz),
349 . byx1(mvsiz),byx2(mvsiz),byx3(mvsiz),byx4(mvsiz),
350 . byx5(mvsiz),byx6(mvsiz),byx7(mvsiz),byx8(mvsiz),
351 . bxz1(mvsiz),bxz2(mvsiz),bxz3(mvsiz),bxz4(mvsiz),
352 . bxz5(mvsiz),bxz6(mvsiz),bxz7(mvsiz),bxz8(mvsiz),
353 . bzx1(mvsiz),bzx2(mvsiz),bzx3(mvsiz),bzx4(mvsiz),
354 . bzx5(mvsiz),bzx6(mvsiz),bzx7(mvsiz),bzx8(mvsiz),
355 . byz1(mvsiz),byz2(mvsiz),byz3(mvsiz),byz4(mvsiz),
356 . byz5(mvsiz),byz6(mvsiz),byz7(mvsiz),byz8(mvsiz),
357 . bzy1(mvsiz),bzy2(mvsiz),bzy3(mvsiz),bzy4(mvsiz),
358 . bzy5(mvsiz),bzy6(mvsiz),bzy7(mvsiz),bzy8(mvsiz),
359 . bxx1(mvsiz),bxx2(mvsiz),bxx3(mvsiz),bxx4(mvsiz),
360 . bxx5(mvsiz),bxx6(mvsiz),bxx7(mvsiz),bxx8(mvsiz),
361 . byy1(mvsiz),byy2(mvsiz),byy3(mvsiz),byy4(mvsiz),
362 . byy5(mvsiz),byy6(mvsiz),byy7(mvsiz),byy8(mvsiz),
363 . bzz1(mvsiz),bzz2(mvsiz),bzz3(mvsiz),bzz4(mvsiz),
364 . bzz5(mvsiz),bzz6(mvsiz),bzz7(mvsiz),bzz8(mvsiz)
365C
366 INTEGER NNEGA,INDEX(MVSIZ),ISELECT,ISEL_V,ISM12_11
367 my_real
368 . pxy1(mvsiz),pxy2(mvsiz),pxy3(mvsiz),pxy4(mvsiz),
369 . pxy5(mvsiz),pxy6(mvsiz),pxy7(mvsiz),pxy8(mvsiz),
370 . pyx1(mvsiz),pyx2(mvsiz),pyx3(mvsiz),pyx4(mvsiz),
371 . pyx5(mvsiz),pyx6(mvsiz),pyx7(mvsiz),pyx8(mvsiz),
372 . pxz1(mvsiz),pxz2(mvsiz),pxz3(mvsiz),pxz4(mvsiz),
373 . pxz5(mvsiz),pxz6(mvsiz),pxz7(mvsiz),pxz8(mvsiz),
374 . pzx1(mvsiz),pzx2(mvsiz),pzx3(mvsiz),pzx4(mvsiz),
375 . pzx5(mvsiz),pzx6(mvsiz),pzx7(mvsiz),pzx8(mvsiz),
376 . pyz1(mvsiz),pyz2(mvsiz),pyz3(mvsiz),pyz4(mvsiz),
377 . pyz5(mvsiz),pyz6(mvsiz),pyz7(mvsiz),pyz8(mvsiz),
378 . pzy1(mvsiz),pzy2(mvsiz),pzy3(mvsiz),pzy4(mvsiz),
379 . pzy5(mvsiz),pzy6(mvsiz),pzy7(mvsiz),pzy8(mvsiz),
380 . aji1(mvsiz,nnpt) , aji2(mvsiz,nnpt) , aji3(mvsiz,nnpt) ,
381 . aji4(mvsiz,nnpt) , aji5(mvsiz,nnpt) , aji6(mvsiz,nnpt) ,
382 . aji7(mvsiz,nnpt) , aji8(mvsiz,nnpt) , aji9(mvsiz,nnpt),
383 . px1(mvsiz,nnpt),px2(mvsiz,nnpt),px3(mvsiz,nnpt),px4(mvsiz,nnpt),
384 . px5(mvsiz,nnpt),px6(mvsiz,nnpt),px7(mvsiz,nnpt),px8(mvsiz,nnpt),
385 . py1(mvsiz,nnpt),py2(mvsiz,nnpt),py3(mvsiz,nnpt),py4(mvsiz,nnpt),
386 . py5(mvsiz,nnpt),py6(mvsiz,nnpt),py7(mvsiz,nnpt),py8(mvsiz,nnpt),
387 . pz1(mvsiz,nnpt),pz2(mvsiz,nnpt),pz3(mvsiz,nnpt),pz4(mvsiz,nnpt),
388 . pz5(mvsiz,nnpt),pz6(mvsiz,nnpt),pz7(mvsiz,nnpt),pz8(mvsiz,nnpt),
389 . p0xy1(mvsiz,2),p0xy2(mvsiz,2),p0xy3(mvsiz,2),p0xy4(mvsiz,2),
390 . p0xy5(mvsiz,2),p0xy6(mvsiz,2),p0xy7(mvsiz,2),p0xy8(mvsiz,2),
391 . p0yx1(mvsiz,2),p0yx2(mvsiz,2),p0yx3(mvsiz,2),p0yx4(mvsiz,2),
392 . p0yx5(mvsiz,2),p0yx6(mvsiz,2),p0yx7(mvsiz,2),p0yx8(mvsiz,2),
393 . p0xz1(mvsiz,2),p0xz2(mvsiz,2),p0xz3(mvsiz,2),p0xz4(mvsiz,2),
394 . p0xz5(mvsiz,2),p0xz6(mvsiz,2),p0xz7(mvsiz,2),p0xz8(mvsiz,2),
395 . p0zx1(mvsiz,2),p0zx2(mvsiz,2),p0zx3(mvsiz,2),p0zx4(mvsiz,2),
396 . p0zx5(mvsiz,2),p0zx6(mvsiz,2),p0zx7(mvsiz,2),p0zx8(mvsiz,2),
397 . p0yz1(mvsiz,2),p0yz2(mvsiz,2),p0yz3(mvsiz,2),p0yz4(mvsiz,2),
398 . p0yz5(mvsiz,2),p0yz6(mvsiz,2),p0yz7(mvsiz,2),p0yz8(mvsiz,2),
399 . p0zy1(mvsiz,2),p0zy2(mvsiz,2),p0zy3(mvsiz,2),p0zy4(mvsiz,2),
400 . p0zy5(mvsiz,2),p0zy6(mvsiz,2),p0zy7(mvsiz,2),p0zy8(mvsiz,2),
401 . px1h1(mvsiz), px1h2(mvsiz), px1h3(mvsiz),px1h4(mvsiz),
402 . px2h1(mvsiz), px2h2(mvsiz), px2h3(mvsiz),px2h4(mvsiz),
403 . px3h1(mvsiz), px3h2(mvsiz), px3h3(mvsiz),px3h4(mvsiz),
404 . px4h1(mvsiz), px4h2(mvsiz), px4h3(mvsiz),px4h4(mvsiz),
405 . sigp(nel,6),amu(mvsiz),jr_1(mvsiz),js_1(mvsiz),jt_1(mvsiz),
406 . fld(mvsiz),caq,sig_a(mvsiz,3),rho0_1,cns2,nu0,fac_nu,nu_sp,
407 . sti_c(mvsiz),ll(mvsiz),fqmax,div0(mvsiz),deltaxi(mvsiz)
408 DOUBLE PRECISION
409 . VOLP(MVSIZ,NNPT)
410 INTEGER SZ_IX
411 my_real, dimension(mvsiz) :: fheat
412C-----
413C variables used for the non-local
414 my_real,
415 . DIMENSION(:,:), ALLOCATABLE :: VAR_REG
416 INTEGER :: INLOC, L_NLOC, INOD(8), IPOS(8), IMAT,NN_DEL,PID
417 my_real,
418 . DIMENSION(:), POINTER :: DNL
419 my_real
420 . H(8),PS2(8),PR2(8),PT2(8),ZR,ZS,ZT
421C
422 my_real
423 . W_GAUSS(9,9),A_GAUSS(9,9)
424 DATA W_GAUSS /
425 1 2. ,0. ,0. ,
426 1 0. ,0. ,0. ,
427 1 0. ,0. ,0. ,
428 2 1. ,1. ,0. ,
429 2 0. ,0. ,0. ,
430 2 0. ,0. ,0. ,
431 3 0.555555555555556,0.888888888888889,0.555555555555556,
432 3 0. ,0. ,0. ,
433 3 0. ,0. ,0. ,
434 4 0.347854845137454,0.652145154862546,0.652145154862546,
435 4 0.347854845137454,0. ,0. ,
436 4 0. ,0. ,0. ,
437 5 0.236926885056189,0.478628670499366,0.568888888888889,
438 5 0.478628670499366,0.236926885056189,0. ,
439 5 0. ,0. ,0. ,
440 6 0.171324492379170,0.360761573048139,0.467913934572691,
441 6 0.467913934572691,0.360761573048139,0.171324492379170,
442 6 0. ,0. ,0. ,
443 7 0.129484966168870,0.279705391489277,0.381830050505119,
444 7 0.417959183673469,0.381830050505119,0.279705391489277,
445 7 0.129484966168870,0. ,0. ,
446 8 0.101228536290376,0.222381034453374,0.313706645877887,
447 8 0.362683783378362,0.362683783378362,0.313706645877887,
448 8 0.222381034453374,0.101228536290376,0. ,
449 9 0.081274388361574,0.180648160694857,0.260610696402935,
450 9 0.312347077040003,0.330239355001260,0.312347077040003,
451 9 0.260610696402935,0.180648160694857,0.081274388361574/
452 DATA a_gauss /
453 1 0. ,0. ,0. ,
454 1 0. ,0. ,0. ,
455 1 0. ,0. ,0. ,
456 2 -.577350269189626,0.577350269189626,0. ,
457 2 0. ,0. ,0. ,
458 2 0. ,0. ,0. ,
459 3 -.774596669241483,0. ,0.774596669241483,
460 3 0. ,0. ,0. ,
461 3 0. ,0. ,0. ,
462 4 -.861136311594053,-.339981043584856,0.339981043584856,
463 4 0.861136311594053,0. ,0. ,
464 4 0. ,0. ,0. ,
465 5 -.906179845938664,-.538469310105683,0. ,
466 5 0.538469310105683,0.906179845938664,0. ,
467 5 0. ,0. ,0. ,
468 6 -.932469514203152,-.661209386466265,-.238619186083197,
469 6 0.238619186083197,0.661209386466265,0.932469514203152,
470 6 0. ,0. ,0. ,
471 7 -.949107912342759,-.741531185599394,-.405845151377397,
472 7 0. ,0.405845151377397,0.741531185599394,
473 7 0.949107912342759,0. ,0. ,
474 8 -.960289856497536,-.796666477413627,-.525532409916329,
475 8 -.183434642495650,0.183434642495650,0.525532409916329,
476 8 0.796666477413627,0.960289856497536,0. ,
477 9 -.968160239507626,-.836031107326636,-.613371432700590,
478 9 -.324253423403809,0. ,0.324253423403809,
479 9 0.613371432700590,0.836031107326636,0.968160239507626/
480C
481c Flag Bolt Preloading
482 INTEGER IBOLTP,NBPRELD,ISCTL
483 my_real,
484 . DIMENSION(:), POINTER :: BPRELD
485C-----------------------------------------------
486C S o u r c e L i n e s
487C-----------------------------------------------
488 NPTR = elbuf_tab(ng)%NPTR
489 npts = elbuf_tab(ng)%NPTS
490 nptt = elbuf_tab(ng)%NPTT
491 gbuf => elbuf_tab(ng)%GBUF
492C
493 sz_r1_free=mvsiz
494 sz_ix=numelq+numels+nsvois
495 iboltp = iparg(72,ng)
496 inloc = iparg(78,ng)
497 ALLOCATE(var_reg(nel,nptr*npts*nptt))
498 nbpreld = gbuf%G_BPRELD
499 bpreld =>gbuf%BPRELD(1:nbpreld*nel)
500 ism12_11 = elbuf_tab(ng)%BUFLY(1)%L_SIGL
501c
502 ilay = 1
503 ibid = 0
504 ibidv = 0
505 nf1=nft+1
506C--------------------------
507 isel_v=0
508C----- free shear locking by integ selective
509 IF (iint==2.AND.jcvt/=0.AND.icp/=1)THEN
510 iselect=1
511C------ use Bij (v termes) ----
512 IF ((icp==0.OR.icp==2).AND.ismstr/=10.AND.ismstr/=12) iselect=2
513C-------v termes will be calculated like HEPH
514 IF (mtn==1.AND.(ismstr==10.OR.ismstr==12)) isel_v=1
515 ELSE
516 iselect=0
517 ENDIF
518c ipr=0
519c iel=1
520C-----------
521C GATHER NODAL VARIABLES AND COMPUTE INTRINSIC ROTATION.
522C-----------
523 IF (jcvt == 0) THEN
524C GATHER NODAL VARIABLES
525 CALL scoor3(x,ixs(1,nf1),v,w,gbuf%GAMA,gama,
526 2 x1, x2, x3, x4, x5, x6, x7, x8,
527 3 y1, y2, y3, y4, y5, y6, y7, y8,
528 4 z1, z2, z3, z4, z5, z6, z7, z8,
529 5 vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
530 6 vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
531 7 vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
532 8 vdx1, vdx2, vdx3, vdx4, vdx5, vdx6, vdx7, vdx8,
533 9 vdy1, vdy2, vdy3, vdy4, vdy5, vdy6, vdy7, vdy8,
534 a vdz1, vdz2, vdz3, vdz4, vdz5, vdz6, vdz7, vdz8,
535 b vdx,vdy,vdz,vd2,vis,gbuf%OFF,offg,gbuf%SMSTR,
536 c gbuf%RHO,rhoo,nc1,nc2,nc3,nc4,nc5,nc6,
537 d nc7,nc8,ngl,mxt,ngeo,
538 e bid,bid,bid,bid,bid,bid,
539 f xd1, xd2 , xd3, xd4, xd5, xd6, xd7, xd8,
540 g yd1, yd2 , yd3, yd4, yd5, yd6, yd7, yd8,
541 h zd1, zd2 , zd3, zd4, zd5, zd6, zd7, zd8,
542 i xdp, iparg, ng , nel)
543 ELSE
544C GATHER NODAL VARIABLES AND COMPUTE INTRINSIC ROTATION.
545 CALL srcoor3(x,ixs(1,nf1),v,w,gbuf%GAMA,gama,
546 . x1, x2, x3, x4, x5, x6, x7, x8,
547 . y1, y2, y3, y4, y5, y6, y7, y8,
548 . z1, z2, z3, z4, z5, z6, z7, z8,
549 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
550 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
551 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
552 . vd2,vis,gbuf%OFF,offg,gbuf%SMSTR,gbuf%RHO,rhoo,
553 . r11, r12, r13, r21, r22, r23, r31, r32, r33,
554 . nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,
555 . ngl,mxt,ngeo,ioutprt, vgxa, vgya, vgza, vga2,
556 . xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8,
557 . yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8,
558 . zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8,
559 . xdp, x0 , y0 , z0 , nel,xgxa, xgya, xgza,
560 . xgxa2,xgya2,xgza2,xgxya,xgyza,xgzxa,iparg(1,ng),
561 . gbuf%GAMA_R)
562 ENDIF
563c---
564 nn_del = 0
565 pid = ngeo(1)
566 IF (geo(190,pid)+geo(191,pid)+geo(192,pid)+geo(192,pid)>zero)
567 . nn_del=8
568 IF (nn_del ==0 .AND. dt%IDEL_BRICK>0) nn_del=8
569 isctl = igeo(97,pid)
570 IF (iint/=2) isctl=0
571C-----------
572C GATHER NODAL VARIABLES FOR TOTAL STRAIN CASE.
573C-----------
574 IF (ismstr >= 10.AND.ismstr <= 12) THEN
575 CALL sgcoor3(
576 1 tt, 8, x, ixs(1,nf1),
577 2 x0, y0, z0, vx0,
578 3 vy0, vz0, gbuf%SMSTR,d,
579 4 gbuf%OFF, offg0, nel, xdp,
580 5 mtn, ismstr)
581C-----------Pij is in global system w/ Ismstr10 and local system w/ 11
582 IF (ismstr == 11.AND.jcvt>0) THEN
583 CALL srrotadp(
584 1 r11, r12, r13, r21,
585 2 r22, r23, r31, r32,
586 3 r33, x0(1,1), x0(1,2), x0(1,3),
587 4 x0(1,4), x0(1,5), x0(1,6), x0(1,7),
588 5 x0(1,8), y0(1,1), y0(1,2), y0(1,3),
589 6 y0(1,4), y0(1,5), y0(1,6), y0(1,7),
590 7 y0(1,8), z0(1,1), z0(1,2), z0(1,3),
591 8 z0(1,4), z0(1,5), z0(1,6), z0(1,7),
592 9 z0(1,8), nel)
593 CALL srrota3(
594 1 r11, r12, r13, r21,
595 2 r22, r23, r31, r32,
596 3 r33, vx0(1,1),vx0(1,2),vx0(1,3),
597 4 vx0(1,4),vx0(1,5),vx0(1,6),vx0(1,7),
598 5 vx0(1,8),vy0(1,1),vy0(1,2),vy0(1,3),
599 6 vy0(1,4),vy0(1,5),vy0(1,6),vy0(1,7),
600 7 vy0(1,8),vz0(1,1),vz0(1,2),vz0(1,3),
601 8 vz0(1,4),vz0(1,5),vz0(1,6),vz0(1,7),
602 9 vz0(1,8),nel)
603 ENDIF
604 ENDIF
605C-----------
606 ioffs=0
607 DO i=lft,llt
608 offs(i)=ep20
609 deltax(i)=ep30
610 ideg(i)=0
611 ENDDO
612 IF(jthe < 0) them(lft:llt,1:8) =zero
613
614 mx = mxt(lft)
615 nu0=pm(21,mx)
616 icp0=mat_elem%MAT_PARAM(mx)%COMPRESSIBILITY
617 IF (icp == 2) THEN
618 c1 =pm(32,mx)
619 DO i=lft,llt
620 nu(i)=min(half,nu0)
621 e0(i) =three*(one-two*nu(i))*c1
622 ENDDO
623c------ Sigy of GBUF%SIG is not good, take the ip of min(e_ps)
624 sigp=zero
625 IF (gbuf%G_PLA>0) THEN
626 CALL s8e_sigp(
627 1 elbuf_tab(ng),sigp, nel)
628 END IF !(GBUF%G_PLA>0) THEN
629 CALL s8zsigp3(lft ,llt ,sigp ,e0 ,gbuf%PLA,
630 2 fac ,gbuf%G_PLA,nel )
631 IF (iselect >1) THEN
632 DO i=lft,llt
633 IF (fac(i)>zero) THEN
634 nu(i)=nu(i)+(half-nu(i))*fac(i)
635 END IF
636 ENDDO
637 END IF
638 ELSEIF (icp > 0 .OR.iselect >1.OR.isel_v>0) THEN
639 DO i=lft,llt
640 nu(i)=min(half,nu0)
641 ENDDO
642 ENDIF
643 IF (iselect >1.OR.isel_v>0) THEN
644 DO i=lft,llt
645 nu1(i) = nu(i)/(one - nu(i))
646 ENDDO
647 ENDIF
648 cns2 = zero
649 IF (iint==2.AND.icp==1.AND.mtn==1.AND.
650 . (ismstr==10.OR.ismstr==12)) THEN
651 IF (ismstr==12) THEN
652 rho0_1 =pm( 1,mx)
653 cns2 = zep02
654 IF (igeo(35,ngeo(1))>0) cns2=cns2-abs(geo(17,ngeo(1)))
655 END IF
656 END IF
657! for sound speed takeing into account nu
658 fac_nu = one
659 nu_sp = one
660 IF (idt1sol == 1.AND.(mtn==1.OR.icp0 ==3)) THEN
661 nu_sp=sqrt((one-nu0)/(one+nu0))
662 nu_sp = min(one,nu_sp/zep9)
663 fac_nu=(one-two*nu0)/(one-nu0)
664 END IF
665!
666 CALL s8eprst_ini(pr ,ps ,pt )
667C-------now [B](Pij) is always in global system w/ ISMSTR10
668 IF (ismstr >= 10.AND.ismstr <= 12) THEN
669 IF (ismstr == 11) THEN
670 CALL s8ederict3(
671 1 offg, volg, ngl, x0(1,1),
672 2 x0(1,2), x0(1,3), x0(1,4), x0(1,5),
673 3 x0(1,6), x0(1,7), x0(1,8), y0(1,1),
674 4 y0(1,2), y0(1,3), y0(1,4), y0(1,5),
675 5 y0(1,6), y0(1,7), y0(1,8), z0(1,1),
676 6 z0(1,2), z0(1,3), z0(1,4), z0(1,5),
677 7 z0(1,6), z0(1,7), z0(1,8), pxc1,
678 8 pxc2, pxc3, pxc4, pyc1,
679 9 pyc2, pyc3, pyc4, pzc1,
680 a pzc2, pzc3, pzc4, hx,
681 b hy, hz, ajc1, ajc2,
682 c ajc3, ajc4, ajc5, ajc6,
683 d ajc7, ajc8, ajc9, smax,
684 e nel)
685 CALL s8ejacip3(
686 1 hx, hy, hz, ajc1,
687 2 ajc2, ajc3, ajc4, ajc5,
688 3 ajc6, ajc7, ajc8, ajc9,
689 4 ajp1, ajp2, ajp3, ajp4,
690 5 ajp5, ajp6, ajp7, ajp8,
691 6 ajp9, nel)
692 CALL scoor_cp2sp(
693 1 x0, y0, z0, x1,
694 2 x2, x3, x4, x5,
695 3 x6, x7, x8, y1,
696 4 y2, y3, y4, y5,
697 5 y6, y7, y8, z1,
698 6 z2, z3, z4, z5,
699 7 z6, z7, z8, nel)
700 IF (idts6>0) THEN
701 CALL sdlen_dege(
702 1 volg, deltax, x1, x2,
703 2 x3, x4, x5, x6,
704 3 x7, x8, y1, y2,
705 4 y3, y4, y5, y6,
706 5 y7, y8, z1, z2,
707 6 z3, z4, z5, z6,
708 7 z7, z8, ixs(1,nf1),ideg,
709 8 nel)
710 END IF
711C----- !!!! seems no more necessary--- to remove later
712 CALL sdlen_sm11(
713 1 volg, deltax, smax, ideg,
714 2 nel)
715 ELSE
716 IF (ismstr == 12.AND.idtmin(1)==3.AND.jcvt == 0.AND.ism12_11==0) THEN
717C!!!!!!calcul local rep for ISMSTR 10 to 11 (offg>un)
718 CALL srcoor12(
719 1 gbuf%OFF,x, xdp, nc1,
720 2 nc2, nc3, nc4, nc5,
721 3 nc6, nc7, nc8, r11,
722 4 r12, r13, r21, r22,
723 5 r23, r31, r32, r33,
724 6 nel, jhbe)
725 END IF
726 CALL s8edericto3(
727 1 offg, volg, pxc1, pxc2,
728 2 pxc3, pxc4, pyc1, pyc2,
729 3 pyc3, pyc4, pzc1, pzc2,
730 4 pzc3, pzc4, gbuf%JAC_I,nel)
731C----------just for initialization
732 smax(lft:llt)=ep10
733 END IF !(ISMSTR == 11) THEN
734C
735 IF (icp ==1) THEN
736 CALL jacob_f0(
737 1 detf0, pxc1, pxc2, pxc3,
738 2 pxc4, pyc1, pyc2, pyc3,
739 3 pyc4, pzc1, pzc2, pzc3,
740 4 pzc4, vx0(1,1),vx0(1,2),vx0(1,3),
741 5 vx0(1,4),vx0(1,5),vx0(1,6),vx0(1,7),
742 6 vx0(1,8),vy0(1,1),vy0(1,2),vy0(1,3),
743 7 vy0(1,4),vy0(1,5),vy0(1,6),vy0(1,7),
744 8 vy0(1,8),vz0(1,1),vz0(1,2),vz0(1,3),
745 9 vz0(1,4),vz0(1,5),vz0(1,6),vz0(1,7),
746 a vz0(1,8),div0, nel)
747C-----don't do it w/ degenerated elm
748 IF (idts6==0) CALL degenes8(
749 1 ixs(1,nf1),ideg, nel)
750 DO i=lft,llt
751 IF (ideg(i)>0) ideg(i) = ideg(i) + 10
752 ENDDO
753 END IF
754 IF (ismstr == 11) THEN
755C-----------[B] first
756 DO ir=1,nptr
757 DO is=1,npts
758 DO it=1,nptt
759C-----------
760 ip = ir + ( (is-1) + (it-1)*npts )*nptr
761 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
762 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,it)
763C
764 CALL s8ejacit3(
765 1 volp(1,ip), a_gauss(ir,nptr),a_gauss(is,npts),a_gauss(it,nptt),
766 2 wi, ajp1(1,ip), ajp2(1,ip), ajp3(1,ip),
767 3 ajp4(1,ip), ajp5(1,ip), ajp6(1,ip), ajp7(1,ip),
768 4 ajp8(1,ip), ajp9(1,ip), aji1(1,ip), aji2(1,ip),
769 5 aji3(1,ip), aji4(1,ip), aji5(1,ip), aji6(1,ip),
770 6 aji7(1,ip), aji8(1,ip), aji9(1,ip), lbuf%JAC_I,
771 7 nel, ismstr)
772 ENDDO ! IT=1,NPTT
773 ENDDO ! IS=1,NPTS
774 ENDDO ! IR=1,NPTR
775C------ISMSTR=10,12-----: w/ fixed PIJ---
776 ELSE
777 DO ir=1,nptr
778 DO is=1,npts
779 DO it=1,nptt
780C-----------
781 ip = ir + ( (is-1) + (it-1)*npts )*nptr
782 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
783 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,it)
784C
785 CALL s8egetpij(
786 . px1(1,ip), px2(1,ip), px3(1,ip), px4(1,ip),
787 . px5(1,ip), px6(1,ip), px7(1,ip), px8(1,ip),
788 . py1(1,ip), py2(1,ip), py3(1,ip), py4(1,ip),
789 . py5(1,ip), py6(1,ip), py7(1,ip), py8(1,ip),
790 . pz1(1,ip), pz2(1,ip), pz3(1,ip), pz4(1,ip),
791 . pz5(1,ip), pz6(1,ip), pz7(1,ip), pz8(1,ip),
792 . lbuf%PIJ , llt )
793 volp(lft:llt,ip)=volg(lft:llt)
794 ENDDO ! IT=1,NPTT
795 ENDDO ! IS=1,NPTS
796 ENDDO ! IR=1,NPTR
797C-----------Begin integrating points-----
798 DO ir=1,nptr
799 DO is=1,npts
800 DO it=1,nptt
801 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,it)
802 ip = ir + ( (is-1) + (it-1)*npts )*nptr
803 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
804C
805 CALL s8ederi_2(
806 1 offg, off, voln, a_gauss(ir,nptr),
807 2 a_gauss(is,npts),a_gauss(it,nptt),wi, px1(1,ip),
808 3 px2(1,ip), px3(1,ip), px4(1,ip), px5(1,ip),
809 4 px6(1,ip), px7(1,ip), px8(1,ip), py1(1,ip),
810 5 py2(1,ip), py3(1,ip), py4(1,ip), py5(1,ip),
811 6 py6(1,ip), py7(1,ip), py8(1,ip), pz1(1,ip),
812 7 pz2(1,ip), pz3(1,ip), pz4(1,ip), pz5(1,ip),
813 8 pz6(1,ip), pz7(1,ip), pz8(1,ip), pxc1,
814 9 pxc2, pxc3, pxc4, pyc1,
815 a pyc2, pyc3, pyc4, pzc1,
816 b pzc2, pzc3, pzc4, bxy1,
817 c bxy2, bxy3, bxy4, bxy5,
818 d bxy6, bxy7, bxy8, byx1,
819 e byx2, byx3, byx4, byx5,
820 f byx6, byx7, byx8, bxz1,
821 g bxz2, bxz3, bxz4, bxz5,
822 h bxz6, bxz7, bxz8, bzx1,
823 i bzx2, bzx3, bzx4, bzx5,
824 j bzx6, bzx7, bzx8, byz1,
825 k byz2, byz3, byz4, byz5,
826 l byz6, byz7, byz8, bzy1,
827 m bzy2, bzy3, bzy4, bzy5,
828 n bzy6, bzy7, bzy8, bxx1,
829 o bxx2, bxx3, bxx4, bxx5,
830 p bxx6, bxx7, bxx8, byy1,
831 q byy2, byy3, byy4, byy5,
832 r byy6, byy7, byy8, bzz1,
833 s bzz2, bzz3, bzz4, bzz5,
834 t bzz6, bzz7, bzz8, ajp4(1,ip),
835 u ajp5(1,ip), ajp6(1,ip), ajp7(1,ip), ajp8(1,ip),
836 v ajp9(1,ip), aj1, aj2, aj3,
837 w aj4, aj5, aj6, smax,
838 x deltax, icp, ideg, nu,
839 y volp(1,ip), nel)
840 IF (iselect>1) THEN
841 CALL s8egetbij(
842 . bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8,
843 . byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8,
844 . bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8,
845 . bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8,
846 . byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8,
847 . bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8,
848 . lbuf%PIJ,llt)
849 END IF !(ISELECT>1) THEN
850 CALL s8edefot3(
851 1 px1(1,ip), px2(1,ip), px3(1,ip), px4(1,ip),
852 2 px5(1,ip), px6(1,ip), px7(1,ip), px8(1,ip),
853 3 py1(1,ip), py2(1,ip), py3(1,ip), py4(1,ip),
854 4 py5(1,ip), py6(1,ip), py7(1,ip), py8(1,ip),
855 5 pz1(1,ip), pz2(1,ip), pz3(1,ip), pz4(1,ip),
856 6 pz5(1,ip), pz6(1,ip), pz7(1,ip), pz8(1,ip),
857 7 bxy1, bxy2, bxy3, bxy4,
858 8 bxy5, bxy6, bxy7, bxy8,
859 9 byx1, byx2, byx3, byx4,
860 a byx5, byx6, byx7, byx8,
861 b bxz1, bxz2, bxz3, bxz4,
862 c bxz5, bxz6, bxz7, bxz8,
863 d bzx1, bzx2, bzx3, bzx4,
864 e bzx5, bzx6, bzx7, bzx8,
865 f byz1, byz2, byz3, byz4,
866 g byz5, byz6, byz7, byz8,
867 h bzy1, bzy2, bzy3, bzy4,
868 i bzy5, bzy6, bzy7, bzy8,
869 j bxx1, bxx2, bxx3, bxx4,
870 k bxx5, bxx6, bxx7, bxx8,
871 l byy1, byy2, byy3, byy4,
872 m byy5, byy6, byy7, byy8,
873 n bzz1, bzz2, bzz3, bzz4,
874 o bzz5, bzz6, bzz7, bzz8,
875 p pxy1, pxy2, pxy3, pxy4,
876 q pxy5, pxy6, pxy7, pxy8,
877 r pyx1, pyx2, pyx3, pyx4,
878 s pyx5, pyx6, pyx7, pyx8,
879 t pxz1, pxz2, pxz3, pxz4,
880 u pxz5, pxz6, pxz7, pxz8,
881 v pzx1, pzx2, pzx3, pzx4,
882 w pzx5, pzx6, pzx7, pzx8,
883 x pyz1, pyz2, pyz3, pyz4,
884 y pyz5, pyz6, pyz7, pyz8,
885 z pzy1, pzy2, pzy3, pzy4,
886 1 pzy5, pzy6, pzy7, pzy8,
887 2 vx0(1,1), vx0(1,2), vx0(1,3), vx0(1,4),
888 3 vx0(1,5), vx0(1,6), vx0(1,7), vx0(1,8),
889 4 vy0(1,1), vy0(1,2), vy0(1,3), vy0(1,4),
890 5 vy0(1,5), vy0(1,6), vy0(1,7), vy0(1,8),
891 6 vz0(1,1), vz0(1,2), vz0(1,3), vz0(1,4),
892 7 vz0(1,5), vz0(1,6), vz0(1,7), vz0(1,8),
893 8 mfxx(1,ip),mfxy(1,ip),mfxz(1,ip),mfyx(1,ip),
894 9 mfyy(1,ip),mfyz(1,ip),mfzx(1,ip),mfzy(1,ip),
895 a mfzz(1,ip),icp, detf0, jfac(1,ip),
896 b nu, iselect, ideg, bxx(1,ip),
897 c byy(1,ip), bzz(1,ip), gbuf%OFF, nel,
898 d ismstr, mtn, div0 )
899C
900 IF (jcvt > 0.AND.(ismstr==10.OR.ismstr==12)) THEN
901 CALL sordeft3(lft,llt,mfxx(1,ip), mfxy(1,ip), mfxz(1,ip),
902 . mfyx(1,ip), mfyy(1,ip), mfyz(1,ip),
903 . mfzx(1,ip), mfzy(1,ip), mfzz(1,ip),
904 . r11, r21, r31, r12, r22, r32, r13, r23, r33)
905 IF (iselect>1)
906 . CALL sordeftb(lft,llt,bxx(1,ip), byy(1,ip), bzz(1,ip),
907 . r11, r21, r31, r12, r22, r32, r13, r23, r33)
908 ELSEIF (idtmin(1)==3.AND.ismstr == 12.AND.ism12_11==0) THEN
909 CALL sordeft12(lft,llt,mfxx(1,ip), mfxy(1,ip), mfxz(1,ip),
910 . mfyx(1,ip), mfyy(1,ip), mfyz(1,ip),
911 . mfzx(1,ip), mfzy(1,ip), mfzz(1,ip),
912 . r11, r21, r31, r12, r22, r32, r13, r23, r33,gbuf%OFF)
913 ENDIF
914C
915 ENDDO
916 ENDDO
917 ENDDO
918C---shear treatment here directly on Cauchy Left [B] for Ismstr=10
919 IF (iselect>0) THEN
920 CALL s8eselecsht(
921 1 nptr, npts, nptt, nnpt,
922 2 mfxx, mfxy, mfxz, mfyx,
923 3 mfyy, mfyz, mfzx, mfzy,
924 4 mfzz, bxx, byy, bzz,
925 5 bxy, byz, bxz, iselect,
926 6 gbuf%OFF,nel, ismstr)
927 ENDIF
928 END IF !(ISMSTR == 11) THEN
929 ENDIF ! (ISMSTR >= 10.AND.ISMSTR <= 12)
930C-----------------------------
931C----------JACOBIEN-inverse- in case of Vol<=0-------
932 IF (ismstr/=11) THEN
933 CALL s8ederic3(
934 1 offg, volg, ngl, xd1,
935 2 xd2, xd3, xd4, xd5,
936 3 xd6, xd7, xd8, yd1,
937 4 yd2, yd3, yd4, yd5,
938 5 yd6, yd7, yd8, zd1,
939 6 zd2, zd3, zd4, zd5,
940 7 zd6, zd7, zd8, pxc1,
941 8 pxc2, pxc3, pxc4, pyc1,
942 9 pyc2, pyc3, pyc4, pzc1,
943 a pzc2, pzc3, pzc4, px1h1,
944 b px1h2, px1h3, px1h4, px2h1,
945 c px2h2, px2h3, px2h4, px3h1,
946 d px3h2, px3h3, px3h4, px4h1,
947 e px4h2, px4h3, px4h4, hx,
948 f hy, hz, jr_1, js_1,
949 g jt_1, ajc1, ajc2, ajc3,
950 h ajc4, ajc5, ajc6, ajc7,
951 i ajc8, ajc9, smax, gbuf%SMSTR,
952 j gbuf%OFF, nel, ismstr, jlag)
953 CALL s8ejacip3(
954 1 hx, hy, hz, ajc1,
955 2 ajc2, ajc3, ajc4, ajc5,
956 3 ajc6, ajc7, ajc8, ajc9,
957 4 ajp1, ajp2, ajp3, ajp4,
958 5 ajp5, ajp6, ajp7, ajp8,
959 6 ajp9, nel)
960 IF (idts6>0) THEN
961 CALL sdlen_dege(
962 1 volg, deltax, x1, x2,
963 2 x3, x4, x5, x6,
964 3 x7, x8, y1, y2,
965 4 y3, y4, y5, y6,
966 5 y7, y8, z1, z2,
967 6 z3, z4, z5, z6,
968 7 z7, z8, ixs(1,nf1),ideg,
969 8 nel)
970 END IF
971 END IF !(ISMSTR/=11) THEN
972C----------JACOBIEN-inverse- in case of Vol<=0-------
973 nnega = 0
974C-----------Begin integrating points-----
975c
976 DO ir=1,nptr
977 DO is=1,npts
978 DO it=1,nptt
979 ip = ir + ( (is-1) + (it-1)*npts )*nptr
980 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
981C
982 CALL s8ederipr3(
983 1 gbuf%OFF, volp(1,ip),ngl, wi,
984 2 ajp1(1,ip),ajp2(1,ip),ajp3(1,ip),ajp4(1,ip),
985 3 ajp5(1,ip),ajp6(1,ip),ajp7(1,ip),ajp8(1,ip),
986 4 ajp9(1,ip),aji1(1,ip),aji2(1,ip),aji3(1,ip),
987 5 aji4(1,ip),aji5(1,ip),aji6(1,ip),aji7(1,ip),
988 6 aji8(1,ip),aji9(1,ip),nnega, index,
989 7 ip, nel)
990 ENDDO ! IT=1,NPTT
991 ENDDO ! IS=1,NPTS
992 ENDDO ! IR=1,NPTR
993C
994 IF (nnega>0) THEN
995 CALL s8edericm3(
996 1 volg, ngl, xd1, xd2,
997 2 xd3, xd4, xd5, xd6,
998 3 xd7, xd8, yd1, yd2,
999 4 yd3, yd4, yd5, yd6,
1000 5 yd7, yd8, zd1, zd2,
1001 6 zd3, zd4, zd5, zd6,
1002 7 zd7, zd8, pxc1, pxc2,
1003 8 pxc3, pxc4, pyc1, pyc2,
1004 9 pyc3, pyc4, pzc1, pzc2,
1005 a pzc3, pzc4, hx, hy,
1006 b hz, ajc1, ajc2, ajc3,
1007 c ajc4, ajc5, ajc6, ajc7,
1008 d ajc8, ajc9, smax, gbuf%SMSTR,
1009 e gbuf%OFF, nnega, index, nel,
1010 f ismstr)
1011 DO ir=1,nptr
1012 DO is=1,npts
1013 DO it=1,nptt
1014 ip = ir + ( (is-1) + (it-1)*npts )*nptr
1015 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
1016C
1017 CALL s8zderims3(volp(1,ip),
1018 . a_gauss(ir,nptr),a_gauss(is,npts),a_gauss(it,nptt),wi,
1019 . hx, hy, hz,
1020 . ajc1,ajc2,ajc3,
1021 . ajc4,ajc5,ajc6,
1022 . ajc7,ajc8,ajc9,
1023 . ajp1(1,ip),ajp2(1,ip),ajp3(1,ip),
1024 . ajp4(1,ip),ajp5(1,ip),ajp6(1,ip),
1025 . ajp7(1,ip),ajp8(1,ip),ajp9(1,ip),
1026 . aji1(1,ip),aji2(1,ip),aji3(1,ip),
1027 . aji4(1,ip),aji5(1,ip),aji6(1,ip),
1028 . aji7(1,ip),aji8(1,ip),aji9(1,ip),nnega,index)
1029 ENDDO ! IT=1,NPTT
1030 ENDDO ! IS=1,NPTS
1031 ENDDO ! IR=1,NPTR
1032 IF (ineg_v ==0) THEN
1033C--- /NEGAVOL/STOP
1034 CALL ancmsg(msgid=280,anmode=aninfo)
1035 mstop = 1
1036 END IF !(INEG_V /=0) THEN
1037 END IF
1038C --------------------------
1039C --- UPDATE REF CONFIGURATION (possible future change to small strain option)
1040C --- ! Total strain option doesn't change the Ref CONF.
1041C --------------------------
1042 IF (ismstr <= 3.OR.(ismstr==4.AND.jlag>0)) THEN
1043 IF (jcvt /= 0.AND.isorth/=0 ) THEN
1044 CALL s8savsr3(
1045 1 gbuf%OFF, gbuf%SMSTR,x0, y0,
1046 2 z0, nel)
1047 ELSE
1048 CALL s8sav3(
1049 1 gbuf%OFF, gbuf%SMSTR,xd1, xd2,
1050 2 xd3, xd4, xd5, xd6,
1051 3 xd7, xd8, yd1, yd2,
1052 4 yd3, yd4, yd5, yd6,
1053 5 yd7, yd8, zd1, zd2,
1054 6 zd3, zd4, zd5, zd6,
1055 7 zd7, zd8, nel)
1056 END IF
1057 END IF !(ISMSTR <= 3) THEN
1058C
1059 IF (icp==1.OR.icp==2) THEN
1060 CALL s8edefoc3(
1061 1 pxc1, pxc2, pxc3, pxc4,
1062 2 pyc1, pyc2, pyc3, pyc4,
1063 3 pzc1, pzc2, pzc3, pzc4,
1064 4 vx1, vx2, vx3, vx4,
1065 5 vx5, vx6, vx7, vx8,
1066 6 vy1, vy2, vy3, vy4,
1067 7 vy5, vy6, vy7, vy8,
1068 8 vz1, vz2, vz3, vz4,
1069 9 vz5, vz6, vz7, vz8,
1070 a dsv, nel)
1071 ENDIF
1072C-----don't do it w/ degenerated elm,
1073 IF ((icp==1.OR.iselect>1).AND.ismstr < 10) THEN
1074 IF (idts6==0) CALL degenes8(
1075 1 ixs(1,nf1),ideg, nel)
1076 IF (iselect>1) THEN
1077 DO i=lft,llt
1078 IF (ideg(i)>2) ideg(i) = ideg(i) + 10
1079 ENDDO
1080 ELSE
1081 DO i=lft,llt
1082 IF (ideg(i)>0) ideg(i) = ideg(i) + 10
1083 ENDDO
1084 END IF
1085 END IF !(ICP==1.AND.ISMSTR < 10)
1086! dt1/brick for elastoplastic laws (including law1)
1087 CALL sz_dt1(
1088 1 pxc1, pxc2, pxc3, pxc4,
1089 2 pyc1, pyc2, pyc3, pyc4,
1090 3 pzc1, pzc2, pzc3, pzc4,
1091 4 fac_nu, deltaxi, nel )
1092C-----------
1093C INITIALIZATION---Before increment-----
1094C-----------
1095 CALL s8zzero3(
1096 1 f11, f21, f31, f12,
1097 2 f22, f32, f13, f23,
1098 3 f33, f14, f24, f34,
1099 4 f15, f25, f35, f16,
1100 5 f26, f36, f17, f27,
1101 6 f37, f18, f28, f38,
1102 7 gbuf%SIG, gbuf%EINT, gbuf%RHO, gbuf%QVIS,
1103 8 gbuf%PLA, gbuf%EPSD, stin, pp,
1104 9 gbuf%G_PLA, gbuf%G_EPSD,iexpan, gbuf%EINTTH,
1105 a nel, conden)
1106C-------------------------------------------
1107C COMPUTE AVERAGE TEMPERATURE IN ELEMENT
1108C-------------------------------------------
1109 tempel(:) = zero
1110 fheat(:) = zero
1111 IF(jthe < 0 ) THEN
1112 DO i=lft,llt
1113 IF(gbuf%OFF(i) == zero) cycle
1114 tempel(i) = one_over_8 *( temp(nc1(i)) + temp(nc2(i))
1115 . + temp(nc3(i)) + temp(nc4(i))
1116 . + temp(nc5(i)) + temp(nc6(i))
1117 . + temp(nc7(i)) + temp(nc8(i)))
1118 gbuf%TEMP(i) = tempel(i)
1119 ENDDO
1120 ENDIF
1121c-------------------------------------------
1122c COMPUTE Regularized non local variable in Gauss point
1123c-------------------------------------------
1124 IF (inloc > 0) THEN
1125 l_nloc = nloc_dmg%L_NLOC
1126 dnl => nloc_dmg%DNL(1:l_nloc) ! DNL = non local variable increment
1127 DO ir=1,nptr
1128 DO is=1,npts
1129 DO it=1,nptt
1130 zr = a_gauss(ir,nptr)
1131 zs = a_gauss(is,npts)
1132 zt = a_gauss(it,nptt)
1133 ip = ir + ( (is-1) + (it-1)*npts )*nptr
1134 CALL basis8 (zr,zs,zt,h,pr2,ps2,pt2)
1135 DO i=lft,llt
1136 inod(1) = nloc_dmg%IDXI(nc1(i))
1137 inod(2) = nloc_dmg%IDXI(nc2(i))
1138 inod(3) = nloc_dmg%IDXI(nc3(i))
1139 inod(4) = nloc_dmg%IDXI(nc4(i))
1140 inod(5) = nloc_dmg%IDXI(nc5(i))
1141 inod(6) = nloc_dmg%IDXI(nc6(i))
1142 inod(7) = nloc_dmg%IDXI(nc7(i))
1143 inod(8) = nloc_dmg%IDXI(nc8(i))
1144 DO j = 1, 8
1145 ipos(j) = nloc_dmg%POSI(inod(j))
1146 ENDDO
1147 var_reg(i,ip) = h(1)*dnl(ipos(1)) + h(2)*dnl(ipos(2)) + h(3)*dnl(ipos(3))
1148 . + h(4)*dnl(ipos(4)) + h(5)*dnl(ipos(5)) + h(6)*dnl(ipos(6))
1149 . + h(7)*dnl(ipos(7)) + h(8)*dnl(ipos(8))
1150 ENDDO
1151 ENDDO
1152 ENDDO
1153 ENDDO
1154 ENDIF
1155C---------[Bj] first---
1156 DO ir=1,nptr
1157 DO is=1,npts
1158 DO it=1,nptt
1159C-----------
1160 ip = ir + ( (is-1) + (it-1)*npts )*nptr
1161C
1162 CALL s8ederig3(
1163 1 px1(1,ip), px2(1,ip), px3(1,ip), px4(1,ip),
1164 2 px5(1,ip), px6(1,ip), px7(1,ip), px8(1,ip),
1165 3 py1(1,ip), py2(1,ip), py3(1,ip), py4(1,ip),
1166 4 py5(1,ip), py6(1,ip), py7(1,ip), py8(1,ip),
1167 5 pz1(1,ip), pz2(1,ip), pz3(1,ip), pz4(1,ip),
1168 6 pz5(1,ip), pz6(1,ip), pz7(1,ip), pz8(1,ip),
1169 7 aji1(1,ip),aji2(1,ip),aji3(1,ip),aji4(1,ip),
1170 8 aji5(1,ip),aji6(1,ip),aji7(1,ip),aji8(1,ip),
1171 9 aji9(1,ip),pr(1,ip), ps(1,ip), pt(1,ip),
1172 a nel)
1173 ENDDO ! IT=1,NPTT
1174 ENDDO ! IS=1,NPTS
1175 ENDDO ! IR=1,NPTR
1176C----------selective integration
1177 IF (iselect>0) THEN
1178 CALL s8eselecsh(
1179 1 nptr, npts, nptt, nnpt,
1180 2 px1, px2, px3, px4,
1181 3 px5, px6, px7, px8,
1182 4 py1, py2, py3, py4,
1183 5 py5, py6, py7, py8,
1184 6 pz1, pz2, pz3, pz4,
1185 7 pz5, pz6, pz7, pz8,
1186 8 p0xy1, p0xy2, p0xy3, p0xy4,
1187 9 p0xy5, p0xy6, p0xy7, p0xy8,
1188 a p0yx1, p0yx2, p0yx3, p0yx4,
1189 b p0yx5, p0yx6, p0yx7, p0yx8,
1190 c p0xz1, p0xz2, p0xz3, p0xz4,
1191 d p0xz5, p0xz6, p0xz7, p0xz8,
1192 e p0zx1, p0zx2, p0zx3, p0zx4,
1193 f p0zx5, p0zx6, p0zx7, p0zx8,
1194 g p0yz1, p0yz2, p0yz3, p0yz4,
1195 h p0yz5, p0yz6, p0yz7, p0yz8,
1196 i p0zy1, p0zy2, p0zy3, p0zy4,
1197 j p0zy5, p0zy6, p0zy7, p0zy8,
1198 k nel)
1199 END IF
1200C-----------Begin integrating points-----
1201 DO ir=1,nptr
1202 DO is=1,npts
1203 DO it=1,nptt
1204 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,it)
1205C-----avoid multi-print
1206 IF (ioffs == 1)THEN
1207 DO i=lft,llt
1208 IF (offs(i)<=two) lbuf%OFF(i)=offs(i)
1209 ENDDO
1210 END IF
1211C-----------
1212 ip = ir + ( (is-1) + (it-1)*npts )*nptr
1213 wi = w_gauss(ir,nptr)*w_gauss(is,npts)*w_gauss(it,nptt)
1214C
1215 CALL s8ederi_2(
1216 1 offg, off, voln, a_gauss(ir,nptr),
1217 2 a_gauss(is,npts),a_gauss(it,nptt),wi, px1(1,ip),
1218 3 px2(1,ip), px3(1,ip), px4(1,ip), px5(1,ip),
1219 4 px6(1,ip), px7(1,ip), px8(1,ip), py1(1,ip),
1220 5 py2(1,ip), py3(1,ip), py4(1,ip), py5(1,ip),
1221 6 py6(1,ip), py7(1,ip), py8(1,ip), pz1(1,ip),
1222 7 pz2(1,ip), pz3(1,ip), pz4(1,ip), pz5(1,ip),
1223 8 pz6(1,ip), pz7(1,ip), pz8(1,ip), pxc1,
1224 9 pxc2, pxc3, pxc4, pyc1,
1225 a pyc2, pyc3, pyc4, pzc1,
1226 b pzc2, pzc3, pzc4, bxy1,
1227 c bxy2, bxy3, bxy4, bxy5,
1228 d bxy6, bxy7, bxy8, byx1,
1229 e byx2, byx3, byx4, byx5,
1230 f byx6, byx7, byx8, bxz1,
1231 g bxz2, bxz3, bxz4, bxz5,
1232 h bxz6, bxz7, bxz8, bzx1,
1233 i bzx2, bzx3, bzx4, bzx5,
1234 j bzx6, bzx7, bzx8, byz1,
1235 k byz2, byz3, byz4, byz5,
1236 l byz6, byz7, byz8, bzy1,
1237 m bzy2, bzy3, bzy4, bzy5,
1238 n bzy6, bzy7, bzy8, bxx1,
1239 o bxx2, bxx3, bxx4, bxx5,
1240 p bxx6, bxx7, bxx8, byy1,
1241 q byy2, byy3, byy4, byy5,
1242 r byy6, byy7, byy8, bzz1,
1243 s bzz2, bzz3, bzz4, bzz5,
1244 t bzz6, bzz7, bzz8, ajp4(1,ip),
1245 u ajp5(1,ip), ajp6(1,ip), ajp7(1,ip), ajp8(1,ip),
1246 v ajp9(1,ip), aj1, aj2, aj3,
1247 w aj4, aj5, aj6, smax,
1248 x deltax, icp, ideg, nu,
1249 y volp(1,ip), nel)
1250 IF (iselect>0) THEN
1251 CALL s8ederish2(
1252 1 pxy1, pxy2, pxy3, pxy4,
1253 2 pxy5, pxy6, pxy7, pxy8,
1254 3 pyx1, pyx2, pyx3, pyx4,
1255 4 pyx5, pyx6, pyx7, pyx8,
1256 5 pxz1, pxz2, pxz3, pxz4,
1257 6 pxz5, pxz6, pxz7, pxz8,
1258 7 pzx1, pzx2, pzx3, pzx4,
1259 8 pzx5, pzx6, pzx7, pzx8,
1260 9 pyz1, pyz2, pyz3, pyz4,
1261 a pyz5, pyz6, pyz7, pyz8,
1262 b pzy1, pzy2, pzy3, pzy4,
1263 c pzy5, pzy6, pzy7, pzy8,
1264 d p0xy1(1,ir),p0xy2(1,ir),p0xy3(1,ir),p0xy4(1,ir),
1265 e p0xy5(1,ir),p0xy6(1,ir),p0xy7(1,ir),p0xy8(1,ir),
1266 f p0yx1(1,ir),p0yx2(1,ir),p0yx3(1,ir),p0yx4(1,ir),
1267 g p0yx5(1,ir),p0yx6(1,ir),p0yx7(1,ir),p0yx8(1,ir),
1268 h p0xz1(1,it),p0xz2(1,it),p0xz3(1,it),p0xz4(1,it),
1269 i p0xz5(1,it),p0xz6(1,it),p0xz7(1,it),p0xz8(1,it),
1270 j p0zx1(1,it),p0zx2(1,it),p0zx3(1,it),p0zx4(1,it),
1271 k p0zx5(1,it),p0zx6(1,it),p0zx7(1,it),p0zx8(1,it),
1272 l p0yz1(1,is),p0yz2(1,is),p0yz3(1,is),p0yz4(1,is),
1273 m p0yz5(1,is),p0yz6(1,is),p0yz7(1,is),p0yz8(1,is),
1274 n p0zy1(1,is),p0zy2(1,is),p0zy3(1,is),p0zy4(1,is),
1275 o p0zy5(1,is),p0zy6(1,is),p0zy7(1,is),p0zy8(1,is),
1276 p nel)
1277 IF (iselect>1.OR.isel_v>0)
1278 . CALL s8ederi_bij(
1279 1 px1(1,ip),px2(1,ip),px3(1,ip),px4(1,ip),
1280 2 px5(1,ip),px6(1,ip),px7(1,ip),px8(1,ip),
1281 3 py1(1,ip),py2(1,ip),py3(1,ip),py4(1,ip),
1282 4 py5(1,ip),py6(1,ip),py7(1,ip),py8(1,ip),
1283 5 pz1(1,ip),pz2(1,ip),pz3(1,ip),pz4(1,ip),
1284 6 pz5(1,ip),pz6(1,ip),pz7(1,ip),pz8(1,ip),
1285 7 pxc1, pxc2, pxc3, pxc4,
1286 8 pyc1, pyc2, pyc3, pyc4,
1287 9 pzc1, pzc2, pzc3, pzc4,
1288 a pxy1, pxy2, pxy3, pxy4,
1289 b pxy5, pxy6, pxy7, pxy8,
1290 c pyx1, pyx2, pyx3, pyx4,
1291 d pyx5, pyx6, pyx7, pyx8,
1292 e pxz1, pxz2, pxz3, pxz4,
1293 f pxz5, pxz6, pxz7, pxz8,
1294 g pzx1, pzx2, pzx3, pzx4,
1295 h pzx5, pzx6, pzx7, pzx8,
1296 i pyz1, pyz2, pyz3, pyz4,
1297 j pyz5, pyz6, pyz7, pyz8,
1298 k pzy1, pzy2, pzy3, pzy4,
1299 l pzy5, pzy6, pzy7, pzy8,
1300 m bxy1, bxy2, bxy3, bxy4,
1301 n bxy5, bxy6, bxy7, bxy8,
1302 o byx1, byx2, byx3, byx4,
1303 p byx5, byx6, byx7, byx8,
1304 q bxz1, bxz2, bxz3, bxz4,
1305 r bxz5, bxz6, bxz7, bxz8,
1306 s bzx1, bzx2, bzx3, bzx4,
1307 t bzx5, bzx6, bzx7, bzx8,
1308 u byz1, byz2, byz3, byz4,
1309 v byz5, byz6, byz7, byz8,
1310 w bzy1, bzy2, bzy3, bzy4,
1311 x bzy5, bzy6, bzy7, bzy8,
1312 y nu, nu1, nel)
1313C--------- modified [B] is saved in GBUF%ETOTSH verify for Ismstr=11 !!!!!
1314 IF (ismstr==10.OR.ismstr==12) THEN
1315 CALL s8etotsh10(
1316 1 gbuf%ETOTSH,bxx(1,ip), byy(1,ip), bzz(1,ip),
1317 2 bxy(1,ip), byz(1,ip), bxz(1,ip), nel)
1318 END IF !(ISMSTR==10.OR.ISMSTR==12) THEN
1319
1320 END IF !(ISELECT>0) THEN
1321 IF (ismstr==11) THEN
1322 CALL s8edefot3(
1323 1 px1(1,ip), px2(1,ip), px3(1,ip), px4(1,ip),
1324 2 px5(1,ip), px6(1,ip), px7(1,ip), px8(1,ip),
1325 3 py1(1,ip), py2(1,ip), py3(1,ip), py4(1,ip),
1326 4 py5(1,ip), py6(1,ip), py7(1,ip), py8(1,ip),
1327 5 pz1(1,ip), pz2(1,ip), pz3(1,ip), pz4(1,ip),
1328 6 pz5(1,ip), pz6(1,ip), pz7(1,ip), pz8(1,ip),
1329 7 bxy1, bxy2, bxy3, bxy4,
1330 8 bxy5, bxy6, bxy7, bxy8,
1331 9 byx1, byx2, byx3, byx4,
1332 a byx5, byx6, byx7, byx8,
1333 b bxz1, bxz2, bxz3, bxz4,
1334 c bxz5, bxz6, bxz7, bxz8,
1335 d bzx1, bzx2, bzx3, bzx4,
1336 e bzx5, bzx6, bzx7, bzx8,
1337 f byz1, byz2, byz3, byz4,
1338 g byz5, byz6, byz7, byz8,
1339 h bzy1, bzy2, bzy3, bzy4,
1340 i bzy5, bzy6, bzy7, bzy8,
1341 j bxx1, bxx2, bxx3, bxx4,
1342 k bxx5, bxx6, bxx7, bxx8,
1343 l byy1, byy2, byy3, byy4,
1344 m byy5, byy6, byy7, byy8,
1345 n bzz1, bzz2, bzz3, bzz4,
1346 o bzz5, bzz6, bzz7, bzz8,
1347 p pxy1, pxy2, pxy3, pxy4,
1348 q pxy5, pxy6, pxy7, pxy8,
1349 r pyx1, pyx2, pyx3, pyx4,
1350 s pyx5, pyx6, pyx7, pyx8,
1351 t pxz1, pxz2, pxz3, pxz4,
1352 u pxz5, pxz6, pxz7, pxz8,
1353 v pzx1, pzx2, pzx3, pzx4,
1354 w pzx5, pzx6, pzx7, pzx8,
1355 x pyz1, pyz2, pyz3, pyz4,
1356 y pyz5, pyz6, pyz7, pyz8,
1357 z pzy1, pzy2, pzy3, pzy4,
1358 1 pzy5, pzy6, pzy7, pzy8,
1359 2 vx0(1,1), vx0(1,2), vx0(1,3), vx0(1,4),
1360 3 vx0(1,5), vx0(1,6), vx0(1,7), vx0(1,8),
1361 4 vy0(1,1), vy0(1,2), vy0(1,3), vy0(1,4),
1362 5 vy0(1,5), vy0(1,6), vy0(1,7), vy0(1,8),
1363 6 vz0(1,1), vz0(1,2), vz0(1,3), vz0(1,4),
1364 7 vz0(1,5), vz0(1,6), vz0(1,7), vz0(1,8),
1365 8 mfxx(1,ip),mfxy(1,ip),mfxz(1,ip),mfyx(1,ip),
1366 9 mfyy(1,ip),mfyz(1,ip),mfzx(1,ip),mfzy(1,ip),
1367 a mfzz(1,ip),icp, detf0, jfac(1,ip),
1368 b nu, iselect, ideg, bxx(1,ip),
1369 c byy(1,ip), bzz(1,ip), gbuf%OFF, nel,
1370 d ismstr, mtn, div0 )
1371 ELSEIF (ismstr==12) THEN
1372 CALL s8edefot12(
1373 1 px1(1,ip), px2(1,ip), px3(1,ip), px4(1,ip),
1374 2 px5(1,ip), px6(1,ip), px7(1,ip), px8(1,ip),
1375 3 py1(1,ip), py2(1,ip), py3(1,ip), py4(1,ip),
1376 4 py5(1,ip), py6(1,ip), py7(1,ip), py8(1,ip),
1377 5 pz1(1,ip), pz2(1,ip), pz3(1,ip), pz4(1,ip),
1378 6 pz5(1,ip), pz6(1,ip), pz7(1,ip), pz8(1,ip),
1379 7 bxy1, bxy2, bxy3, bxy4,
1380 8 bxy5, bxy6, bxy7, bxy8,
1381 9 byx1, byx2, byx3, byx4,
1382 a byx5, byx6, byx7, byx8,
1383 b bxz1, bxz2, bxz3, bxz4,
1384 c bxz5, bxz6, bxz7, bxz8,
1385 d bzx1, bzx2, bzx3, bzx4,
1386 e bzx5, bzx6, bzx7, bzx8,
1387 f byz1, byz2, byz3, byz4,
1388 g byz5, byz6, byz7, byz8,
1389 h bzy1, bzy2, bzy3, bzy4,
1390 i bzy5, bzy6, bzy7, bzy8,
1391 j bxx1, bxx2, bxx3, bxx4,
1392 k bxx5, bxx6, bxx7, bxx8,
1393 l byy1, byy2, byy3, byy4,
1394 m byy5, byy6, byy7, byy8,
1395 n bzz1, bzz2, bzz3, bzz4,
1396 o bzz5, bzz6, bzz7, bzz8,
1397 p pxy1, pxy2, pxy3, pxy4,
1398 q pxy5, pxy6, pxy7, pxy8,
1399 r pyx1, pyx2, pyx3, pyx4,
1400 s pyx5, pyx6, pyx7, pyx8,
1401 t pxz1, pxz2, pxz3, pxz4,
1402 u pxz5, pxz6, pxz7, pxz8,
1403 v pzx1, pzx2, pzx3, pzx4,
1404 w pzx5, pzx6, pzx7, pzx8,
1405 x pyz1, pyz2, pyz3, pyz4,
1406 y pyz5, pyz6, pyz7, pyz8,
1407 z pzy1, pzy2, pzy3, pzy4,
1408 1 pzy5, pzy6, pzy7, pzy8,
1409 2 vx0(1,1), vx0(1,2), vx0(1,3), vx0(1,4),
1410 3 vx0(1,5), vx0(1,6), vx0(1,7), vx0(1,8),
1411 4 vy0(1,1), vy0(1,2), vy0(1,3), vy0(1,4),
1412 5 vy0(1,5), vy0(1,6), vy0(1,7), vy0(1,8),
1413 6 vz0(1,1), vz0(1,2), vz0(1,3), vz0(1,4),
1414 7 vz0(1,5), vz0(1,6), vz0(1,7), vz0(1,8),
1415 8 r11, r12, r13, r21,
1416 9 r22, r23, r31, r32,
1417 a r33, mfxx(1,ip),mfxy(1,ip),mfxz(1,ip),
1418 b mfyx(1,ip),mfyy(1,ip),mfyz(1,ip),mfzx(1,ip),
1419 c mfzy(1,ip),mfzz(1,ip),icp, detf0,
1420 d jfac(1,ip),nu, ideg, gbuf%OFF,
1421 e isel_v, iselect, nel, ismstr,
1422 f jcvt, mtn, div0 )
1423 END IF !(ISMSTR==11) THEN
1424 CALL s8edefo3(
1425 1 px1(1,ip), px2(1,ip), px3(1,ip), px4(1,ip),
1426 2 px5(1,ip), px6(1,ip), px7(1,ip), px8(1,ip),
1427 3 py1(1,ip), py2(1,ip), py3(1,ip), py4(1,ip),
1428 4 py5(1,ip), py6(1,ip), py7(1,ip), py8(1,ip),
1429 5 pz1(1,ip), pz2(1,ip), pz3(1,ip), pz4(1,ip),
1430 6 pz5(1,ip), pz6(1,ip), pz7(1,ip), pz8(1,ip),
1431 7 bxy1, bxy2, bxy3, bxy4,
1432 8 bxy5, bxy6, bxy7, bxy8,
1433 9 byx1, byx2, byx3, byx4,
1434 a byx5, byx6, byx7, byx8,
1435 b bxz1, bxz2, bxz3, bxz4,
1436 c bxz5, bxz6, bxz7, bxz8,
1437 d bzx1, bzx2, bzx3, bzx4,
1438 e bzx5, bzx6, bzx7, bzx8,
1439 f byz1, byz2, byz3, byz4,
1440 g byz5, byz6, byz7, byz8,
1441 h bzy1, bzy2, bzy3, bzy4,
1442 i bzy5, bzy6, bzy7, bzy8,
1443 j bxx1, bxx2, bxx3, bxx4,
1444 k bxx5, bxx6, bxx7, bxx8,
1445 l byy1, byy2, byy3, byy4,
1446 m byy5, byy6, byy7, byy8,
1447 n bzz1, bzz2, bzz3, bzz4,
1448 o bzz5, bzz6, bzz7, bzz8,
1449 p pxy1, pxy2, pxy3, pxy4,
1450 q pxy5, pxy6, pxy7, pxy8,
1451 r pyx1, pyx2, pyx3, pyx4,
1452 s pyx5, pyx6, pyx7, pyx8,
1453 t pxz1, pxz2, pxz3, pxz4,
1454 u pxz5, pxz6, pxz7, pxz8,
1455 v pzx1, pzx2, pzx3, pzx4,
1456 w pzx5, pzx6, pzx7, pzx8,
1457 x pyz1, pyz2, pyz3, pyz4,
1458 y pyz5, pyz6, pyz7, pyz8,
1459 z pzy1, pzy2, pzy3, pzy4,
1460 1 pzy5, pzy6, pzy7, pzy8,
1461 2 vx1, vx2, vx3, vx4,
1462 3 vx5, vx6, vx7, vx8,
1463 4 vy1, vy2, vy3, vy4,
1464 5 vy5, vy6, vy7, vy8,
1465 6 vz1, vz2, vz3, vz4,
1466 7 vz5, vz6, vz7, vz8,
1467 8 dxx, dxy, dxz, dyx,
1468 9 dyy, dyz, dzx, dzy,
1469 a dzz, d4, d5, d6,
1470 b wxx, wyy, wzz, lbuf%VOL,
1471 c off, lbuf%EINT, gbuf%OFF, dsv,
1472 d icp, fac, sdv, iselect,
1473 e ideg, lbuf%VOL0DP,nel, ismstr,
1474 f jcvt)
1475C
1476 IF (idtmin(1)==3.AND.ismstr == 12.AND.ism12_11==0.AND.jcvt==0) THEN
1477 CALL sordef12(lft,llt,dxx, dyy, dzz,
1478 . d4, d5, d6,
1479 . r11, r21, r31, r12, r22, r32, r13, r23, r33,offg0)
1480 ENDIF
1481 DO i=lft,llt
1482 rhoo(i) = lbuf%RHO(i)
1483 ENDDO
1484 divde(1:nel) = dt1*(dxx(1:nel)+ dyy(1:nel)+ dzz(1:nel))+sdv(1:nel)
1485 CALL srho3(
1486 1 pm, lbuf%VOL, lbuf%RHO, lbuf%EINT,
1487 2 divde, flux(1,nf1),flu1(nf1), voln,
1488 3 dvol, ngl, mxt, off,
1489 4 0, gbuf%TAG22, volp(1,ip), lbuf%VOL0DP,
1490 5 amu, gbuf%OFF, nel, mtn,
1491 6 jale, ismstr, jeul, jlag)
1492C
1493 IF (ismstr == 12.AND.idtmin(1)==3.AND.ism12_11==0.AND.jcvt==0) THEN
1494 CALL sroto12_sig(lft,llt,lbuf%SIG,nel,
1495 . r11, r21, r31, r12, r22, r32, r13, r23, r33,offg0)
1496!! temporary replaced by (the same) SROTO12_SIG() in order to do not affect
1497!! the other multidimensional buffer ARRAYS which are still not modified
1498!! CALL SROTO12(LFT,LLT,LBUF%SIG,
1499!! . R11, R21, R31, R12, R22, R32, R13, R23, R33,OFFG0)
1500 ENDIF ! (ISMSTR == 10.AND.IDTMIN(1)==3)
1501 IF (jcvt == 0) THEN
1502 CALL srota3(
1503 1 lbuf%SIG,s1, s2, s3,
1504 2 s4, s5, s6, wxx,
1505 3 wyy, wzz, nel, mtn,
1506 4 ismstr)
1507C-----------------------------
1508C SMALL STRAIN
1509C-----------------------------
1510c CALL SMALLC3(GBUF%SMSTR,GBUF%OFF,OFF,WXX,WYY,
1511c . WZZ,DXX,DYY,DZZ,LBUF%RHO,RHOO,
1512c . DVOL,VOLN,SDV ,NEL)
1513
1514 ELSE
1515C-----------------------------
1516C EXTRACT STRESSES + SMALL STRAIN
1517C-----------------------------
1518 CALL csmall3(lbuf%SIG,s1,s2,s3,s4,s5,s6,
1519 . gbuf%OFF,off,nel)
1520 ENDIF
1521C
1522C for heat transfert
1523C
1524 IF (jthe < 0 ) THEN
1525 CALL s8ztempel(
1526 . lft,llt,ni,
1527 . a_gauss(ir,nptr),a_gauss(is,npts),a_gauss(it,nptt),
1528 . nc1,nc2,nc3,nc4,nc5,nc6,nc7,nc8,
1529 . temp,tempel)
1530 ENDIF
1531 deltaxi(1:nel) = deltax(1:nel)
1532 IF (fac_nu<one) deltaxi(1:nel) = max(deltaxi(1:nel),nu_sp*deltax(1:nel))
1533C------------------------------------------------------
1534C CALCUL DES CONTRAINTES SUIVANT LOIS CONSTITUTIVES
1535C TIME STEP EST CALCULE ICI DT2T
1536C------------------------------------------------------
1537 IF ((itask==0).AND.(imon_mat==1)) CALL startime(timers,35)
1538c
1539 IF(iboltp /= 0) CALL boltst(
1540 . ip, bpreld, lbuf%SIG,tt ,
1541 . nel ,npt ,sensors%NSENSOR,sensors%SENSOR_TAB,
1542 . iparg(67,ng),iparg(68,ng))
1543c
1544 CALL mmain(timers, output,
1545 1 elbuf_tab, ng, pm, geo,
1546 2 ale_connect, ixs, iparg,
1547 3 v, tf, npf, bufmat,
1548 4 sti, x, dt2t, neltst,
1549 5 ityptst, offset, nel, w,
1550 6 off, ngeo, mxt, ngl,
1551 7 voln, vd2, dvol, deltaxi,
1552 8 vis, qvis, cxx, s1,
1553 9 s2, s3, s4, s5,
1554 a s6, dxx, dyy, dzz,
1555 b d4, d5, d6, wxx,
1556 c wyy, wzz, aj1, aj2,
1557 d aj3, aj4, aj5, aj6,
1558 e vdx, vdy, vdz, muvoid,
1559 f ssp_eq, aire, sigy, et,
1560 g r1_free, lbuf%PLA, r3_free, amu,
1561 h mfxx(1,ip), mfxy(1,ip), mfxz(1,ip), mfyx(1,ip),
1562 i mfyy(1,ip), mfyz(1,ip), mfzx(1,ip), mfzy(1,ip),
1563 j mfzz(1,ip), ipm, gama, bid,
1564 k bid, bid, bid, bid,
1565 l bid, bid, istrain, tempel,
1566 m die, iexpan, ilay, mssa,
1567 n dmels, ir, is, it,
1568 o table, bid, bid, bid,
1569 p bid, iparg(1,ng), igeo, conde,
1570 q itask, nloc_dmg, var_reg(1,ip),mat_elem,
1571 r h3d_strain, jplasol, jsph, sz_r1_free,
1572 t snpc, stf, sbufmat, glob_therm,
1573 u svis, sz_ix, iresp,
1574 . n2d, th_strain, ngroup, tt,
1575 * dt1, ntable, numelq, nummat,
1576 . numgeo, numnod, numels,
1577 . idel7nok, idtmin, maxfunc,
1578 . imon_mat, userl_avail, impl_s,
1579 . idyna, dt, fheat ,sensors)
1580C
1581 IF (ismstr == 12.AND.idtmin(1)==3) THEN
1582 IF (ism12_11==0.AND.jcvt==0) THEN
1583 CALL sroto12_sig(lft,llt,lbuf%SIG,nel,
1584 . r11, r12, r13, r21, r22, r23, r31, r32, r33,offg0)
1585!! temporary replaced by (the same) SROTO12_SIG() in order to do not affect
1586!! the other multidimensional buffer ARRAYS which are still not modified
1587!! CALL SROTO12(LFT,LLT,LBUF%SIG,
1588!! . R11, R12, R13, R21, R22, R23, R31, R32, R33,OFFG0)
1589 IF (istrain == 1) THEN
1590 CALL sordef12(lft,llt,dxx, dxy, dxz,
1591 . d4, d5, d6,
1592 . r11, r12, r13, r21, r22, r23, r31, r32, r33,offg0)
1593 ENDIF
1594 END IF
1595 ENDIF ! (ISMSTR == 10.AND.IDTMIN(1)==3)
1596 IF (istrain == 1)THEN
1597 CALL sstra3(
1598 1 dxx, dyy, dzz, d4,
1599 2 d5, d6, lbuf%STRA,wxx,
1600 3 wyy, wzz, off, nel,
1601 4 jcvt)
1602 ENDIF
1603 IF ((itask==0).AND.(imon_mat==1)) CALL stoptime(timers,35)
1604 IF (isel_v>0) THEN
1605 mx = mxt(lft)
1606 CALL s8e_sig_a(
1607 1 pm(32,mx),pm(22,mx),off, bxy1,
1608 2 bxy2, bxy3, bxy4, bxy5,
1609 3 bxy6, bxy7, bxy8, byx1,
1610 4 byx2, byx3, byx4, byx5,
1611 5 byx6, byx7, byx8, bxz1,
1612 6 bxz2, bxz3, bxz4, bxz5,
1613 7 bxz6, bxz7, bxz8, bzx1,
1614 8 bzx2, bzx3, bzx4, bzx5,
1615 9 bzx6, bzx7, bzx8, byz1,
1616 a byz2, byz3, byz4, byz5,
1617 b byz6, byz7, byz8, bzy1,
1618 c bzy2, bzy3, bzy4, bzy5,
1619 d bzy6, bzy7, bzy8, vx1,
1620 e vx2, vx3, vx4, vx5,
1621 f vx6, vx7, vx8, vy1,
1622 g vy2, vy3, vy4, vy5,
1623 h vy6, vy7, vy8, vz1,
1624 i vz2, vz3, vz4, vz5,
1625 j vz6, vz7, vz8, lbuf%PIJ,
1626 k sig_a, lbuf%EINT,voln, dxx,
1627 l dyy, dzz, lbuf%SIG, s1,
1628 m s2, s3, llt, gbuf%OFF)
1629 END IF
1630 IF (cns2 > zero)
1631 . CALL nsvis_sm12(gbuf%OFF ,cns2,cxx ,voln ,dxx ,
1632 . dyy ,dzz ,d4 ,d5 ,d6 ,
1633 . lbuf%VOL,rho0_1,sti ,nel ,svis )
1634C----------------------------
1635C INTERNAL FORCES
1636C----------------------------
1637 CALL s8efint3(
1638 1 lbuf%SIG, px1(1,ip), px2(1,ip), px3(1,ip),
1639 2 px4(1,ip), py1(1,ip), py2(1,ip), py3(1,ip),
1640 3 py4(1,ip), pz1(1,ip), pz2(1,ip), pz3(1,ip),
1641 4 pz4(1,ip), px5(1,ip), px6(1,ip), px7(1,ip),
1642 5 px8(1,ip), py5(1,ip), py6(1,ip), py7(1,ip),
1643 6 py8(1,ip), pz5(1,ip), pz6(1,ip), pz7(1,ip),
1644 7 pz8(1,ip), bxy1, bxy2, bxy3,
1645 8 bxy4, bxy5, bxy6, bxy7,
1646 9 bxy8, byx1, byx2, byx3,
1647 a byx4, byx5, byx6, byx7,
1648 b byx8, bxz1, bxz2, bxz3,
1649 c bxz4, bxz5, bxz6, bxz7,
1650 d bxz8, bzx1, bzx2, bzx3,
1651 e bzx4, bzx5, bzx6, bzx7,
1652 f bzx8, byz1, byz2, byz3,
1653 g byz4, byz5, byz6, byz7,
1654 h byz8, bzy1, bzy2, bzy3,
1655 i bzy4, bzy5, bzy6, bzy7,
1656 j bzy8, bxx1, bxx2, bxx3,
1657 k bxx4, bxx5, bxx6, bxx7,
1658 l bxx8, byy1, byy2, byy3,
1659 m byy4, byy5, byy6, byy7,
1660 n byy8, bzz1, bzz2, bzz3,
1661 o bzz4, bzz5, bzz6, bzz7,
1662 p bzz8, pxy1, pxy2, pxy3,
1663 q pxy4, pxy5, pxy6, pxy7,
1664 r pxy8, pyx1, pyx2, pyx3,
1665 s pyx4, pyx5, pyx6, pyx7,
1666 t pyx8, pxz1, pxz2, pxz3,
1667 u pxz4, pxz5, pxz6, pxz7,
1668 v pxz8, pzx1, pzx2, pzx3,
1669 w pzx4, pzx5, pzx6, pzx7,
1670 x pzx8, pyz1, pyz2, pyz3,
1671 y pyz4, pyz5, pyz6, pyz7,
1672 z pyz8, pzy1, pzy2, pzy3,
1673 1 pzy4, pzy5, pzy6, pzy7,
1674 2 pzy8, f11, f21, f31,
1675 3 f12, f22, f32, f13,
1676 4 f23, f33, f14, f24,
1677 5 f34, f15, f25, f35,
1678 6 f16, f26, f36, f17,
1679 7 f27, f37, f18, f28,
1680 8 f38, voln, qvis, icp,
1681 9 jfac(1,ip),nel, iselect, ideg,
1682 a sig_a, isel_v, ismstr, svis)
1683 CALL s8efmoy3(
1684 1 lbuf%SIG, voln, qvis, pp,
1685 2 lbuf%EINT, lbuf%RHO, lbuf%QVIS, lbuf%PLA,
1686 3 lbuf%EPSD, gbuf%EPSD, gbuf%SIG, gbuf%EINT,
1687 4 gbuf%RHO, gbuf%QVIS, gbuf%PLA, volg,
1688 5 sti, stin, icp, off,
1689 6 lbuf%VOL, gbuf%VOL, gbuf%G_PLA, gbuf%G_EPSD,
1690 7 lbuf%EINTTH,gbuf%EINTTH,iexpan, nel,
1691 8 conde, conden,svis,glob_therm%NODADT_THERM,
1692 9 gbuf%WPLA, lbuf%WPLA, gbuf%G_WPLA)
1693c-------------------------
1694c Virtual internal forces of regularized non local ddl
1695c--------------------------
1696 IF (inloc > 0) THEN
1697 imat = mxt(lft)
1698 zr = a_gauss(ir,nptr)
1699 zs = a_gauss(is,npts)
1700 zt = a_gauss(it,nptt)
1701 CALL basis8 (zr,zs,zt,h,pr2,ps2,pt2)
1702 CALL s8zfint_reg(
1703 1 nloc_dmg, var_reg(1,ip),nel, gbuf%OFF,
1704 2 voln, nc1, nc2, nc3,
1705 3 nc4, nc5, nc6, nc7,
1706 4 nc8, px1(1,ip), px2(1,ip), px3(1,ip),
1707 5 px4(1,ip), px5(1,ip), px6(1,ip), px7(1,ip),
1708 6 px8(1,ip), py1(1,ip), py2(1,ip), py3(1,ip),
1709 7 py4(1,ip), py5(1,ip), py6(1,ip), py7(1,ip),
1710 8 py8(1,ip), pz1(1,ip), pz2(1,ip), pz3(1,ip),
1711 9 pz4(1,ip), pz5(1,ip), pz6(1,ip), pz7(1,ip),
1712 a pz8(1,ip), imat, h, wi,
1713 b ip, itask, dt2t, gbuf%VOL,
1714 c nft)
1715 ENDIF
1716c
1717 DO i=lft,llt
1718 offg(i)=min(offg(i),off(i))
1719 IF (lbuf%OFF(i)>one .AND. gbuf%OFF(i) == one) THEN
1720 offs(i)=min(lbuf%OFF(i),offs(i))
1721 ioffs =1
1722 END IF
1723 ENDDO
1724C-------------------------
1725c finite element heat transfert
1726C--------------------------
1727C
1728 IF (jthe < 0) THEN
1729 imat = mxt(1)
1730 IF (mat_elem%MAT_PARAM(imat)%HEAT_FLAG == 1) THEN
1731 CALL s8etherm(mat_elem%MAT_PARAM(imat),
1732 1 voln, ni,
1733 2 nc1, nc2, nc3, nc4,
1734 3 nc5, nc6, nc7, nc8,
1735 4 px1(1,ip),px2(1,ip),px3(1,ip),px4(1,ip),
1736 5 py1(1,ip),py2(1,ip),py3(1,ip),py4(1,ip),
1737 6 pz1(1,ip),pz2(1,ip),pz3(1,ip),pz4(1,ip),
1738 7 px5(1,ip),px6(1,ip),px7(1,ip),px8(1,ip),
1739 8 py5(1,ip),py6(1,ip),py7(1,ip),py8(1,ip),
1740 9 pz5(1,ip),pz6(1,ip),pz7(1,ip),pz8(1,ip),
1741 a dt1, temp, tempel, fheat,
1742 b them, gbuf%OFF, lbuf%OFF, partsav,
1743 c iparts, lbuf%VOL, nel,glob_therm%THEACCFACT)
1744 ELSE
1745 CALL s8etherm(mat_elem%MAT_PARAM(imat),
1746 1 voln, ni,
1747 2 nc1, nc2, nc3, nc4,
1748 3 nc5, nc6, nc7, nc8,
1749 4 px1(1,ip),px2(1,ip),px3(1,ip),px4(1,ip),
1750 5 py1(1,ip),py2(1,ip),py3(1,ip),py4(1,ip),
1751 6 pz1(1,ip),pz2(1,ip),pz3(1,ip),pz4(1,ip),
1752 7 px5(1,ip),px6(1,ip),px7(1,ip),px8(1,ip),
1753 8 py5(1,ip),py6(1,ip),py7(1,ip),py8(1,ip),
1754 9 pz5(1,ip),pz6(1,ip),pz7(1,ip),pz8(1,ip),
1755 a dt1, temp, tempel, die,
1756 b them, gbuf%OFF, lbuf%OFF, partsav,
1757 c iparts, lbuf%VOL, nel,glob_therm%THEACCFACT)
1758 END IF
1759!
1760 ENDIF
1761 ENDDO ! IT=1,NPTT
1762 ENDDO ! IS=1,NPTS
1763 ENDDO ! IR=1,NPTR
1764C-----------End integrating points-----
1765c
1766 IF (ioffs == 1) THEN
1767 DO i=lft,llt
1768 IF (offs(i)<=two) gbuf%OFF(i)=offs(i)
1769 END DO
1770c-------------------
1771 DO ir=1,nptr
1772 DO is=1,npts
1773 DO it=1,nptt
1774 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,it)
1775 ip = ir + ( (is-1) + (it-1)*npts )*nptr
1776 DO i=lft,llt
1777 IF (gbuf%OFF(i) > one) lbuf%OFF(i)=gbuf%OFF(i)
1778 END DO
1779 END DO
1780 END DO
1781 END DO
1782 END IF ! IOFFS == 1
1783 IF(icp==1.AND.ismstr/=10.AND.ismstr/=12) THEN
1784 CALL s8zfintp3(
1785 1 pxc1, pxc2, pxc3, pxc4,
1786 2 pyc1, pyc2, pyc3, pyc4,
1787 3 pzc1, pzc2, pzc3, pzc4,
1788 4 f11, f21, f31, f12,
1789 5 f22, f32, f13, f23,
1790 6 f33, f14, f24, f34,
1791 7 f15, f25, f35, f16,
1792 8 f26, f36, f17, f27,
1793 9 f37, f18, f28, f38,
1794 a volg, pp, ideg, nel)
1795 ENDIF
1796 itet = 0
1797 IF (nn_del >0) THEN
1798 CALL sdlenmax(l_max,
1799 1 x1, x2, x3, x4,
1800 2 x5, x6, x7, x8,
1801 3 y1, y2, y3, y4,
1802 4 y5, y6, y7, y8,
1803 5 z1, z2, z3, z4,
1804 6 z5, z6, z7, z8,
1805 7 nel)
1806 CALL sgeodel3(ngl,gbuf%OFF,volg,deltax,gbuf%VOL,geo(1,ngeo(1)),l_max,dt,nel,idel7nok)
1807 END IF
1808C-----------------------------
1809C SMALL STRAIN
1810C-----------------------------
1811 CALL smallb3(gbuf%OFF,offg,nel,ismstr)
1812 CALL smallgeo3(ngl, gbuf%OFF ,volg ,deltax, gbuf%VOL ,itet, nel, ismstr,dt )
1813 IF (ismstr==11.OR.ismstr==12.OR.(jcvt == 0 .AND. ismstr>0)) THEN
1814 CALL s8edefw3(
1815 1 pxc1, pxc2, pxc3, pxc4,
1816 2 pyc1, pyc2, pyc3, pyc4,
1817 3 pzc1, pzc2, pzc3, pzc4,
1818 4 vx1, vx2, vx3, vx4,
1819 5 vx5, vx6, vx7, vx8,
1820 6 vy1, vy2, vy3, vy4,
1821 7 vy5, vy6, vy7, vy8,
1822 8 vz1, vz2, vz3, vz4,
1823 9 vz5, vz6, vz7, vz8,
1824 a wxx0, wyy0, wzz0, nel)
1825 CALL smallg3(
1826 1 gbuf%SMSTR,gbuf%OFF, wxx0, wyy0,
1827 2 wzz0, r11, r12, r13,
1828 3 r21, r22, r23, r31,
1829 4 r32, r33, nel, ismstr,
1830 5 jcvt)
1831 END IF
1832 IF (ismstr == 12.AND.idtmin(1)==3) THEN
1833 ioffs =0
1834 DO i=lft,llt
1835 IF(gbuf%OFF(i)/=offg0(i).AND.abs(gbuf%OFF(i)) > one ) ioffs=1
1836 ENDDO
1837 IF (ioffs == 1) THEN
1838 CALL s8sav12(
1839 1 gbuf%OFF, offg0, gbuf%SMSTR,x,
1840 2 xdp, nc1, nc2, nc3,
1841 3 nc4, nc5, nc6, nc7,
1842 4 nc8, nel, jcvt)
1843 IF (ism12_11>0 .AND. isorth == 0) THEN
1844 CALL s8fupd11t12(elbuf_tab(ng),gbuf%OFF,offg0 ,x ,xdp ,
1845 . nc1 ,nc2 ,nc3 ,nc4 ,nc5 ,nc6 ,nc7 ,nc8, nel )
1846 END IF
1847 DO ir=1,nptr
1848 DO is=1,npts
1849 DO it=1,nptt
1850 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,it)
1851 DO i=lft,llt
1852 IF (abs(gbuf%OFF(i)) > one) lbuf%OFF(i)=gbuf%OFF(i)
1853 END DO
1854 END DO
1855 END DO
1856 END DO
1857 END IF !(IOFFS == 1) THEN
1858 END IF
1859 IF(iint==2.AND.mtn==1.AND.ismstr/=1.AND.ismstr/=11) THEN
1860 DO i=lft,llt
1861 caq=gbuf%RHO(i)*volg(i)**third
1862 fld(i)=fourth*em02*caq*cxx(i)*offg(i)
1863 IF (ismstr==12.AND.gbuf%OFF(i) > one) fld(i)=zero
1864 ENDDO
1865 CALL s8evis3(
1866 1 vz1, vz2, vz3, vz4,
1867 2 vz5, vz6, vz7, vz8,
1868 3 vx1, vx2, vx3, vx4,
1869 4 vx5, vx6, vx7, vx8,
1870 5 vy1, vy2, vy3, vy4,
1871 6 vy5, vy6, vy7, vy8,
1872 7 f31, f11, f21, f32,
1873 8 f12, f22, f33, f13,
1874 9 f23, f34, f14, f24,
1875 a f35, f15, f25, f36,
1876 b f16, f26, f37, f17,
1877 c f27, f38, f18, f28,
1878 d px1h1, px1h2, px1h3, px1h4,
1879 e px2h1, px2h2, px2h3, px2h4,
1880 f px3h1, px3h2, px3h3, px3h4,
1881 g px4h1, px4h2, px4h3, px4h4,
1882 h jt_1, jr_1, js_1, nu0,
1883 i fld, nel)
1884 ENDIF
1885C--------------------------
1886C balances by material
1887C--------------------------
1888 iflag=mod(ncycle,ncpri)
1889 IF(ioutprt>0)THEN
1890 IF(jcvt == 0) THEN
1891 ifvm22 = 0
1892 CALL sbilan(partsav,gbuf%EINT,gbuf%RHO,gbuf%RK,gbuf%VOL,
1893 . vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8,
1894 . vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8,
1895 . vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8,
1896 . volg,iparts,gresav,grth,igrth,gbuf%OFF,
1897 . iexpan,gbuf%EINTTH,gbuf%FILL,gbuf%MOM,nel,ifvm22,
1898 . x1, x2, x3, x4, x5, x6, x7, x8,
1899 . y1, y2, y3, y4, y5, y6, y7, y8,
1900 . z1, z2, z3, z4, z5, z6, z7, z8,
1901 . itask,iparg(1,ng),sensors,gbuf%G_WPLA,gbuf%WPLA)
1902 ELSE
1903 CALL srbilan(partsav,gbuf%EINT,gbuf%RHO,gbuf%RK,gbuf%VOL,
1904 . vgxa, vgya, vgza, vga2, volg,iparts,
1905 . gresav,grth,igrth,gbuf%OFF,iexpan,gbuf%EINTTH,
1906 . gbuf%FILL,xgxa, xgya, xgza,
1907 . xgxa2,xgya2,xgza2,xgxya,xgyza,xgzxa,itask,iparg(1,ng),sensors,
1908 . nel,gbuf%G_WPLA,gbuf%WPLA)
1909 ENDIF
1910 ENDIF
1911C----------------------------
1912C CONVECTE --> GLOBAL.
1913C----------------------------
1914 IF (jcvt /= 0) THEN
1915 CALL srrota3(
1916 1 r11, r21, r31, r12,
1917 2 r22, r32, r13, r23,
1918 3 r33, f11, f12, f13,
1919 4 f14, f15, f16, f17,
1920 5 f18, f21, f22, f23,
1921 6 f24, f25, f26, f27,
1922 7 f28, f31, f32, f33,
1923 8 f34, f35, f36, f37,
1924 9 f38, nel)
1925 ENDIF
1926C----------------------------
1927C distortion control
1928C----------------------------
1929 IF (isctl > 0) THEN
1930 CALL sdistor_ini(
1931 1 nel ,sti_c ,npropm ,nummat ,
1932 2 ismstr ,mxt ,istab ,pm ,
1933 3 gbuf%SIG ,gbuf%RHO ,cxx ,offg ,
1934 4 gbuf%OFF ,ll ,voln ,fld ,
1935 5 cns2 ,fqmax )
1936! x,v sould be in global sys
1937 CALL s8get_x3( ! velocity need to be in global sys if hourglass is calculated incrementally
1938 . nc1, nc2, nc3, nc4,
1939 . nc5, nc6, nc7, nc8,
1940 . x1, x2, x3, x4,
1941 . x5, x6, x7, x8,
1942 . y1, y2, y3, y4,
1943 . y5, y6, y7, y8,
1944 . z1, z2, z3, z4,
1945 . z5, z6, z7, z8,
1946 . x, xdp, numnod, nel )
1947! -------get initial conf in global sys
1948 IF (jcvt > 0) THEN
1949 DO i=1,nel
1950 vx1(i)=v(1,nc1(i))
1951 vy1(i)=v(2,nc1(i))
1952 vz1(i)=v(3,nc1(i))
1953 vx2(i)=v(1,nc2(i))
1954 vy2(i)=v(2,nc2(i))
1955 vz2(i)=v(3,nc2(i))
1956 vx3(i)=v(1,nc3(i))
1957 vy3(i)=v(2,nc3(i))
1958 vz3(i)=v(3,nc3(i))
1959 vx4(i)=v(1,nc4(i))
1960 vy4(i)=v(2,nc4(i))
1961 vz4(i)=v(3,nc4(i))
1962 vx5(i)=v(1,nc5(i))
1963 vy5(i)=v(2,nc5(i))
1964 vz5(i)=v(3,nc5(i))
1965 vx6(i)=v(1,nc6(i))
1966 vy6(i)=v(2,nc6(i))
1967 vz6(i)=v(3,nc6(i))
1968 vx7(i)=v(1,nc7(i))
1969 vy7(i)=v(2,nc7(i))
1970 vz7(i)=v(3,nc7(i))
1971 vx8(i)=v(1,nc8(i))
1972 vy8(i)=v(2,nc8(i))
1973 vz8(i)=v(3,nc8(i))
1974 ENDDO
1975 END IF !(JCVT > 0) THEN
1976 CALL s8for_distor(
1977 . x1, x2, x3, x4,
1978 . x5, x6, x7, x8,
1979 . y1, y2, y3, y4,
1980 . y5, y6, y7, y8,
1981 . z1, z2, z3, z4,
1982 . z5, z6, z7, z8,
1983 . vx1, vx2, vx3, vx4,
1984 . vx5, vx6, vx7, vx8,
1985 . vy1, vy2, vy3, vy4,
1986 . vy5, vy6, vy7, vy8,
1987 . vz1, vz2, vz3, vz4,
1988 . vz5, vz6, vz7, vz8,
1989 . f11, f12, f13, f14,
1990 . f15, f16, f17, f18,
1991 . f21, f22, f23, f24,
1992 . f25, f26, f27, f28,
1993 . f31, f32, f33, f34,
1994 . f35, f36, f37, f38,
1995 . sti, sti_c, fld , cns2,
1996 . ll , istab, fqmax, nel,
1997 . gbuf%EINT_DISTOR, dt1)
1998 ENDIF
1999C----------------------------
2000 IF(nfilsol/=0) CALL sfillopt(
2001 1 gbuf%FILL,stin, f11, f21,
2002 2 f31, f12, f22, f32,
2003 3 f13, f23, f33, f14,
2004 4 f24, f34, f15, f25,
2005 5 f35, f16, f26, f36,
2006 6 f17, f27, f37, f18,
2007 7 f28, f38, nel)
2008C----------------------------
2009 IF(iparit == 0)THEN
2010 CALL scumu3(
2011 1 gbuf%OFF,a, nc1, nc2,
2012 2 nc3, nc4, nc5, nc6,
2013 3 nc7, nc8, stifn, stin,
2014 4 f11, f21, f31, f12,
2015 5 f22, f32, f13, f23,
2016 6 f33, f14, f24, f34,
2017 7 f15, f25, f35, f16,
2018 8 f26, f36, f17, f27,
2019 9 f37, f18, f28, f38,
2020 a nvc, bid, bid, bid,
2021 b bid, bid, bid, bid,
2022 c bid, bid, bid, bid,
2023 d bid, bid, bid, bid,
2024 e bid, bid, bid, bid,
2025 f bid, bid, bid, bid,
2026 g bid, bid, bid, bid,
2027 h them, fthe, condn, conden,
2028 i nel, jthe, isrot, ipartsph,glob_therm%NODADT_THERM)
2029 ELSE
2030 CALL scumu3p(
2031 1 gbuf%OFF,stin, fsky, fsky,
2032 2 iads, f11, f21, f31,
2033 3 f12, f22, f32, f13,
2034 4 f23, f33, f14, f24,
2035 5 f34, f15, f25, f35,
2036 6 f16, f26, f36, f17,
2037 7 f27, f37, f18, f28,
2038 8 f38, nc1, nc2, nc3,
2039 9 nc4, nc5, nc6, nc7,
2040 a nc8, bid, bid, bid,
2041 b bid, bid, bid, bid,
2042 c bid, bid, bid, bid,
2043 d bid, bid, bid, bid,
2044 e bid, bid, bid, bid,
2045 f bid, bid, bid, bid,
2046 g bid, bid, bid, bid,
2047 h them, fthesky, condnsky,conden,
2048 i nel, nft, jthe, isrot,
2049 j ipartsph,glob_therm%NODADT_THERM)
2050 ENDIF
2051C-----------
2052 IF (ALLOCATED(var_reg)) DEALLOCATE(var_reg)
2053 RETURN
2054 END
subroutine boltst(ip, bpreld, sig, tt, nel, npt, nsensor, sensor_tab, fun_id, sens_id)
Definition boltst.F:39
subroutine csmall3(sig, s1, s2, s3, s4, s5, s6, offg, off, nel)
Definition csmall3.F:36
subroutine degenes8(ixs, idege, nel)
Definition degenes8.F:39
subroutine jacob_f0(det0, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, div0, nel)
Definition jacob_f0.F:43
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21
subroutine mmain(pm, elbuf_str, ix, nix, x, geo, iparg, nel, skew, bufmat, ipart, ipartel, nummat, matparam, imat, ipm, ngl, pid, npf, tf, mfxx, mfxy, mfxz, mfyx, mfyy, mfyz, mfzx, mfzy, mfzz, rx, ry, rz, sx, sy, sz, gama, voln, dvol, s1, s2, s3, s4, s5, s6, dxx, dyy, dzz, d4, d5, d6, wxx, wyy, wzz)
Definition mmain.F:43
for(i8=*sizetab-1;i8 >=0;i8--)
subroutine nsvis_sm12(offg, mu, ssp, vol, d1, d2, d3, d4, d5, d6, vol0, rho0, sti, nel, svis)
Definition nsvis_sm12.F:33
subroutine s8e_sigp(elbuf_tab, sigp, nel)
Definition s8e_sig.F:35
subroutine s8e_sig_a(c1, g, off, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, pij, sig_a, eint, vol, d1, d2, d3, sig, s1, s2, s3, nel, offg)
Definition s8e_sig_a.F:51
subroutine s8edefo3(px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, bxx1, bxx2, bxx3, bxx4, bxx5, bxx6, bxx7, bxx8, byy1, byy2, byy3, byy4, byy5, byy6, byy7, byy8, bzz1, bzz2, bzz3, bzz4, bzz5, bzz6, bzz7, bzz8, pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, d4, d5, d6, wxx, wyy, wzz, volo, off, eint, offs, dsv, icp, fac, sdv, i_sh, idege, vol0dp, nel, ismstr, jcvt)
Definition s8edefo3.F:79
subroutine s8edefoc3(pxc1, pxc2, pxc3, pxc4, pyc1, pyc2, pyc3, pyc4, pzc1, pzc2, pzc3, pzc4, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, dvca, nel)
Definition s8edefoc3.F:40
subroutine s8edefot12(px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, bxx1, bxx2, bxx3, bxx4, bxx5, bxx6, bxx7, bxx8, byy1, byy2, byy3, byy4, byy5, byy6, byy7, byy8, bzz1, bzz2, bzz3, bzz4, bzz5, bzz6, bzz7, bzz8, pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, r11, r12, r13, r21, r22, r23, r31, r32, r33, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, icp, det0, jfac, nu, idege, offg, isel_v, i_sh, nel, ismstr, jcvt, mtn, div0)
Definition s8edefot12.F:79
subroutine s8edefot3(px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, bxx1, bxx2, bxx3, bxx4, bxx5, bxx6, bxx7, bxx8, byy1, byy2, byy3, byy4, byy5, byy6, byy7, byy8, bzz1, bzz2, bzz3, bzz4, bzz5, bzz6, bzz7, bzz8, pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, icp, det0, jfac, nu, i_sh, idege, dxx_a, dyy_a, dzz_a, offg, nel, ismstr, mtn, div0)
Definition s8edefot3.F:79
subroutine s8edefw3(px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, wxx, wyy, wzz, nel)
Definition s8edefw3.F:41
subroutine s8ederi_2(offg, off, vol, ksi, eta, zeta, wi, px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, pxc1, pxc2, pxc3, pxc4, pyc1, pyc2, pyc3, pyc4, pzc1, pzc2, pzc3, pzc4, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, bxx1, bxx2, bxx3, bxx4, bxx5, bxx6, bxx7, bxx8, byy1, byy2, byy3, byy4, byy5, byy6, byy7, byy8, bzz1, bzz2, bzz3, bzz4, bzz5, bzz6, bzz7, bzz8, aj4, aj5, aj6, aj7, aj8, aj9, rx, ry, rz, sx, sy, sz, smax, deltax, icp, ideg, nu, volp, nel)
Definition s8ederi_2.F:66
subroutine s8ederic3(off, det, ngl, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px1h1, px1h2, px1h3, px1h4, px2h1, px2h2, px2h3, px2h4, px3h1, px3h2, px3h3, px3h4, px4h1, px4h2, px4h3, px4h4, hx, hy, hz, jr_1, js_1, jt_1, aj1, aj2, aj3, aj4, aj5, aj6, aj7, aj8, aj9, smax, sav, offg, nel, ismstr, jlag)
Definition s8ederic3.F:55
subroutine s8edericm3(det, ngl, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, hx, hy, hz, aj1, aj2, aj3, aj4, aj5, aj6, aj7, aj8, aj9, smax, sav, offg, nnega, index, nel, ismstr)
Definition s8edericm3.F:49
subroutine s8ederict3(off, det, ngl, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, hx, hy, hz, aj1, aj2, aj3, aj4, aj5, aj6, aj7, aj8, aj9, smax, nel)
Definition s8ederict3.F:49
subroutine s8edericto3(off, det, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, jac_i, nel)
Definition s8edericto3.F:33
subroutine s8ederig3(px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, aji1, aji2, aji3, aji4, aji5, aji6, aji7, aji8, aji9, pr, ps, pt, nel)
Definition s8ederig3.F:40
subroutine s8ederipr3(offg, voldp, ngl, wi, aj1, aj2, aj3, aj4, aj5, aj6, aj7, aj8, aj9, aji1, aji2, aji3, aji4, aji5, aji6, aji7, aji8, aji9, nnega, index, ipt, nel)
Definition s8ederipr3.F:39
subroutine s8efint3(sig, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px5, px6, px7, px8, py5, py6, py7, py8, pz5, pz6, pz7, pz8, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, bxx1, bxx2, bxx3, bxx4, bxx5, bxx6, bxx7, bxx8, byy1, byy2, byy3, byy4, byy5, byy6, byy7, byy8, bzz1, bzz2, bzz3, bzz4, bzz5, bzz6, bzz7, bzz8, pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, vol, qvis, icp, jfac, nel, i_sh, idege, sig_a, isel_v, ismstr, svis)
Definition s8efint3.F:74
subroutine s8efmoy3(sigor, vol, qvis, pp, eint, rho, q, defp, epsd, epsdm, sigm, eintm, rhom, qm, defpm, volg, sti, stin, icp, off, vol0, vol0g, g_pla, g_epsd, eintth, eintthm, iexpan, nel, conde, conden, svis, nodadt_therm, g_wpla, l_wpla, g_wpla_flag)
Definition s8efmoy3.F:40
subroutine s8eforc3(timers, output, elbuf_tab, ng, pm, geo, ixs, x, a, v, ms, w, flux, flu1, veul, fv, ale_connect, iparg, tf, npf, bufmat, partsav, nloc_dmg, dt2t, neltst, ityptst, stifn, fsky, iads, offset, eani, iparts, icp, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nel, nvc, ipm, itask, istrain, temp, fthe, fthesky, iexpan, gresav, grth, igrth, mssa, dmels, table, igeo, xdp, voln, condn, condnsky, d, sensors, ioutprt, mat_elem, h3d_strain, dt, snpc, stf, sbufmat, svis, nsvois, idtmins, iresp, maxfunc, userl_avail, glob_therm, impl_s, idyna)
Definition s8eforc3.F:148
subroutine s8egetbij(bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, pij, nel)
Definition s8egetbij.F:36
subroutine s8ejacit3(voldp, ksi, eta, zeta, wi, ajp1, ajp2, ajp3, ajp4, ajp5, ajp6, ajp7, ajp8, ajp9, aji1, aji2, aji3, aji4, aji5, aji6, aji7, aji8, aji9, jac_i, nel, ismstr)
Definition s8ejacit3.F:36
subroutine s8eprst_ini(pr, ps, pt)
Definition s8eprst_ini.F:30
subroutine s8eselecsht(nptr, npts, nptt, nnpt, mfxx, mfxy, mfxz, mfyx, mfyy, mfyz, mfzx, mfzy, mfzz, bxx, byy, bzz, bxy, byz, bxz, i_sh, offg, nel, ismstr)
Definition s8eselecsht.F:35
subroutine s8etherm(mat_param, vol, ni, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px5, px6, px7, px8, py5, py6, py7, py8, pz5, pz6, pz7, pz8, dt1, tempnc, tel, heat, fphi, offg, off, partsav, iparts, vol0, nel, theaccfact)
Definition s8etherm.F:45
subroutine s8etotsh10(mb, bxx, byy, bzz, bxy, byz, bxz, nel)
Definition s8etotsh10.F:31
subroutine s8evis3(vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, px1h1, px1h2, px1h3, px1h4, px2h1, px2h2, px2h3, px2h4, px3h1, px3h2, px3h3, px3h4, px4h1, px4h2, px4h3, px4h4, jr_1, js_1, jt_1, nu, fcl, nel)
Definition s8evis3.F:47
subroutine s8for_distor(x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, f11, f12, f13, f14, f15, f16, f17, f18, f21, f22, f23, f24, f25, f26, f27, f28, f31, f32, f33, f34, f35, f36, f37, f38, sti, sti_c, fld, mu, ll, istab, fqmax, nel, e_distor, dt1)
subroutine s8fupd11t12(elbuf_tab, offg, offg0, x, xdp, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, nel)
Definition s8fupd11t12.F:35
subroutine s8get_x3(nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, x, xdp, numnod, nel)
Definition s8get_x3.F:42
subroutine s8sav12(offg, offg0, sav, x, xdp, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, nel, jcvt)
Definition s8sav12.F:36
subroutine s8sav3(offg, sav, xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8, yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8, zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8, nel)
Definition s8sav3.F:41
subroutine s8savsr3(offg, sav, xd, yd, zd, nel)
Definition s8savsr3.F:32
subroutine s8zderims3(voldp, ksi, eta, zeta, wi, hx, hy, hz, cj1, cj2, cj3, cj4, cj5, cj6, cj7, cj8, cj9, jac1, jac2, jac3, jac4, jac5, jac6, jac7, jac8, jac9, jaci1, jaci2, jaci3, jaci4, jaci5, jaci6, jaci7, jaci8, jaci9, nnega, index)
Definition s8zderims3.F:42
subroutine s8zfint_reg(nloc_dmg, var_reg, nel, offg, vol, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, imat, h, wi, ip, itask, dt2t, vol0, nft)
Definition s8zfint_reg.F:45
subroutine s8zfintp3(px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, vol, pp, idege, nel)
Definition s8zfintp3.F:42
subroutine s8zsigp3(lft, llt, sig, e0, defp, fac, g_pla, nel)
Definition s8zsigp3.F:37
subroutine s8ztempel(lft, llt, ni, ksi, eta, zeta, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, temp, tempel)
Definition s8ztempel.F:34
subroutine s8zzero3(fx1, fy1, fz1, fx2, fy2, fz2, fx3, fy3, fz3, fx4, fy4, fz4, fx5, fy5, fz5, fx6, fy6, fz6, fx7, fy7, fz7, fx8, fy8, fz8, sigm, eintm, rhom, qm, defpm, epsdm, stin, pp, g_pla, g_epsd, iexpan, eintthm, nel, conden)
Definition s8zzero3.F:42
subroutine sbilan(partsav, eint, rho, rk, vol, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, vnew, iparts, gresav, grth, igrth, off, iexpan, eintth, fill, mom, nel, ifvm22, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, itask, iparg, sensors, g_wpla, wpla)
Definition sbilan.F:47
subroutine scoor_cp2sp(x0, y0, z0, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, nel)
Definition scoor_cp2sp.F:39
subroutine scumu3(offg, e, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, stifn, sti, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nvc, ar, fr_wave, fr_wav, mx1, my1, mz1, mx2, my2, mz2, mx3, my3, mz3, mx4, my4, mz4, mx5, my5, mz5, mx6, my6, mz6, mx7, my7, mz7, mx8, my8, mz8, them, fthe, condn, conde, nel, jthe, isrot, ipartsph, nodadt_therm)
Definition scumu3.F:55
subroutine scumu3p(offg, sti, fsky, fskyv, iads, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, ar, fr_wave, fr_wav, mx1, my1, mz1, mx2, my2, mz2, mx3, my3, mz3, mx4, my4, mz4, mx5, my5, mz5, mx6, my6, mz6, mx7, my7, mz7, mx8, my8, mz8, them, fthesky, condnsky, conde, nel, nft, jthe, isrot, ipartsph, nodadt_therm)
Definition scumu3p.F:56
subroutine sdlen_dege(volg, lat, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, ixs, idege, nel)
Definition sdlen_dege.F:47
subroutine sdlen_sm11(volg, deltax, smax, idege, nel)
Definition sdlen_sm11.F:32
subroutine sdlenmax(lm_max, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, nel)
Definition sdlenmax.F:40
subroutine sfillopt(fill, sti, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nel)
Definition sfillopt.F:43
subroutine sgcoor3(time, npe, x, ixs, x0, y0, z0, vx0, vy0, vz0, sav, d, off, off0, nel, xdp, mtn, ismstr)
Definition sgcoor3.F:40
subroutine sgeodel3(ngl, offg, volg, deltax, volg0, geo, l_max, dt, nel, idel7nok)
Definition sgeodel3.F:42
subroutine smallb3(offg, off, nel, ismstr)
Definition smallb3.F:45
subroutine smallg3(sav, offg, wxx, wyy, wzz, r11, r12, r13, r21, r22, r23, r31, r32, r33, nel, ismstr, jcvt)
Definition smallg3.F:36
subroutine smallgeo3(ngl, offg, volg, deltax, volg0, itet, nel, ismstr, dt)
Definition smallgeo3.F:41
subroutine sordef12(jft, jlt, dxx, dyy, dzz, d4, d5, d6, g1x, g1y, g1z, g2x, g2y, g2z, g3x, g3y, g3z, off)
Definition sordef12.F:35
subroutine sordeft12(jft, jlt, mxx, mxy, mxz, myx, myy, myz, mzx, mzy, mzz, g1x, g1y, g1z, g2x, g2y, g2z, g3x, g3y, g3z, off)
Definition sordeft12.F:35
subroutine sordeftb(jft, jlt, mxx, myy, mzz, g1x, g1y, g1z, g2x, g2y, g2z, g3x, g3y, g3z)
Definition sordeftb.F:30
subroutine srbilan(partsav, eint, rho, rk, vol, vxa, vya, vza, va2, vnew, iparts, gresav, grth, igrth, off, iexpan, eintth, fill, xx, yy, zz, xx2, yy2, zz2, xy, yz, zx, itask, iparg, sensors, nel, g_wpla, wpla)
Definition srbilan.F:45
subroutine srcoor12(off, x, xdp, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, r11, r12, r13, r21, r22, r23, r31, r32, r33, nel, jhbe)
Definition srcoor12.F:39
subroutine sordeft3(nel, mxx, mxy, mxz, myx, myy, myz, mzx, mzy, mzz, g1x, g1y, g1z, g2x, g2y, g2z, g3x, g3y, g3z)
Definition srefsta3.F:744
subroutine srota3(sig, s1, s2, s3, s4, s5, s6, wxx, wyy, wzz, nel, mtn, ismstr)
Definition srota3.F:43
subroutine sroto12_sig(jft, jlt, sig, nel, g1x, g1y, g1z, g2x, g2y, g2z, g3x, g3y, g3z, off)
Definition sroto12_sig.F:33
subroutine srrotadp(r11, r12, r13, r21, r22, r23, r31, r32, r33, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, nel)
Definition srrotadp.F:41
subroutine sstra3(dxx, dyy, dzz, d4, d5, d6, strain, wxx, wyy, wzz, off, nel, jcvt)
Definition sstra3.F:47
subroutine basis8(r, s, t, h, pr, ps, pt)
Definition basis8.F:30
subroutine s8egetpij(px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, pij, nel)
Definition s8zderi3.F:1142
subroutine s8eselecsh(nptr, npts, nptt, nnpt, px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, p0xy1, p0xy2, p0xy3, p0xy4, p0xy5, p0xy6, p0xy7, p0xy8, p0yx1, p0yx2, p0yx3, p0yx4, p0yx5, p0yx6, p0yx7, p0yx8, p0xz1, p0xz2, p0xz3, p0xz4, p0xz5, p0xz6, p0xz7, p0xz8, p0zx1, p0zx2, p0zx3, p0zx4, p0zx5, p0zx6, p0zx7, p0zx8, p0yz1, p0yz2, p0yz3, p0yz4, p0yz5, p0yz6, p0yz7, p0yz8, p0zy1, p0zy2, p0zy3, p0zy4, p0zy5, p0zy6, p0zy7, p0zy8)
Definition s8zderi3.F:1213
subroutine s8ederish2(pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, p0xy1, p0xy2, p0xy3, p0xy4, p0xy5, p0xy6, p0xy7, p0xy8, p0yx1, p0yx2, p0yx3, p0yx4, p0yx5, p0yx6, p0yx7, p0yx8, p0xz1, p0xz2, p0xz3, p0xz4, p0xz5, p0xz6, p0xz7, p0xz8, p0zx1, p0zx2, p0zx3, p0zx4, p0zx5, p0zx6, p0zx7, p0zx8, p0yz1, p0yz2, p0yz3, p0yz4, p0yz5, p0yz6, p0yz7, p0yz8, p0zy1, p0zy2, p0zy3, p0zy4, p0zy5, p0zy6, p0zy7, p0zy8)
Definition s8zderi3.F:1361
subroutine s8ejacip3(hx, hy, hz, cj1, cj2, cj3, cj4, cj5, cj6, cj7, cj8, cj9, jac1, jac2, jac3, jac4, jac5, jac6, jac7, jac8, jac9)
Definition s8zderi3.F:2180
subroutine s8ederi_bij(px1, px2, px3, px4, px5, px6, px7, px8, py1, py2, py3, py4, py5, py6, py7, py8, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, pxc1, pxc2, pxc3, pxc4, pyc1, pyc2, pyc3, pyc4, pzc1, pzc2, pzc3, pzc4, pxy1, pxy2, pxy3, pxy4, pxy5, pxy6, pxy7, pxy8, pyx1, pyx2, pyx3, pyx4, pyx5, pyx6, pyx7, pyx8, pxz1, pxz2, pxz3, pxz4, pxz5, pxz6, pxz7, pxz8, pzx1, pzx2, pzx3, pzx4, pzx5, pzx6, pzx7, pzx8, pyz1, pyz2, pyz3, pyz4, pyz5, pyz6, pyz7, pyz8, pzy1, pzy2, pzy3, pzy4, pzy5, pzy6, pzy7, pzy8, bxy1, bxy2, bxy3, bxy4, bxy5, bxy6, bxy7, bxy8, byx1, byx2, byx3, byx4, byx5, byx6, byx7, byx8, bxz1, bxz2, bxz3, bxz4, bxz5, bxz6, bxz7, bxz8, bzx1, bzx2, bzx3, bzx4, bzx5, bzx6, bzx7, bzx8, byz1, byz2, byz3, byz4, byz5, byz6, byz7, byz8, bzy1, bzy2, bzy3, bzy4, bzy5, bzy6, bzy7, bzy8, nu)
Definition s8zderi3.F:1492
subroutine scoor3(x, xrefs, ixs, geo, mxt, ngeo, ngl, ix1, ix2, ix3, ix4, ix5, ix6, ix7, ix8, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z, f1x, f1y, f1z, f2x, f2y, f2z, temp0, temp, nintemp, xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8, yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8, zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8)
Definition scoor3.F:52
subroutine srcoor3(x, xrefs, ixs, geo, mxt, ngeo, ngl, jhbe, ix1, ix2, ix3, ix4, ix5, ix6, ix7, ix8, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z, f1x, f1y, f1z, f2x, f2y, f2z, temp0, temp, nintemp, xd1, xd2, xd3, xd4, xd5, xd6, xd7, xd8, yd1, yd2, yd3, yd4, yd5, yd6, yd7, yd8, zd1, zd2, zd3, zd4, zd5, zd6, zd7, zd8)
Definition srcoor3.F:52
subroutine srho3(pm, volo, rhon, eint, dxx, dyy, dzz, voln, dvol, mat)
Definition srho3.F:31
subroutine srrota3(r11, r12, r13, r21, r22, r23, r31, r32, r33, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8)
Definition srrota3.F:33
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
Definition message.F:895
subroutine startime(event, itask)
Definition timer.F:93
subroutine stoptime(event, itask)
Definition timer.F:135