31 . ELCUTC ,IAD_CRKTG,IEL_CRKTG,INOD_CRK,ENRTAG,
32 . NXLAY ,CRKEDGE ,XEDGE3N )
38#include "implicit_f.inc"
47#include "com_xfem1.inc"
52 INTEGER NFT,JFT,JLT,NXLAY
53 INTEGER IPARG(NPARG,*),IXTG(NIXTG,*),(2,*),INOD_CRK(*),
54 . iad_crktg(3,*),xedge3n(3,*),iel_crktg(*),enrtag(numnod,*)
55 TYPE (XFEM_EDGE_) ,
DIMENSION(*) :: CRKEDGE
59 INTEGER I,,IR,ELCRK,ELCRKTG,ILEV,ILAY,IXEL,ELCUT,IECUT,NELCRK,NSX,
60 . IED,EDGE,FAC,IBOUNDEDGE,LAYCUT,ENR,ITRI,ITIP,IAD,
61 INTEGER JCT(MVSIZ),IADC(3),ENR0(3),IENR(3),NTAG(3),d(3),NS(3)
67 IF (elcutc(1,i+nft) /= 0)
THEN
72 IF (nelcrk == 0)
RETURN
76 ilev = nxel*(ilay-1) + ixel
79 elcrktg = iel_crktg(i+nft)
80 elcrk = elcrktg + ecrkxfec
86 iadc(1) = iad_crktg(1,elcrktg)
87 iadc(2) = iad_crktg(2,elcrktg)
88 iadc(3) = iad_crktg(3,elcrktg)
93 laycut = crkedge(ilay)%LAYCUT(elcrk)
95 IF (abs(laycut) == 1)
THEN
99 ied = crkedge(ilay)%IEDGETG(k,elcrktg)
100 edge = xedge3n(k,elcrktg)
101 iecut = crkedge(ilay)%ICUTEDGE(edge)
103 IF (ied > 0 .and. iecut == 2)
THEN
113 edge = xedge3n(k,elcrktg)
114 iboundedge = crkedge(ilay)%IBORDEDGE(edge)
116 ied = crkedge(ilay)%IEDGETG(k,elcrktg)
117 IF (iboundedge > 0 .AND. ied > 0)
THEN
124 ied = crkedge(ilay)%IEDGETG(k,elcrktg)
125 edge = xedge3n(k,elcrktg)
126 itip = crkedge(ilay)%EDGETIP(2,edge)
127 IF (ied > 0 .and. itip == 1)
THEN
128 IF (itri /= 0 .and. ixel == 3)
THEN
139 IF (ntag(k) /= 2) ntag(k) = 1
143 ELSE IF (laycut == 2)
THEN
147 ied = crkedge(ilay)%IEDGETG(k,elcrktg)
148 edge = xedge3n(k,elcrktg)
149 iboundedge = crkedge(ilay)%IBORDEDGE(edge)
150 IF (ied > 0 .and. iboundedge == 2)
THEN
161 ied = crkedge(ilay)%IEDGETG(k,elcrktg)
162 edge = xedge3n(k,elcrktg)
163 itip = crkedge(ilay)%EDGETIP(2,edge)
164 IF (ied > 0 .and. itip == 1) count = count + 1
169 ied = crkedge(ilay)%IEDGETG(k,elcrktg)
170 edge = xedge3n(k,elcrktg)
172 IF (itri < 0 .and. ixel == 2 .and.
crklvset(ilev)%ENR0(1,iad) < 0)
THEN
178 ELSEIF (itri > 0.and. ixel == 1 .and.
crklvset(ilev)%ENR0(1,iad) < 0)
THEN
194 enr = abs(
crklvset(ilev)%ENR0(1,iadc(k)))
195 IF (enr > 0 .AND. ntag(k) == 1)
THEN
196 IF (enrtag(ns(k),enr) == 0) enrtag(ns(k