FreeFlyer Features List

Top  Previous  Next

FreeFlyer is available in two Editions:

1.FreeFlyer Engineer provides comprehensive analysis and full mission design functionality.

2.FreeFlyer Mission provides turnkey mission design functionality and seamless ground system integration for automated spacecraft operations.


Below you will find a product feature map showing a summary of the FreeFlyer Editions.



Edition Functionality

Spacecraft Propagation



Fixed or variable step (step size is user-definable)

Supports nanosecond-level timing precision

Runge Kutta 4(5), 7(8), 8(9), VOP, two body, Bulirsch Stoer, J2 Mean Elements, SGP4 propagators

Planetary ephemeris (e.g. DE405, DE421, DE430)

Solar System object editor

Atmospheric drag/lift, solar radiation pressure

Atmospheric density - Analytic, Jacchia Roberts, Harris Priester, MSIS models

International Reference Ionosphere (IRI) modeling

Celestial body gravitational potential (point mass, zonals and tesserals, solid tides)

SGP4 two-line elements, FreeFlyer ephemeris/state, STK ephemeris/state, SP3 Precise Ephemeris and CCSDS OEM file formats

8th and 10th order Lagrange ephemeris interpolation

User-defined parameters and formatting in FreeFlyer ephemeris file formats

Hundreds of orbit/trajectory properties calculated at each integration step

Unlimited user-defined properties using embedded math libraries or MATLAB connection

Full spacecraft mass properties modeling

Customizable spacecraft Tanks (chemical or electrical) and Thrusters (mono-propellant, bi-propellant, or electrical)

Formation/constellation modeling for unlimited numbers of objects

Mean of J2000 Earth Equator/Earth Ecliptic, True of Date Earth Equator, True Equator Mean Equinox, Earth Fixed, CelestialObject fixed reference frames

Cartesian, Keplerian/nonsingular Keplerian, Spherical/Spherical Lat/Long, Equinoctial, Modified Equinoctial, Brouwer-Lyddane Mean/J2, Brouwer-Lyddane Mean of 1950 orbital element systems

Launch vehicle coordinates (user-definable to launch vehicle vendor specs)

Conversion functions to convert between numerous attitude and coordinate systems

User-defined/custom coordinate systems with conversions

LVLH, Mean of J2000 Earth Equator, Geodetic, UVW, VNB, and user-defined custom attitude reference frames

Euler angles, Quaternion, Attitude matrix, Spinner attitude modeling

Attitude history file (AHF) support

Hill-Clohessy-Wiltshire (HCW) propagator

LVC (Cylindrical), RIC Cylindrical, and RIC Spherical attitude reference frames

Relative Motion Orbit Wizards for Proximity Operations (ProxOps)

Ability to Get/Set a Cartesian and Curvilinear relative states

Work with HCW equations using the Relative Motion Utility

High fidelity SRP Modeling using a PlateModel

Generating Output



Full 2D and 3D visualization with customizable camera Viewpoints

Full-featured plotting library (XY and polar plots with Monitor option)

User-defined custom ASCII reports

2000+ built-in parameters available for reporting and plotting

Globe layers to support coastlines, coastal offsets, political boundaries, and user-defined line layer element sets

Unlimited user-defined parameters for reporting and plotting

GroundStation masking and sensor swath modeling

2D/3D Sensor views

ProximityZones, Regions, and PointGroups for coverage analysis

2D/3D visualization HD movie recording and image saving

Unlimited output window tiling

WatchWindow and GridWindow for configurable real-time data updates

Output layout control for controlling size and location of output windows

Pop output windows in/out of the FreeFlyer Workspace

Flexible Console Window for reporting data

GraphicsOverlay and WindowOverlay for adding custom elements to visualizations

FreeFlyer Scripting



Object-oriented scripting language to control all aspects of a FreeFlyer Mission Plan (objects, methods, commands, conditional logic, data inputs/outputs, and custom computations)

Full-featured FreeForm scripting language editor with general programming convenience functionality such as finding all references, smart indenting, and script auto-complete

Logic to control actions based on any calculated property

For, If, While, Pause, Stop, Achieve, Target, Vary, Break, Switch, Continue commands

Drag and drop mission design sequence

Lists of any object type and Structs of any collection of types

Batch run/Command line capability

Conversion between all supported time systems and formats

Integrated development environment control for system administrators

Integrated debugger

Any property can be set/reset real-time during execution

30+ math operators for implementing custom algorithms

Matrix math

Random Number Generator

Random and Gaussian noise distributions

Coverage and Contact Analysis



400+ pre-defined GroundStation geodetic files and masking profiles

Custom user-defined GroundStation position and masking

Complex conic, rectangular, and user-defined sensor shapes

