Porkchop module

This module contains the function that enables the user to make porkchop plots between two pliastro.bodies.Body instances. Other parameters to customize the plots such us setting the maximum C3 or showing the time lines can be passed to this function.

This is the script for porkchop plotting

poliastro.plotting.porkchop.porkchop(departure_body, target_body, launch_span, arrival_span, ax=None, tfl=True, vhp=True, max_c3=<Quantity 45. km2 / s2>, max_vhp=<Quantity 5. km / s>)

Plots porkchop between two bodies.

  • departure_body (poliastro.bodies.Body) – Body from which departure is done

  • target_body (poliastro.bodies.Body) – Body for targetting

  • launch_span (astropy.time.Time) – Time span for launch

  • arrival_span (astropy.time.Time) – Time span for arrival

  • ax (matplotlib.axes.Axes:) – For custom figures

  • tfl (boolean) – For plotting time flight contour lines

  • vhp (boolean) – For plotting arrival velocity contour lines

  • max_c3 (float) – Sets the maximum C3 value for porkchop

  • max_vhp (float) – Sets the maximum arrival velocity for porkchop


  • c3_launch (np.ndarray) – Characteristic launch energy

  • c3_arrrival (np.ndarray) – Characteristic arrival energy

  • tof (np.ndarray) – Time of flight for each transfer


>>> from poliastro.plotting.porkchop import porkchop
>>> from poliastro.bodies import Earth, Mars
>>> from poliastro.util import time_range
>>> launch_span = time_range("2005-04-30", end="2005-10-07")
>>> arrival_span = time_range("2005-11-16", end="2006-12-21")
>>> dv_launch, dev_dpt, c3dpt, c3arr, tof = porkchop(Earth, Mars, launch_span, arrival_span)