33 2 DNIDR ,DNIDS ,DNIDT ,DXDR ,DYDR ,DZDR ,
34 3 DXDS ,DYDS ,DZDS ,DXDT ,DYDT ,DZDT ,
35 4 XX ,YY ,ZZ ,PX ,PY ,PZ ,
36 5 VOL ,DELTAX,KXX ,NI ,VOLG ,UL ,VOLDP)
41#include "implicit_f.inc"
53 . dnidr(16),dnids(16),dnidt(16),dxdr(*),dydr(*),dzdr(*),
54 . dxds(*),dyds(*),dzds(*),dxdt(*),dydt(*),dzdt(*),
55 . drdx(mvsiz), dsdx(mvsiz), dtdx(mvsiz),
56 . drdy(mvsiz), dsdy(mvsiz), dtdy(mvsiz),
57 . drdz(mvsiz), dsdz(mvsiz), dtdz(mvsiz),
58 . xx(mvsiz,16),yy(mvsiz,16),zz(mvsiz,16),
59 . px(mvsiz,16),py(mvsiz,16),pz(mvsiz,16),
60 . vol(*),off(*),deltax(*),volg(mvsiz) ,
61 . kxx(mvsiz,16),ni(16),ul(mvsiz,16)
67#include "vect01_c.inc"
73 . D, AA, BB, DET(MVSIZ),R9 ,R13 ,S9 ,S10 ,S11 ,S12 ,T10 ,T14
246 dxdr(i) = dnidr(1)*xx(i,1) + dnidr(2)*xx(i,2) + dnidr(3)*xx(i,3)
248 + + dnidr(7)*xx(i,7) + dnidr(8)*xx(i,8)
249 + + dnidr(9)*(xx(i,9) - xx(i,11)) + dnidr(10)*xx(i,10)
250 + + dnidr(12)*xx(i,12) + dnidr(13)*(xx(i,13) - xx(i,15))
251 + + dnidr(14)*xx(i,14) + dnidr(16)*xx(i,16)
253 dxds(i) = dnids(1)*xx(i,1) + dnids(2)*xx(i,2) + dnids
254 + + dnids(4)*xx(i,4) + dnids(5)*xx(i,5) + dnids(6)*xx(i,6)
255 + + dnids(7)*xx(i,7) + dnids(8)*xx(i,8)
256 + + dnids(9)* (xx(i,9) - xx(i,13))
257 + + dnids(10)*(xx(i,10) - xx(i,14))
258 + + dnids(11)*(xx(i,11) - xx(i,15))
259 + + dnids(12)*(xx(i,12) - xx(i,16))
261 dxdt(i) = dnidt(1)*xx(i,1) + dnidt(2)*xx(i,2) + dnidt(3)*xx(i,3)
262 + + dnidt(4)*xx(i,4) + dnidt(5)*xx(i,5) + dnidt(6)*xx(i,6)
263 + + dnidt(7)*xx(i,7) + dnidt(8)*xx(i,8)
264 + + dnidt(9)*xx(i,9) + dnidt(10)*(xx(i,10) - xx(i,12))
265 + + dnidt(11)*xx(i,11) + dnidt(13)*xx(i,13)
266 + + dnidt(14)*(xx(i,14) - xx(i,16)) + dnidt(15)*xx(i,15)
270 dydr(i) = dnidr(1)*yy(i,1) + dnidr(2)*yy(i,2) + dnidr(3)*yy
271 + + dnidr(4)*yy(i,4) + dnidr(5)*yy(i,5) + dnidr(6)*yy(i,6)
272 + + dnidr(7)*yy(i,7) + dnidr(8)*yy(i,8)
273 + + dnidr(9)*(yy(i,9) - yy(i,11)) + dnidr(10)*yy(i,10)
274 + + dnidr(12)*yy(i,12) + dnidr(13)*(yy(i,13) - yy(i,15))
275 + + dnidr(14)*yy(i,14) + dnidr(16)*yy(i,16)
277 dyds(i) = dnids(1)*yy(i,1) + dnids(2)*yy(i
278 + + dnids(4)*yy(i,4) + dnids(5)*yy(i,5) + dnids(6)*yy(i,6)
279 + + dnids(7)*yy(i,7) + dnids(8)*yy(i,8)
280 + + dnids(9)* (yy(i,9) - yy(i,13))
281 + + dnids(10)*(yy(i,10) - yy(i,14))
282 + + dnids(11)*(yy(i,11) - yy(i,15))
283 + + dnids(12)*(yy(i,12) - yy(i,16))
285 dydt(i) = dnidt(1)*yy(i,1) + dnidt(2)*yy(i,2) + dnidt(3)*yy(i,3)
286 + + dnidt(4)*yy(i,4) + dnidt(5)*yy(i,5) + dnidt(6)*yy(i,6)
287 + + dnidt(7)*yy(i,7) + dnidt(8)*yy(i,8)
288 + + dnidt(9)*yy(i,9) + dnidt(10)*(yy(i,10) - yy(i,12))
289 + + dnidt(11)*yy(i,11) + dnidt(13)*yy(i,13)
290 + + dnidt(14)*(yy(i,14) - yy(i,16)) + dnidt(15)*yy(i,15)
294 dzdr(i) = dnidr(1)*zz(i,1) + dnidr(2)*zz(i,2) + dnidr(3)*zz(i,3)
295 + + dnidr(4)*zz(i,4) + dnidr(5)*zz(i,5) + dnidr(6)*zz(i,6)
296 + + dnidr(7)*zz(i,7) + dnidr(8)*zz(i,8)
297 + + dnidr(9)*(zz(i,9) - zz(i,11)) + dnidr(10)*zz(i,10)
298 + + dnidr(12)*zz(i,12) + dnidr(13)*(zz(i,13) - zz(i,15))
299 + + dnidr(14)*zz(i,14) + dnidr(16)*zz(i,16)
301 dzds(i) = dnids(1)*zz(i,1) + dnids(2)*zz(i,2) + dnids(3)*zz(i,3)
302 + + dnids(4)*zz(i,4) + dnids(5)*zz(i,5) + dnids(6)*zz(i,6)
303 + + dnids(7)*zz(i,7) + dnids(8)*zz(i,8)
304 + + dnids(9)* (zz(i,9) - zz(i,13))
305 + + dnids(10)*(zz(i,10) - zz(i,14))
306 + + dnids(11)*(zz(i,11) - zz(i,15))
307 + + dnids(12)*(zz(i,12) - zz(i,16))
309 dzdt(i) = dnidt(1)*zz(i,1) + dnidt(2)*zz(i,2) + dnidt(3)*zz(i,3)
310 + + dnidt(4)*zz(i,4) + dnidt(5)*zz(i,5) + dnidt(6)*zz(i,6)
311 + + dnidt(7)*zz(i,7) + dnidt(8)*zz(i,8)
312 + + dnidt(9)*zz(i,9) + dnidt(10)*(zz(i,10) - zz(i,12))
313 + + dnidt(11)*zz(i,11) + dnidt(13)*zz(i,13)
314 + + dnidt(14)*(zz(i,14) - zz(i,16)) + dnidt(15)*zz(i,15)
325 drdx(i)=dyds(i)*dzdt(i)-dzds(i)*dydt(i)
326 drdy(i)=dzds(i)*dxdt(i)-dxds(i)*dzdt(i)
327 drdz(i)=dxds(i)*dydt(i)-dyds(i)*dxdt(i)
329 dsdz(i)=dxdt(i)*dydr(i)-dydt(i)*dxdr(i)
330 dsdy(i)=dzdt(i)*dxdr(i)-dxdt(i)*dzdr(i)
331 dsdx(i)=dydt(i)*dzdr(i)-dzdt(i)*dydr(i)
333 dtdx(i)=dydr(i)*dzds(i)-dzdr(i)*dyds(i)
334 dtdy(i)=dzdr(i)*dxds(i)-dxdr(i)*dzds(i)
335 dtdz(i)=dxdr(i)*dyds(i)-dydr(i)*dxds(i)
337 detdp = dxdr(i) * drdx(i)
338 . + dydr(i) * drdy(i)
339 . + dzdr(i) * drdz(i)
378 px(i,1) = dnidr(1)*drdx(i) + dnids(1)*dsdx(i) + dnidt(1)*dtdx(i)
379 px(i,2) = dnidr(2)*drdx(i) + dnids(2)*dsdx(i) + dnidt(2)*dtdx(i)
380 px(i,3) = dnidr(3)*drdx(i) + dnids(3)*dsdx(i) + dnidt(3)*dtdx(i)
381 px(i,4) = dnidr(4)*drdx(i) + dnids(4)*dsdx(i) + dnidt(4)*dtdx(i)
382 px(i,5) = dnidr(5)*drdx(i) + dnids(5)*dsdx(i) + dnidt(5)*dtdx(i)
383 px(i,6) = dnidr(6)*drdx(i) + dnids(6)*dsdx(i) + dnidt(6)*dtdx(i)
384 px(i,7) = dnidr(7)*drdx(i) + dnids(7)*dsdx(i) + dnidt(7)*dtdx(i)
385 px(i,8) = dnidr(8)*drdx(i) + dnids(8)*dsdx(i) + dnidt(8)*dtdx(i)
386 r9 = dnidr(9) *drdx(i)
387 r13 = dnidr(13)*drdx(i)
388 s9 = dnids(9) *dsdx(i)
389 s10 = dnids(10)*dsdx(i)
390 s11 = dnids(11)*dsdx(i)
391 s12 = dnids(12)*dsdx(i)
392 t10 = dnidt(10)*dtdx(i
393 t14 = dnidt(14)*dtdx(i)
394 px(i,9) = r9 + s9 + dnidt(9)*dtdx(i)
395 px(i,10)= dnidr(10)*drdx(i)+ s10 + t10
396 px(i,11)=-r9 + s11 + dnidt(11)*dtdx(i)
397 px(i,12)= dnidr(12)*drdx(i)+ s12 - t10
398 px(i,13)= r13 - s9 + dnidt(13)*dtdx
399 px(i,14)= dnidr(14)*drdx(i)- s10 + t14
400 px(i,15)=-r13 - s11 + dnidt(15)*dtdx(i)
401 px(i,16)= dnidr(16)*drdx(i)- s12 - t14
403 py(i,1) = dnidr(1)*drdy(i) + dnids(1)*dsdy(i) + dnidt(1)*dtdy(i)
404 pz(i,1) = dnidr(1)*drdz(i) + dnids(1)*dsdz(i) + dnidt(1)*dtdz(i)
405 py(i,2) = dnidr(2)*drdy(i) + dnids(2)*dsdy(i) + dnidt(2)*dtdy(i)
406 py(i,3) = dnidr(3)*drdy(i) + dnids(3)*dsdy(i) + dnidt(3)*dtdy(i)
407 py(i,4) = dnidr(4)*drdy(i) + dnids(4)*dsdy(i) + dnidt(4)*dtdy(i)
408 py(i,5) = dnidr(5)*drdy(i) + dnids(5)*dsdy(i) + dnidt(5)*dtdy(i)
409 py(i,6) = dnidr(6)*drdy(i) + dnids(6)*dsdy(i) + dnidt(6)*dtdy(i)
410 py(i,7) = dnidr(7)*drdy(i) + dnids(7)*dsdy(i) + dnidt(7)*dtdy(i)
411 py(i,8) = dnidr(8)*drdy(i) + dnids(8)*dsdy(i) + dnidt(8)*dtdy(i)
412 r9 = dnidr(9) *drdy(i)
413 r13 = dnidr(13)*drdy(i)
414 s9 = dnids(9) *dsdy(i)
415 s10 = dnids(10)*dsdy(i)
416 s11 = dnids(11)*dsdy(i)
417 s12 = dnids(12)*dsdy(i)
418 t10 = dnidt(10)*dtdy(i)
419 t14 = dnidt(14)*dtdy(i)
420 py(i,9) = r9 + s9 + dnidt(9)*dtdy(i)
421 py(i,10)= dnidr(10)*drdy(i)+ s10 + t10
422 py(i,11)=-r9 + s11 + dnidt(11)*dtdy(i)
423 py(i,12)= dnidr(12)*drdy(i)+ s12 - t10
424 py(i,13)= r13 - s9 + dnidt(13)*dtdy(i)
425 py(i,14)= dnidr(14)*drdy(i)- s10 + t14
426 py(i,15)=-r13 - s11 + dnidt(15)*dtdy(i)
427 py(i,16)= dnidr(16)*drdy(i)- s12 - t14
429 pz(i,1) = dnidr(1)*drdz(i) + dnids(1)*dsdz(i) + dnidt(1)*dtdz(i)
430 pz(i,2) = dnidr(2)*drdz(i) + dnids(2)*dsdz(i) + dnidt(2)*dtdz(i)
431 pz(i,3) = dnidr(3)*drdz(i) + dnids(3)*dsdz(i) + dnidt(3)*dtdz(i)
432 pz(i,4) = dnidr(4)*drdz(i) + dnids(4)*dsdz(i) + dnidt(4)*dtdz(i)
433 pz(i,5) = dnidr(5)*drdz(i) + dnids(5)*dsdz(i) + dnidt(5)*dtdz(i)
434 pz(i,6) = dnidr(6)*drdz(i) + dnids(6)*dsdz(i) + dnidt(6)*dtdz(i)
435 pz(i,7) = dnidr(7)*drdz(i) + dnids(7)*dsdz(i) + dnidt(7)*dtdz(i)
436 pz(i,8) = dnidr(8)*drdz(i) + dnids(8)*dsdz(i) + dnidt(8)*dtdz(i)
437 r9 = dnidr(9) *drdz(i)
438 r13 = dnidr(13)*drdz(i)
439 s9 = dnids(9) *dsdz(i)
440 s10 = dnids(10)*dsdz(i)
441 s11 = dnids(11)*dsdz(i)
442 s12 = dnids(12)*dsdz(i)
443 t10 = dnidt(10)*dtdz(i)
444 t14 = dnidt(14)*dtdz(i)
445 pz(i,9) = r9 + s9 + dnidt(9)*dtdz(i)
446 pz(i,10)= dnidr(10)*drdz(i)+ s10 + t10
447 pz(i,11)=-r9 + s11 + dnidt(11)*dtdz(i)
448 pz(i,12)= dnidr(12)*drdz(i)+ s12 - t10
449 pz(i,13)= r13 - s9 + dnidt(13)*dtdz(i)
450 pz(i,14)= dnidr(14)*drdz(i)- s10 + t14
451 pz(i,15)=-r13 - s11 + dnidt(15)*dtdz(i)
452 pz(i,16)= dnidr(16)*drdz(i)- s12 - t14
461 . (px(i,n)*px(i,n) + py(i,n)*py(i,n) + pz(i,n)*pz(i,n))
462 ul(i,n) = ul(i,n) + kxx(i,n)
466 volg(i) =volg(i) + vol(i)
482 1000
FORMAT(/
' ZERO OR NEGATIVE VOLUME : 3D-ELEMENT NB',i10/)
483 2000
FORMAT(/
' ZERO OR NEGATIVE VOLUME : DELETE 3D-ELEMENT NB',i10/)