Skip to content

Jmbryan/OTL

Repository files navigation

OTL - Orbital Trajectory Library

Linux/Mac OSX Windows
Build Status Build status
  • Linux GCC 5.3
  • Linux Clang 3.8
  • Mac OSX XCode 7.3
  • MSVC 2015
  • MSVC 2013
  • MinGW
codecov

OTL is a Modern C++ Orbital Mechanics library for general Keplerian orbit trajectory computation.

This project is very much a work in progress. Feel free to fork and do with it as you like. The license is very liberal. Some of the design and configuration is inspired by SFML.

Features

  • Cross-platform (Windows, Linux, Mac OSX)
  • Object-oriented C++11
  • Epoch system supporting multiple formats (MJD2000, Gregorian, etc.)
  • State Vector & Orbital Elements conversions
  • Lambert's Problem solver
  • Propagation
  • Ephemeris
    • Analytical
    • JPL SPICE
    • SGP4
    • MPCORB
  • Flybys
  • Multiple gravity assist trajectories with deep space maneuvers (MGADSM)
  • MATLAB interface
  • Well documented
  • Unit tested

Build Instructions (Windows)

  1. First, acquire the source code by cloning the git repository (these instructions assume you download the source to C:/OTL):
git clone https::/github.com/Jmbryan/OTL.git
  1. Download CMake (last built using version 3.5.2 using "cmake-3.5.2-win32-x86.msi")
    • Note: Recommend adding CMake to system path (not done by default in installer)
  2. Launch CMake dialog
  3. Set source directory to root directory e.g. "C:/OTL"
  4. Create a build directory e.g. "C:/OTL/build"
  5. Set build directory created in step 5
  6. Click Configure
  7. Select compiler when prompted (last built using Visual Studio 14 2015)
  8. Uncheck the following unless you downloaded the external dependencies (see below)
    • OTL_BUILD_SGP4
    • OTL_BUILD_SPICE
  9. Click Generate
  10. Open the generated Visual Studio solution file "C:/OTL/build/OTL.sln"
  11. Build solution in Debug
  12. The built static libraries can be found at "C:/OTL/build/lib".
  13. Run the unit tests by opening a command prompt at "C:/OTL/build/bin" and typing "otl-unit-test-d"

Build Instructions (Mac OSX)

  1. First, acquire the source code by cloning the git repository (these instructions assume you download the source to /Users/username/OTL):
git clone https::/github.com/Jmbryan/OTL.git
  1. Download CMake (last built using version 3.5.2 using "cmake-3.5.2-Darwin-x86_64.dmg")
  2. Launch CMake dialog
  3. Set source directory to root directory e.g. "/Users/username/OTL"
  4. Create a build directory e.g. "/Users/username/OTL/build"
  5. Set build directory created in step 5
  6. Click Configure
  7. Select compiler when prompted (last built using XCode 7.3)
  8. Uncheck the following unless you downloaded the external dependencies (see below)
    • OTL_BUILD_SGP4
    • OTL_BUILD_SPICE
  9. Click Generate
  10. Open the generated XCode project "/Users/username/OTL/build/OTL.xcode"
  11. Build solution in Debug
  12. The built static libraries can be found at "/Users/username/OTL/build/lib".
  13. Run the unit tests by opening a command prompt at "/Users/username/OTL/build/bin" and typing "otl-unit-test-d"

3rd Party Libraries (included)

3rd Party Libraries (not included / experimental)

  • CSPICE (last tested using "PC, Windows, MS Visual C, 32bit")
  • SGP4 (source is located at the bottom of the page)

Authors