Suite of tools for aircraft engine design and performance analysis.
- Python: ≥ 3.10
- License: Prosperity Public License
- Author: Riccardo Malpica Galassi
pyAircraftEngineFramework is a Python package intended to support aircraft engine design and performance analysis workflows.
It is built on the standard scientific Python ecosystem (NumPy, SciPy, Matplotlib) and uses YAML-based configuration and data files to describe engine architectures, parameters, and scenarios.
The framework is designed to be:
- modular and extensible,
- readable for students and researchers,
- suitable for exploratory design and educational use.
git clone https://github.com/rmalpica/pyAircraftEngineFramework.git
cd pyAircraftEngineFramework
python -m pip install -U pip
pip install -e .pip install .Installed automatically:
- numpy (≥ 1.26)
- scipy (≥ 1.11)
- matplotlib (≥ 3.7)
- PyYAML
This project follows the src/ layout.
src/
├─ engine_framework/
│ └─ core/
│ ├─ __init__.py
│ └─ ... core modules ...
│ └─ components/
│ ├─ __init__.py
│ └─ ... components modules ...
│ └─ engines/
│ ├─ __init__.py
│ └─ ... engines modules ...
│ └─ data/
│ └─ *.yaml
└─ examples/
└─ test.py
YAML files under src/data/*.yaml are distributed with the package and are intended to be accessed at runtime.
A minimal working example is provided in:
examples/test.py
Run it from the repository root:
python examples/test.pyIf the package is installed in editable mode (pip install -e .), any modification to the source code will be immediately reflected when re-running the example.
Typical development setup:
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -U pip
pip install -e .Optional tooling you may want to add during development:
pytestfor testingrufforblackfor formatting and lintingmypyfor static typing
These are not mandatory and are not required to use the framework.
- Distribution name (PyPI):
pyAircraftEngineFramework - Import name:
engine_framework
This project is licensed under the Prosperity Public License.
The Prosperity Public License allows free use for non-commercial purposes while requiring a commercial license for for-profit use.
See the LICENSE file for full terms.
This framework is provided for research and educational purposes.
It does not claim certification-level accuracy and should not be used for operational or safety-critical decisions.