CEASIOMpy

Unittest Integration tests Codecov Codacy Badge Black code style License

CEASIOMpy

CEASIOMpy is an open source conceptual aircraft design environment which can be used to set up complex design and optimisation workflows for both conventional and unconventional aircraft configurations.

CEASIOMpy is mostly written in Python but it also depends on third-party libraries and software (like SU2 for the CFD calculation).

All input geometries are based on the open-standard format CPACS, a Common Parametric Aircraft Configuration Schema. It uses a parametric definition for air transportation systems which is developed by the German Aerospace Center DLR.

:scroll: CEASIOMpy is maintained by CFS Engineering and Airinnova. CEASIOMpy is under the Apache License 2.0.

:book: The Documentation of CEASIOMpy is integrated in this repository and can be read in documents like this one. Follow links to find the information that you are looking for.

Table of contents

Online Version (in development)

Visit: https://ceasiompy.com for an overview of what this repository has to offer.

Installation

Linux/macOS

On Linux/macOS, run the installer to set up the conda environment and optional tools (some scripts are still under development):

git clone https://github.com/cfsengineering/CEASIOMpy
cd CEASIOMpy
./scripts/install.sh
ceasiompy_run --g

For Windows users please use the online version at https://ceasiompy.com

Create Docker Container (Windows, Optional)

A video which explains how to install CEASIOMpy on Docker is now available! CEASIOMpy Docker Installation

Demo

CEASIOMpy GUI Video tutorial (Test case 2)

Test cases

These test cases are there to learn how to use CEASIOMpy. You will probably also learn a few things about the CPACS format. You can also run these tests to verify that everything is installed and working as expected as they cover different possible ways of using CEASIOMpy. Be sure you finish the installation before you try them.

Run CEASIOMpy

Follow the test cases to discover the different way of using CEASIOMpy.

Available modules

There are many different modules available in CEASIOMpy that can be combined to create different workflows. The list of available modules is shown below. The modules’ statuses are marked as follows:

:heavy_check_mark: : The module should work as expected. If you find bugs, do not hesitate to report them (more details here).

:warning: : The module does not work as expected. It is not a bug, but some features or data handling are not yet compatible with the new file structure. Check the Kanban Board to see planned and in-progress features.

:x: : The module does not work at all. Some functions have been written, but need a lot of changes to be compatible with the rest of CEASIOMpy.

General modules

Geometry and Mesh

Aerodynamics

Weight and Balance

Mission Analysis

Structure

Data Analysis and Storage

Contributing

CEASIOMpy is an open source project and we welcome contributions from everyone. Some CEASIOMpy modules have been developed by students as part of their internship or master thesis.

If you want to contribute to the development of CEASIOMpy, please read the document CONTRIBUTING.md.

More information

Upgrading environment

Sometimes deleting cache helps.

sudo find . -name "__pycache__" -type d -prune -exec rm -rf {} +
find . -name "*.pyc" -type f -delete

Or upgrading the environment.

conda env update -f environment.yml

Cite us

This respository may be cited via BibTex as:

@software{CEASIOMpy,
  author = {
    Benedetti G. and
    Deligny L. and
    Jungo A.
},
  title = {CEASIOMpy: a python Aircraft Design environment},
  url = {https://github.com/cfsengineering/CEASIOMpy},
  year = {2025},
}