Script Elements

Top  Previous  Next

Name

Description

Mission-Only

Achieve

The Achieve command defines the goals of a targeting loop: the desired value and the allowable tolerance for a user-specified set of object properties. The Achieve command is evaluated wherever it is encountered in the targeting loop.


ApiLabel

The ApiLabel keyword enables the user to specify a point in the Mission Plan at which the FreeFlyer Runtime API can pause when executing a Mission Plan. The ApiLabel functions similarly to a breakpoint, in that it halts execution on a certain line when the Mission Plan, but is different from a breakpoint in that it is intended primarily for data transfer interactions between the Mission Plan and the software utilizing the API instead of as a debugging tool.

Assignment

The Assignment statement, represented by an equals (=) sign, sets the object or property on the left-hand side of the equals sign to the value specified on the right-hand side of the equals sign. This statement can be used to set all the properties of one Spacecraft equal to those of another Spacecraft.


Attach

The Attach command associates one object with another. This allows the attached objects to reference each other during analysis.


Block

The Block statement allows you to organize and structure your Mission Plan. Blocks allow users to visually collapse and quickly move or comment out large sections of code at once.


Break

The Break statement exits a While or a For loop without completing any remaining iterations of the loop or executing any remaining commands within the loop.


Call

The Call command allows FreeFlyer to access pre-defined Procedures and Macros and to pass data between FreeFlyer and Matlab® or Database Management Systems (DBMS).


Close

The Close command shuts down a ReportInterface, MatlabInterface, DataBase, or TCP/IP Socket interface.


Continue

The Continue command ends the current iteration of a While or For loop without executing any remaining commands within the loop, and proceeds to the next iteration of the While or For loop.


Create

It is no longer necessary to use the Create command syntax when defining objects in FreeFlyer script - simply specify the object type and name to create an object.


Define Macro

The Define Macro command creates a Macro and specifies the objects that are passed between the Mission Plan and the Macro.


Define Procedure

The Define Procedure command creates a Procedure and specifies the objects that are passed between the Mission Plan and the Procedure.


For

The For statement contains a block of commands that are executed as a property is stepped until it reaches a terminating condition. The initial and final values of the property are specified, as well as the incremental step value.


Get

The Get command loads data from an external file into a FreeFlyer Object. The external file must be in a supported format.


If

The If statement contains a block of commands that execute if an expression is evaluated to be true.


Include

The Include command provides the Mission Sequence access to the contents of another file.


Iterate

The Iterate command specifies the objects that are restored to their starting states at the beginning of each iteration of a targeting loop.


Maneuver

The Maneuver command applies a burn to a Spacecraft, optionally generating a report.


Map

The Map command displays the specified objects on an equidistant-cylindrical map of the Earth in the 2D view mode of a Mission View. The Map command must contain at least one Spacecraft, which specifies the simulation epoch.


Monitor

The Monitor command creates a scrolling X-Y Plot of the most recent set of values for two or more specified object properties. The plot will refresh so that only one unit on the x-axis is shown. For example, this can be used to view data trends over one day, when the x-axis property is in units of days.


Open

The Open Command opens a previously defined MatlabInterface, DataBase, or Socket object.


Pause

The Pause command suspends the execution of an actively running Mission Plan for either a user-specified length of time or until the user clicks the Run button again.


Plot

The Plot command generates an XY-plot of two or more user-specified object properties, displaying all available values.


PolarMonitor

The PolarMonitor command creates a PolarPlot of two or more user-specified object properties, displaying only the most recent set of values. The data points are specified using angle and radius (ө, r) pairs.


PolarPlot

The PolarPlot command creates a plot of two or more user-specified object properties, displaying all available values. The data points are specified using angle and radius (ө, r) pairs.


Put

The Put command transmits data from a FreeFlyer Object to an external file. Several formats are available for the creation of external ephemeris files; other object files are created in an XML format specific to FreeFlyer.


Receive

The Receive command assigns data to FreeFlyer object properties using data transmitted from an external program (including other instances of FreeFlyer) via a TCP/IP Socket connection.


Report

The Report command outputs text or numeric data to a Console window, a DataTableWindow, a ReportInterface, or an external file.


ResetTargetingLoop

The ResetTargetingLoop command is an optional component of the Targeting loop which allows the user to re-initialize the seeds and perturbations to the Vary command if the Targeting process is not converging properly.


Restore

The Restore command returns an object (and any attached objects) to a state saved previously within the Mission Sequence. The Save command must be used to store the state internally before the Restore command can be used.


Run

The Run command launches a user-specified external application.

Save

The Restore command returns an object (and any attached objects) to a state saved previously within the Mission Sequence. The Save command must be used to store the state internally before the Restore command can be used.


Send

The Send command transmits data from FreeFlyer to an Email object or an external program (including other instances of FreeFlyer) via a TCP/IP Socket connection.


Show

The Show command displays a predefined UserInterface or TrackingDataEditor panel to the user.


Step

The Step command advances the state of a Spacecraft or Formation object forward in time. The epoch to which a Spacecraft is stepped is determined by the Spacecraft Propagator or by a user-specified end condition.


Stop

The Stop command terminates the execution of an actively running Mission Plan, without the option to continue from the stopping point.


Struct

The Struct statement is used to define a Struct, which is a user-defined collection of related FreeFlyer objects.


Switch

The Switch statement allows the user to set up a series of Cases and a Default, one of which will be executed, depending on the value of an input argument.


Target

The Target command begins a block of commands, called a Targeting loop, that attempts to Achieve a desired set of goals by Varying the values of a user-specified set of object properties. A DifferentialCorrector object can optionally be used in a Targeting loop.


Try

The Try command provides recovery from FreeFlyer error messages, such as "Spacecraft has impacted Central Body" or if a Target loop fails to converge. FreeFlyer suppresses any errors that are produced within the scope of the Try/End block of commands.


Update

The Update command refreshes the items displayed in a Window object to show their current states.


Vary

The Vary command specifies the object properties that are adjusted in a Targeting loop in order to meet a set of user-specified goals. For each object property that is varied, the user specifies an initial guess and a perturbation value, and optionally the allowable range of values.


View

The View command displays the specified objects in the 3D view mode of a Mission View. The View command must contain at least one Spacecraft, which specifies the simulation epoch.


Watch

The Watch command creates an output window that displays a list of expressions and their current values in a color-coded tabular format.


While

The While statement contains a block of commands that execute while a conditional statement is evaluated to be true.


WhileManeuvering

The WhileManeuvering command allows the user to execute arbitrary FreeFlyer script while maneuvering a Spacecraft.


WhileStepping

The WhileStepping command allows the user to execute arbitrary FreeFlyer script while propagating a Spacecraft to an end condition.