1      SUBROUTINE CSLOPE
2C
3C     CALCULATE VARIABLE SLOPE FOR WING
4C
5      COMMON /IHT/    PHT,XU(60),XL(60)
6      COMMON /IBW/    PBW,LL
7      COMMON /IVT/    PVT,YU(60),YL(60)
8      COMMON /WINGI/  WGIN(100)
9      COMMON /SYNTSS/ SYNA(19)
10      COMMON /CONSNT/ PI,DEG,UNUSED,RAD
11      COMMON /FLOLOG/ DD(6),HTPL
12      EQUIVALENCE(ZW,SYNA(3)),(ZH,SYNA(7))
13      DIMENSION WGINT(6),C(6),ROUT(2)
14      LOGICAL HTPL
15      DATA ROUT/4HCSLO, 4HPE   /
16C
17C     IF NO HORIZONTAL TAIL, RETURN
18C
19      DO 1000 I=1,6
20 1000 WGINT(I)=UNUSED
21      IF(.NOT.HTPL)RETURN
22      IF(ZH.GT.ZW)GO TO 1010
23C
24C     HERE FOR HORIZONTAL TAIL BELOW THE WING
25C
26C     AT THE 0 PERCENT CHORD
27C
28      IN=0
29      IF(WGIN(95).EQ.UNUSED)CALL TBFUNX(0.,Y,DYDX,LL,XL,YL,C,IN,MI,
30     1   NG,0,0,4HCSLP,1,ROUT)
31      IF(WGIN(95).EQ.UNUSED)WGINT(1)=-DYDX
32C
33C     AT THE 20 PERCENT CHORD
34C
35      IN=0
36      IF(WGIN(96).EQ.UNUSED)CALL TBFUNX(.2,Y,DYDX,LL,XL,YL,C,IN,MI,
37     1   NG,0,0,4HCSLP,1,ROUT)
38      IF(WGIN(96).EQ.UNUSED)WGINT(2)=-DYDX
39C
40C     AT THE 40 PERCENT CHORD
41C
42      IN=0
43      IF(WGIN(97).EQ.UNUSED)CALL TBFUNX(.4,Y,DYDX,LL,XL,YL,C,IN,MI,
44     1   NG,0,0,4HCSLP,1,ROUT)
45      IF(WGIN(97).EQ.UNUSED)WGINT(3)=-DYDX
46C
47C     AT THE 60 PERCENT CHORD
48C
49      IN=0
50      IF(WGIN(98).EQ.UNUSED)CALL TBFUNX(.6,Y,DYDX,LL,XL,YL,C,IN,MI,
51     1   NG,0,0,4HCSLP,1,ROUT)
52      IF(WGIN(98).EQ.UNUSED)WGINT(4)=-DYDX
53C
54C     AT THE 80 PERCENT CHORD
55C
56      IN=0
57      IF(WGIN(99).EQ.UNUSED)CALL TBFUNX(.8,Y,DYDX,LL,XL,YL,C,IN,MI,
58     1   NG,0,0,4HCSLP,1,ROUT)
59      IF(WGIN(99).EQ.UNUSED)WGINT(5)=-DYDX
60C
61C     AT THE 100 PERCENT CHORD
62C
63      IN=0
64      IF(WGIN(100).EQ.UNUSED)CALL TBFUNX(1.,Y,DYDX,LL,XL,YL,C,IN,MI,
65     1   NG,0,0,4HCSLP,1,ROUT)
66      IF(WGIN(100).EQ.UNUSED)WGINT(6)=-DYDX
67      GO TO 1020
68 1010 CONTINUE
69C
70C     HERE FOR THE HORIZONTAL TAIL ABOVE THE WING
71C
72C     AT THE 0 PERCENT CHORD
73C
74      IN=0
75      IF(WGIN(95).EQ.UNUSED)CALL TBFUNX(0.,Y,DYDX,LL,XU,YU,C,IN,MI,
76     1   NG,0,0,4HCSLP,1,ROUT)
77      IF(WGIN(95).EQ.UNUSED)WGINT(1)=DYDX
78C
79C     AT THE 20 PERCENT CHORD
80C
81      IN=0
82      IF(WGIN(96).EQ.UNUSED)CALL TBFUNX(.2,Y,DYDX,LL,XU,YU,C,IN,MI,
83     1   NG,0,0,4HCSLP,1,ROUT)
84      IF(WGIN(96).EQ.UNUSED)WGINT(2)=DYDX
85C
86C     AT THE 40 PERCENT CHORD
87C
88      IN=0
89      IF(WGIN(97).EQ.UNUSED)CALL TBFUNX(.4,Y,DYDX,LL,XU,YU,C,IN,MI,
90     1   NG,0,0,4HCSLP,1,ROUT)
91      IF(WGIN(97).EQ.UNUSED)WGINT(3)=DYDX
92C
93C     AT THE 60 PERCENT CHORD
94C
95      IN=0
96      IF(WGIN(98).EQ.UNUSED)CALL TBFUNX(.6,Y,DYDX,LL,XU,YU,C,IN,MI,
97     1   NG,0,0,4HCSLP,1,ROUT)
98      IF(WGIN(98).EQ.UNUSED)WGINT(4)=DYDX
99C
100C     AT THE 80 PERCENT CHORD
101C
102      IN=0
103      IF(WGIN(99).EQ.UNUSED)CALL TBFUNX(.8,Y,DYDX,LL,XU,YU,C,IN,MI,
104     1   NG,0,0,4HCSLP,1,ROUT)
105      IF(WGIN(99).EQ.UNUSED)WGINT(5)=DYDX
106C
107C     AT THE 100 PERCENT CHORD
108C
109      IN=0
110      IF(WGIN(100).EQ.UNUSED)CALL TBFUNX(1.,Y,DYDX,LL,XU,YU,C,IN,MI,
111     1   NG,0,0,4HCSLP,1,ROUT)
112      IF(WGIN(100).EQ.UNUSED)WGINT(6)=DYDX
113 1020 CONTINUE
114      DO 1030 I=1,6
115         A=WGINT(I)
116         IF(A.EQ.UNUSED)GO TO 1030
117         WGIN(I+94)=ATAN(A)*RAD
118 1030 CONTINUE
119      RETURN
120      END
121