KSP Trajectory Optimization
Project description
Trajectorize
This project is a reduced-scope version of one of my other (currently incomplete) projects, as an intermediate stepping stone.
This tool computes trajectories between celestial bodies in KSP based on on-rails two-body patched conics, incorporating trajectory correction maneuvers for a variety of mission scenarios, such as:
- Ballistic Hohmann transfers for other planets
- Gravity assist flyby routes
Computationally-intensive code is implemented in C, with a Python wrapper made using cffi
.
C code follows mostly C89, with some C99 features used. It has been tested against the latest versions of GCC (on Linux) and MSVC (on Windows 10).
Installation
The package is still in development at this time, but you can install it from source.
Run pip install git+https://github.com/itchono/trajectorize
to install the package.
You will need to have Python 3.8+, and a C compiler installed to compile the C code.
Other Python dependencies are included inside pyproject.toml
, and will be installed automatically.
Demos
Right now, full functionality is incomplete. There are, however, some cool demos showing off the capabilities of the package.
Full Model of KSP Planetary System and Ephemerides
python -m trajectorize.demos.kerbol_system_anim
Propagation of Two-Body Trajectories Using Universal Keplerian Elements
python -m trajectorize.demos.orbit
Inspirations
- Interactive illustrated interplanetary guide and calculator for KSP, by Olex
- This tool, by AlexMoon
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.
Source Distribution
File details
Details for the file trajectorize-0.0.2.tar.gz
.
File metadata
- Download URL: trajectorize-0.0.2.tar.gz
- Upload date:
- Size: 34.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | be65fe96e594f4821104a80f4b64cb96c10d15d5434b8f222d4c0627f07171ef |
|
MD5 | 69093a03f855c9017fff20e3f8adae49 |
|
BLAKE2b-256 | 2be22f243b883fe8d80bd4852cd6521b9e2b14a34146e64245c571fd06e909c8 |