Skip to content

mdolab/MACH-Aero

Repository files navigation

MACH-Aero

Documentation Status Build Status

MACH-Aero is a framework for performing aerodynamic shape optimization. It contains the following core modules:

Code repository Functionality Documentation CI Status Latest Version
baseClasses Shared class definitions Documentation Status Build Status PyPI
pySpline B-spline implementation Documentation Status Build Status GitHub release (latest by date)
pyGeo Geometry definition Documentation Status Build Status GitHub release (latest by date)
IDWarp Volume mesh warping Documentation Status Build Status GitHub release (latest by date)
ADflow CFD and adjoint solver Documentation Status Build Status GitHub release (latest by date)
pyOptSparse Optimizer wrapper Documentation Status Build Status GitHub release (latest by date)
And optional modules:
pyHyp Volume mesh generation Documentation Status Build Status GitHub release (latest by date)
multiPoint Utilities for multipoint optimization Documentation Status Build Status GitHub release (latest by date)
cgnsUtilities Utilities for CGNS mesh files Documentation Status Build Status GitHub release (latest by date)
DAFoam Alternate adjoint solver using OpenFOAM Documentation Regression Test GitHub release (latest by date)

Where is the code?

All the code for MACH-Aero are contained within the individual repositories, which you can go to by clicking on the names in the table above. To go to the documentation site for each repository, click on the badge in the documentation column of the table above.

What's in this repo then?

This repository contains the following:

  • A description of the overall framework
  • Installation instructions which are shared across the various repositories
  • Tutorials for using MACH-Aero to perform aerodynamic shape optimization

This documentation can be accessed online here. To run the tutorials, follow the installation instructions to install all the modules, then clone this repository to access the tutorial scripts. To compile the doc locally, first install dependencies via pip install -r requirements.txt, then build locally with make html.