scenarioJupiterArrival

Overview

This tutorial considers a hyperbolic arrival orbit to Jupiter followed by a transfer into a circular parking orbit around the planet. This is achieved through a single impulsive maneuver at periapsis of the hyperbolic orbit.

The detail of the simulation script is as follows.

This script sets up a basic spacecraft which starts on a hyperbolic approach orbit to Jupiter. The simulation is split into two chunks. The first chunk runs until the spacecraft reaches periapsis of the hyperbolic orbit. The second chunk starts after the spacecraft performs the required maneuver and runs until the spacecraft has completed nearly one circular revolution around Jupiter.

The desired parking orbit radius is first specified and the resulting hyperbolic arrival orbit and required delta V is calculated. The hyperbolic time equation is used to calculate the simulation time for the first chunk

\[N = \sqrt{\frac{\mu}{(-a)^{3}}}(t-t_p) = e \tan(\zeta)-\ln \left[ \tan \left( \frac{\zeta}{2} + \frac{\pi}{4} \right) \right]\]

where the orbit equation in terms of \(\zeta\) is \(r = a(1-e \sec(\zeta))\) and \(\zeta = \cos^{-1}\left( \frac{ea}{a-r}\right)\).

The delta V is then added to the current spacecraft velocity at the end of the second chunk.

How to setup a basic spacecraft simulation is shown in the earlier tutorial scenarioBasicOrbit. Simulating a Hohmann transfer is illustrated in scenarioOrbitManeuver. Setting up multiple gravitational bodies is shown in scenarioOrbitMultiBody while providing pseudo-SPICE messages is laid out in scenarioCSS.

This simulation combines all these techniques as well as implementing custom gravitational bodies (Leah future work).

The script is found in the folder basilisk/examples and executed by using:

python3 scenarioJupiterArrival.py

Illustration of Simulation Results

The following images illustrate the expected simulation run returns for a range of script configurations.

show_plots = True

Plots below illustrate the scenario results for the inertial position states and Jupiter-centered arrival for the entire manueuver.

../_images/scenarioJupiterArrival1.svg../_images/scenarioJupiterArrival2.svg
scenarioJupiterArrival.run(show_plots)[source]

The scenarios can be run with the followings setups parameters:

Parameters

show_plots (bool) – Determines if the script should display plots