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.1.9.tar.gz (268.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.1.9-py3-none-any.whl (276.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: wuads-0.1.9.tar.gz
  • Upload date:
  • Size: 268.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.1.9.tar.gz
Algorithm Hash digest
SHA256 b02a8ed79a3accf3384f3679fa6c924a0ebfb0f8d3011de4339e8090ede13be7
MD5 d9395d82da90d7a2e20726930aa82a17
BLAKE2b-256 94e88715717e4e53fcf1034d75ad2c26d7b7fdfd235e2f85396c4ba499cedbfc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: wuads-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 276.8 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.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 b48878389415fb6c17f84281e64f67e2ed864950ab62af492a2f6a5b9bb5e8dc
MD5 7f09c7c456aa0d69576b5e1fad4d28e5
BLAKE2b-256 10b4cad83287ca5be6700408a435ee40b2c5253c5023c408cd4a052dce6429d6

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