29
30
31
32
33
34
35
36#include "implicit_f.inc"
37
38
39
40#include "com04_c.inc"
41#include "param_c.inc"
42
43
44
45 INTEGER IXS(NIXS,NUMELS),IXQ(NIXQ,NUMELQ),ICODE(*),NALE(*)
47
48
49
50 INTEGER I, J, MT, MLAW, JTUR,IC,IC1,IC2,IC3,IC4
51C
52 IF(numels>0)THEN
53 DO 10 i=1,numels
54 mt=ixs(1,i)
55 IF(mt>0) THEN
56 mlaw=nint(pm(19,mt))
57 jtur=nint(pm(70,mt))
58
59 IF((mlaw==6.AND.jtur/=0) .OR. mlaw==46) THEN
60 DO 11 j=2,9
61 IF(nale(ixs(j,i))==0)ixs(1,i)=-iabs(ixs(1,i))
62 11 CONTINUE
63 ENDIF
64 ENDIF
65 10 CONTINUE
66 ENDIF
67
68 IF(numelq>0)THEN
69 DO 20 i=1,numelq
70 mt=ixq(1,i)
71 IF(mt>0) THEN
72 mlaw=nint(pm(19,mt))
73 jtur=nint(pm(70,mt))
74
75 IF((mlaw==6.AND.jtur/=0) .OR. mlaw==46) THEN
76 DO 21 j=2,5
77 IF(nale(ixq(j,i))==0)ixq(1,i)=-iabs(ixq(1,i))
78 21 CONTINUE
79 ENDIF
80 ENDIF
81 20 CONTINUE
82
83 DO i=1,numelq
84 mt=ixq(1,i)
85 IF(mt < 1)cycle
86 mlaw=nint(pm(19,mt))
87 jtur=nint(pm(70,mt))
88 DO j=2,5
89 IF((mlaw==6.AND.jtur/=0) .OR. mlaw==46)THEN
90 ic=icode(ixq(j,i))
91 ic1=ic/512
92 ic2=(ic-512*ic1)/64
93 ic3=(ic-512*ic1-64*ic2)/8
94 ic4=(ic-512*ic1-64*ic2-8*ic3)
95 IF(ic1==3.OR.ic1==7.OR.ic4==3.OR.ic4==7)
96 . ixq(1,i)=-iabs(ixq(1,i))
97 ENDIF
98 ENDDO
99 ENDDO
100
101 ENDIF
102
103 RETURN