Wings and tails
The structural loads of the surfaces balance the net loads and moments resulting from weight and aerodynamics ($\tilde{p}$) as summarized in the Figure below. The distributions are also modified by point loads (i.e., engines and an optional strut).
The wing and tail surface stress and weight analyses are performed in the cross-sectional plane, normal to the spanwise axis $y_{\scriptscriptstyle \perp}$ running along the wing box. The assumed wing or tail airfoil and structural box cross-section is shown in the figure below. Note that leading edges, fairings, slats, flaps, and spoilers contribute to weight but not to the primary structure.
📖 Theory - Normal-plane Stresses
Together with the normal-plane coordinate and chord relations, the shear and bending moment are related to the corresponding airplane-axes quantities and to the sweep angle $\Lambda$ as follows.
\[\begin{aligned} {\cal S}_{\scriptscriptstyle \perp}& = & {\cal S} %\label{Sperp} \\ {\cal M}_{\scriptscriptstyle \perp}& = & {\cal M}/ \cos \Lambda %\label{Mperp} \end{aligned}\]
The box is assumed to be the only structurally-significant element, with the slats, flaps, and spoilers (if any), represented only by added weight. It is convenient to define all dimensions as ratios with the local normal-plane chord $c_{\scriptscriptstyle \perp}$.
\[\begin{aligned} \bar{h} &\!\equiv\!& \frac{h_{\rm wbox}}{c_{\scriptscriptstyle \perp}} \\ \bar{w} &\!\equiv\!& \frac{w_{\rm wbox}}{c_{\scriptscriptstyle \perp}} \\ \bar{t}_{\rm cap}&\!\equiv\!& \frac{t_{\rm cap}}{c_{\scriptscriptstyle \perp}} \\ \bar{t}_{\rm web}&\!\equiv\!& \frac{t_{\rm web}}{c_{\scriptscriptstyle \perp}} \end{aligned}\]
The maximum height $h_{\rm wbox}$ at the box center corresponds to the airfoil thickness, so that $\bar{h}$ is the usual "$t/c$" airfoil thickness ratio. The height is assumed to taper off quadratically to a fraction $r_h$ at the webs, so that the local height $h {\scriptstyle (\xi)}$ is $\begin{aligned} h {\scriptstyle (\xi)}& = & h_{\rm wbox}\left[ \: 1 - (1\!-\!r_h) \xi^2 \: \right] \end{aligned}$
where $\xi = -1 \ldots 1$ runs chordwise over the sparbox extent. Typical metal wings and airfoils have $\bar{w} \simeq 0.5$, $r_h \simeq 0.75$, although these are left as input parameters. For evaluating areas and approximating the bending inertia, it's useful to define the simple average and r.m.s. average normalized box heights.
\[\begin{aligned} \bar{h}_{\rm avg}& = & \frac{1}{c_{\scriptscriptstyle \perp}} \int_0^1 h {\scriptstyle (\xi)}\; {\rm d}\xi \;=\; \bar{h} \left[ \: 1 - \frac{1}{3}(1\!-\!r_h) \, \right] \\ \bar{h}_{\rm rms}^2 & = & \frac{1}{c_{\scriptscriptstyle \perp}^2} \int_0^1 h^2 {\scriptstyle (\xi)}\; {\rm d}\xi \;=\; \bar{h}^2 \left[ \: 1 - \frac{2}{3}(1\!-\!r_h) + \frac{1}{5} (1\!-\!r_h)^2 \, \right] \end{aligned}\]
The areas and the bending and torsion inertias, all normalized by the normal chord, can now be determined.
\[\begin{aligned} \bar{A}_{\rm fuel}&\!\equiv\!& \frac{A_{\rm fuel}}{c_{\scriptscriptstyle \perp}^2} \;=\; (\bar{w} - 2 \bar{t}_{\rm web})(\bar{h}_{\rm avg}- 2 \bar{t}_{\rm cap}) \\ \bar{A}_{\rm cap}&\!\equiv\!& \frac{A_{\rm cap}}{c_{\scriptscriptstyle \perp}^2} \;=\; 2 \, \bar{t}_{\rm cap}\bar{w} \\ \bar{A}_{\rm web}&\!\equiv\!& \frac{A_{\rm web}}{c_{\scriptscriptstyle \perp}^2} \;=\; 2 \, \bar{t}_{\rm web}\, r_h \, \bar{h} \\ \bar{I}_{\rm cap}& \simeq & \frac{I_{\rm cap}}{c_{\scriptscriptstyle \perp}^4} \;=\; \frac{\bar{w}}{12} \left[ \bar{h}_{\rm rms}^3 - (\bar{h}_{\rm rms}\!\!-\!2\bar{t}_{\rm cap})^3 \right] \\ \bar{I}_{\rm web}&\!\equiv\!& \frac{I_{\rm web}}{c_{\scriptscriptstyle \perp}^4} \;=\; \frac{\bar{t}_{\rm web}\, r_h^3 \, \bar{h}^3}{6} \; \ll \; \bar{I}_{\rm cap} \hspace{2em} \mathrm{(typically)} \\ G\bar{J} &\!\equiv\!& \frac{4 (\bar{w} - \bar{t}_{\rm web})^2 (\bar{h}_{\rm avg}- \bar{t}_{\rm cap})^2} { \displaystyle 2 \frac{ r_h \bar{h} \!-\! \bar{t}_{\rm cap}}{G_{\rm web}\bar{t}_{\rm web}} \:+\: 2 \frac{ \bar{w} \!-\! \bar{t}_{\rm web}}{G_{\rm cap}\bar{t}_{\rm cap}} } \end{aligned}\]
TASOPT.structures.surfw
— Methodsurfw(po, b, bs, bo, co, zs,
lambdat, lambdas, gammat, gammas,
Nload, iwplan, We, neout, dyeout, neinn, dyeinn,
Winn, Wout, dyWinn, dyWout,
sweep, wbox, hboxo, hboxs, rh, fLt,
tauweb, sigcap, sigstrut, Ecap, Eweb, Gcap, Gweb,
rhoweb, rhocap, rhostrut, rhofuel)
Calculates Wing or Tail loads, stresses, weights of individual wing sections. Also returns the material gauges, torsional and bending stiffness.
🔃 Inputs and Outputs
Inputs:
po::Float64
: Point where loads and stresses are calculated.b::Float64
: Wingspan.bs::Float64
: Spanwise location of the start of the taper.bo::Float64
: Spanwise location of the root chord.co::Float64
: Root chord length.zs::Float64
: Height of the strut attach point above wing.lambdat::Float64
: Tip chord ratio (tip chord / root chord).lambdas::Float64
: Start chord ratio (start chord / root chord).gammat::Float64
: Tip airfoil section shape exponent.gammas::Float64
: Start airfoil section shape exponent.Nload::Int
: Number of loads (used to distribute engine loads).iwplan::Int
: Indicates the presence of a strut.We::Float64
: Weight of the engine.neout::Int
: Number of outboard engines.dyeout::Float64
: Distance between engines and the wingtip.neinn::Int
: Number of inboard engines.dyeinn::Float64
: Distance between engines and the wing root.Winn::Float64
: Weight of inboard engines.Wout::Float64
: Weight of outboard engines.dyWinn::Float64
: Weight distribution of inboard engines.dyWout::Float64
: Weight distribution of outboard engines.sweep::Float64
: Sweep angle in degrees.wbox::Float64
: Width of the wing box.hboxo::Float64
: Height of the wing box at the root.hboxs::Float64
: Height of the wing box at the strut attach point.rh::Float64
: Fractional height of the wing box.fLt::Float64
: Factor applied to the tip load.tauweb::Float64
: Web material shear strength.sigcap::Float64
: Cap material axial compressive strength.sigstrut::Float64
: Strut material axial compressive strength.Ecap::Float64
: Cap material Young's modulus.Eweb::Float64
: Web material Young's modulus.Gcap::Float64
: Cap material shear modulus.Gweb::Float64
: Web material shear modulus.rhoweb::Float64
: Density of the web material.rhocap::Float64
: Density of the cap material.rhostrut::Float64
: Density of the strut material.rhofuel::Float64
: Density of the fuel.
Outputs:
Ss::Float64
: Outboard section shear load.Ms::Float64
: Outboard section moment.tbwebs::Float64
: Web thickness at the strut attach point.tbcaps::Float64
: Cap thickness at the strut attach point.EIcs::Float64
: Combined cap and web bending stiffness at the strut attach point.EIns::Float64
: Combined cap and web normal stiffness at the strut attach point.GJs::Float64
: Combined cap and web shear stiffness at the strut attach point.So::Float64
: Inboard section shear load.Mo::Float64
: Inboard section moment.tbwebo::Float64
: Web thickness at the wing root.tbcapo::Float64
: Cap thickness at the wing root.EIco::Float64
: Combined cap and web bending stiffness at the wing root.EIno::Float64
: Combined cap and web normal stiffness at the wing root.GJo::Float64
: Combined cap and web shear stiffness at the wing root.Astrut::Float64
: Strut axial force.lsp::Float64
: Strut length.cosLs::Float64
: Cosine of the sweep angle at the strut attach point.Wscen::Float64
: Weight of center section (inboard of the strut).Wsinn::Float64
: Weight of the inner section.Wsout::Float64
: Weight of the outer section.dxWsinn::Float64
: Lateral distribution of inner section weight.dxWsout::Float64
: Lateral distribution of outer section weight.dyWsinn::Float64
: Vertical distribution of inner section weight.dyWsout::Float64
: Vertical distribution of outer section weight.Wfcen::Float64
: Weight of center section fuel.Wfinn::Float64
: Weight of the inner section fuel.Wfout::Float64
: Weight of the outer section fuel.dxWfinn::Float64
: Lateral distribution of inner section fuel weight.dxWfout::Float64
: Lateral distribution of outer section fuel weight.dyWfinn::Float64
: Vertical distribution of inner section fuel weight.dyWfout::Float64
: Vertical distribution of outer section fuel weight.Wweb::Float64
: Weight of the wing web.Wcap::Float64
: Weight of the wing cap.Wstrut::Float64
: Weight of the strut.dxWweb::Float64
: Lateral distribution of web weight.dxWcap::Float64
: Lateral distribution of cap weight.dxWstrut::Float64
: Lateral distribution of strut weight.
See Geometry, Wing/Tail Structures, and Section 2.7 of the TASOPT Technical Description.
TASOPT.structures.tailpo
— Methodtailpo(S, AR, λa, qne, CLmax)
Calculates stabilizer span, root chord, and root loading based on the never-exceed dynamic pressure, maximum CL, sweep, and aspect ratio.
🔃 Inputs and Outputs
Inputs:
S::Float64
: Stabilizer area.AR::Float64
: Stabilizer aspect ratio.λa::Float64
: Stabilizer taper ratio (tip chord / root chord).qne::Float64
: Never-exceed dynamic pressure.CLmax::Float64
: Maximum coefficient of lift.
Outputs:
b::Float64
: Stabilizer wingspan.co::Float64
: Stabilizer root chord length.po::Float64
: Stabilizer root loading.
See Geometry or Section 2.3.2 and 2.9.6 of the TASOPT Technical Description.
TASOPT.structures.surfdx
— Method surfdx(b, bs, bo, λt, λs, sweep)
Calculates area centroid x-offset due to sweep and the mean aerodynamic chord (normalized by root chord, co
)
🔃 Inputs and Outputs
Inputs:
b::Float64
: Wingspanbs::Float64
: Spanwise location of the start of the taperbo::Float64
: Spanwise location of the root chordλt::Float64
: Tip chord ratio (tip chord / root chord)λs::Float64
: Start chord ratio (start chord / root chord).sweep::Float64
: Sweep angle in degrees.
Outputs:
dx::Float64
: Area centroid x-offset due to sweepmacco::Float64
: Mean aerodynamic chord normalized by root chord.
See Geometry or Section 2.5.1 of the TASOPT Technical Description.