Amigo
Amigo is a Python library for solving multidisciplinary analysis and optimization problems on high-performance computing systems through automatically generated C++ wrappers. All application code is written in Python and automatically compiled to C++ with automatic differentiation using A2D.
Multiple backend implementations are supported: Serial, OpenMP, and MPI (CUDA for Nvidia GPUs is under development). User code and model construction are independent of the target backend. Amigo integrates seamlessly with OpenMDAO through amigo.ExternalComponent and can be used as a sub-optimization component with accurate post-optimality derivatives.
Getting started
To solve your first optimal control problem using Amigo, please check the documentation, or simply try our cart-pole tutorial.