SkillAgentSearch skills...

AeroSandbox

Aircraft design optimization made fast through computational graph transformations (e.g., automatic differentiation). Composable analysis tools for aerodynamics, propulsion, structures, trajectory design, and much more.

Install / Use

/learn @peterdsharpe/AeroSandbox

README

AeroSandbox :airplane:

by Peter Sharpe (<pds [at] mit [dot] edu>)

Downloads Monthly Downloads Build Status PyPI Documentation Status License: MIT

AeroSandbox is a Python package that helps you design and optimize aircraft and other engineered systems.

At its heart, AeroSandbox is an optimization suite that combines the ease-of-use of familiar NumPy syntax with the power of modern automatic differentiation.

This automatic differentiation dramatically improves optimization performance on large problems: design problems with tens of thousands of decision variables solve in seconds on a laptop. AeroSandbox also comes with dozens of end-to-end-differentiable aerospace physics models, allowing you to simultaneously optimize an aircraft's aerodynamics, structures, propulsion, mission trajectory, stability, and more.

Keeping AeroSandbox easy to learn and use is a top priority. Complexity is optional - you can use AeroSandbox's built-in physics models where helpful, or you can drop in arbitrary custom physics models of your own.

pip install aerosandbox[full]

What can I do with AeroSandbox?

Use AeroSandbox to design and optimize entire aircraft:

