User Tools

Site Tools


Wave Drag

As a central goal of his MS in Aerospace Engineering thesis, Michael Waddington developed the Wave Drag tool in OpenVSP. This replaced the AWAVE drag tool available in earlier OpenVSP versions, which provided the cross-sectional area calculations necessary for an AWAVE analysis. For details of wave drag methodology, tool development path, implementation details, and validation studies, Michael Waddington's thesis is available here: Development of an Interactive Wave Drag Capability for the OpenVSP Parametric Geometry Tool

For additional information, Rob McDonald's presentation at the 2016 OpenVSP Workshop can be viewed here: OpenVSP Workshop 2016: Wave Drag Presentation


Wave drag is a phenomenon experienced during transonic/supersonic flight due to the presence of shock waves, which leads to a sharp increase in the drag coefficient. In 1952, Richard Whitcomb of NACA discovered the area-ruling technique, where the cross-sectional area distribution is managed to reduce wave drag. This leading approach to wave drag minimization is known as the Whitcomb area rule, often referred to simply as ‘area-ruling’. By carefully managing the cross-sectional area distribution longitudinally as to avoid deviation from a smooth profile, a designer can prevent strong shock waves. The goal of reducing the wave drag over a body can be accomplished by minimizing the following integral:

$$ I=- \frac{1}{2\pi} \int_0^1 \int_0^1 S''(x)S''(y) log|x-y|dxdy $$

where x and y are Cartesian coordinates, S represents area distribution, and the body length has been normalized to unity. A Fourier analysis of the equation, as proposed by Eminton and Lord1, allows the minimum value of the integral to be found.

Wave Drag GUI

The Wave Drag GUI is accessed by selecting “Wave Drag…” from the Analysis menu. Without a run of an analysis, the data does not yet exist to populate either the results fields or the cross-sectional area plot. Once the wave drag calculation has run, results from the tool are available for the remainder of the OpenVSP session.

Setup Tab

Firstly, under the “Case Setup” header, the user is permitted to select the geometry set on which to run the analysis. By default, the analysis will run on all sets.

Secondly, user controls exist for the number of slices per θ rotation and the number of θ rotations. Also shown is a toggle button permitting the tool to be run with or without X−Z symmetry. When this symmetry option is turned on, as is the default, the wave drag tool rescales the distribution of the θ rotations on a 0−180° basis rather than 0−360°. The intent here is to utilize this feature when the two X−Z halves of the geometry are identical. The advantage of applying this option is achieving the same fidelity with fewer rotations and, thus, quicker calculations.

It is worth noting that with fewer rotations, the symmetry option will achieve the same result as without the symmetry option when the user enters an even number n of rotations; the impossibility of having a fraction of a rotation precludes exactly equal results when the user enters an odd number n of rotations.

The middle portion of the “Setup” tab is dedicated to the “Flow Conditions” section in which the Mach number and reference area are set. Mach angle is computed internally as Mach number is typically more intuitive for users. The reference area that is used may be determined from the geometry or may be user-defined. By default, the manual option is selected, with an arbitrary value of 100 in the text field.

Lastly, a file navigator gives the option to save the resulting cross-sectional areas as a text output. The “…” button opens a file browser and file naming window from which the user dictates a *.txt file in which the calculated data will be saved. The file string is displayed in the “File” text field.

With these setup values, the zero-lift wave drag coefficient, CD0_w, can be calculated.

Sub-Surfaces and the Inflow/Outflow Tab

Handling flow-through components can be achieved directly by building a component with a hole or indirectly by building a solid component and using sub-surfaces to designate the flow faces; the wave drag tool provides the functionality to designate sub-surfaces as flow-through. Accommodating solid flow-through components was accomplished by extending flow faces into stream tubes that are intersected by each Mach cutting plane.

Adding flow faces onto solid components for the wave drag tool begins with placing sub-surfaces on the components intended to be flow-through. This is done using the sub-surface interface for the component. The user must dictate whether the subsurface lies outside or inside the sub-surface line by selecting “Greater” or “Less” from the subsurface menu. With the Line sub-surface, these options are with respect to x-location— with the “Greater” option, the portion of the component located in the positive x-direction from the subsurface line will be designated as the sub-surface, while the opposite is true for the “Less” option. For example, to create inlet and exit sub-surfaces on an engine component, the user would add a sub-surface Line with “Less” at the inlet location and a subsurface Line with “Greater” at the exit location.

The user then communicates to the wave drag tool the sub-surfaces that are to be considered flow-through by using the “Inflow/Outflow” tab of the wave drag tool GUI. This tab contains a checklist window of all sub-surfaces in the vehicle. The default condition of the check boxes is unchecked, meaning that no surfaces are considered flow surfaces. Checking the boxes next to the sub-surfaces to be used as flow faces is the only action required by the user. The wave drag tool uses the geometry of the model to determine whether the sub-surface is an inlet or an exit and performs the analysis accordingly.