Sensor obscuration masking

Dynamic Sensor scanning

Complete native RF link budget analysis support

Visibility period calculations between any objects (Spacecraft-to-Spacecraft, Spacecraft-to-GroundStation, Spacecraft-to-custom ground region, etc.)

Field of view, elevation angle, azimuth angle, range, and range rate

Solar and lunar constraints, Lighting constraints, Beta angle constraints

Temporal constraints (interval, duration, GMT, mean local time)

Cross track, along track, range and range rates

Vectors to/from any object

Acquisition of Signal / Loss of Signal (AOS/LOS)

Collision avoidance calculations (customizable ProximityZones)

Sensor-to-Sensor, Sensor-to-Spacecraft, Sensor-to-GroundStation constraints

Sensor tracking

Magnetic field region modeling

Numeric and analytic Earth refraction modeling

Intersection of any vector and 3D model

BlockageDiagram contact analysis

Complete GroundVehicle propagation and analysis

Simple Motion or Waypoint propagation models for GroundVehicle objects

Mean of J2000 Earth Equator, VLT, and ENU attitude reference frames for GroundVehicle objects

Euler angles, quaternion, and attitude matrix attitude modeling for GroundVehicle objects

Maneuvering and Targeting



Impulsive and finite maneuver modeling

Maneuver targeting with differential correction algorithms

Dynamic configuration of the Targeter for resetting initial guesses and use within conditional For/If/While loops

Support for standard chemical and low-thrust propulsion systems

Thruster outgassing event modeling




Generic optimization cabability for multivariable optimization of user-defined objective functions


Definition of any number of state variables and constraints


Ability to minimize or maximize any objective function


Support for finding a feasible solution to solve constraints without optimizing an objective function


Ability to provide gradients and Jacobians to leverage known analytic derivatives


Built-in support for Ipopt and NLopt optimization libraries


Support for SNOPT through user-provided shared library file


Global optimization support through NLopt


Interplanetary Analysis



SPICE Ephemeris read/write support

Full propagator control for a custom CelestialObject with a host of specific and generic interplanetary reference frames

User-defined Regions on any CelestialObject

B-plane targeting

CelestialObject interference (all planets and star catalog)

Occulting CelestialObject modeling as sphere or ellipsoid

Target CelestialObject modeling as point, sphere, or ellipsoid

User-defined GroundStation location and masking profiles on any CelestialObject

Generalized support for any Rotating Libration Point (RLP) system (L1-L5) in the Solar System

Rotating-pulsating coordinate system calculation and visualization support for interplanetary mission design

Interfacing with External Resources



MATLAB interface

TCP/IP socket interface

Customizable graphic user interface (GUI)

Generic ASCII and Binary FileInterface for user-defined ephemeris/state and other I/O applications

ODBC database-compliant interface with transactional mode


Run command to spawn external applications


Automatic e-mail notification based on user-defined rules


FreeFlyer Extensions Software Development Kit (SDK) for custom force modeling, object definition, and 3rd party code integration


Runtime Application Program Interface (API) for for embedding FreeFlyer into an external C/C++, C#, Java, MATLAB®, or Python application


Orbit Determination



Extended Kalman Filter, Batch Least Squares, Unscented Kalman Filter, Square Root Information Filter


Customizable Batch/Kalman combinations implemented via script


Orbit Determination error analysis


Spacecraft Receivers and Transponders


Tracking Data Simulator


Tracking Data Editor with Sigma Threshold Editing that can view multiple measurement types simultaneously


Spacecraft covariance propagation


Ground-based range/range rate/azimuth/elevation tracking data


TDRS tracking two-way range/two-way Doppler tracking data


Point solution and GNSS pseudorange tracking data


Spacecraft-to-Spacecraft range/ range-rate/azimuth/elevation tracking data


Bilateration Ranging Transponder System (BRTS) tracking data


DSN 60-byte and three-way Doppler tracking data



Spacecraft Position, Velocity, Acceleration, Cd, Cr estimation


Transponder delay estimation


Maneuver and outgassing estimation (burn magnitude and direction)


GroundStation location, antenna bias estimation


Spacecraft antenna offset modeling


Terrain Modeling



Integration for modeling GroundVehicle state during propagation


Ability to load and evaluate multiple Terrain Data File formats


Occulting Terrain modeling with VisibilitySegment objects





Mission Plan Wizards for quick problem setup

150+ Sample Mission Plans included

Customizable Home Screen

Auto-save Mission Plan feature

Available in Windows (FreeFlyer.exe, FF.exe, API, FreeFlyer Extensions) and Linux (FF.exe, API)

Extensive Help File with all property definitions, syntax, guides, and examples

Dedicated FreeFlyer Technical Support Team available for assistance