Multidisciplinary design optimization made fast with PyTorch and modern automatic differentiation.
Project description
torchMDO
Multidisciplinary design optimization made fast with PyTorch and modern automatic differentiation.
At its heart, torchMDO is a library of optimizers and tools that allow you to build out large-scale models to assess a design in PyTorch (with its Numpy-like syntax) and to optimize the design extremely quickly by taking advantage of its automatic differentiation capabilities as well as its GPU acceleration.
Also, if you have a model that has previously been built in Python, you can convert it to PyTorch (which is typically straightforward if it was originally implemented in Numpy) and you can immediately plug it into torchMDO.
Installation
Install using pip:
# minimal install:
pip install torchmdo
# or to be able to run the tutorials:
pip install torchmdo[examples]
Tutorials
More coming soon.
Aerodynamic optimization of a wing planform
In this simple example, we consider a 50-dimensional nonlinear constrained optimization problem to optimize the shape of a wing to minimize induced drag, subject to a wing-area equality constraint. We also compare the performance of modern automatic differentiation to the use of (classical) finite-difference methods.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.