1      SUBROUTINE SUPWBT(KDEODA,KQOQIN,KEPSLN)
2C
3C*** SUPERSONIC WING-BODY-TAIL CALCULATIONS
4C
5      DIMENSION ROUTID(2),Q1211A(3),Q1211B(3),Q31210(3),Q44167(2),
6     1          Q1212A(3),Q1212B(3)
7      REAL MACH,NXX,KWB,KBW,KKBW,KKWB
8      REAL IVBH(20),IVWH(20)
9      LOGICAL CANARD
10      COMMON /CONSNT/ PI,DEG,UNUSED,RAD
11      COMMON /OVERLY/ NLOG,NMACH,I,NALPH
12      COMMON /WINGD/  A(195)
13      COMMON /HTDATA/ AHT(195)
14      COMMON /BDATA/  BD(762)
15      COMMON /SUPWBB/  SWB(61)
16      COMMON /SUPDW/  DWA(237)
17      COMMON /SUPWH/  SLG(141),STG(141)
18      COMMON /WBHCAL/ STP(156)
19      COMMON /SUPBOD/ SBD(227)
20      COMMON /WHWB/   FACT(182)
21      COMMON /FLGTCD/ FLC(95)
22      COMMON /OPTION/ SREF,CBARR,ROUGFC,BLREF
23      COMMON /SYNTSS/ XCG,XW,ZW,ALIW,ZCG,XH,ZH,ALIH,XV,VERTUP,HINAX,
24     1                XVF,SCALE,ZV,ZVF,YV,YF,PHIV,PHIF
25      COMMON /BODYI/  NXX,XCOOR(20)
26      COMMON /WINGI/  WINGIN(101)
27      COMMON /HTI/    HTIN(154)
28      COMMON /IBW/    PBW, BW(380)
29      COMMON /IBWH/   PBWH, BWH(380)
30      COMMON /IHT/    PHT, HT(380)
31      COMMON /IBWHV/  PBWHV, BWHV(380)
32      COMMON /IDWASH/ PDWASH, DWASH(60)
33      COMMON /IWING/  PWING, WING(380)
34      DIMENSION T4312B(8),D4312B(8)
35      DIMENSION T4311A(36),D4311A(270),DUMYA(135),DUMYB(135)
36      DIMENSION T4312A(11),D4312A(11)
37      DIMENSION TFIG10(11),DKWB10(11),DKBW10(11)
38      DIMENSION T4311B(23),D4311B(120)
39      DIMENSION QOQINF(20),DEDALP(20),HMACH(20),CLAWBT(20),DELTAT(20)
40      DIMENSION CNWBTV(20),CAWBTV(20)
41      DIMENSION T4467(21),D4467(135)
42      DIMENSION CCDWB(6),CC(6),EPSLON(40)
43      DIMENSION LGH(4),VAR(4)
44      DIMENSION CMWBT(20)
45      DIMENSION GAMMA(20),CLTB(20),CLAH(20),CAA(6),CB(6),CLAHA(20)
46      DIMENSION CDWBTV(20),CLH(20),CDWB(20),CDWBT(20),CMAH(20),
47     1   CMAWBT(20),CLWB(20),CDAWB(20),CLWBT(20),CNWBT(20),CAWBT(20)
48      EQUIVALENCE (XCSWPO,A(8)),(CD0VF,STP(156))
49      EQUIVALENCE (CLAWB,BW(101)),(WSPAN,WINGIN(4)),
50     1            (WKWB,SWB(35)),(WSPANS,WINGIN(3)),(STAILE,AHT(3)),
51     2            (ARSTRW,A(7)),(TAPEXW,A(27))
52      EQUIVALENCE (CNWBT(1),BWH(61)),(CAWBT(1),BWH(81)),(CNWBTV(1),
53     1             BWHV(61)), (CAWBTV(1),BWHV(81))
54      EQUIVALENCE (QOQINF(1),DWASH(1)),(DEDALP(1),DWASH(41))
55     1           ,(HMACH(1),DWA(189)),(JDETCH,DWA(237))
56      EQUIVALENCE (CD0V,STP(1)),(SPAN,HTIN(4)),(CR,HTIN(6))
57     1           ,(CLAH(1),HT(101)),(CMAWB,BW(121)),(CD0H,STG(80))
58      EQUIVALENCE (DD,STP(62)),(TRINO,STP(63)),(RKBW,STP(64)),(KBW,STP(
59     1  65)),(KWB,STP(66)),(CLAHB,STP(67)),(CLABH,STP(68)),(YT,STP(69)),
60     2(RCREO2,STP(70)),(IVWH(1),STP(71)),(DELTAT(1),STP(91)),(CLAWBT(1),
61     3BWH(101)),(KKBW,STP(131)),(KKWB,STP(132)),(IVBH(1),STP(133)),
62     4(GAMMA(1),STP(111)),(CDAWB(1),STP(42)),(EPSLON(1),DWASH(21))
63     5,(CLTB(1),STP(22)),(CLWBT(1),BWH(21)),(DXACWB,STP(153))
64      EQUIVALENCE (CMAH(1),STP(2)),(CMAWBT(1),BWH(121))
65     1,(CD0WBV,STP(155)),(CDWBT(1),BWH(1)),(CDWBTV(1),BWHV(1))
66     2,(CD0WBT,STP(154)),(CMWBT(1),BWH(41))
67      EQUIVALENCE (CDWB(1),BW(1))
68      EQUIVALENCE (CLWB(1),BW(21)),(TANLE,AHT(62)),(DN,SBD(4))
69     1,(CRSTAR,AHT(10)),(TAPEXP,AHT(27))
70     2,(CD0WB,SWB(4)),(SPANS,HTIN(3)),(ARSTAR,AHT(7)),(D1,SBD(5))
71      EQUIVALENCE (D4311A(1),DUMYA(1)),(D4311A(136),DUMYB(1))
72      DATA ROUTID/4HSUPW,4HBT  /,Q1211A/4H4.3.,4H1.2-,4H11A /,
73     1                           Q1211B/4H4.3.,4H1.2-,4H11B /,
74     2 Q31210/4H4.3.,4H1.2-,4H10  /,Q44167/4H4.4.,4H1-80/,
75     3 Q1212A/4H4.3.,4H1.2-,4H12A /,
76     4 Q1212B/4H4.3.,4H1.2-,4H12B /
77C
78C                   FIGURE 4.3.1.2-10 KWB
79C
80      DATA TFIG10/0.0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1.0/
81      DATA DKWB10/1.0,1.08,1.16,1.26,1.36,1.46,1.56,1.67,1.78,1.89,2.0/
82C
83C                   FIGURE 4.3.1.2-10 KBW
84C
85      DATA DKBW10/0.0,.13,.29,.45,.62,.80,1.0,1.22,1.45,1.70,2.0/
86C
87C                   FIGURE 4.3.1.2-12A (KBW)
88C
89      DATA T4312A/0.0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1.0/
90      DATA D4312A/0.0,.11,.21,.31,.41,.51,.6,.7,.8,.9,1.0/
91C
92C                   FIGURE 4.3.1.2-12B (KWB)
93C
94      DATA T4312B/0.,.1,.2,.3,.4,.6,.8,1./
95      DATA D4312B/1.,.975,.956,.947,.941,.950,.978,1.0/
96C
97C              FIGURE 4.4.1-80(A,B,AND C)
98C
99      DATA T4467/
100     1 0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,
101     2 -4.0,-2.0,0.0,2.0,4.0,4*0.0,
102     3 0.0,0.5,1.0/
103      DATA D4467/
104     1 0.785,0.700,0.625,0.565,0.515,0.490,0.475,0.470,0.470,
105     2 0.785,0.700,0.625,0.565,0.515,0.490,0.475,0.470,0.470,
106     3 0.785,0.710,0.645,0.600,0.570,0.555,0.540,0.540,0.540,
107     4 0.785,0.735,0.695,0.670,0.645,0.630,0.620,0.610,0.600,
108     5 0.785,0.750,0.730,0.710,0.700,0.690,0.685,0.680,0.675,
109     6 0.785,0.680,0.600,0.540,0.500,0.480,0.475,0.485,0.505,
110     7 0.785,0.710,0.645,0.600,0.580,0.565,0.560,0.565,0.570,
111     8 0.785,0.735,0.700,0.675,0.660,0.650,0.640,0.635,0.630,
112     9 0.785,0.800,0.810,0.810,0.800,0.790,0.770,0.740,0.710,
113     A 0.785,0.810,0.830,0.845,0.855,0.855,0.850,0.835,0.810,
114     B 0.785,0.685,0.605,0.550,0.510,0.505,0.530,0.580,0.645,
115     C 0.785,0.710,0.670,0.640,0.635,0.650,0.670,0.720,0.770,
116     D 0.785,0.775,0.780,0.790,0.805,0.820,0.845,0.875,0.905,
117     E 0.785,0.815,0.840,0.865,0.885,0.905,0.915,0.925,0.930,
118     F 0.785,0.830,0.870,0.900,0.920,0.935,0.940,0.940,0.935/
119C
120      CANARD=WINGIN(101) .GT. 2.5
121      NALPHA=NALPH
122      NA1=NALPH
123      DO 990 J=1,NALPH
124         IF(HT(J+20).NE.UNUSED.OR.CLWB(J).NE.UNUSED)GO TO 990
125         NA1=J-1
126  990 CONTINUE
127      IF(TANLE.EQ.0.0)TANLE=.00001
128      IF(KDEODA.NE.0.AND.KQOQIN.NE.0)GO TO 1000
129      IF(JDETCH.EQ.0)RETURN
130      IF(JDETCH.GT.0)NALPHA=JDETCH
131      GO TO 1020
132 1000 CONTINUE
133      DO 1010 NN=1,NALPHA
134 1010 HMACH(NN)=FLC(I+2)
135 1020 NX=NXX+.5
136      DCYL=(DN+D1)/2.
137      MACH=FLC(I+2)
138      BETA=SQRT(MACH**2-1.)
139      RLB=XCOOR(NX)
140      DD=2.0*(SPAN-SPANS)
141      IF(NA1.LT.NALPHA)NALPHA=NA1
142C
143C   ***SUPERSONIC TAIL-BODY LIFT CURVE SLOPE,BODY IN PRESENCE OF TAIL***
144C                         NON-TRIANGULAR TAILS
145C
146      IF(TAPEXP.EQ.0.0)GO TO 1080
147      ARG1=BETA*ARSTAR*(1.0+TAPEXP)
148      ARG2=1.+TANLE/BETA
149      TRINO=ARG1*ARG2
150      IF(TRINO.LE.4.)GO TO 1060
151 1030 OLE=AHT(34)
152      DX=RLB-XH-DD*AHT(38)-CRSTAR
153      IF(DX.LE.(-CRSTAR))RKBW=0.
154      IF(DX.LE.(-CRSTAR))GO TO 1050
155      CALL INTKBW(MACH,OLE,CRSTAR,DD,DX,RKBW,RXAC)
156 1050 KBW=RKBW/(RAD*BETA*(SREF/AHT(3))*CLAH(1)*(TAPEXP+1.)*
157     1    (2.*SPAN/DD-1.))
158      GO TO 1070
159 1060 CONTINUE
160      LGH(1)=11
161      VAR(1)=DD/(2.*SPAN)
162C
163C                   FIGURE 4.3.1.2-10 KBW
164C
165      CALL INTERX(1,TFIG10,VAR,LGH,DKBW10,KBW,11,11,
166     1            0,0,0,0,0,0,0,0,Q31210,3,ROUTID)
167 1070 CONTINUE
168      GO TO 1090
169C
170C  ***SUPERSONIC TAIL-BODY LIFT CURVE SLOPE,BODY IN PRESENCE OF TAIL***
171C                         TRIANGULAR TAIL
172C
173 1080 CONTINUE
174      ARG=BETA*ARSTAR
175      IF(ARG.GT.1.)GO TO 1030
176      GO TO 1060
177 1090 CONTINUE
178C
179C  ***SUPERSONIC TAIL-BODY LIFT CURVE SLOPE
180C
181      VAR(1)=(SPAN-SPANS)/SPAN
182      LGH(1)=11
183C
184C                   FIGURE 4.3.1.2-10 KWB
185C
186      CALL INTERX(1,TFIG10,VAR,LGH,DKWB10,KWB,11,11,
187     1            0,0,0,0,0,0,0,0,Q31210,3,ROUTID)
188      CLAHB=CLAH(1)*KWB
189      CLABH=CLAH(1)*KBW
190      IF(.NOT. CANARD) GO TO 1100
191C
192C     ********* COMPUTE WING VORTEX INTERFERENCE PARAMETERS *********
193C
194      BA=BETA*ARSTRW
195      DBWO2=WSPAN-WSPANS
196      LGH(1)=9
197      LGH(2)=5
198      LGH(3)=3
199      VAR(1)=BETA*ARSTRW
200      VAR(2)=A(120)*A(38)
201      VAR(3)=TAPEXW
202      CALL INTERX(3,T4467,VAR,LGH,D4467,YT,9,135,
203     1            0,0,0,0,1,1,1,0,Q44167,2,ROUTID)
204      BVTO2=WSPANS*YT+DBWO2
205      Y0=BVTO2
206 1100 CONTINUE
207      RCREO2=SPAN-SPANS
208      DO 1120 J=1,NALPHA
209         IF(.NOT. CANARD) GO TO 1110
210         Z0=A(12)-(A(24)-A(80)*BVTO2)*TAN((FLC(J+22)+ALIW)/RAD)
211         IVWH(J)=ALI(Z0,Y0,SPANS,RCREO2,TAPEXP)
212         ANUM=WING(101)*HT(101)*QOQINF(J)*WKWB*SPANS*IVWH(J)
213         ADEN=2.0*PI*ARSTAR*(BVTO2-DBWO2)
214         DELTAT(J)=(ANUM/ADEN)*RAD*SREF/STAILE
215         CLAWBT(J)=CLAWB+(CLAHB+CLABH)*QOQINF(J)+DELTAT(J)
216          FACT(J+121)=-DELTAT(J)/((CLAHB+CLABH)*QOQINF(J))
217         GO TO 1120
218 1110    CLAWBT(J)=CLAWB+(CLAHB+CLABH)*(1.0-DEDALP(J))*QOQINF(J)
219 1120 CONTINUE
220C
221C     *********WING-BODY-TAIL LIFT AT ANGLE OF ATTACK ******************
222C
223      IF(ALIH.EQ.0.0.OR.(ALIH.EQ.UNUSED))GO TO 1130
224C
225C                   FIGURE 4.3.1.2-12A (KBW) INCIDENCE
226C
227      LGH(1)=11
228      VAR(1)=(SPAN-SPANS)/SPAN
229      CALL INTERX(1,T4312A,VAR,LGH,D4312A,KKBW,11,11,
230     1            0,0,0,0,0,0,0,0,Q1212A,3,ROUTID)
231C
232C                   FIGURE 4.3.1.2-12B (KWB) INCIDENCE
233C
234      LGH(1)=8
235      CALL INTERX(1,T4312B,VAR,LGH,D4312B,KKWB,8,8,
236     1            0,0,0,0,0,0,0,0,Q1212B,3,ROUTID)
237 1130 CLI=CLAH(1)*ALIH
238      DETCL=0.0
239      DCLOAL = 0.0
240      XCBR4H=XH+AHT(161)
241      CALL BODOWG(FLC(23),XCBR4H,RCREO2,SPAN,TAPEXP,
242     1            IVBH,GAMMA,NALPHA)
243      ARG1=KWB+KBW
244      ARG2=(KKWB+KKBW)*CLI
245      ARG3=CLAH(1)*(DD/(2.*SPAN))
246      SINAI= SIN(ALIH/RAD)
247      COSAI=COS(ALIH/RAD)
248      TANAI=TAN(ALIH/RAD)
249      BD(58)=(HTIN(4)-HTIN(3))*AHT(62)*COSAI
250      BD(84)=XCG-(XH+BD(58))
251      BD(762)=ZH-BD(58)*TANAI
252      BD(761)=STG(134)*AHT(10)
253      BD(64)=BD(762)-BD(761)*SINAI-ZCG
254      BD(63)=BD(84)-BD(761)*COSAI
255      ICDWB=0
256      IP=0
257      IQ=0
258      DO 1190 J=1,NALPHA
259         CALL TBFUNX(FLC(J+22),YARG,CDAWB(J) ,NALPHA,FLC(23),BW(1),
260     1               CCDWB,ICDWB,MI,NG,0,0,4HYARG,1,ROUTID)
261         ALPAHT=FLC(J+22)-EPSLON(J)+ALIH
262         ALPAT=(STG(J+32)*RAD-EPSLON(J))/RAD
263         IF(CANARD) ALPAT=STG(J+32)
264         CALL TBFUNX(ALPAT,CLH(J),DYDX,NALPHA,STG(33),HT(21),
265     1               CAA,IP,MI,NG,0,0,4HCLH ,1,ROUTID)
266         CALL TBFUNX(ALPAT,CLAHA(J),DYDX,NALPHA,STG(33),HT(101),
267     1               CB,IQ,MI,NG,0,0,4HCLHA,1,ROUTID)
268         DETCL=ARG3*ALPAHT   *IVBH(J)*GAMMA(J)*QOQINF(J)
269         DCLOAL = ARG3*IVBH(J)*GAMMA(J)*QOQINF(J)
270 1140    ALPA=FLC(J+22)-EPSLON(J)
271         CLTB(J)=(ARG2+(CLH(J)-CLI)*ARG1)*QOQINF(J)*((MACH**2-1.0)/(
272     1           HMACH(J)**2-1.0))**0.50
273         IF(.NOT. CANARD) GO TO 1150
274         CLWBT(J)=CLWB(J)+CLTB(J)+DETCL+DELTAT(J)*FLC(J+22)
275         FACT(J+101)=0.0
276         IF(ALPAHT .EQ. 0.0) GO TO 1160
277         FACT(J+101)=(DCLOAL*EPSLON(J+20)
278     1               -DELTAT(J)*FLC(J+22))/(DCLOAL
279     2               +CLAHA(J)*ARG1*QOQINF(J)*((MACH**2-1.0)/(HMACH(J)
280     3                **2-1.0))**0.5)
281         GO TO 1160
282 1150    CONTINUE
283         CLWBT(J)=CLWB(J)+CLTB(J)+DETCL
284 1160    CONTINUE
285C
286C     ********* CALCULATE (CM)ALPHA WBT **********
287C
288         IF(CANARD) ALPA=FLC(J+22)
289         SA=SIN(ALPA/RAD)
290         CA=COS(ALPA/RAD)
291         DXACWB=CMAWB/CLAWB
292         APART=(DXACWB)*((-CLWB(J)/RAD+CDAWB(J))*SIN(FLC(J+22)/RAD)+
293     1         (CLAWB+CDWB(J)/RAD)*COS(FLC(J+22)/RAD))
294         ZAC=BD(68)-ZCG    -BD(78)*SLG(134)*A(10)
295         BPART=((ZAC)/CBARR)*((CLAWB+CDWB(J)/RAD)*SIN(FLC(J+22)
296     1         /RAD)+(CLWB(J)/RAD-CDAWB(J))*COS(FLC(J+22)/RAD))
297         IK=0
298         CALL TBFUNX(ALPAT,CDHT,DCDDA,NALPHA,STG(33),HT(1),CC,IK,MI,NG,
299     1               0,0,4HCDHT,1,ROUTID)
300         CLHT=(CLWBT(J)-CLWB(J))/QOQINF(J)
301         DCLDA=CLAHB+CLABH
302         IF(.NOT. CANARD) GO TO 1170
303         DCLDA=DCLDA+DELTAT(J)/QOQINF(J)
304 1170 CONTINUE
305      CPART=(-CLHT+DCDDA)*SA/RAD
306      DPART=( CLHT-DCDDA)*CA/RAD
307      EPART=QOQINF(J)*(1.0-DEDALP(J))
308      FPART=(DCLDA+CDHT/RAD)*SA
309      GPART=(DCLDA+CDHT/RAD)*CA
310      CMAH(J)=(BD(63)/CBARR)*(CPART+GPART)*EPART-(BD(64)/
311     1         CBARR)*(FPART+DPART)*EPART
312      IF(.NOT. CANARD) GO TO 1180
313      CMAH(J)=CMAH(J)/(1.0-DEDALP(J))
314 1180 CMAWBT(J)=APART-BPART+CMAH(J)
315C
316C     COMPUTE WING-BODY-TAIL PITCHING MOMENT INCLUDING INCIDENCE EFFECTS
317C
318      CMWBT(J)=CMAWBT(J)*FLC(J+22)+(SLG(136)/RAD)*(SWB(2)+SWB(37))*ALIW
319     1         +(STG(136)/RAD)*(STP(131)+STP(132))*ALIH*QOQINF(J)
320C
321C     ********* CALCULATE (CD)WBT ***********
322C
323      CD0WBT=CD0WB+CD0H
324      CD0WBV=CD0WBT+CD0V+CD0VF
325      CDWBT(J)=CDWB(J)+(CDHT   *COS(EPSLON(J)/RAD)+CLH(J)*
326     1         SIN(EPSLON(J)/RAD))*QOQINF(J)
327      CDWBTV(J)=CDWBT(J)+CD0V+CD0VF
328 1190 CONTINUE
329C
330C     *********CN(J) AND CA(J)*********
331C
332      DO 1200 J=1,NALPHA
333         BWHV(J+120) = CMAWBT(J)
334         BWHV(J+100) = CLAWBT(J)
335         COSA=COS(FLC(J+22)/RAD)
336         SINA=SIN(FLC(J+22)/RAD)
337         CNWBT(J)=CLWBT(J)*COSA+CDWBT(J)*SINA
338         CAWBT(J)=CDWBT(J)*COSA-CLWBT(J)*SINA
339         BWHV(J+20) = CLWBT(J)
340         BWHV(J+40)=CMWBT(J)
341         CNWBTV(J)=CLWBT(J)*COSA+CDWBTV(J)*SINA
342 1200 CAWBTV(J)=CDWBTV(J)*COSA-CLWBT(J)*SINA
343      IF(TANLE .EQ. 0.00001)TANLE=0.0
344      RETURN
345      END
346