Orbit Manifold Example
This example demonstrates how to compute manifolds associated with periodic orbits in the Circular Restricted Three-Body Problem (CR3BP).
Computing orbit manifolds in the CR3BP
1"""Example script: generation of several families of periodic orbits (Vertical,
2Halo, planar Lyapunov) around an Earth-Moon libration point, together with their
3stable manifolds.
4
5Run with
6 python examples/orbit_manifold.py
7"""
8
9import os
10import sys
11
12sys.path.append(os.path.join(os.path.dirname(__file__), "..", "src"))
13
14from hiten.system import System
15
16
17def main() -> None:
18 # Build system & centre manifold
19 system = System.from_bodies("sun", "earth")
20 l_point = system.get_libration_point(2)
21 halo_orbit = l_point.create_orbit('halo', amplitude_z=0.3, zenith='northern')
22 halo_orbit.correct()
23 halo_orbit.propagate()
24
25 direction, stability = ['positive', 'negative'], [True, False]
26 for d in direction:
27 for s in stability:
28 manifold = halo_orbit.manifold(stable=s, direction=d)
29 manifold.compute(integration_fraction=1, dt=1e-3)
30 manifold.plot()
31
32if __name__ == "__main__":
33 main()