30 SUBROUTINE linedge(NSEG0 ,NSEG ,BUFTMP ,SLIN_NODES ,KEY,
31 . FLAG ,SLIN_ELTYP ,SLIN_ELEM,LINE_NSEG0)
36#include "implicit_f.inc"
43 INTEGER NSEG0,NSEG,FLAG,LINE_NSEG0
44 INTEGER BUFTMP(6,*),SLIN_NODES(LINE_NSEG0,*),SLIN_ELTYP(*),
46 CHARACTER(LEN=NCHARKEY) :: KEY
51 INTEGER IW1(4*NSEG0),IW2(4*NSEG0),IW5(4*NSEG0),IW6(4*NSEG0),
52 . index(8*nseg0),iwork(70000), iperm(4)
64 IF(buftmp(j2,i)/=0.AND.
65 . buftmp(j1,i)>buftmp(j2,i))
THEN
71 ELSEIF(buftmp(j1,i)/=0.AND.
72 . buftmp(j1,i)<buftmp(j2,i))
THEN
85 IF (key(1:4) ==
'SURF')
THEN
92 IF(iw1(index(i-1))/=iw1(index(i)).OR.
93 . iw2(index(i-1))/=iw2(index(i))) nseg=nseg+1
95 ELSEIF (flag == 1)
THEN
96 slin_nodes(1,1) = iw1(index(1))
97 slin_nodes(1,2) = iw2(index(1))
98 slin_eltyp(1) = iw5(index(1))
99 slin_elem(1) = iw6(index(1))
101 IF(iw1(index(i-1))/=iw1(index(i)).OR.
102 . iw2(index(i-1))/=iw2(index(i)))
THEN
104 slin_nodes(nseg,1) = iw1(index(i))
105 slin_nodes(nseg,2) = iw2(index(i))
106 slin_eltyp(nseg) = iw5(index(i))
107 slin_elem(nseg) = iw6(index(i))
111 ELSEIF (key(1:4) ==
'EDGE')
THEN
117 IF(iw1(index(1))/=iw1(index(2)).OR.
118 . iw2(index(1))/=iw2(index(2))) nseg=1
120 IF((iw1(index(i-1))/=iw1(index(i)).OR.
121 . iw2(index(i-1))/=iw2(index(i))).AND.
122 . (iw1(index(i+1))/=iw1(index(i)).OR.
123 . iw2(index(i+1))/=iw2(index(i)))) nseg=nseg+1
125 IF(iw1(index(k-1))/=iw1(index(k)).OR.
126 . iw2(index(k-1))/=iw2(index(k))) nseg=nseg+1
128 ELSEIF (flag == 1)
THEN
129 IF(iw1(index(1))/=iw1(index(2)).OR.
130 . iw2(index(1))/=iw2(index(2)))
THEN
132 slin_nodes(nseg,1) = iw1(index(1))
133 slin_nodes(nseg,2) = iw2(index(1))
134 slin_eltyp(nseg) = iw5
135 slin_elem(nseg) = iw6(index(1))
138 IF((iw1(index(i-1))/=iw1(index(i)).OR.
139 . iw2(index(i-1))/=iw2(index(i))).AND.
140 . (iw1(index(i+1))/=iw1(index(i)).OR.
141 . iw2(index(i+1))/=iw2(index(i))))
THEN
143 slin_nodes(nseg,1) = iw1(index(i))
144 slin_nodes(nseg,2) = iw2(index(i))
145 slin_eltyp(nseg) = iw5(index(i))
146 slin_elem(nseg) = iw6(index(i))
149 IF(iw1(index(k-1))/=iw1(index(k)).OR.
153 slin_nodes(nseg,2) = iw2(index(k))
154 slin_eltyp(nseg) = iw5(index(k))
155 slin_elem(nseg) = iw6(index(k))