This project implements the G-FOLD algorithm for spacecraft landing trajectory optimization based on:
- Blackmore et al. "Minimum-Landing-Error Powered-Descent Guidance for Mars Landing Using Convex Optimization"
- Neal et al. "Fuel-Optimal Spacecraft Guidance for Landing in Planetary Pits"
G-FOLD is a convex-optimization algorithm that generates the fuel-optimal path to land a spacecraft at the desired location.
This repository is organized into language-specific implementations:
generator/- Python package that implements G-FOLD and generates C/C++ code using CVXPYGen- Additional language implementations will be added in the future
Choose the implementation that best fits your needs:
- For Python usage or code generation, see Generator README
By default, all tools work on Windows, macOS and Linux. However, c++ code generation feature will not support windows, but the bindings that use the generated code will run on windows too.
To set up the development environment:
git clone https://github.com/samutoljamo/g-fold.git
cd g-foldThen follow the instructions in the specific package directory you want to work with.
