30 . IXC ,IXTG ,IPARG ,LCNE_CRKXFEM,CRKLVSET,
31 . CRKSKY ,CRKAVX,CRKEDGE,XFEM_PHANTOM)
39#include "implicit_f.inc"
46#include "com_xfem1.inc"
50 INTEGER IXC(NIXC,*),IXTG(NIXTG,*),IPARG(NPARG,*),LCNE_CRKXFEM
51TYPE (XFEM_LVSET_) ,
DIMENSION(NLEVMAX) :: CRKLVSET
52 TYPE (XFEM_SKY_)
DIMENSION(NLEVMAX) :: CRKSKY
53 TYPE (XFEM_AVX_) ,
DIMENSION(NLEVMAX) :: CRKAVX
54 TYPE (XFEM_EDGE_) ,
DIMENSION(NXLAYMAX):: CRKEDGE
55 TYPE (XFEM_PHANTOM_),
DIMENSION(NXLAYMAX):: XFEM_PHANTOM
59 INTEGER KNOD2ELC(NUMNOD+1)
60 INTEGER I,J,N,LFT,LLT,NFT,NEL,ITY,IXFEM,NG
70 IF (ixfem == 0 ) cycle
75 knod2elc(n) = knod2elc(n) + 1
82 knod2elc(n) = knod2elc(n) + 1
90 ienrnod =
max(ienrnod,knod2elc(i))
93 ienrnod =
max(ienrnod,4)
94 ienrnod = ienrnod * nlevmax
102 ALLOCATE(crklvset(i)%ELCUT(ecrkxfe))
103 ALLOCATE(crklvset(i)%HFI0(4,ecrkxfe))
104 ALLOCATE(crklvset(i)%ENRICH0(4,ecrkxfe))
105 ALLOCATE(crklvset(i)%EDGE0(4,ecrkxfe))
107 ALLOCATE(crklvset(i)%EDGE(4,ecrkxfec))
108 ALLOCATE(crklvset(i)%EDGETG(3,ecrkxfetg))
109 ALLOCATE(crklvset(i)%ICUTEDGE(numedges))
110 ALLOCATE(crklvset(i)%RATIOEDGE(numedges))
112 ALLOCATE(crkavx(i)%A(3,lcne_crkxfem))
113 ALLOCATE(crkavx(i)%AR(3,lcne_crkxfem))
114 ALLOCATE(crkavx(i)%V(3,lcne_crkxfem))
115 ALLOCATE(crkavx(i)%VR(3,lcne_crkxfem))
116 ALLOCATE(crkavx(i)%X(3,lcne_crkxfem))
117 ALLOCATE(crkavx(i)%U(3,lcne_crkxfem))
118 ALLOCATE(crkavx(i)%XX(3,4*ecrkxfe))
120 ALLOCATE(crksky(i)%FSKY(8,lcne_crkxfem))
124 crklvset(i)%ENRICH0 = 0
125 crklvset(i)%EDGE0 = 0
128 crklvset(i)%EDGETG = 0
129 crklvset(i)%ICUTEDGE = 0
130 crklvset(i)%RATIOEDGE = 0
143 ALLOCATE(crkedge(i)%LAYCUT(ecrkxfe))
144 ALLOCATE(crkedge(i)%EDGEICRK(numedges))
145 ALLOCATE(crkedge(i)%EDGEIFI(2,numedges))
146 ALLOCATE(crkedge(i)%EDGEENR(2,numedges))
147 ALLOCATE(crkedge(i)%EDGETIP(2,numedges))
148 crkedge(i)%LAYCUT = 0
149 crkedge(i)%EDGEICRK = 0
150 crkedge(i)%EDGEIFI = 0
151 crkedge(i)%EDGEENR = 0
152 crkedge(i)%EDGETIP = 0
156 ALLOCATE(xfem_phantom(i)%ELCUT(ecrkxfe))
157 ALLOCATE(xfem_phantom(i)%IFI(lcnecrkxfem))
158 ALLOCATE(xfem_phantom(i)%ITRI(2,ecrkxfe))
159 ALLOCATE(xfem_phantom(i)%TAGXP(1,1,1))
160 xfem_phantom(i)%ELCUT = 0
161 xfem_phantom(i)%TAGXP = 0
162 xfem_phantom(i)%IFI = 0
163 xfem_phantom(i)%ITRI = 0
subroutine allocxfem(ixc, ixtg, iparg, lcne_crkxfem, crklvset, crksky, crkavx, crkedge, xfem_phantom)