RCAIDE: Research Community Aerospace Interdisciplinary Design Environment
Project description
RCAIDE: Research Community Aircraft Interdisciplinary Design Environment
The Research Community Aircraft Interdisciplinary Design Environment, or RCAIDE (pronounced “arcade”) is a powerful open-source Python platform that revolutionizes aircraft design and analysis. From commercial airliners to UAVs and next-generation hybrid-electric aircraft, RCAIDE provides comprehensive multi-disciplinary analysis tools backed by validated engineering methods. Our streamlined workflow and modular architecture help aerospace engineers and researchers accelerate development cycles and explore innovative designs with confidence. RCAIDE-LEADS is a form from RCAIDE, developed and maintained by the Lab for Electric Aircraft Design and Sustainability
Transitioning from SUAVE Legacy
RCAIDE was built to allow users to transition their work to smoothly from SUAVE to RCAIDE. RCAIDE's code is architected in such a way that a native SUAVE user can understand it, but breaks free of some of the antiquated nomenclature.
Code Architecture
The code is arranged into repositories that house native data structures, functions, components, and subroutines for discipline analyses and support number-crunching operations. This allows developers or avid users seeking to modify the source code to navigate intuitively. Solely written in Python, an RCAIDE installation appears in one repository that is itself organized into two secondary-level repositories:
- RCAIDE sub-directory, where their source code resides
- Regressions sub-directory, where unit tests for verification and validation are performed.
%%{init: {'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}}}%%
flowchart LR
RCAIDE_LEADS[RCAIDE_LEADS]
RCADIE[RCADIE]
Regressions[Regressions]
RCAIDE_LEADS ---> RCADIE
RCAIDE_LEADS ---> Regressions
style RCAIDE_LEADS fill:#0d6dc5,color:#fff
style RCADIE fill:#09d0d9,color:#fff
style Regressions fill:#09d0d9,color:#fff
The RCAIDE subdirectory is arranged into frameworks and methods modules. Its predecessor, SUAVE, was written primarily as a superseding framework. Think of framework modules as the glue or roadmap that connects all the functions housed in the Library folder. The framework folder mainly comprises core data structures, classes instances of the various methods within the code, the mission and energy networks and the optimization framework. The Library module comprises five tertiary submodules: Attributes, Components, Methods, Mission and Plots.
%%{init: {'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}}}%%
flowchart TB
RCADIE[RCADIE] --> Framework
RCADIE --> Libraries
%% Framework components
Framework --> Mission
Framework --> Analyses
Framework --> Optimization
Framework --> Data
%% Library components
Libraries --> Aerodynamics
Libraries --> Noise
Libraries --> Costs
Libraries --> Stability
Libraries --> Energy
Libraries --> FlightPerf[Flight Performance]
Libraries --> Weights
%% Styling
style RCADIE fill:#09d0d9,color:#fff
style Framework fill:#0fcf99,color:#fff
style Libraries fill:#0fcf99,color:#fff
%% Framework children styling - Burgundy
style Mission fill:#800020,color:#fff
style Analyses fill:#800020,color:#fff
style Optimization fill:#800020,color:#fff
style Data fill:#800020,color:#fff
%% Libraries children styling - Purple
style Aerodynamics fill:#5D3FD3,color:#fff
style Noise fill:#5D3FD3,color:#fff
style Costs fill:#5D3FD3,color:#fff
style Stability fill:#5D3FD3,color:#fff
style Energy fill:#5D3FD3,color:#fff
style FlightPerf fill:#5D3FD3,color:#fff
style Weights fill:#5D3FD3,color:#fff
Capabilities of RCAIDE
RCAIDE currently possesses the ability to perform the following analyses, each at varying levels of fidelity. Here, we define fidelity as a level of accuracy to the actual physical value. As the level of fidelity increases, so does accuracy. However, this comes with the penalty of computational time and memory. Having multi-fidelity capability allows RCAIDE to perform energy network analysis, complete flight vehicle mission analysis, multi-fidelity optimization, design space exploration, artificial intelligence, and model-based systems engineering. Here are some notable use cases of RCAIDE:
- Mission Analysis
- Optimization
- Gradient-based optimization
- Non-gradient-based optimization
- Multi-fidelity optimization
- Performance Analysis
- Payload range
- Aerodynamic analysis
- V-N diagrams
- Propeller analysis
- Takeoff Field Length Estimation
- Weights Analysis
- Operating empty weight, zero-fuel weight estimation
- Component weight estimation
- Center of gravity estimation
- Moment of inertia estimation
Installing RCAIDE
RCAIDE is available on GNU/Linux, MacOS and Windows. We strongly recommend installing RCAIDE within a Python virtual environment to avoid altering any distribution of Python files. Please review the documentation for instructions on creating a virtual environment for RCAIDE.
- See Installation Instructions
- Using pip (coming soon)
- Using conda (coming soon)
Tutorials
Citing RCAIDE
(coming soon)
Contributing to RCAIDE
Contributing Institutions
- Aerospace Research Community, LLC
- University of Illinois Lab for Electric Aircraft Design and Sustainability
- Stanford University Aerospace Design Lab
Contributing Developers
- Matthew Clarke
- Emilio Botero
- Jordan Smart
- Racheal Erhard
- University of Illinois Lab for Electric Aircraft Design and Sustainability)
- Stanford University Aerospace Design Lab
Getting Involved
If you'd like to help us develop RCAIDE by adding new methods, writing documentation, or fixing embarrassing bugs, please look at these guidelines first.
Submit improvements or new features with a pull request
Get in touch
Share feedback, report issues, and request features via or Github Issues
Engage with peers and maintainers in Discussions
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rcaide_leads-0.3.0.tar.gz.
File metadata
- Download URL: rcaide_leads-0.3.0.tar.gz
- Upload date:
- Size: 764.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7ce64483bec15a1dafb9c989a59c0a0e4689263027ec69472fc6dcbdb15409b
|
|
| MD5 |
aaaef065ea7fc3d2a6c6868e5da4947a
|
|
| BLAKE2b-256 |
61509d2c231e6a19ba207f7c2f7ebf892064dfcafc5d101c9ad52c667ce024da
|
File details
Details for the file RCAIDE_LEADS-0.3.0-py3-none-any.whl.
File metadata
- Download URL: RCAIDE_LEADS-0.3.0-py3-none-any.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d18aa1178bcbd257f06c889bff5800b3a153eadfabcd56593721f9ba3ac1700b
|
|
| MD5 |
bc12a274854b66b5f42a1c63f01e59ba
|
|
| BLAKE2b-256 |
ea2ddc1e84318e79798dbcc0da4cafadb1e56f59240c0a80db5b6075c1cc38d6
|