31 . JFT ,JLT ,NFT ,IXC ,OFF ,IADC ,
32 . F11 ,F21 ,F31 ,F12 ,F22 ,F32 ,
33 . F13 ,F23 ,F33 ,F14 ,F24 ,F34 ,
34 . M11 ,M21 ,M31 ,M12 ,M22 ,M32 ,
35 . M13 ,M23 ,M33 ,M14 ,M24 ,M34 ,
36 . STI ,STIR ,FSKY ,ELCUTC ,IADC_CRK,IEL_CRK ,
37 . ILEV ,INOD_CRK,OFFG ,EINT ,PARTSAV ,IPARTC ,
44#include "implicit_f.inc"
50#include "com_xfem1.inc"
54 INTEGER IADC(4,*),IADC_CRK(4,*),IXC(NIXC,*),IEL_CRK(*),
55 . ELCUTC(2,*),INOD_CRK(*),IPARTC(*)
56 INTEGER JFT,JLT,NFT,IXFEM,ILEV,ILAY
58 . FSKY(8,LSKY),OFF(*),OFFG(*),
59 . F11(*),F21(*),F31(*),F12(*),F22(*),F32(*),
60 . F13(*),F23(*),F33(*),F14(*),F24(*),F34(*),
61 . M11(*),M21(*),M31(*),M12(*),M22(*),M32(*),
62 . m13(*),m23(*),m33(*),m14(*),m24(*),m34(*),
63 . sti(*),stir(*),eint(jlt,2),partsav(npsav,*)
68 INTEGER I,K,KK,ELCRK,ELCUT,ENR,IOFF
73 IF (off(i) == zero .AND. offg(i) > zero) ioff=1
76 numelcrk = numelcrk + 1
80 IF (off(i) < one) offg(i) = off(i)
81 off_l =
min(off_l,offg(i))
84 IF (off_l <= zero)
THEN
86 IF (off(i) <= zero)
THEN
118 elcrk = iel_crk(i+nft)
123 kk = iadc_crk(1,elcrk)
124 crksky(ilev)%FSKY(1,kk) = -f11(i)*areap
125 crksky(ilev)%FSKY(2,kk) = -f21(i)*areap
126 crksky(ilev)%FSKY(3,kk) = -f31(i)*areap
127 crksky(ilev)%FSKY(4,kk) = -m11(i)*areap
128 crksky(ilev)%FSKY(5,kk) = -m21(i)*areap
129 crksky(ilev)%FSKY(6,kk) = -m31(i)*areap
130 crksky(ilev)%FSKY(7,kk) = sti(i)
131 crksky(ilev)%FSKY(8,kk) = stir(i)
133 kk = iadc_crk(2,elcrk)
134 crksky(ilev)%FSKY(1,kk) = -f12(i)*areap
135 crksky(ilev)%FSKY(2,kk) = -f22(i)*areap
136 crksky(ilev)%FSKY(3,kk) = -f32(i)*areap
137 crksky(ilev)%FSKY(4,kk) = -m12(i)*areap
138 crksky(ilev)%FSKY(5,kk) = -m22(i)*areap
139 crksky(ilev)%FSKY(6,kk) = -m32(i)*areap
140 crksky(ilev)%FSKY(7,kk) = sti(i)
141 crksky(ilev)%FSKY(8,kk) = stir(i)
143 kk = iadc_crk(3,elcrk)
144 crksky(ilev)%FSKY(1,kk) = -f13(i)*areap
145 crksky(ilev)%FSKY(2,kk) = -f23(i)*areap
146 crksky(ilev)%FSKY(3,kk) = -f33(i)*areap
147 crksky(ilev)%FSKY(4,kk) = -m13(i)*areap
148 crksky(ilev)%FSKY(5,kk) = -m23(i)*areap
149 crksky(ilev)%FSKY(6,kk) = -m33(i)*areap
150 crksky(ilev)%FSKY(7,kk) = sti(i)
151 crksky(ilev)%FSKY(8,kk) = stir(i)
153 kk = iadc_crk(4,elcrk)
154 crksky(ilev)%FSKY(1,kk) = -f14(i)*areap
155 crksky(ilev)%FSKY(2,kk) = -f24(i)*areap
156 crksky(ilev)%FSKY(3,kk) = -f34(i)*areap
157 crksky(ilev)%FSKY(4,kk) = -m14(i)*areap
158 crksky(ilev)%FSKY(5,kk) = -m24(i)*areap
159 crksky(ilev)%FSKY(6,kk) = -m34(i)*areap
160 crksky(ilev)%FSKY(7,kk) = sti(i)
161 crksky(ilev)%FSKY(8,kk) = stir(i)
166 elcrk = iel_crk(i+nft)
168 IF (elcut == 0) cycle
173 kk = iadc_crk(1,elcrk)
177 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
178 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
179 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
180 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
181 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
182 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
184 crksky(ilev)%FSKY(1,kk) = zero
185 crksky(ilev)%FSKY(2,kk) = zero
186 crksky(ilev)%FSKY(3,kk) = zero
187 crksky(ilev)%FSKY(4,kk) = zero
188 crksky(ilev)%FSKY(5,kk) = zero
189 crksky(ilev)%FSKY(6,kk) = zero
195 kk = iadc_crk(2,elcrk)
199 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
200 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
201 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
202 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
203 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
204 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
206 crksky(ilev)%FSKY(1,kk) = zero
207 crksky(ilev)%FSKY(2,kk) = zero
208 crksky(ilev)%FSKY(3,kk) = zero
209 crksky(ilev)%FSKY(4,kk) = zero
210 crksky(ilev)%FSKY(5,kk) = zero
211 crksky(ilev)%FSKY(6,kk) = zero
217 kk = iadc_crk(3,elcrk)
221 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
222 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
223 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
224 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
225 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
226 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
228 crksky(ilev)%FSKY(1,kk) = zero
229 crksky(ilev)%FSKY(2,kk) = zero
230 crksky(ilev)%FSKY(3,kk) = zero
231 crksky(ilev)%FSKY(4,kk) = zero
232 crksky(ilev)%FSKY(5,kk) = zero
233 crksky(ilev)%FSKY(6,kk) = zero
239 kk = iadc_crk(4,elcrk)
243 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
244 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
245 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
246 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
247 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
248 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
250 crksky(ilev)%FSKY(1,kk) = zero
251 crksky(ilev)%FSKY(2,kk) = zero
252 crksky(ilev)%FSKY(3,kk) = zero
253 crksky(ilev)%FSKY(4,kk) = zero
254 crksky(ilev)%FSKY(5,kk) = zero
255 crksky(ilev)%FSKY(6,kk) = zero
270 . JFT ,JLT ,NFT ,IXC ,OFF ,IADC ,
271 . F11 ,F21 ,F31 ,F12 ,F22 ,F32 ,
272 . F13 ,F23 ,F33 ,F14 ,F24 ,F34 ,
273 . M11 ,M21 ,M31 ,M12 ,M22 ,M32 ,
274 . M13 ,M23 ,M33 ,M14 ,M24 ,M34 ,
275 . STI ,STIR ,FSKY ,ELCUTC,IADC_CRK,IEL_CRK,
276 . ILEV ,INOD_CRK,FAC,OFFG ,EINT ,PARTSAV,
277 . IPARTC,ILAY ,CRKSKY )
283#include "implicit_f.inc"
287#include "param_c.inc"
288#include "parit_c.inc"
289#include "com_xfem1.inc"
293 INTEGER JFT,JLT,NFT,IADC(4,*),IADC_CRK(4,*),IXC(NIXC,*),
294 . IEL_CRK(*),ILEV,ELCUTC(2,*),INOD_CRK(*),IPARTC(*),
297 . fsky(8,lsky),off(*),
298 . f11(*),f21(*),f31(*),f12(*),f22(*),f32(*),
299 . f13(*),f23(*),f33(*),f14(*),f24(*),f34(*),
300 . m11(*),m21(*),m31(*),m12(*),m22(*),m32(*),
301 . m13(*),m23(*),m33(*),m14(*),m24(*),m34(*),
302 . sti(*),stir(*),fac(2,*),offg(*),eint(jlt,2),partsav(npsav,*)
307 INTEGER I,K,KK,ELCRK,ELCUT,ENR,IOFF
312 IF (off(i) == zero .AND. offg(i) > zero) ioff=1
315 numelcrk = numelcrk + 1
319 IF (off(i) < one) offg(i) = off(i)
320 off_l =
min(off_l,offg(i))
323 IF (off_l <= zero)
THEN
325 IF (off(i) <= zero)
THEN
357 elcrk = iel_crk(i+nft)
362 kk = iadc_crk(1,elcrk)
363 crksky(ilev)%FSKY(1,kk) = -f11(i)*areap
364 crksky(ilev)%FSKY(2,kk) = -f21(i)*areap
365 crksky(ilev)%FSKY(3,kk) = -f31(i)*areap
366 crksky(ilev)%FSKY(4,kk) = -m11(i)*areap
367 crksky(ilev)%FSKY(5,kk) = -m21(i)*areap
368 crksky(ilev)%FSKY(6,kk) = -m31(i)*areap
369 crksky(ilev)%FSKY(7,kk) = sti(i) *fac(1,i)
370 crksky(ilev)%FSKY(8,kk) = stir(i)*fac(1,i)
372 kk = iadc_crk(2,elcrk)
373 crksky(ilev)%FSKY(1,kk) = -f12(i)*areap
374 crksky(ilev)%FSKY(2,kk) = -f22(i)*areap
375 crksky(ilev)%FSKY(3,kk) = -f32(i)*areap
376 crksky(ilev)%FSKY(4,kk) = -m12(i)*areap
377 crksky(ilev)%FSKY(5,kk) = -m22(i)*areap
378 crksky(ilev)%FSKY(6,kk) = -m32(i)*areap
379 crksky(ilev)%FSKY(7,kk) = sti(i) *fac(2,i)
380 crksky(ilev)%FSKY(8,kk) = stir(i)*fac(2,i)
382 kk = iadc_crk(3,elcrk)
383 crksky(ilev)%FSKY(1,kk) = -f13(i)*areap
384 crksky(ilev)%FSKY(2,kk) = -f23(i)*areap
385 crksky(ilev)%FSKY(3,kk) = -f33(i)*areap
386 crksky(ilev)%FSKY(4,kk) = -m13(i)*areap
387 crksky(ilev)%FSKY(5,kk) = -m23(i)*areap
388 crksky(ilev)%FSKY(6,kk) = -m33(i)*areap
389 crksky(ilev)%FSKY(7,kk) = sti(i) *fac(1,i)
390 crksky(ilev)%FSKY(8,kk) = stir(i)*fac(1,i)
392 kk = iadc_crk(4,elcrk)
393 crksky(ilev)%FSKY(1,kk) = -f14(i)*areap
394 crksky(ilev)%FSKY(2,kk) = -f24(i)*areap
395 crksky(ilev)%FSKY(3,kk) = -f34(i)*areap
396 crksky(ilev)%FSKY(4,kk) = -m14(i)*areap
397 crksky(ilev)%FSKY(5,kk) = -m24(i)*areap
398 crksky(ilev)%FSKY(6,kk) = -m34(i)*areap
399 crksky(ilev)%FSKY(7,kk) = sti(i) *fac(2,i)
400 crksky(ilev)%FSKY(8,kk) = stir(i)*fac(2,i)
405 elcrk = iel_crk(i+nft)
407 IF (elcut == 0) cycle
412 kk = iadc_crk(1,elcrk)
416 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
418 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
419 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
420 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
421 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
423 crksky(ilev)%FSKY(1,kk) = zero
424 crksky(ilev)%FSKY(2,kk) = zero
425 crksky(ilev)%FSKY(3,kk) = zero
426 crksky(ilev)%FSKY(4,kk) = zero
427 crksky(ilev)%FSKY(5,kk) = zero
428 crksky(ilev)%FSKY(6,kk) = zero
434 kk = iadc_crk(2,elcrk)
438 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
439 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
440 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
441 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
442 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
443 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
445 crksky(ilev)%FSKY(1,kk) = zero
446 crksky(ilev)%FSKY(2,kk) = zero
447 crksky(ilev)%FSKY(3,kk) = zero
448 crksky(ilev)%FSKY(4,kk) = zero
449 crksky(ilev)%FSKY(5,kk) = zero
450 crksky(ilev)%FSKY(6,kk) = zero
456 kk = iadc_crk(3,elcrk)
460 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
461 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
462 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
463 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
464 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
465 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
467 crksky(ilev)%FSKY(1,kk) = zero
468 crksky(ilev)%FSKY(2,kk) = zero
469 crksky(ilev)%FSKY(3,kk) = zero
470 crksky(ilev)%FSKY(4,kk) = zero
471 crksky(ilev)%FSKY(5,kk) = zero
472 crksky(ilev)%FSKY(6,kk) = zero
478 kk = iadc_crk(4,elcrk)
482 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
483 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
484 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
485 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
486 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
487 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
489 crksky(ilev)%FSKY(1,kk) = zero
490 crksky(ilev)%FSKY(2,kk) = zero
491 crksky(ilev)%FSKY(3,kk) = zero
492 crksky(ilev)%FSKY(4,kk) = zero
493 crksky(ilev)%FSKY(5,kk) = zero
494 crksky(ilev)%FSKY(6,kk) = zero
509 . JFT ,JLT ,NFT ,IXTG ,OFF ,IADC ,
510 . F11 ,F21 ,F31 ,F12 ,F22 ,F32 ,
512 . M11 ,M21 ,M31 ,M12 ,M22 ,M32 ,
514 . STI ,STIR ,FSKY ,ELCUTC,IAD_CRKTG,IEL_CRKTG,
515 . ILEV ,ILAY ,OFFG ,CRKSKY)
521#include "implicit_f.inc"
525#include "parit_c.inc"
526#include
"com_xfem1.inc"
530 INTEGER JFT,JLT,NFT,IADC(3,*),IAD_CRKTG(3,*),(NIXTG,*),
531 . iel_crktg(*),ilev,elcutc(2,*),ixfem,ilay
534 . fsky(8,lsky),off(*),offg(*),
535 . f11(*),f21(*),f31(*),f12(*),f22(*),f32(*),
536 . f13(*),f23(*),f33(*),
537 . m11(*),m21(*),m31(*),m12(*),m22(*),m32(*),
538 . m13(*),m23(*),m33(*),
544 INTEGER I,K,KK,ELCUT,ELCRK,,ENR,IOFF
545 INTEGER IAD(3),IADXFE(3),UNENR0(3,JLT)
550 IF (off(i) == zero .AND. offg(i) > zero) ioff=1
552 IF (ioff == 1) numelcrk = numelcrk
556 IF (off(i) < one) offg(i) = off(i)
557 off_l =
min(off_l,offg(i))
560 IF (off_l <= zero)
THEN
562 IF (off(i) <= zero)
THEN
588 elcrktg = iel_crktg(i+nft)
589 elcrk = elcrktg + ecrkxfec
594 kk = iad_crktg(1,elcrktg)
595 crksky(ilev)%FSKY(1,kk) = -f11(i)*areap
596 crksky(ilev)%FSKY(2,kk) = -f21(i)*areap
597 crksky(ilev)%FSKY(3,kk) = -f31(i)*areap
598 crksky(ilev)%FSKY(4,kk) = -m11(i)*areap
599 crksky(ilev)%FSKY(5,kk) = -m21(i)*areap
600 crksky(ilev)%FSKY(6,kk) = -m31(i)*areap
601 crksky(ilev)%FSKY(7,kk) = sti(i)
602 crksky(ilev)%FSKY(8,kk) = stir(i)
604 kk = iad_crktg(2,elcrktg)
605 crksky(ilev)%FSKY(1,kk) = -f12(i)*areap
606 crksky(ilev)%FSKY(2,kk) = -f22(i)*areap
607 crksky(ilev)%FSKY(3,kk) = -f32(i)*areap
608 crksky(ilev)%FSKY(4,kk) = -m12(i)*areap
609 crksky(ilev)%FSKY(5,kk) = -m22(i)*areap
610 crksky(ilev)%FSKY(6,kk) = -m32(i)*areap
611 crksky(ilev)%FSKY(7,kk) = sti(i)
612 crksky(ilev)%FSKY(8,kk) = stir(i)
614 kk = iad_crktg(3,elcrktg)
615 crksky(ilev)%FSKY(1,kk) = -f13(i)*areap
616 crksky(ilev)%FSKY(2,kk) = -f23(i)*areap
617 crksky(ilev)%FSKY(3,kk) = -f33(i)*areap
618 crksky(ilev)%FSKY(4,kk) = -m13(i)*areap
619 crksky(ilev)%FSKY(5,kk) = -m23(i)*areap
620 crksky(ilev)%FSKY(6,kk) = -m33(i)*areap
621 crksky(ilev)%FSKY(7,kk) = sti(i)
622 crksky(ilev)%FSKY(8,kk) = stir(i)
627 elcrktg = iel_crktg(i+nft)
628 elcrk = elcrktg + ecrkxfec
630 IF (elcut == 0) cycle
635 kk = iad_crktg(1,elcrktg)
639 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
640 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
641 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
642 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
643 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
644 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
646 crksky(ilev)%FSKY(1,kk) = zero
647 crksky(ilev)%FSKY(2,kk) = zero
648 crksky(ilev)%FSKY(3,kk) = zero
649 crksky(ilev)%FSKY(4,kk) = zero
650 crksky(ilev)%FSKY(5,kk) = zero
651 crksky(ilev)%FSKY(6,kk) = zero
657 kk = iad_crktg(2,elcrktg)
661 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
662 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
663 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
664 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
665 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
666 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
668 crksky(ilev)%FSKY(1,kk) = zero
669 crksky(ilev)%FSKY(2,kk) = zero
670 crksky(ilev)%FSKY(3,kk) = zero
671 crksky(ilev)%FSKY(4,kk) = zero
672 crksky(ilev)%FSKY(5,kk) = zero
673 crksky(ilev)%FSKY(6,kk) = zero
679 kk = iad_crktg(3,elcrktg)
683 fsky(1,k) = fsky(1,k) + crksky(ilev)%FSKY(1,kk)
684 fsky(2,k) = fsky(2,k) + crksky(ilev)%FSKY(2,kk)
685 fsky(3,k) = fsky(3,k) + crksky(ilev)%FSKY(3,kk)
686 fsky(4,k) = fsky(4,k) + crksky(ilev)%FSKY(4,kk)
687 fsky(5,k) = fsky(5,k) + crksky(ilev)%FSKY(5,kk)
688 fsky(6,k) = fsky(6,k) + crksky(ilev)%FSKY(6,kk)
690 crksky(ilev)%FSKY(1,kk) = zero
691 crksky(ilev)%FSKY(2,kk) = zero
692 crksky(ilev)%FSKY(3,kk) = zero
693 crksky(ilev)%FSKY(4,kk) = zero
694 crksky(ilev)%FSKY(5,kk) = zero
695 crksky(ilev)%FSKY(6,kk) = zero
subroutine cupdtn3_crk(jft, jlt, nft, ixc, off, iadc, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, m11, m21, m31, m12, m22, m32, m13, m23, m33, m14, m24, m34, sti, stir, fsky, elcutc, iadc_crk, iel_crk, ilev, inod_crk, fac, offg, eint, partsav, ipartc, ilay, crksky)
subroutine cupdt3_crk(jft, jlt, nft, ixc, off, iadc, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, m11, m21, m31, m12, m22, m32, m13, m23, m33, m14, m24, m34, sti, stir, fsky, elcutc, iadc_crk, iel_crk, ilev, inod_crk, offg, eint, partsav, ipartc, ilay, crksky)