Spacecraft Propagation Samples

Top  Previous  Next

These sample Mission Plans cover various aspects of Spacecraft Propagation in FreeFlyer. After exploring these Mission Plans, continue to the Spacecraft Propagation guide for more information.

 

Jump to a Mission Plan Description:

 

Mission Plan

Engineer

Mission

AHF Generation

A-Train Orbit Plane with Debris

Attitude Reference Frames

CCSDS Ephemeris with Covariance

Convert Attitude Time Quaternions AHF

Drag/Grav/Magnetic Momentum

Ephemeris Generation

Ephemeris with Custom Columns

Ephemeris with Custom Reference Frame

Ephemeris with Discontinuity

Highly Elliptical Variable Step Propagation

Integrator Comparison

Lifetime

Orbital Decay

Probability of Collision

Propagate Spacecraft from SPICE Ephemeris

Proximity Zone as Orbit Plane

Solar Radiation Pressure Modeled using Other Accelerations

Step to Multiple Conditions

Walker Constellation

 

 

AHF Generation

This Mission Plan demonstrates the ability to generate Attitude History files in the FreeFlyer format. To learn more about topics related to this sample Mission Plan, see the Ephemerides and Attitude History Files reference.

 

A-Train Orbit Plane With Debris

This Mission Plan shows the debris from the 2009 Cosmos2251/Iridium33 collision with respect to the 'A-Train' orbit plane. The A-Train consists of Aqua, CloudSat, CALIPSO, PARASOL, and Aura. When elements of the debris field intersect the orbit plane, they momentarily turn white. An 'X' marks the spot where an element of the debris field has crossed the orbit plane within the apogee and perigee height of the A-Train. Miss distances of < 1000 km are reported to the Console.

 

A-Train orbital plane with Iridium/Cosmos debris

A-Train orbital plane with Iridium/Cosmos debris

 

To learn more about topics related to this sample Mission Plan, see the Lists and Formations guides and the Proximity Zones section of the Coverage and Contact Guide.

 

Attitude Reference Frames

This Mission Plan illustrates the different available Spacecraft Attitude Reference Frames. The built-in attitude reference frames are: Geodetic, LVLH, MJ2000, UVW, and VNB. FreeFlyer also provides the ability to reference the Spacecraft's attitude to a custom CoordinateSystem object. The view shows 6 Spacecraft, each with a '0, 0, 0' attitude with respect to one of these frames. For the Spacecraft referenced to a custom CoordinateSystem, a Sun-pointing CoordinateSystem is used. The viewpoint is fixed to the LVLH Spacecraft.

 

Six Spacecraft in the same orbit, referenced to each of the available attitude reference frames

Six Spacecraft in the same orbit, referenced to each of the available attitude reference frames

 

CCSDS Ephemeris With Covariance

This Mission Plan demonstrates how to propagate a Spacecraft along the vectors in a CCSDS OEM ephemeris file and visualize the covariance data in the file as a 3D error ellipsoid using a ProximityZone. The Watch Window displays information from the header of the CCSDS file.

 

Convert Attitude Time Quaternions AHF

This Mission Plan demonstrates how to convert an STK attitude history file containing 'AttitudeTimeQuaternions' to a FreeFlyer-formatted AHF file containing time and attitude quaternions. This sample assumes that the STK epoch in the header is in the format below, which will be split into 5 StringArray elements ('ScenarioEpoch', Day, Month, Year, Time), reassembled into FreeFlyer's epoch format, and then converted to MJD using EpochScan.

 

Drag/Grav/Magnetic Momentum

This Mission Plan calculates drag, magnetic, and gravitational forces, torques, and momentums on an orbiting spacecraft.

 

 

Ephemeris Generation

This Mission Plan demonstrates the ability to generate ephemerides in the FreeFlyer, CCSDS OEM, and STK formats. To learn more about topics related to this sample Mission Plan, see the Ephemerides and Attitude History Files reference.

 

Ephemeris with Custom Columns

