33 1 RESULT ,NIN , NEDGE ,CANDS_E2E ,I_STOK_E2E ,
34 2 CANDS_E2S ,I_STOK_E2S,IGAP ,INTFRIC ,ISTIF_MSDT )
45#include "implicit_f.inc"
55#include "i25edge_c.inc"
60 INTEGER :: RESULT,NIN,NEDGE
61 INTEGER :: I_STOK_E2E,I_STOK_E2S
62 INTEGER :: CANDS_E2E(*),CANDS_E2S(*)
64 INTEGER ,
INTENT(IN) :: ISTIF_MSDT
70 INTEGER,
DIMENSION(:),
ALLOCATABLE :: IAUX,
71 INTEGER :: N,NN,I,J,NNP
99 nedge_kept = nedge_kept + 1
111 nedge_kept = nedge_kept + 1
120 nodfi = nedge_kept * 2
125 ALLOCATE(
nsvfie(nin)%P(nedge_kept))
126 IF(
ASSOCIATED(
xfie(nin)%P))
DEALLOCATE(
xfie(nin)%P)
127 ALLOCATE(
xfie(nin)%P(3,nodfi))
128 IF(
ASSOCIATED(
vfie(nin)%P))
DEALLOCATE(
vfie(nin)%P)
129 ALLOCATE(
vfie(nin)%P(3,nodfi))
130 IF(
ASSOCIATED(
msfie(nin)%P))
DEALLOCATE(
msfie(nin)%P)
131 ALLOCATE(
msfie(nin)%P(nodfi))
133 ALLOCATE(
itafie(nin)%P(nodfi))
136 ALLOCATE(
gapfie(nin)%P(nedge_kept))
144 ALLOCATE(
stifie(nin)%P(nedge_kept))
146 IF(istif_msdt > 0)
THEN
163 ALLOCATE(
x_seg_fie(nin)%P(3,4,nedge_kept))
166 IF(idtmins == 2)
THEN
173 ELSEIF(idtmins_int /= 0)
THEN
214 IF(idtmins /= 0)
THEN
217 IF(idtmins/=2 .AND. idtmins_int == 0)
THEN
219 ELSEIF(idtmins==2)
THEN
233 ELSE ! idtmins_int == 0
246 debug_e2e(
ledge_fie(nin)%P(e_global_id,nn)==d_es,nn)
249 xfie(nin)%P(1,n1) = xrem_edge(e_x1,i+ideb)
250 xfie(nin)%P(2,n1) = xrem_edge(e_y1,i+ideb)
251 xfie(nin)%P(3,n1) = xrem_edge(e_z1,i+ideb)
252 vfie(nin)%P(1,n1) = xrem_edge(e_vx1,i+ideb)
253 vfie(nin)%P(2,n1) = xrem_edge(e_vy1,i+ideb)
254 vfie(nin)%P(3,n1) = xrem_edge(e_vz1,i+ideb)
255 msfie(nin)%P(n1) = xrem_edge(e_ms1,i+ideb)
258 xfie(nin)%P(1,n2) = xrem_edge(e_x2,i+ideb)
259 xfie(nin)%P(2,n2) = xrem_edge(e_y2,i+ideb)
260 xfie(nin)%P(3,n2) = xrem_edge(e_z2,i+ideb)
261 vfie(nin)%P(1,n2) = xrem_edge(e_vx2,i+ideb)
262 vfie(nin)%P(2,n2) = xrem_edge(e_vy2,i+ideb)
263 vfie(nin)%P(3,n2) = xrem_edge(e_vz2,i+ideb)
264 msfie(nin)%P(n2) = xrem_edge(e_ms2,i+ideb)
267 gapfie(nin)%p(nn) = xrem_edge(e_gap,i+ideb)
270 gape_l_fie(nin)%P(nn) = xrem_edge(e_gapl,i+ideb)
273 stifie(nin)%p(nn) = xrem_edge(e_stife,i+ideb)
275 IF(istif_msdt > 0)
THEN
303 assert(nn - nnp >= 0)
318 IF(
ALLOCATED(xrem_edge))
DEALLOCATE(xrem_edge)
325 IF(
ASSOCIATED(
afie(nin)%P))
DEALLOCATE(
afie(nin)%P)
327 IF(nodfi>0)
ALLOCATE(
afie(nin)%P(3,nodfi*nthread))
328 IF(nodfi>0)
ALLOCATE(
stnfie(nin)%P(nodfi*nthread))
330 DO i = 1, nodfi*nthread
331 afie(nin)%P(1,i) = zero
332 afie(nin)%P(2,i) = zero
333 afie(nin)%P(3,i) = zero
339 IF(nodfi>0)
ALLOCATE(
vscfie(nin)%P(nodfi*nthread))
341 DO i = 1, nodfi*nthread
358 ALLOCATE(
iskyfie(nin)%P(lskyfi))
379 cands_e2e(i) = index(nn)+nedge
389 cands_e2s(i) = index(nn)+nedge
subroutine spmd_tri25egat(result, nin, nedge, cands_e2e, i_stok_e2e, cands_e2s, i_stok_e2s, igap, intfric, istif_msdt)