Skip to main content

Conceptual aircraft design package with empirical and numerical methods

Project description

WUADS

Washington University Aerospace Design Suite (WUADS) is a Python-based conceptual aircraft design package built with two core goals: simplicity and extensibility. WUADS combines empirical methods with mixed-fidelity numerical models, enabling users to rapidly analyze aircraft performance across a wide range of configurations — from conventional transports to complex systems with alternative propulsion and unconventional geometries.

WUADS gui

Features

  • User Friendly Designer GUI

    WUADS aircraft designer GUI is designed to simplify the process of creating and editting WUADS input files

  • Empirical Weight Estimation
    Component-level empirical methods are used to accurately estimate the aircraft's weight based on configuration and inputs.

  • Vortex Lattice Method (VLM) Integration
    WUADS automates the setup and analysis of aerodynamic performance using the Athena Vortex Lattice (AVL) code.

  • Aerodynamic Performance Analysis
    Combines VLM results with empirical drag models to evaluate overall aircraft aerodynamic efficiency and static stability.

  • Mission-Based Range Estimation
    Supports custom mission profiles to estimate fuel burn, reserve fuel, and maximum range capabilities.

  • Optimization-Ready Framework
    Rapid performance predictions and a modular structure make WUADS ideal for conceptual optimization tasks.

  • Customizability and Extensibility WUADS is designed to allow the user to easily override the built in methods allowing for custom components, analysis methods, etc.


Download and Installation

WUADS can be downloaded like any other python package

pip install WUADS

The only complication is that in order to run a full aerodynamic analysis, Athena Vortex Lattice will need to be installed in the current working directory. Note that this just needs to be the "avl.exe". Alternatively, you can set up an environment variable which links 'avl' to the path of your avl.exe file. You can find the avl download on the site below.


Basic Usage

The basic syntax for using WUADS if fairly straightforward assuming you have already defined your input file.

from WUADS import Aircraft, weights_report, mission_profile_report

input_file = './inputs/aircraft.yml'    # Define the path to your input file
ac = Aircraft(input_file)               # Create the aircraft

weights_report(ac)                      # Generate a weights report
ac.mission.run_case()
mission_profile_report(ac)

The above code will load the aircraft input file, generate the geometry, calculate the weight, calculate the parasite drag, and populate the mission profile, and calculate the overall range of the aircraft. It will output 2 seperate reports one detailing the aircraft's weight properties and one detailing the aircraft's mission profile and range.

You have two seperate ways to create the input file. One is to edit the aircraft's .yml input file directly. This file is designed to be as readable to the user as possible and is not overly complex to use, however to simplify the process of creating these files, the designer GUI can be used. To launch the GUI, enter the following into the terminal or command line

WUADS 

Alternatively you can launch the gui with your input file instead of the default input

WUADS ./inputs/input_file.yml

Tutorials

Whether you're new to aircraft design or experienced in computational modeling, WUADS offers a simple interface with the flexibility for custom applications.

A growing collection of tutorials is available in the tutorials/ directory, including:


Citations

If you use WUADS in your research, please cite the following dissertation:

  • Kiely, M. "The Conceptual Design, Analysis and Optimization of a Hydrogen Combustion and a Hydrogen Fuel-Cell Powered Aircraft", PhD. Thsis, Washington University in St. Louis, available: available: http://openscholarship.wustl.edu/eng_etds/1031/
@phdthesis{kiely2025,
  author       = {Mike Kiely},
  title        = {The Conceptual Design, Analysis and Optimization of a Hydrogen Combustion and a Hydrogen Fuel-Cell Powered Aircraft},
  school       = {Washington University in St. Louis},
  year         = {2024},
  address      = {St. Louis, MO},
  note         = {available: http://openscholarship.wustl.edu/eng_etds/1031/}
}

Additionally, this thesis provides a full comprehensive explanation of all the models used in WUADS as well


Developers and Contributors

WUADS was developed and validated by

Want to contribute?

Please do! We are always looking to expand the code in whatever way we can and welcome contributions from the community To get involved just raise issues, create pull requests, or email me at k.mike@wustl.edu


Liscence

License

WUADS is licensed under the Mozilla Public License 2.0 (MPL 2.0).

This license allows you to freely use, modify, and distribute the software, provided that any modifications to the original source files are also shared under the same license. For more details, see the full license text.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wuads-0.2.8.tar.gz (271.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wuads-0.2.8-py3-none-any.whl (280.5 kB view details)

Uploaded Python 3

File details

Details for the file wuads-0.2.8.tar.gz.

File metadata

  • Download URL: wuads-0.2.8.tar.gz
  • Upload date:
  • Size: 271.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.4

File hashes

Hashes for wuads-0.2.8.tar.gz
Algorithm Hash digest
SHA256 784c1de40bf319a26fccc98428c65dc83d371d3f90628c662d6350276cb2d9ec
MD5 6d2bc4712d4d5dffcc3808401895b6e8
BLAKE2b-256 09f1aaae6110e32f4308eb7df18d4355be904fba37862e714308fc2d00b0c798

See more details on using hashes here.

File details

Details for the file wuads-0.2.8-py3-none-any.whl.

File metadata

  • Download URL: wuads-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 280.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.4

File hashes

Hashes for wuads-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 1a37f10cba596553d52e44a9b9a11381692dfb8aaa9e7726fd77aeb975518ce2
MD5 26ee63f223c92e12efd83f3724334987
BLAKE2b-256 7b8d782dc52ea3ef5593a8d6a4d753a3abe1e975093efd94e657cd924c70f63e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page