MACH-Aero Framework
MACH-Aero is a framework for performing gradient-based aerodynamic shape optimization. It consists of the following core modules:
baseClasses defines Python classes used by the other packages
pySpline is a B-spline implementation used by the other packages
pyGeo is a module for geometry manipulation and constraint formulation
IDWarp performs mesh warping using an inverse distance method
ADflow is a 2nd-order finite volume CFD solver with an efficient adjoint implementation
pyOptSparse is an optimization framework which provides a unified interface to several popular optimizers
And the following optional modules:
pyHyp is a hyperbolic mesh generation tool used as a preprocessing step
multiPoint facilitates distributed multipoint optimization and handles the parallel communication using MPI
cgnsUtilities is a command-line tool that allows carrying out several simple mesh manipulation operations on CGNS grids
DAFoam provides efficient adjoint implementations for OpenFOAM to be used for CFD instead of ADflow
More detail for the framework can be found in Overview of MACH-Aero. If you use any of our codes, please cite us.