Skip to content
General purpose indirect trajectory optimization
Python Shell
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
beluga Ref #199 added a beluga global DTYPE Jan 26, 2020
benchmarks Ref #175 PEP 8 for remaining except examples Apr 15, 2019
bin Ref None Added Mall's email Aug 30, 2019
docs Ref #126 Added stage 1 reduction Oct 10, 2019
etc Ref None Added Beluga Overview PowerPoint for reference Apr 18, 2019
examples Ref None modified product hypersonic problem slightly Dec 22, 2019
.gitignore Merge remote-tracking branch 'origin/I206' Dec 6, 2019
.mailmap Ref None added Mall to authors Apr 3, 2019
.readthedocs.yml Ref #176 Added yaml for readthedocs Apr 16, 2019
.travis.yml Ref None Adding development requirements May 16, 2019
AUTHORS Ref None Added Mall's email Aug 30, 2019 Create Sep 14, 2018
LICENSE Ref None Adding bvp to saved output Jul 1, 2019 Ref None Raising version number May 1, 2019
README.rst Ref #127 Made brachistochrone example use reduction Oct 29, 2019
appveyor.yml Ref None Adding development requirements May 16, 2019
asv.conf.json Ref #31 Implemented asv as the performance benchmark suite Jan 16, 2019
coverage.svg Ref #126 Added stage 1 reduction Oct 10, 2019
figures.png Ref None Added symmetry definition to OCP Oct 10, 2019 Some minor changes Nov 7, 2018
rdsl.png Ref #12 Removing more files. Jun 19, 2018
requirements.txt Ref #209 moved liepack to its own repo Sep 11, 2019
requirements_dev.txt Ref #209 moved liepack to its own repo Sep 11, 2019 Ref None Removed ivpsol.integrators from setup's module list Oct 10, 2019



Linux Windows Documentation Coverage
travisbadge appveyorbadge docs coverage




  • High quality resolution of singular arcs.
  • Phaseless construction.
  • Discontinuous function modeling.
  • Hamiltonian "indirect" methods and definition of co-states.
  • Automated Noether's theorem and symplectic reduction.
  • Hermite-Simpson Collocation and Multiple Shooting methods.
  • Automated scaling.
  • Lots of examples and open-source.


Installation using pip

If you already have Python 3+ installed along with pip, then do:

$ pip install beluga

This installs the latest version-controlled distribution of beluga from PyPI. Examples in this GitHub repo are updated frequently to reflect changes in beluga and as such may not be compatible with the versions on PyPI. Source code is included with each release, so check under releases on GitHub for examples compatible with older versions of beluga. Old examples are also included in the tarballs on PyPI and GitHub under releases, but are not included in the wheels.

Installation using binaries

Binary files are located on PyPI and GitHub under releases.

GitHub Version

See contributing for more information on installing the latest version from GitHub, reporting issues, and other information on development.

Running a test problem

Open a terminal window and navigate to the folder where you installed beluga. Type the following commands to run the Brachistochrone problem:

$ cd examples/Classic/Brachistochrone
$ python

The solver will proceed to solve the Brachistochrone problem.

You can’t perform that action at this time.