This Mission Plan illustrates how to create an ephemeris file with custom columns and a custom delimiter (#). The Ephemeris file is created by propagating Spacecraft1 and using the Put Command. The file is imported to propagate Spacecraft2 using the LoadEphemeris Method. The file is also imported to propagate Spacecraft2 backwards in time using the PropagationDirection Method. The Ephemeris file is written to the _Output_Files directory and saved as 'SCephem_wCustomColumns.FFephem'.

 

 

Ephemeris with Custom Reference Frame

This Mission Plan highlights the capability of FreeFlyer's Ephemeris v3 format to use a custom reference frame for the ephemeris data. In this example, a custom Earth Fixed (at epoch) frame is defined at the epoch: Jan 15 2020 12:30:00.000.

 

The PositionVelocityConvert() function is used at every time step of a 6 hour propagation loop to convert the Spacecraft's state vector from MJ2000 Earth Equator to the Earth Fixed at epoch frame. These states are then added into the ephemeris as custom columns of data that are not mapped to any spacecraft properties. The ephemeris is then read back into the Mission Plan and imported into a new Spacecraft object using a smaller step size. FreeFlyer interpolates the data in the custom reference frame due to the smaller step size before converting the data back to MJ2000 Earth Equator and assigning it to the new Spacecraft object.

 

Note: An 8th order Lagrange interpolator is used for this particular analysis with the resulting plotted data appearing more smooth due to the increased number of propagation steps taken.

 

Plot showing interpolated data vs input data

Plot showing interpolated data vs input data

 

Ephemeris with Discontinuity

This Mission Plan illustrates how to create an Ephemeris file with a discontinuity. The Spacecraft is propagated for two hours, maneuvered using a ImpulsiveBurn and propagated for two hours. The Ephemeris object is written out in the FreeFlyer ephemeris format to the "_Output_Files" directory and saved as 'SCephem_wDiscontinuity.FFephem'. The discontinuity is marked with a discontinuity delimiter "|" and a vector comment "Burn 1". See the Creating an Ephemeris File guide for more information.

 

Ephemeris File displaying a Discontinuity

Ephemeris File displaying a Discontinuity

 

Highly Elliptical Variable Step Prop

This sample Mission Plan propagates a spacecraft in a Highly Elliptical Orbit (HEO) using the Runge-Kutta 8(9) propagator in Variable Step Size mode.

 

Notice that as the spacecraft approaches Perigee the velocity of the spacecraft increases, and therefore FreeFlyer must decrease the integration step size in order to satisfy the user-defined error tolerance. However, as the spacecraft approaches Apogee, the velocity of spacecraft decreases, and therefore FreeFlyer does not require the integration step size to be as small in order to satisfy the user-defined error tolerance. Therefore, the integration step size increases.

 

Highly elliptical orbit with propagation steps marked by + Signs

Highly elliptical orbit with propagation steps marked by + Signs

 

Integrator Comparison

This Mission Plan shows the variation when propagating spacecraft using the propagators built into FreeFlyer.

 

A view of the different integrators propagating through a low-Earth orbit

A view of the different integrators propagating through a low-Earth orbit

 

Lifetime

This Mission Plan demonstrates use of FreeFlyer to determine spacecraft lifetime in a low-altitude orbit. The Bulirsch Stoer VOP integrator is used to allow computation over a long period of time with good accuracy and short run time. Height is plotted to visualize the spacecraft lifetime.

 

Plot of the Spacecraft Height

Plot of the Spacecraft Height

 

To learn more about topics related to this sample Mission Plan, see the Choosing an Integrator reference.

 

Orbital Decay

This Mission Plan demonstrates the use of FreeFlyer to calculate the reentry of a low Earth orbiting satellite. The major perturbing force affecting the orbit decay is atmospheric drag. The orbital decay rate is calculated in this simulation as the effective change in mean motion per day.

 

This simulation analyzes the decay rate for a set of 16 different orbits by changing the initial spacecraft height by 10 km for each trial. Each trial orbit is propagated for 50 days in order to calculate the orbital decay rate.

 

Effective Change in Mean Motion per Day

Effective Change in Mean Motion per Day

 

Probability Of Collision

This Mission Plan demonstrates how FreeFlyer can be used to calculate the Time of Closest Approach (TCA) and Probability of Collision (Pc) for a conjunction of two spacecraft. The conjunction illustrated here is a case where two spacecraft are in different orbits with the same Period and Inclination. The Primary spacecraft is in a Geostationary orbit, and the Secondary spacecraft is in a 1-day orbit with an Eccentricity of 0.6.

 

3D View of two Spacecraft with a Close Approach that results in a non-zero Probability of Collision

3D View of two Spacecraft with a Close Approach that results in a non-zero Probability of Collision

 

Propagate Spacecraft from SPICE Ephemeris

This Mission Plan demonstrates how to use FreeFlyer to propagate a Spacecraft using a SPICE Ephemeris. SPICE files are ephemerides created and maintained by the Navigation and Ancillary Information Facility (NAIF) Node of the Planetary Data System and are available for download at the FTP site at ftp://naif.jpl.nasa.gov/pub/naif/. The SPICE file used in this example specifies the motion for the Cassini Spacecraft orbiting Saturn. For more information on how to propagate a spacecraft using SPICE ephemeris, visit the Using a SPICE Ephemeris page.

 

Cassini Spacecraft orbiting Saturn

Cassini Spacecraft orbiting Saturn

 

Proximity Zone As Orbit Plane

This Mission Plan demonstrates FreeFlyer's ability to visualize the plane of an orbit. An ellipsoidal ProximityZone is flattened in one dimension and rotated to match the RAAN and I of an orbiting Spacecraft. The Spacecraft holding the ProximityZone is located at the center of the Earth. This technique can be used to determine when other spacecraft or debris particles intersect the orbit plane of a Spacecraft. See the A-Train Orbit Plane with Debris sample Mission Plan for an additional example.

 

Proximity Zone representing the orbital plane of a Sun-Synchronous Spacecraft

Proximity Zone representing the orbital plane of a Sun-Synchronous Spacecraft

 

Solar Radiation Pressure Modeled using Other Accelerations

This Mission Plan demonstrates the use of the Force Model's OtherAcceleration property to apply the force of Solar Radiation Pressure instead of including it in the force model. Three spacecraft with identical orbits are created. The first spacecraft has the effects of SRP enabled in the force model, the second spacecraft applies the SRP force through the OtherAcceleration property, and the third spacecraft does not include the effects of SRP in the force model. The range from the first spacecraft to the other two spacecraft are plotted.

 

Output plot of range from first spacecraft to remaining spacecraft.

Output plot of range from first spacecraft to remaining spacecraft.

 

Orbital separations between each spacecraft.

Orbital separations between each spacecraft.

 

 

Step to Multiple Conditions

This Mission Plan demonstrates how you can use the Step command to step to multiple possible conditions. In this example, a single Step command is used to step to apogee, perigee, the ascending node, and the descending node.

 

Tick marks and annotations are used to indicate apogee, perigee, and the node crossings.

Tick marks and annotations are used to indicate apogee, perigee, and the node crossings.

 

Walker Constellation

This MissionPlan demonstrates how FreeFlyer can be used to dynamically create a constellation of spacecraft.

 

In the "Choose Constellation Type" FreeForm, the user sets a flag to determine whether to generate the constellation through custom orbital elements, input a TLE file to populate the constellation, or initialize the constellation using a sample TLE. By default, custom orbital elements are used. In the "Define Custom Walker Constellation" FreeForm, the user can enter the desired orbital elements. This only applies when the constellation type has been set to 0. In the "Input TLE" FreeForm, the user can set the desired TLE file to use to initialize the constellation. This only applies when the constellation type has been set to 1.

 

Once the constellation, or "Formation", has been created, it is visualized in a 3D ViewWindow and propagated for two days.

 

Custom Walker Constellation with 4 orbital planes

Custom Walker Constellation with 4 orbital planes

 

To learn more about topics related to this sample Mission Plan, see the Lists and Formations and User Interfaces guides.

 

The Mission version of this Mission Plan demonstrates how FreeFlyer can be used to dynamically create a constellation of spacecraft. The user chooses whether to generate the constellation through custom orbital elements, input a TLE set to populate the constellation, or choose a sample constellation.

 

Once the constellation, or "Formation", has been created, it is visualized in a 3D ViewWindow and propagated for two days.