36 . XX, YY, ZZ, PX,PY,PZ, NX,
37 . RX, RY, RZ, SX, SY, SZ , TX, TY, TZ,VOLU,VOLN,
44#include "implicit_f.inc"
52#include
"vect01_c.inc"
58 . xx(mvsiz,10), yy(mvsiz,10), zz(mvsiz,10)
61 . rx(*), ry(*), rz(*), sx(*), sy(*), sz(*), tx(*),ty(*),tz(*),
62 . nx(mvsiz,10,5),volu(*),voln(*),volg(mvsiz),
63 . px(mvsiz,10,5),py(mvsiz,10,5),pz(mvsiz,10,5)
64 TYPE(elbuf_struct_),
TARGET :: ELBUF_STR
68 INTEGER NGL(*), I,IP,N,K1,K2,K3,K4,K5,K6,K7,K8,K9,K10,
72 . xa(mvsiz,10),ya(mvsiz,10),za(mvsiz,10),
73 . xb(mvsiz,10),yb(mvsiz,10),zb(mvsiz,10),
77 TYPE(l_bufel_) ,
POINTER :: LBUF
79 . 2, 4, 3, 1, 9,10, 6, 5, 8, 7,
80 . 4, 1, 3, 2, 8, 7,10, 9, 5, 6,
81 . 1, 4, 2, 3, 8, 9, 5, 7,10, 6,
82 . 1, 2, 3, 4, 5, 6, 7, 8, 9,10/
103 rx(i) = xx(i,1) - xx(i,4)
104 ry(i) = yy(i,1) - yy(i,4)
105 rz(i) = zz(i,1) - zz(i,4)
106 sx(i) = xx(i,2) - xx(i,4)
107 sy(i) = yy(i,2) - yy(i,4)
108 sz(i) = zz(i,2) - zz(i,4)
109 tx(i) = xx(i,3) - xx(i,4)
110 ty(i) = yy(i,3) - yy(i,4)
111 tz(i) = zz(i,3) - zz(i,4)
117 xa(i,n) = a4m1*xx(i,n)
118 ya(i,n) = a4m1*yy(i,n)
119 za(i,n) = a4m1*zz(i,n)
121 xb(i,n) = b4m1*xx(i,n)
122 yb(i,n) = b4m1*yy(i,n)
123 zb(i,n) = b4m1*zz(i,n)
150 lbuf => elbuf_str%BUFLY(1)%LBUF(ip,1,1)
152 . xb(1,k1),xb(1,k2),xb(1,k3),xa(1,k4),xb(1,k5),
153 . xb(1,k6),xb(1,k7),xb(1,k8),xb(1,k9),xb(1,k10),
154 . xa(1,k8),xa(1,k9),xa(1,k10),
155 . yb(1,k1),yb(1,k2),yb(1,k3),ya(1,k4),yb(1,k5),
156 . yb(1,k6),yb(1,k7),yb(1,k8),yb(1,k9),yb(1,k10),
157 . ya(1,k8),ya(1,k9),ya(1,k10),
158 . zb(1,k1),zb(1,k2),zb(1,k3),za(1,k4),zb(1,k5
159 . zb(1,k6),zb(1,k7),zb(1,k8),zb(1,k9),zb(1,k10),
160 . za(1,k8),za(1,k9),za(1,k10),
161 . px(1,k1,ip) ,px(1,k2,ip),px(1,k3,ip),px(1,k4,ip),px(1,k5,ip),
162 . px(1,k6,ip) ,px(1,k7,ip),px(1,k8,ip),px(1,k9,ip),px(1,k10,ip),
163 . py(1,k1,ip) ,py(1,k2,ip),py(1,k3,ip),py(1,k4,ip),py(1,k5,ip),
164 . py(1,k6,ip) ,py(1,k7,ip),py(1,k8,ip),py(1,k9,ip),py(1,k10,ip),
165 . pz(1,k1,ip) ,pz(1,k2,ip),pz(1,k3,ip),pz(1,k4,ip),pz(1,k5,ip),
166 . pz(1,k6,ip) ,pz(1,k7,ip),pz(1,k8,ip),pz(1,k9,ip),pz(1,k10,ip),
167 . nx(1,k1,ip) ,nx(1,k2,ip),nx(1,k3,ip),nx(1,k4,ip),nx(1,k5,ip),
168 . nx(1,k6,ip) ,nx(1,k7,ip),nx(1,k8,ip),nx(1,k9,ip),nx(1,k10,ip),
169 . vol(1,ip) ,lbuf%VOL0DP)
192 lbuf => elbuf_str%BUFLY(1)%LBUF(npt,1,1)
194 . xa(1,k1),xa(1,k2),xa(1,k3),xa(1,k4),xx(1,k5),
195 . xx(1,k6),xx(1,k7),xx(1,k8),xx(1,k9),xx(1,k10),
196 . xx(1,k8),xx(1,k9),xx(1,k10),
197 . ya(1,k1),ya(1,k2),ya(1,k3),ya(1,k4),yy(1,k5),
198 . yy(1,k6),yy(1,k7),yy(1,k8),yy(1,k9),yy(1,k10),
199 . yy(1,k8),yy(1,k9),yy(1,k10),
200 . za(1,k1),za(1,k2),za(1,k3),za(1,k4),zz(1,k5),
201 . zz(1,k6),zz(1,k7),zz(1,k8),zz(1,k9),zz(1,k10),
202 . zz(1,k8),zz(1,k9),zz(1,k10),
203 . px(1,k1,ip) ,px(1,k2,ip),px(1,k3,ip),px(1,k4,ip),px(1,k5,ip),
204 . px(1,k6,ip) ,px(1,k7,ip),px(1,k8,ip),px(1,k9,ip),px(1,k10,ip),
205 . py(1,k1,ip) ,py(1,k2,ip),py(1,k3,ip),py(1,k4,ip),py(1,k5,ip),
206 . py(1,k6,ip) ,py(1,k7,ip),py(1,k8,ip),py(1,k9,ip),py(1,k10,ip),
207 . pz(1,k1,ip) ,pz(1,k2,ip),pz(1,k3,ip),pz(1,k4,ip),pz(1,k5,ip),
208 . pz(1,k6,ip) ,pz(1,k7,ip),pz(1,k8,ip),pz(1,k9,ip),pz(1,k10,ip),
209 . nx(1,k1,ip) ,nx(1,k2,ip),nx(1,k3,ip),nx(1,k4,ip),nx(1,k5,ip),
210 . nx(1,k6,ip) ,nx(1,k7,ip),nx(1,k8,ip),nx(1,k9,ip),nx(1,k10,ip),
211 . vol(1,ip) ,lbuf%VOL0DP)
214 IF (ismstr==10.OR.ismstr==12)
THEN
216 lbuf => elbuf_str%BUFLY(1)%LBUF(ip,1,1)
217 CALL s10pijsav(px(1,1,ip),py(1,1,ip),pz(1,1,ip),lbuf%PIJ,llt)
228 IF(ip<=4.AND.vol(i,ip)<=zero)
THEN
233 volg(i) =volg(i) + vol(i,ip)
241 . anmode=aninfo_blind_1,
263 . X1B,X2B,X3B,X4A,X5B,X6B,X7B,X8B,X9B,X10B,X8A,X9A,X10A,
264 . Y1B,Y2B,Y3B,Y4A,Y5B,Y6B,Y7B,Y8B,Y9B,Y10B,Y8A,Y9A,Y10A,
265 . Z1B,Z2B,Z3B,Z4A,Z5B,Z6B,Z7B,Z8B,Z9B,Z10B,Z8A,Z9A,Z10A,
266 . PX1,PX2,PX3,PX4,PX5,PX6,PX7,PX8,PX9,PX10,
267 . PY1,PY2,PY3,PY4,PY5,PY6,PY7,PY8,PY9,PY10,
268 . PZ1,PZ2,PZ3,PZ4,PZ5,PZ6,PZ7,PZ8,PZ9,PZ10,
269 . NX1,NX2,NX3,NX4,NX5,NX6,NX7,NX8,NX9,NX10,
274#include "implicit_f.inc"
278#include "mvsiz_p.inc"
284 . x1b(mvsiz),x2b(mvsiz),x3b(mvsiz),x4a(mvsiz),x5b(mvsiz),
285 . x6b(mvsiz),x7b(mvsiz),x8b(mvsiz),x9b(mvsiz),x10b(mvsiz),
286 . x8a(mvsiz),x9a(mvsiz),x10a(mvsiz),
287 . y1b(mvsiz),y2b(mvsiz),y3b(mvsiz),y4a(mvsiz),y5b(mvsiz),
288 . y6b(mvsiz),y7b(mvsiz),y8b(mvsiz),y9b(mvsiz),y10b(mvsiz),
289 . y8a(mvsiz),y9a(mvsiz),y10a(mvsiz),
290 . z1b(mvsiz),z2b(mvsiz),z3b(mvsiz),z4a(mvsiz),z5b(mvsiz),
291 . z6b(mvsiz),z7b(mvsiz),z8b(mvsiz),z9b(mvsiz),z10b(mvsiz),
292 . z8a(mvsiz),z9a(mvsiz),z10a(mvsiz),voldp(*)
294 . px1(mvsiz),px2(mvsiz),px3(mvsiz),px4(mvsiz),px5(mvsiz),
295 . px6(mvsiz),px7(mvsiz),px8(mvsiz),px9(mvsiz),px10(mvsiz),
296 . py1(mvsiz),py2(mvsiz),py3(mvsiz),py4(mvsiz),py5(mvsiz),
297 . py6(mvsiz),py7(mvsiz),py8(mvsiz),py9(mvsiz),py10(mvsiz),
298 . pz1(mvsiz),pz2(mvsiz),pz3(mvsiz),pz4(mvsiz),pz5(mvsiz),
299 . pz6(mvsiz),pz7(mvsiz),pz8(mvsiz),pz9(mvsiz),pz10(mvsiz),
300 . nx1(mvsiz),nx2(mvsiz),nx3(mvsiz),nx4(mvsiz),nx5(mvsiz),
301 . nx6(mvsiz),nx7(mvsiz),nx8(mvsiz),nx9(mvsiz),nx10(mvsiz),
302 . vol(mvsiz),alph,beta,w
306#include "vect01_c.inc"
316 . D,A4MB4,A4,B4,BB,AB,B2,
317 . DXDR,DXDS,DXDT,DYDR,DYDS,DYDT,DZDR,,DZDT
320 . DRDX(MVSIZ), DSDX(MVSIZ), DTDX(MVSIZ),
321 . drdy(mvsiz), dsdy(mvsiz), dtdy(mvsiz),
322 . drdz(mvsiz), dsdz(mvsiz), dtdz(mvsiz),
329 aa = (two*alph - one)*alph
330 bb = (two*beta - one)*beta
348 aa = x5b(i) + x6b(i) + x7b(i)
349 . - x4a(i) - x8b(i) - x9b(i) - x10b(i)
350 dxdr = x1b(i) +x8a(i) - x6b(i) + aa
351 dxds = x2b(i) +x9a(i) - x7b(i) + aa
352 dxdt = x3b(i) +x10a(i)- x5b(i) + aa
354 aa = y5b(i) + y6b(i) + y7b(i)
355 . - y4a(i) - y8b(i) - y9b(i) - y10b(i)
356 dydr = y1b(i) +y8a(i) - y6b(i) + aa
357 dyds = y2b(i) +y9a(i) - y7b(i) + aa
358 dydt = y3b(i) +y10a(i)- y5b(i) + aa
360 aa = z5b(i) + z6b(i) + z7b(i)
361 . - z4a(i) - z8b(i) - z9b(i) - z10b(i)
362 dzdr = z1b(i) +z8a(i) - z6b(i) + aa
363 dzds = z2b(i) +z9a(i) - z7b(i) + aa
364 dzdt = z3b(i) +z10a(i)- z5b(i) + aa
366 drdx(i)=dyds*dzdt-dzds*dydt
367 dsdx(i)=dydt*dzdr-dzdt*dydr
368 dtdx(i)=dydr*dzds-dzdr*dyds
370 drdy(i)=dzds*dxdt-dxds*dzdt
371 dsdy(i)=dzdt*dxdr-dxdt*dzdr
372 dtdy(i)=dzdr*dxds-dxdr*dzds
374 drdz(i)=dxds*dydt-dyds*dxdt
375 dsdz(i)=dxdt*dydr-dydt*dxdr
376 dtdz(i)=dxdr*dyds-dydr*dxds
378 det(i) = dxdr * drdx(i)
381 voldp(i) = w * det(i) * one_over_6
421 d = one/
max(em30,det(i))
429 px1(i) = b4m1 * drdx(i)
430 py1(i) = b4m1 * drdy(i)
431 pz1(i) = b4m1 * drdz(i)
433 px2(i) = b4m1 * dsdx(i)
434 py2(i) = b4m1 * dsdy(i)
435 pz2(i) = b4m1 * dsdz(i)
437 px3(i) = b4m1 * dtdx(i)
438 py3(i) = b4m1 * dtdy(i)
439 pz3(i) = b4m1 * dtdz(i)
441 px4(i) =-a4m1 * (drdx(i)+dsdx(i)+dtdx(i))
442 py4(i) =-a4m1 * (drdy(i)+dsdy(i)+dtdy(i))
443 pz4(i) =-a4m1 * (drdz(i)+dsdz(i)+dtdz(i))
445 px5(i) = b4 * (drdx(i)+dsdx(i))
446 py5(i) = b4 * (drdy(i)+dsdy(i))
447 pz5(i) = b4 * (drdz(i)+dsdz(i))
449 px6(i) = b4 * (dsdx(i)+dtdx(i))
450 py6(i) = b4 * (dsdy(i)+dtdy(i))
451 pz6(i) = b4 * (dsdz(i)+dtdz(i))
453 px7(i) = b4 * (dtdx(i)+drdx(i))
454 py7(i) = b4 * (dtdy(i)+drdy(i))
455 pz7(i) = b4 * (dtdz(i)+drdz(i))
457 px8(i) = a4mb4 * drdx(i) - px6(i)
458 py8(i) = a4mb4 * drdy(i) - py6(i)
459 pz8(i) = a4mb4 * drdz(i) - pz6(i)
461 px9(i) = a4mb4 * dsdx(i) - px7(i)
463 pz9(i) = a4mb4 * dsdz(i) - pz7(i)
465 px10(i)= a4mb4 * dtdx(i) - px5(i)
466 py10(i)= a4mb4 * dtdy(i) - py5(i)
subroutine inirig_mat(ixc, ixs, ixtg, ixs10, x, v, pm, geo, ms, in, ptg, msc, mss, mstg, inc, intg, thkc, thkt, partsav, iparts, ipartc, ipartt, veul, dtelem, ihbe, isolnod, nvc, i8mi, msnf, mssf, igeo, etnod, nshnod, stc, sttg, wma, sh4tree, sh3tree, mcp, mcpc, temp, mcps, mssx, mcpsx, ins, stifn, stifr, connec, irig_node, numel, nindx, xrefc, xreftg, xrefs, mssa, sh3trim, isubstack, bufmat, ipm, stack, rnoise, strc, strtg, perturb, nel, group_param, igtyp, defaults, glob_therm)
subroutine initia(iparg, elbuf, ms, in, v, x, ixs, ixq, ixc, ixt, ixp, ixr, detonators, geo, pm, rby, npby, lpby, npc, npts, pld, veul, ale_connectivity, skew, fill, ipart, itab, sensors, skvol, ixtg, thk, nloc_dmg, group_param_tab, glob_therm, igrnod, igrsurf, bufsf, vr, bufmat, xlas, las, dtelem, mss, msq, msc, mst, msp, msr, mstg, ptg, inc, nod2eltg, knod2eltg, inp, inr, intg, index, itri, kxx, ixx, xelemwa, iwa, nod2elq, knod2elq, nod2els, knod2els, kxsp, ixsp, nod2sp, ispcond, icode, iskew, iskn, ispsym, xframe, isptag, spbuf, mssx, nsigi, npbyl, lpbyl, rbyl, msnf, mssf, nsigsh, igeo, ipm, nsigs, nsigsph, vns, vnsx, stc, stt, stp, str, sttg, stur, bns, bnsx, volnod, bvolnod, etnod, nshnod, stifint, fxbdep, fxbvit, fxbacc, fxbipm, fxbrpm, fxbelm, fxbsig, fxbmod, ins, ptshel, ptsh3n, ptsol, ptquad, wma, ptsph, fxbnod, mbufel, mdepl, fxani, numel, nsigrs, sh4tree, sh3tree, mcp, temp, imerge2, iadmerge2, slnrbm, nslnrbm, rmstifn, rmstifr, ms_layer, zi_layer, itag, itagel, mcpc, mcptg, xrefc, xreftg, xrefs, mssa, msrt, irbe2, lrbe2, inivol, kvol, nbsubmat, ixs10, ixs16, ixs20, totaddmas, ipmas, stifn, msz2, itagn, sitage, itage, ixr_kj, elbuf_tab, nom_opt, ptr_nopt_rbe2, ptr_nopt_adm, ptr_nopt_fun, sol2sph, irst, sh3trim, xfem_tab, kxig3d, ixig3d, msig3d, knot, nctrlmax, wige, stack, rnoise, drape, sh4ang, sh3ang, geo_stack, igeo_stack, stifintr, strc, strp, strr, strtg, perturb, itagnd, nativ_sms, iloadp, facload, ptspri, nsigbeam, ptbeam, nsigtruss, pttruss, multi_fvm, sigi, sigsh, sigsp, sigsph, sigrs, sigbeam, sigtruss, strsglob, straglob, orthoglob, isigsh, iyldini, ksigsh3, fail_ini, iusolyld, iuser, iddlevel, inimap1d, inimap2d, func2d, fvm_inivel, tagprt_sms, igrbric, igrquad, igrsh4n, igrsh3n, igrpart, totmas, knotlocpc, knotlocel, vnige, bnige, fxbglm, fxbcpm, fxbcps, fxblm, fxbfls, fxbdls, fxb_matrix, fxb_matrix_add, fxb_last_adress, ptr_nopt_fxb, r_skew, knod2el1d, nod2el1d, ebcs_tab, rby_iniaxis, alea, knod2elc, nod2elc, dr, slrbody, drapeg, ipari, intbuf_tab, interfaces, mat_param, npreload_a, preload_a, fail_fractal, fail_brokmann, defaults, ndamp_freq_range, dampr, ibeam_vector, rbeam_vector, ikine)
subroutine s10jacob(alph, beta, w, x1b, x2b, x3b, x4a, x5b, x6b, x7b, x8b, x9b, x10b, x8a, x9a, x10a, y1b, y2b, y3b, y4a, y5b, y6b, y7b, y8b, y9b, y10b, y8a, y9a, y10a, z1b, z2b, z3b, z4a, z5b, z6b, z7b, z8b, z9b, z10b, z8a, z9a, z10a, px1, px2, px3, px4, px5, px6, px7, px8, px9, px10, py1, py2, py3, py4, py5, py6, py7, py8, py9, py10, pz1, pz2, pz3, pz4, pz5, pz6, pz7, pz8, pz9, pz10, nx1, nx2, nx3, nx4, nx5, nx6, nx7, nx8, nx9, nx10, vol, voldp)