<table> <tr> <td width="50%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/Feather-RC-Glider"><i>Feather</i> (an ultra-lightweight 1-meter-class RC motor glider)</a> </p> <img src="https://raw.githubusercontent.com/peterdsharpe/Feather-RC-Glider/master/CAD/feather.png" alt="Feather first page"> </td> <td width="50%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/solar-seaplane-preliminary-sizing"><i>SEAWAY-Mini</i> (a solar-electric, 13' wingspan seaplane)</a> </p> <img src="https://raw.githubusercontent.com/peterdsharpe/solar-seaplane-preliminary-sizing/main/CAD/renders/seaway_mini_packet_Page_1.png" alt="Seaway-Mini first page"> </td> </tr> </table>

Use AeroSandbox to support real-world aircraft development programs, all the way from your very first sketch to your first-flight and beyond:

<table> <tr> <td width="50%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/DawnDesignTool">Initial concept sketches + sizing of <i>Dawn</i> (a solar-electric airplane for climate science research) in AeroSandbox, Spring 2020</a> </p> <img src="./media/images/dawn1-first-sketch.png" alt="Dawn initial design"> </td> <td width="50%" valign="top"> <p align="center"> <a href="https://youtu.be/CyTzx9UCvyo"><i>Dawn</i> (later renamed <i>SACOS</i>) in first flight, Fall 2022</a> </p> <p align="center"><a href="https://www.electra.aero/news/sacos-first-flight">(A massive build effort with excellent engineering and coordination by Electra.aero!)</a></p> <img src="./media/images/SACOS%20First%20Flight%20Zoomed.jpg" alt="SACOS first flight"> </td> </tr> </table>

Use AeroSandbox to explore counterintuitive, complicated design tradeoffs, all at the earliest stages of conceptual design where these insights make the most difference:

<table> <tr> <td width="33%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/DawnDesignTool">Exploring how big a solar airplane needs to be to fly, as a function of seasonality and latitude</a> </p> <img src="https://github.com/peterdsharpe/DawnDesignTool/raw/master/docs/30kg_payload.svg" alt="Dawn seasonality latitude tradespace"> </td> <td width="33%" valign="top"> <p align="center"> <a href="https://www.popularmechanics.com/military/aviation/a13938789/mit-developing-mach-08-rocket-drone-for-the-air-force/">Exploring how the mission range of <i>Firefly</i>, a Mach 0.8 rocket drone, changes if we add an altitude limit, simultaneously optimizing aircraft design and trajectories</a> </p> <img src="./media/images/firefly-range-ceiling-trade.png" alt="Firefly range ceiling trade"> </td> <td width="33%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/transport-aircraft">Exploring how many LH2 aircraft classes an airline fleet needs to cover the market, considering off-design performance</a> </p> <img src="https://github.com/peterdsharpe/transport-aircraft/raw/master/figures/lh2_market_segmentation_2.svg" alt="LH2 Market Coverage"> </td> </tr> </table>

Use AeroSandbox as a pure aerodynamics toolkit:

<table> <tr> <td width="33%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/AeroSandbox/blob/master/tutorial/06%20-%20Aerodynamics/01%20-%20AeroSandbox%203D%20Aerodynamics%20Tools/01%20-%20Vortex%20Lattice%20Method/01%20-%20Vortex%20Lattice%20Method.ipynb">VLM simulation of a glider, aileron deflections of +-30°</a> </p> <img src="./media/images/vlm3_with_control_surfaces.png" alt="VLM simulation"> </td> <td width="33%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/AeroSandbox/blob/master/tutorial/06%20-%20Aerodynamics/01%20-%20AeroSandbox%203D%20Aerodynamics%20Tools/01%20-%20Vortex%20Lattice%20Method/01%20-%20Vortex%20Lattice%20Method.ipynb">Aerodynamic shape optimization of a wing planform, using an arbitrary objective and constraints</a> </p> <img src="./media/images/wing_optimization.png" alt="Wing optimization"> </td> <td width="33%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/AeroSandbox/blob/master/tutorial/06%20-%20Aerodynamics/02%20-%20AeroSandbox%202D%20Aerodynamics%20Tools/02%20-%20NeuralFoil%20Optimization.ipynb">Optimize airfoil shapes with aerodynamic, structural, and manufacturing considerations</a> </p> <img src="./media/images/airfoil_optimization.png" alt="Airfoil optimization"> </td> </tr> </table>

Among many other discplines:

<table> <tr> <td width="50%" valign="top"> <p align="center"> Structural optimization of a composite tube spar </p> <img src="./media/images/beam-optimization.png" alt="Beam optimization"> </td> <td width="50%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/AeroSandbox/blob/master/aerosandbox/library/propulsion_electric.py">Electric motor analysis for propeller matching</a> </p> <img src="./media/images/motor_perf.png" alt="Motor performance"> </td> </tr> <tr> <td> <p align="center" valign="top"> <a href="https://github.com/peterdsharpe/transport-aircraft">Tools to analyze unconventional propulsion (e.g., LH2)</a> </p> <img src="https://github.com/peterdsharpe/transport-aircraft/raw/master/figures/three_view_annotated.svg" alt="LH2 airplane three-view"> </td> <td> <p align="center" valign="top"> <a href="https://github.com/peterdsharpe/AeroSandbox/tree/master/aerosandbox/library/weights">Detailed weights estimation for aircraft ranging from micro-UAVs to airliners</a> </p> <img src="https://github.com/peterdsharpe/transport-aircraft/raw/master/figures/mass_budget.png" alt="Mass Budget"> </td> </tr> </table>

Easily interface AeroSandbox with all your favorite tools:

<table> <tr> <td width="33%" valign="top"> <p align="center"> Other conceptual design tools (AVL, XFLR5, XFoil, ASWING, MSES, etc.) </p> <img src="./media/images/airfoil_contours.png" alt="XFoil"> </td> <td width="33%" valign="top"> <p align="center"> CAD tools via STEP export (SolidWorks, Fusion 360, etc.) </p> <p align="center"> (STL, OBJ, etc. supported too) </p> <img src="https://github.com/peterdsharpe/solar-seaplane-preliminary-sizing/raw/main/CAD/renders/raytrace-lowres.jpg" alt="CAD"> </td> <td width="33%" valign="top"> <p align="center"> User-provided models + code (for custom aerodynamics, structures, propulsion, or anything else - e.g., for optimizing flight through a probabilistic wind field, shown below) </p> <img src="./media/images/wind_speeds_model.png" alt="Wind speed"> </td> </tr> </table>

Or, throw all the airplane-design-specific code out entirely, and use AeroSandbox purely as an optimization solver or as a solver for nonlinear systems of equations (or ODEs, or PDEs):

<table> <tr> <td width="50%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/AeroSandbox/blob/develop/tutorial/01%20-%20Optimization%20and%20Math/01%20-%202D%20Rosenbrock.ipynb">Optimize the 2D Rosenbrock function</a> </p> <img src="./media/images/optimization.png" alt="Optimization"> </td> <td width="50%" valign="top"> <p align="center"> <a href="https://github.com/peterdsharpe/
View on GitHub
GitHub Stars1.2k
CategoryDesign
Updated1d ago
Forks181

Languages

Jupyter Notebook

Security Score

100/100

Audited on Mar 26, 2026

No findings