Wing Designer is a web adaptation of a MATLAB GUI program developed at the United States Military Academy (West Point) by Phillip J. Root and John R. Rogers (2007–2008). The original tool lets students vary wing design parameters—planform geometry, airfoil selection, cruise conditions—and receive a composite performance score benchmarked against the C-130 Hercules.
Original paper (PDF) · MATLAB File Exchange · MathWorks Pick of the Week
In 2010, Jacob Baxter, as a cadet at USMA (Dept. of Civil & Mechanical Engineering), applied CMA-ES (Covariance Matrix Adaptation Evolutionary Strategy) to Wing Designer, systematically searching the design space for high-scoring configurations. His work demonstrated that evolutionary algorithms could find designs scoring well beyond what students typically achieved through manual exploration.
AIAA manuscript (PDF) · Google Scholar
A related MathWorks blog post, “Wing Designer Part II: Optimize!”, followed in 2014 with a separate optimization approach using MATLAB toolboxes.
Jacob later wanted to bring Wing Designer to the web for fun, with help from AI. This site is the result: a faithful port of the original MATLAB physics engine to JavaScript, running entirely in the browser with no server-side computation.
The composite scoring system remains a distinctive feature—it gives learners a single objective to optimize, making it easy to compare designs and build intuition for the trade-offs in wing design (span vs. drag, fuel capacity vs. weight, range vs. structural limits).
Since Wing Designer was first created, several excellent open-source tools have emerged for aerodynamic analysis and aircraft design:
These tools offer far more depth and fidelity. Wing Designer's niche is its simplicity and scoring system: a quick, self-contained environment where students can develop intuition for fundamental wing design trade-offs without the setup overhead of professional tools.
Wing Designer runs entirely in your browser—there is no server. All aerodynamic computation happens client-side in JavaScript. When you press Calculate, your device solves the vortex lattice system, evaluates drag, and computes the Breguet range equation locally. Nothing is uploaded, and results appear in milliseconds.
The aerodynamic database (lift-curve slopes, stall angles) for all 38 NACA airfoils was pre-computed from XFOIL at 8 Reynolds numbers and stored as regression coefficients. At runtime the code interpolates these coefficients to the actual Reynolds number—no XFOIL or panel solver runs in the browser.
Because everything is self-contained, there is no API endpoint for batch runs or automated optimization. A tool like CMA-ES could still drive the page via browser automation, but the intended use is hands-on exploration, not programmatic search.
Changes to the physics engine relative to the original Root & Rogers MATLAB (2007–2008). UI-only changes are omitted.
AbsBendMoment = abs(BendMoment).
No other engine changes; 8 additional exploits documented but left unfixed.W_min = 680 × (S_ft² / 178)^1.5, anchored to the Piper J-3
Cub as the lightest practical aircraft. The floor is displayed (and flagged red when
violated) but does not clamp the input—students see the physics.