64#include "implicit_f.inc"
73 LOGICAL :: IS_AVAILABLE
74 INTEGER,
INTENT(IN),
DIMENSION(NUMNOD,2) :: ITABM1
80 INTEGER I, NINDX, SEG_MAX, NOD_1, NOD_2, NOD_3, NOD_4, NODSYS_1, NODSYS_2, NODSYS_3, NODSYS_4, SEG_ID, LINE_SEG
81 INTEGER,
ALLOCATABLE,
DIMENSION(:,:) :: BUFSURF
82 INTEGER,
EXTERNAL :: SET_USRTOS
88 ALLOCATE(bufsurf(4,seg_max))
99 nodsys_1 = set_usrtos(nod_1,itabm1,numnod)
100 IF (nodsys_1 == 0)
THEN
102 CALL ancmsg(msgid=1903,anmode=aninfo,msgtype=msgerror,
103 . i1 = clause%SET_ID,
106 . c1=trim(clause%TITLE),
109 nodsys_1 = itabm1(nodsys_1,2)
112 nodsys_2 = set_usrtos(nod_2,itabm1,numnod)
113 IF (nodsys_2 == 0)
THEN
115 CALL ancmsg(msgid=1903,anmode=aninfo,msgtype=msgerror,
116 . i1 = clause%SET_ID,
119 . c1=trim(clause%TITLE),
122 nodsys_2 = itabm1(nodsys_2,2)
126 IF (nod_3 == 0 .AND. nod_4 == 0)
THEN
131 nodsys_3 = set_usrtos(nod_3,itabm1,numnod)
132 nodsys_4 = set_usrtos(nod_4,itabm1,numnod)
135 IF (line_seg == 0) then
136 IF (nodsys_3 == 0)
THEN
138 CALL ancmsg(msgid=1903,anmode=aninfo,msgtype=msgerror,
139 . i1 = clause%SET_ID,
142 . c1=trim(clause%TITLE),
146 nodsys_3 = itabm1(nodsys_3,2)
152 ELSE IF (nodsys_4 == 0)
THEN
154 CALL ancmsg(msgid=1903,anmode=aninfo,msgtype=msgerror,
160 ELSE IF (nodsys_4 /= 0)
THEN
162 nodsys_4 = itabm1(nodsys_4,2)
168 bufsurf(1,nindx) = nodsys_1
169 bufsurf(2,nindx) = nodsys_2
171 bufsurf(4,nindx) = nodsys_4
182 IF (line_seg == 0)
THEN
185 clause%NB_SURF_SEG = nindx
186 ALLOCATE(clause%SURF_NODES(nindx,4))
187 ALLOCATE(clause%SURF_ELTYP(nindx))
188 ALLOCATE(clause%SURF_ELEM(nindx))
191 clause%SURF_NODES(i,1) = bufsurf(1,i)
192 clause%SURF_NODES(i,2) = bufsurf(2,i)
193 clause%SURF_NODES(i,3) = bufsurf(3,i)
194 clause%SURF_NODES(i,4) = bufsurf(4,i)
195 clause%SURF_ELTYP(i) = 0
196 clause%SURF_ELEM(i) = 0
202 clause%NB_LINE_SEG = nindx
203 ALLOCATE(clause%LINE_NODES(nindx,2))
204 ALLOCATE(clause%LINE_ELTYP(nindx))
205 ALLOCATE(clause%LINE_ELEM(nindx))
208 clause%LINE_NODES(i,1) = bufsurf(1,i)
209 clause%LINE_NODES(i,2) = bufsurf(2,i)
210 clause%LINE_ELTYP(i) = 0
211 clause%LINE_ELEM(i) = 0
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)