Rotating Libration Points
|Top Previous Next|
FreeFlyer allows you to work with rotating libration points (L1-L5) in any system. A rotating libration point (RLP) frame can be defined using any two built-in or user-defined CelestialObjects or CelestialSystems (representing system barycenters). You can set or get the state of a Spacecraft object with respect to any rotating libration point frame.
The Rotating Libration Point Frame
The rotating libration point (RLP) frame is a commonly used frame for describing dynamical motion in the circular restricted three-body problem (CRTBP or CR3BP) about the Lagrange points, L1-L5. The two gravitational centers used to define an RLP frame in FreeFlyer can be any two CelestialObjects or CelestialSystem objects (representing the barycenter of one or more CelestialObjects).
The L1, L2, and L3 points are collinear, lying along the line joining the primary system (P1) and the secondary system (P2). The L4 and L5 points each form equilateral triangles with the positions of P1 and P2, in the plane of P2's orbit around P1, as shown in the diagram below:
We can define a coordinate system at each Lagrange point, L1-L5. For L1-L3, the coordinate system X-axis lies along the line defined by the two gravitational centers, P1 and P2. For L4 and L5, the X-axis lies parallel to the line segment P1-P2, pointing in the direction of P2. The Z-axis for all five Lagrange point coordinate systems is normal to the plane of P2's orbit around P1. The Y-axis completes the right-handed triad for each system. By definition, the frame is non-inertial, and rotates at the same rate as P2 and P1 move about their common barycenter. An example of the L3-centered RLP coordinate system is shown below.
L3-Centered RLP Coordinate System
Defining a Rotating Libration Point
A RotatingLibrationPoint object can be created in the FreeFlyer object browser or in FreeFlyer script; however, it must be configured in FreeFlyer script.
You can define a RotatingLibrationPoint object using any of the built-in CelestialObjects, such as the Earth, Moon, Sun, and Mars, or you can define your own CelestialObjects or CelestialSystems. See the CelestialObjects page for complete information on how to define a custom CelestialObject.
Setting up a RotatingLibrationPoint
The example below shows the syntax to configure a RotatingLibrationPoint object to model the Sun-Saturn L1 frame using two CelestialObjects:
You can get a spacecraft's or CelestialObject's state with respect to a RotatingLibrationPoint, as well as the state of the RotatingLibrationPoint itself at a given epoch:
A CelestialSystem lets you model a system barycenter using one or more CelestialObjects. CelestialSystems allow you to add both user-defined and built-in CelestialObjects into one unified system. The example below shows how to define a custom CelestialSystem:
You can get a spacecraft's or CelestialObject's state with respect to the barycenter of a CelestialSystem, as well as the state of the barycenter of the CelestialSystem itself at a given epoch.
A CelestialSystem can be used as the primary or secondary system in a RotatingLibrationPoint object. The example below shows how to configure a RotatingLibrationPoint modeling the Sun-Earth/Moon L2 frame using a CelestialObject (the Sun) and a CelestialSystem (the Earth/Moon system):
Define the Barycenter
It is important to note that the built-in planets, with the exception of the Earth, represent their system barycenters. For example, the built-in Jupiter object is defined using the Jupiter system barycenter. To model the body center of an individual planet (other than the Earth), you must create and set up a custom CelestialObject.
The CelestialSystem and RotatingLibrationPoint objects provide two options for how the barycenters of these systems should be defined. These options ensure that users can avoid counting the mass of certain bodies twice. It is important to set this value appropriately based on the CelestialObjects in your CelestialSystem or RotatingLibrationPoint object, to avoid incorrect calculations.
For both Celestial Systems and Rotating Libration Points you can define how the barycenter should be computed using the RecomputeBarycenter property as shown below:
The following table summarizes the implications of these two options:
You can specify the color of the RotatingLibrationPoint object, and the size to draw its axes. To create a 3D Viewpoint centered on a RotatingLibrationPoint, create a ViewWindow and edit the Viewpoint Source and Target properties as shown below:
Example: Write States to File
In this example, a spacecraft is initialized orbiting the L1 point of the Sun-Earth/Moon rotating libration point system. The spacecraft is propagated for 100 days, and the spacecraft state with respect to L1 is written to a file on each day.
•RotatingLibrationPoint Properties and Methods
•CelestialObject Properties and Methods
•CelestialSystem Properties and Methods
•Lagrange-Centered RLP Coordinate System Definitions