|
| 1 | +{ |
| 2 | + "cells": [ |
| 3 | + { |
| 4 | + "cell_type": "markdown", |
| 5 | + "id": "d5a57747", |
| 6 | + "metadata": {}, |
| 7 | + "source": [ |
| 8 | + "# Tail Sizing\n", |
| 9 | + "\n", |
| 10 | + "This section describes tail sizing for the example airplane. In the early stages of design, the tail volume coefficient method is used for initial sizing of tail surfaces. The tail volume coefficient is defined as the tail effectiveness non-dimensionalized using the product of wing area and appropriate length scale. The effectiveness of a tail can be measured using the product of tail area and tail moment arm. The length scale is defined based on whether the coefficient is computed for horizontal or vertical tail. Refer to lecture notes, Raymer section 6.5, Roskam part 2 chapter 8, and Nicolai & Carichner chapter 11 for more details.\n", |
| 11 | + "\n", |
| 12 | + "## Horizontal tail\n", |
| 13 | + "\n", |
| 14 | + "The horizontal tail volume coefficient is defined as\n", |
| 15 | + "\n", |
| 16 | + "$$\n", |
| 17 | + " V_h = \\frac{S_h L_h}{S \\bar{c}},\n", |
| 18 | + "$$\n", |
| 19 | + "\n", |
| 20 | + "where $S_h$ and $S$ are the horizontal tail surface and main wing areas, respectively, while $\\bar{c}$ refers to the mean aerodynamic chord of the wing. The $L_h$ is the horizontal tail moment arm, measured as the distance between the mean aerodynamic centers of the horizontal tail surface and the wing. The value of the coefficient and tail moment arm are estimated based on the historical data for a similar class of airplanes. For the example airplane, the $V_h$ and $L_h$ are set to 0.8 and 15 ft, respectively.\n", |
| 21 | + "\n", |
| 22 | + "The planform values for the horizontal tail surface are estimated using the historical data presented in Table 8.13, Roskam Part 2. The aspect ratio is set to 5.5, while taper ratio is 0.75. The quarter chord sweep is set to $10^{\\circ}$ and the dihedral angle is set to $5^{\\circ}$, while the incidence angle is kept variable for trimming purposes. The NACA 0012 is used as the airfoil for the hortizontal tail surface.\n", |
| 23 | + "\n", |
| 24 | + "Below code block computes the value of horizontal tail surface planform variables based on the equations outlined in [wing planform section](wing_layout):" |
| 25 | + ] |
| 26 | + }, |
| 27 | + { |
| 28 | + "cell_type": "code", |
| 29 | + "execution_count": 1, |
| 30 | + "id": "86b4760c", |
| 31 | + "metadata": {}, |
| 32 | + "outputs": [ |
| 33 | + { |
| 34 | + "name": "stdout", |
| 35 | + "output_type": "stream", |
| 36 | + "text": [ |
| 37 | + "Area: 31 sq. ft\n", |
| 38 | + "Span: 13 ft\n", |
| 39 | + "Root chord: 2.7 ft\n", |
| 40 | + "Tip chord: 2.0 ft\n", |
| 41 | + "MAC: 2.4 ft\n", |
| 42 | + "y_mac: 3.1 ft\n" |
| 43 | + ] |
| 44 | + } |
| 45 | + ], |
| 46 | + "source": [ |
| 47 | + "# wing variables\n", |
| 48 | + "S = 134 # sq ft\n", |
| 49 | + "wing_mac = 4.3 # ft\n", |
| 50 | + "\n", |
| 51 | + "# variables\n", |
| 52 | + "aspect_ratio_h = 5.5\n", |
| 53 | + "taper_ratio_h = 0.75\n", |
| 54 | + "sweep_qc_h = 10 # deg\n", |
| 55 | + "V_h = 0.8\n", |
| 56 | + "l_h = 15 # ft\n", |
| 57 | + "\n", |
| 58 | + "# area\n", |
| 59 | + "tail_area_h = V_h * S * wing_mac / l_h\n", |
| 60 | + "\n", |
| 61 | + "# span\n", |
| 62 | + "b_h = (aspect_ratio_h*tail_area_h)**0.5\n", |
| 63 | + "\n", |
| 64 | + "# root chord\n", |
| 65 | + "c_root_h = 2 * tail_area_h / b_h / (1 + taper_ratio_h) # ft\n", |
| 66 | + "\n", |
| 67 | + "# tip chord\n", |
| 68 | + "c_tip_h = taper_ratio_h * c_root_h # ft\n", |
| 69 | + "\n", |
| 70 | + "# MAC\n", |
| 71 | + "mac_h = 2 * c_root_h * (1 + taper_ratio_h + taper_ratio_h**2) / 3 / (1 + taper_ratio_h)\n", |
| 72 | + "\n", |
| 73 | + "# y_mac\n", |
| 74 | + "y_mac_h = b_h * (1 + 2*taper_ratio_h) / 6 / (1 + taper_ratio_h)\n", |
| 75 | + "\n", |
| 76 | + "# Print values\n", |
| 77 | + "print(f\"Area: {tail_area_h:.0f} sq. ft\")\n", |
| 78 | + "print(f\"Span: {b_h:.0f} ft\")\n", |
| 79 | + "print(f\"Root chord: {c_root_h:.1f} ft\")\n", |
| 80 | + "print(f\"Tip chord: {c_tip_h:.1f} ft\")\n", |
| 81 | + "print(f\"MAC: {mac_h:.1f} ft\")\n", |
| 82 | + "print(f\"y_mac: {y_mac_h:.1f} ft\")" |
| 83 | + ] |
| 84 | + }, |
| 85 | + { |
| 86 | + "cell_type": "markdown", |
| 87 | + "id": "a2f0132c", |
| 88 | + "metadata": {}, |
| 89 | + "source": [ |
| 90 | + "## Vertical tail\n", |
| 91 | + "\n", |
| 92 | + "The vertical tail volume coefficient is defined as\n", |
| 93 | + "\n", |
| 94 | + "$$\n", |
| 95 | + " V_v = \\frac{S_v L_v}{S b},\n", |
| 96 | + "$$\n", |
| 97 | + "\n", |
| 98 | + "where $S_v$ is the vertical tail surface area, while $b$ refers to the wing span. The $L_v$ is the vertical tail moment arm, measured as the distance between the mean aerodynamic centers of the vertical tail surface and the wing. The value of the coefficient and tail moment arm are estimated based on the historical data for a similar class of airplanes. For the example airplane, the $V_v$ and $L_v$ are set to 0.065 and 17 ft, respectively. Next, the planform values for the vertical tail surface are estimated using the historical data presented in Table 8.13 (Roskam Part 2). The aspect ratio is set to 1.3, while taper ratio is 0.55. The quarter chord sweep is set to $30^{\\circ}$ and the NACA 0012 is used as the airfoil..\n", |
| 99 | + "\n", |
| 100 | + "Below code block computes the value of vertical tail surface planform variables:" |
| 101 | + ] |
| 102 | + }, |
| 103 | + { |
| 104 | + "cell_type": "code", |
| 105 | + "execution_count": 2, |
| 106 | + "id": "4b341b0c", |
| 107 | + "metadata": {}, |
| 108 | + "outputs": [ |
| 109 | + { |
| 110 | + "name": "stdout", |
| 111 | + "output_type": "stream", |
| 112 | + "text": [ |
| 113 | + "Area: 17 sq. ft\n", |
| 114 | + "Span: 5 ft\n", |
| 115 | + "Root chord: 4.7 ft\n", |
| 116 | + "Tip chord: 2.6 ft\n", |
| 117 | + "MAC: 3.7 ft\n", |
| 118 | + "y_mac: 2.1 ft\n" |
| 119 | + ] |
| 120 | + } |
| 121 | + ], |
| 122 | + "source": [ |
| 123 | + "# wing variables\n", |
| 124 | + "S = 134 # sq ft\n", |
| 125 | + "b = 33 # ft\n", |
| 126 | + "\n", |
| 127 | + "# variables\n", |
| 128 | + "aspect_ratio_v = 1.3\n", |
| 129 | + "taper_ratio_v = 0.55\n", |
| 130 | + "sweep_qc_v = 30 # deg\n", |
| 131 | + "V_v = 0.065\n", |
| 132 | + "l_v = 17 # ft\n", |
| 133 | + "\n", |
| 134 | + "# area\n", |
| 135 | + "tail_area_v = V_v * S * b / l_v\n", |
| 136 | + "\n", |
| 137 | + "# span\n", |
| 138 | + "b_v = (aspect_ratio_v*tail_area_v)**0.5\n", |
| 139 | + "\n", |
| 140 | + "# root chord\n", |
| 141 | + "c_root_v = 2 * tail_area_v / b_v / (1 + taper_ratio_v) # ft\n", |
| 142 | + "\n", |
| 143 | + "# tip chord\n", |
| 144 | + "c_tip_v = taper_ratio_v * c_root_v # ft\n", |
| 145 | + "\n", |
| 146 | + "# MAC\n", |
| 147 | + "mac_v = 2 * c_root_v * (1 + taper_ratio_v + taper_ratio_v**2) / 3 / (1 + taper_ratio_v)\n", |
| 148 | + "\n", |
| 149 | + "# y_mac, multiplied by 2\n", |
| 150 | + "y_mac_v = 2 * b_v * (1 + 2*taper_ratio_v) / 6 / (1 + taper_ratio_v)\n", |
| 151 | + "\n", |
| 152 | + "# Print values\n", |
| 153 | + "print(f\"Area: {tail_area_v:.0f} sq. ft\")\n", |
| 154 | + "print(f\"Span: {b_v:.0f} ft\")\n", |
| 155 | + "print(f\"Root chord: {c_root_v:.1f} ft\")\n", |
| 156 | + "print(f\"Tip chord: {c_tip_v:.1f} ft\")\n", |
| 157 | + "print(f\"MAC: {mac_v:.1f} ft\")\n", |
| 158 | + "print(f\"y_mac: {y_mac_v:.1f} ft\")" |
| 159 | + ] |
| 160 | + }, |
| 161 | + { |
| 162 | + "cell_type": "markdown", |
| 163 | + "id": "0253d82b", |
| 164 | + "metadata": {}, |
| 165 | + "source": [ |
| 166 | + "> __*NOTE*:__ The value of the spanwise location of mac obtained from the equation should be multiplied by 2 for a vertical tail surface\n", |
| 167 | + "\n", |
| 168 | + "## Summary\n", |
| 169 | + "\n", |
| 170 | + "\n", |
| 171 | + "Following table summarizes the tail surface sizing for the example airplane:\n", |
| 172 | + "\n", |
| 173 | + "<div style=\"width:70%; margin: auto;\">\n", |
| 174 | + "\n", |
| 175 | + "Parameter | Horizontal tail | Vertical tail | Source \n", |
| 176 | + "--- | :---: | :---: | :---:\n", |
| 177 | + "Tail volume coefficient | 0.8 | 0.065 | historical data\n", |
| 178 | + "Tail moment arm | 15 ft | 17 ft | historical data\n", |
| 179 | + "Surface area | 31 $\\text{ft}^2$ | 17 $\\text{ft}^2$ | calculated\n", |
| 180 | + "Span | 13 ft | 5 ft | calculated\n", |
| 181 | + "Root chord | 2.7 ft | 4.7 ft | calculated\n", |
| 182 | + "Tip chord | 2 ft | 2.6 ft | calculated \n", |
| 183 | + "Mean aerodynamic chord | 2.4 ft | 3.7 ft | calculated\n", |
| 184 | + "Spanwise location of mac | 3.1 ft | 2.1 ft | calculated\n", |
| 185 | + "Quarter chord sweep | $10^{\\circ}$ | $30^{\\circ}$ | historical data\n", |
| 186 | + "Incidence | variable | - | -\n", |
| 187 | + "Dihedral | $5^{\\circ}$ | - | historical data\n", |
| 188 | + "Airfoil | NACA 0012 | NACA 0012 | historical data\n", |
| 189 | + "</div>\n", |
| 190 | + "\n", |
| 191 | + "> __*NOTE*:__ Most of these values are based on historical estimates, and hence, should be further refined to meet the control and stability requirements of the airplane, if required." |
| 192 | + ] |
| 193 | + } |
| 194 | + ], |
| 195 | + "metadata": { |
| 196 | + "kernelspec": { |
| 197 | + "display_name": "451", |
| 198 | + "language": "python", |
| 199 | + "name": "python3" |
| 200 | + }, |
| 201 | + "language_info": { |
| 202 | + "codemirror_mode": { |
| 203 | + "name": "ipython", |
| 204 | + "version": 3 |
| 205 | + }, |
| 206 | + "file_extension": ".py", |
| 207 | + "mimetype": "text/x-python", |
| 208 | + "name": "python", |
| 209 | + "nbconvert_exporter": "python", |
| 210 | + "pygments_lexer": "ipython3", |
| 211 | + "version": "3.11.13" |
| 212 | + } |
| 213 | + }, |
| 214 | + "nbformat": 4, |
| 215 | + "nbformat_minor": 5 |
| 216 | +} |
0 commit comments