34
37 use element_mod , only :nixs
38
39
40
41#include "implicit_f.inc"
42
43
44
45#include "com04_c.inc"
46
47
48
49 INTEGER IXS(NIXS,*),IXS10(6,*),IRECT(4,*),NOINT,NRTM,
50 . ITAB(*), KNOD2ELS(*), NOD2ELS(*),NTY,NSV(*),MSEGTYP(*)
51 INTEGER ID
52 CHARACTER(LEN=NCHARTITLE) :: TITR
53
54
55
56 INTEGER I,J,K,IW,I1,I2,I3,IPERM1(6),IPERM2(6),IPERM3(6),
57 . IDBID, IAD, IEDGE, N, N10, NC(4)
58 DATA nc/2,4,7,6/
59 DATA iperm1/2,4,7,2,6,7/
60 DATA iperm2/4,7,2,6,4,6/
61 DATA iperm3/1,2,3,4,5,6/
62 DATA idbid/0/
63 INTEGER IDEGEN(6)
64
65
66
67
68
69 DO i=1,nrtm
70 IF (msegtyp(i) /= 10) cycle
71 DO iedge=1,4
72 IF (nty == 5)THEN
73 i1=nsv(irect(iedge,i))
74 i2=nsv(irect(mod(iedge,4)+1,i))
75 ELSE
76 i1=irect(iedge,i)
77 i2=irect(mod(iedge,4)+1,i)
78 ENDIF
79 IF(i2==i1)cycle
80
81 DO iad=knod2els(i1)+1,knod2els(i1+1)
82 n = nod2els(iad)
83 IF(numels8 < n .AND. n <= numels8+numels10)THEN
84 n10=n-numels8
85 DO j=1,4
86 IF(ixs(nc(j),n10)==i2)THEN
87 DO k=1,6
88 IF((i1==ixs(iperm1(k),n10).AND.
89 . i2==ixs(iperm2(k),n10)).OR.
90 . (i2==ixs(iperm1(k),n10).AND.
91 . i1==ixs(iperm2(k),n10)))THEN
92 i3=ixs10(iperm3(k),j)
93 IF(i3/=0)THEN
94 ixs10(iperm3(k),n10)=-abs(ixs10(iperm3(k),n10))
95 END IF
96 END IF
97 END DO
98 END IF
99 END DO
100 END IF
101 ENDDO
102 ENDDO
103 ENDDO
104
105 DO j=1,numels10
106 iw=0
107 DO k=1,6
108 i3=ixs10(iperm3(k),j)
109 IF(i3 < 0)THEN
110 iw=1
111 ixs10(iperm3(k),j)=0
112 END IF
113 ENDDO
114 IF(iw==1)THEN
115 idegen=0
116 IF(ixs10(1,j)/=0)THEN
117 idegen(1)=itab(ixs10(1,j))
118 ENDIF
119 IF(ixs10(2,j)/=0)THEN
120 idegen(2)=itab(ixs10(2,j))
121 ENDIF
122 IF(ixs10(3,j)/=0)THEN
123 idegen(3)=itab(ixs10(3,j))
124 ENDIF
125 IF(ixs10(4,j)/=0)THEN
126 idegen(4)=itab(ixs10(4,j))
127 ENDIF
128 IF(ixs10(5,j)/=0)THEN
129 idegen(5)=itab(ixs10(5,j))
130 ENDIF
131 IF(ixs10(6,j)/=0)THEN
132 idegen(6)=itab(ixs10(6,j))
133 ENDIF
135 . msgtype=msgwarning,
136 . anmode=aninfo_blind_2,
138 . c1=titr,
139 . i2=ixs(nixs,j),
140 . i3=itab(ixs(2,j)),
141 . i4=itab(ixs(4,j)),
142 . i5=itab(ixs(7,j)),
143 . i6=itab(ixs(6,j)),
144
145 . i7=idegen(1),
146 . i8=idegen(2),
147 . i9=idegen(3),
148 . i10=idegen(4),
149 . i11=idegen(5),
150 . i12=idegen(6))
151 ENDIF
152 ENDDO
153
154 RETURN
integer, parameter nchartitle
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)