Plot Tab

Controls for managing the visual interaction tools were segregated into the “Plot” tab of the Wave Drag GUI. A rotation index selector under the “Displayed Rotation” header allows the user to select which of the available θ rotation cross-sectional area plots to visualize. An additional text field to the right of the header is provided to display the value, in degrees, of the currently selected θ.

A visual indicator of the current x-location of interest is shown on the cross-sectional area plot, as well as in the form of a translucent cutting plane on the geometry window. The slider under “Slice Reference” header controls the x-location of these indicators. The cutting plane visualizer is discussed in additional detail later in this section, and can be toggled on and off using the “Plane” button to the right of the “Slice Reference” header.

Additional functionality is built into this visual indicator pertaining to the locations of maximum wave drag on the body. As stated by Eminton and Lord 1, the equation for S′(x) allows for differentiation such that the x-value corresponding to the location of maximum wave drag contribution may be determined. In the wave drag tool, these x-values are determined for each set of Mach cutting planes over the dictated θ rotations.

The “X” button immediately right of the visual indicator control relocates the visual indicator to the x-location of the maximum wave drag contribution on the presently selected θ rotation. The “X, Rot” button relocates to the global maximum wave drag contribution by changing the GUI selections to the value of θ that contains maximum wave drag contribution, as well as the x-location of the visual indictor to the location the maximum drag contribution.

The “Optimal Distribution” dropdown menu allows the user to select from a given list of available bodies of revolution whose cross-sectional area distributions will appear on the cross-sectional area plot along with the distribution for the existing aircraft model. The default is to display none of these curves, but the list contains: 1) Sears-Haack body; 2) von Karman ogive; and 3) Lighthill’s body. All three are bodies that use length and one other parameter to distribute area from nose to tail. These curves are useful for comparing to the area distribution of the aircraft model.

Under the “Plot Style” header, the user is given the opportunity to dictate the manner in which the cross-sectional area plot is constructed. By default, the plot will show the total cross-sectional area distribution, and show the plot line with data points. However, the user is also permitted to view the data by parts or by buildup. The user may also elect to show the plot lines without the data points. The “Legend” section at the bottom of the tab menu shows the relevant information for the Parts and Buildup selections.

Area Plot and Validation

On the right side of the GUI, visible on all tabs, is the results cross-sectional area plot. Each time the wave drag GUI is updated, the plot is redrawn to reflect any changes. The minimum of the y-axis is zero, for zero cross-sectional area, and the maximum value is the global maximum value of cross-sectional area for all θ, plus a buffer to disallow any data from being plotted at the very top of the plot.

Using the axis location and cross-sectional area as (x,y) coordinates, the data for the current θ is then plotted as black points on the canvas. The Fourier terms of the solution approach are used to create the smooth curve that approximates the discrete values from the area calculation, shown as the black line connecting the points on the cross-sectional area plot.

Selecting a body of revolution curve from the “Optimal Distribution” menu plots the selected curve in blue on top of the existing data.

The Sears-Haack body is the minimum wave drag shape for a given length and volume 2. In the wave drag tool, the length is obtained from the x-wise span of the current θ value; the volume is calculated as the integral of the area results on the current θ. The result is an equivalent Sears-Haack body created to match the geometry data from the aircraft model.

The von Karman ogive is most commonly referenced in nose cone design. This body uses a given length and maximum diameter to produce the minimum wave drag shape for when the maximum diameter is located at the base. The equation for the von Karman ogive is given in Reference 2; again, the length parameter used is the x-wise span of the current θ value.

Lighthill’s body is very similar to the von Karman ogive, with the length and diameter being specified. However, the maximum diameter location is moved to the midpoint. Certain assumptions are made about the slenderness of the body and sufficiently low supersonic Mach numbers in generating Lighthill’s body equation and are covered in Reference 2.


  1. Eminton, E. and Lord, W. T. “Note on the Numerical Evaluation of the Wave Drag of Smooth Slender Bodies Using Optimum Area Distributions for Minimum Wave Drag”. In: Journal of the Royal Aeronautical Society 60 (1956), pp. 61–63.
  2. Holt Ashley and Marten Landahl. “Aerodynamics of Wings and Bodies”. New York, NY: Dover Publications, 1985.
  3. Waddington Michael. “Development of an Interactive Wave Drag Capability for the OpenVSP Parametric Geometry Tool”. California Polytechnic State University, San Luis Obispo (2015).

Back to Landing Page

This page was created and edited by: — Justin Gravett 2017/12/07 10:00

wavedrag.txt · Last modified: 2018/04/01 14:41 by