1 SUBROUTINE CORDSP 2C 3C CALCULATE SUPERSONIC AIRFOIL COORDINATES FROM NACA CARD 4C 5 COMMON /IWING/ PW,X(60) 6 COMMON /IHT/ PHT,XU(60),XL(60),YUU(60),YLL(60) 7 COMMON /IVT/ PVT,YU(60),YL(60) 8 COMMON /IBW/ PBW,L,I,J,K,II,JJ,KK,III,JJJ,KKK,LLL 9 COMMON /WINGI/ WGIN(100) 10 COMMON /HTI/ HTIN(154) 11 COMMON /VTI/ VTIN(154),TVTIN(8),VFIN(154) 12 COMMON /IBWHV/ PBWHV,RHO,TOC 13 COMMON /IBODY/ PB,NACA(80) 14 COMMON /CONSNT/ PI,DEG,UNUSED,RAD 15 REAL KSHARP 16 INTEGER A4HH,A4HV,A4HF,A4HSTR 17 DATA A4HH,A4HV,A4HF,A4HSTR/4HH ,4HV ,4HF ,4HSTRA/ 18C 19 XT=(100.*J+10.*K+II)/1000. 20 TOC=(100.*JJ+10.*KK+III)/1000. 21 XF=(100.*JJJ+10.*KKK+LLL)/1000. 22 RHO=0. 23 GO TO (1020,1000,1050), I 24 1000 CONTINUE 25C 26C HERE FOR BICONVEX (CIRCULAR ARC) 27C 28 XT=0.50 29 KSHARP=16./3. 30 RC=(TOC**2+1.)/(4.*TOC) 31 DO 1010 IL=1,60 32 XU(IL)=X(IL) 33 XL(IL)=X(IL) 34 YU(IL)=TOC/2.-RC+SQRT(RC**2-(X(IL)-.5)**2) 35 YL(IL)=-YU(IL) 36 1010 CONTINUE 37 GO TO 1090 38 1020 CONTINUE 39C 40C HERE FOR DOUBLE WEDGE 41C 42 KSHARP=(1./XT)/(1.-XT) 43 DO 1040 IL=1,60 44 XU(IL)=X(IL) 45 XL(IL)=X(IL) 46 IF(X(IL).GT.XT)GO TO 1030 47 YU(IL)=X(IL)*TOC/(2.*XT) 48 YL(IL)=-YU(IL) 49 GO TO 1040 50 1030 YU(IL)=TOC/2.-(X(IL)-XT)*TOC/(2.*(1.-XT)) 51 YL(IL)=-YU(IL) 52 1040 CONTINUE 53 GO TO 1090 54 1050 CONTINUE 55C 56C HERE FOR HEXAGONAL 57C 58 KSHARP=(1.-XF)/(XT*(1.-XT-XF)) 59 DO 1080 IL=1,60 60 XU(IL)=X(IL) 61 XL(IL)=X(IL) 62 IF(X(IL).GE.(XT+XF))GO TO 1070 63 IF(X(IL).GE.(XT ))GO TO 1060 64 YU(IL)=X(IL)*TOC/(2.*XT) 65 YL(IL)=-YU(IL) 66 GO TO 1080 67 1060 YU(IL)=TOC/2. 68 YL(IL)=-YU(IL) 69 GO TO 1080 70 1070 YU(IL)=TOC/2.-(X(IL)-XT-XF)*TOC/(2.*(1.-XT-XF)) 71 YL(IL)=-YU(IL) 72 1080 CONTINUE 73 1090 CONTINUE 74C 75C SET SOME OF THE CALCULATED VALUES IN THE INPUT ARRAYS 76C 77 IF(NACA(6).EQ.A4HH)GO TO 1100 78 IF(NACA(6).EQ.A4HV)GO TO 1110 79 IF(NACA(6).EQ.A4HF)GO TO 1120 80C 81C HERE FOR WING 82C 83 IF(WGIN(16).EQ.UNUSED)WGIN(16)=TOC 84 IF(WGIN(18).EQ.UNUSED)WGIN(18)=XT 85 IF(WGIN(70).EQ.UNUSED)WGIN(70)=TOC 86 IF(WGIN(71).EQ.UNUSED)WGIN(71)=KSHARP 87 IF(WGIN(62).EQ.UNUSED)WGIN(62)=0. 88 IF(WGIN(15).NE.A4HSTR.AND.WGIN(63).EQ.UNUSED)WGIN(63)=0.0 89 GO TO 1130 90 1100 CONTINUE 91C 92C HERE FOR HORIZONTAL TAIL 93C 94 IF(HTIN(16).EQ.UNUSED)HTIN(16)=TOC 95 IF(HTIN(18).EQ.UNUSED)HTIN(18)=XT 96 IF(HTIN(70).EQ.UNUSED)HTIN(70)=TOC 97 IF(HTIN(71).EQ.UNUSED)HTIN(71)=KSHARP 98 IF(HTIN(62).EQ.UNUSED)HTIN(62)=0. 99 IF(HTIN(15).NE.A4HSTR.AND.HTIN(63).EQ.UNUSED)HTIN(63)=0.0 100 GO TO 1130 101 1110 CONTINUE 102C 103C HERE FOR VERTICAL TAIL 104C 105 IF(VTIN(16).EQ.UNUSED)VTIN(16)=TOC 106 IF(VTIN(18).EQ.UNUSED)VTIN(18)=XT 107 IF(VTIN(70).EQ.UNUSED)VTIN(70)=TOC 108 IF(VTIN(71).EQ.UNUSED)VTIN(71)=KSHARP 109 IF(VTIN(62).EQ.UNUSED)VTIN(62)=0. 110 IF(VTIN(15).NE.A4HSTR.AND.VTIN(63).EQ.UNUSED)VTIN(63)=0.0 111 GO TO 1130 112 1120 CONTINUE 113C 114C HERE FOR VENTRAL FIN 115C 116 IF(VFIN(16).EQ.UNUSED)VFIN(16)=TOC 117 IF(VFIN(18).EQ.UNUSED)VFIN(18)=XT 118 IF(VFIN(70).EQ.UNUSED)VFIN(70)=TOC 119 IF(VFIN(71).EQ.UNUSED)VFIN(71)=KSHARP 120 IF(VFIN(62).EQ.UNUSED)VFIN(62)=0. 121 IF(VFIN(15).NE.A4HSTR.AND.VFIN(63).EQ.UNUSED)VFIN(63)=0.0 122 1130 CONTINUE 123 DO 1140 IL=1,60 124 YUU(IL)=YU(IL) 125 YLL(IL)=YL(IL) 126 1140 CONTINUE 127C 128C REST OF THE SUPERSONIC OUTPUTS ARE SET IN SECO 129C 130 RETURN 131 END 132