ChristopherRabotin / smd

Space Mission Design - A SPICE-enhanced continuous thrust interplanetary mission propagator and vizualizer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Space Mission Design (smd)

Space Mission Design allows one to perform an initial space mission design, around a given celestial body or between celestial bodies.

This package was written to support my thesis and my astrodynamics courses (ASEN 6008 Space Mission Design / Interplanetary Mission Design) at the University of Colorado Boulder.

Build Status Coverage Status goreport

Features

Note: this list may not be up to date with the latest developments.

  • Propagation of an orbit around a celestial body
  • Direct closed-loop optimization of continuous thrust via Naasz and Ruggiero control laws.
  • VSOP87 support via the amazing https://github.com/soniakeys/meeus
  • Patched conics for interplanetary missions
  • Stream orbital elements as CSV for live visualization of how they change
  • Export as a set of NASA Cosmographia files (cf. http://cosmoguide.org/) for really cool visualization of the overall mission
  • Export mission state as CSV (cf. the examples/statOD/main.go)

Usage

If running smd and planning on changing reference frames (e.g. when doing patched conics) to attempting to include third body dynamics, you will need to define the SMD_CONFIG environment variable. This must define whether using VSOP87 or SPICE for frame transformations. An example of such a file is found in conf.toml. Important: this configuration file must be called conf.toml (but it can be placed in any directory). Note: the availability of this file will only occur in the function which gets the heliocentric orbit of a given planet. So definitely make sure this is configured before running a long simulation or it will crash when you're looking away.

About

Space Mission Design - A SPICE-enhanced continuous thrust interplanetary mission propagator and vizualizer

License:MIT License


Languages

Language:Go 95.9%Language:Python 3.0%Language:MATLAB 1.1%