General Mission Analysis Tool (GMAT)

User Guide

The GMAT Development Team

Table of Contents

Documentation Overview
Using GMAT
Reference Guide
Using GMAT
1. Welcome to GMAT
Features Overview
Dynamics and Environment Modelling
Plotting, Reporting and Product Generation
Optimization and Targeting
Programming Infrastructure
Platform Support
Development Status and Usage
2. Getting Started
Running GMAT
Starting GMAT
Exiting GMAT
Sample Missions
Getting Help
3. Tour of GMAT
User Interfaces Overview
GUI Overview
Script Interface Overview
GUI/Script Interface Interactions and Rules
Resources Tree
Folder Menus
Resource Menus
Mission Tree
Mission Tree Display
View Filters Toolbar
Mission Sequence Menu
Command Menu
Command Summary
Data Availability
Data Contents
Supported Commands
Coordinate Systems
Output Tree
Script Editor
Active Script
GUI/Script Synchronization
Scripts List
Edit Window
Find and Replace
File Controls
Save Status Indicator
4. Configuring GMAT
File Structure
Configuring Data Files
Leap Second and EOP files
Loading Custom Plugins
Configuring the MATLAB Inteface
User-defined Function Paths
5. Simulating an Orbit
Objective and Overview
Configure the Spacecraft
Rename the Spacecraft
Set the Spacecraft Epoch
Set the Keplerian Orbital Elements
Configure the Propagator
Rename the Propagator
Configure the Force Model
Configuring the Orbit View Plot
Configure the Propagate Command
Run and Analyze the Results
6. Simple Orbit Transfer
Objective and Overview
Configure Maneuvers, Differential Corrector, and Graphics
Create the Differential Corrector
Modify the Default Orbit View
Create the Maneuvers.
Configure the Mission Sequence
Configure the Initial Propagate Command
Create the Target Sequence
Create the Final Propagate Command
Configure the Target Sequence
Run the Mission
7. Target Finite Burn to Raise Apogee
Objective and Overview
Create and Configure Spacecraft Hardware and Finite Burn
Create a Thruster and a Fuel Tank
Modify Thruster1 Thrust Coefficients
Attach FuelTank1 and Thruster1 to DefaultSC
Create the Finite Burn Maneuver
Create the Differential Corrector and Target Control Variable
Configure the Mission Sequence
Configure the Initial Propagate Command
Create the Target Sequence
Configure the Target Sequence
Run the Mission
Inspect Orbit View and Message Window
Explore the Command Summary Reports
8. Mars B-Plane Targeting
Objective and Overview
Configure Fuel Tank, Spacecraft properties, Maneuvers, Propagators, Differential Corrector, Coordinate Systems and Graphics
Create Fuel Tank
Modify the DefaultSC Resource
Create the Maneuvers
Create the Propagators
Create the Differential Corrector
Create the Coordinate Systems
Create the Orbit Views
Configure the Mission Sequence
Create the First Target Sequence
Configure the First Target Sequence
Configure the Target desired B-plane Coordinates Command
Configure the Prop 3 Days Command
Configure the Prop 12 Days to TCM Command
Configure the Vary TCM.V Command
Configure the Vary TCM.N Command
Configure the Vary TCM.B Command
Configure the Apply TCM Command
Configure the Prop 280 Days Command
Configure the Prop to Mars Periapsis Command
Configure the Achieve BdotT Command
Configure the Achieve BdotR Command
Run the Mission with first Target Sequence
Create the Second Target Sequence
Create the Final Propagate Command
Configure the second Target Sequence
Configure the Mars Capture Command
Configure the Vary MOI.V Command
Configure the Apply MOI Command
Configure the Prop to Mars Apoapsis Command
Configure the Achieve RMAG Command
Run the Mission with first and second Target Sequences
9. Optimal Lunar Flyby using Multiple Shooting
Objective and Overview
Configure Coordinate Systems, Spacecraft, Optimizer, Propagators, Maneuvers, Variables, and Graphics
Create a Moon-centered Coordinate System
Create the Spacecraft
Create the Propagators
Create the Maneuvers
Create the User Variables
Create the Optimizer
Create the 3-D Graphics
Create XPPlots/Reports
Configure the Mission Sequence
Overview of the Mission Sequence
Define Initial Guesses
Initialize Variables
Vary and Set Spacecraft Epochs
Vary Control Point States
Apply Constraints at Control Points
Propagate the Segments
Compute Some Quantities and Apply Patch Constraints
Apply Patch Point Constraints
Apply Constraints on Mission Orbit
Apply Cost Function
Design the Trajectory
Step 1: Verify Your Configuration
Step 2: Find a Smooth Trajectory
Step 5: Apply a New Constraint
Reference Guide
I. Resources
Array — A user-defined one- or two-dimensional array variable
Barycenter — The center of mass of selected celestial bodies
CelestialBody — A celestial body model
CoordinateSystem — An axis and origin pair
DifferentialCorrector — A numerical solver
EphemerisFile — Generate spacecraft’s ephemeris data
FiniteBurn — A finite burn
FminconOptimizer — The Sequential Quadratic Processor (SQP) optimizer, fmincon
Formation — A collection of spacecraft.
FuelTank — Model of a chemical fuel tank
GroundStation — A ground station model.
GroundTrackPlot — A user-defined resource that draws longitude and latitude time-history of a spacecraft
ImpulsiveBurn — An impulsive maneuver
LibrationPoint — An equilibrium point in the circular, restricted 3-body problem
MatlabFunction — Declaration of an external MATLAB function
OrbitView — A user-defined resource that plots 3-Dimensional trajectories
Propagator — A propagator models spacecraft motion
ReportFile — Report data to a text file
SolarSystem — High level solar system configuration options
Spacecraft — A spacecraft model
Spacecraft Attitude — The spacecraft attitude model
Spacecraft Ballistic/Mass Properties — The physical properties of the spacecraft
Spacecraft Epoch — The spacecraft epoch
Spacecraft Hardware — Add hardware to a spacecraft
Spacecraft Orbit State — The orbital initial conditions
Spacecraft Visualization Properties — The visual properties of the spacecraft
String — A user-defined string variable
Thruster — A chemical thruster model
Variable — A user-defined numeric variable
VF13ad — The Sequential Quadratic Processor (SQP) optimizer, VF13ad
XYPlot — Plots data onto the X and Y axes of a graph
II. Commands
Achieve — Specify a goal for a Target sequence
Assignment (=) — Set a variable or resource field to a value, possibly using mathematical expressions
BeginFiniteBurn — Model finite thrust maneuvers
BeginMissionSequence — Begin the mission sequence portion of a script
BeginScript — Execute free-form script commands
CallMatlabFunction — Call a MATLAB function
ClearPlot — Allows you to clear all data from an XYPlot
EndFiniteBurn — Model finite thrust maneuvers in the mission sequence
Equation — Perform an equation command
For — Execute a series of commands a specified number of times
If — Conditionally execute a series of commands
Maneuver — Perform an impulsive (instantaneous) maneuver
MarkPoint — Allows you to add a special mark point character on an XYPlot
Minimize — Define the cost function to minimize
NonlinearConstraint — Specify a constraint used during optimization
Optimize — Solve for condition(s) by varying one or more parameters
PenUpPenDown — Allows you to stop or begin drawing data on a plot
Propagate — Propagates spacecraft to a requested stopping condition
Report — Allows you to write data to a text file
Stop — Stop mission execution
Target — Solve for condition(s) by varying one or more parameters
Toggle — Allows you to turn data output off or on
Vary — Specifies variables used by a solver
While — Execute a series of commands repeatedly while a condition is met
III. System
Calculation Parameters — Resource properties available for use by commands and output
Command-Line Usage — Starting the GMAT application from the command line
MATLAB Interface — Interface to MATLAB system
Script Language — The GMAT script language
Startup File — The gmat_startup_file.txt configuration file
Release Notes
GMAT R2013a Release Notes
Major Improvements
Minor Enhancements
Compatibility Changes
Known & Fixed Issues
GMAT R2012a Release Notes
New Features
Compatibility Changes
Known & Fixed Issues
GMAT R2011a Release Notes
New Features
Compatibility Changes
Fixed Issues
Known Issues

List of Figures

3.1. GMAT Desktop (Windows)
3.2. Undocked Mission Tree
3.3. GMAT Script Editor
3.4. Default Resources tree
3.5. Folder menu for Spacecraft
3.6. Folder menu for Hardware
3.7. Resource menu
3.8. Parts of the script editor
3.9. Active script indicators
4.1. GMAT Root Directory Structure
4.2. GMAT Data Directory Structure
5.1. Spacecraft State Setup
5.2. Force Model Configuration
5.3. DefaultOrbitView Configuration
5.4. Propagate Command ParameterSelectDialog Configuration
5.5. Propagate Command Configuration
5.6. Orbit View Plot after Mission Run
6.1. Final Mission Sequence for the Hohmann Transfer
6.2. Prop One Day Command Configuration
6.3. Vary TOI Command Configuration
6.4. Perform TOI Command Configuration
6.5. Prop to Apoapsis Command Configuration
6.6. Achieve RMAG = 42165 Command Configuration
6.7. Vary GOI Parameter Selection
6.8. Vary GOI Command Configuration
6.9. Perform GOI Command Configuration
6.10. Achieve ECC = 0.005 Command Configuration
6.11. 3D View of Hohmann Transfer
7.1. FuelTank1 Configuration
7.2. Thruster1 Configuration
7.3. Thruster1 Thrust Coefficients
7.4. Attach FuelTank1 to DefaultSC
7.5. Attach Thruster1 to DefaultSC
7.6. Creation of FiniteBurn Resource FiniteBurn1
7.7. Creation of Variable Resource, BurnDuration
7.8. Prop To Perigee Command Configuration
7.9. Final Mission Sequence
7.10. Raise Apogee Command Configuration
7.11. Vary Burn Duration Command Configuration
7.12. Turn Thruster On Command Configuration
7.13. Prop BurnDuration Command Configuration
7.14. Turn Thruster Off Command Configuration
7.15. Prop To Apogee Command Configuration
7.16. Achieve Apogee Radius = 12000 Command Configuration
7.17. 3D View of Finite Burn to Raise Apogee
8.1. Geometry of the B-Plane as seen from a viewpoint perpendicular to the B-Plane
8.2. The B-vector as seen from a viewpoint perpendicular to orbit plane
8.3. Mission Sequence for the First Target sequence
8.4. Target desired B-plane Coordinates Command Configuration
8.5. Prop 3 Days Command Configuration
8.6. Prop 12 Days to TCM Command Configuration
8.7. Vary TCM.V Command Configuration
8.8. Vary TCM.N Parameter Selection
8.9. Vary TCM.N Command Configuration
8.10. Vary TCM.B Parameter Selection
8.11. Vary TCM.N Command Configuration
8.12. Apply TCM Command Configuration
8.13. Prop 280 Days Command Configuration
8.14. Prop to Mars Periapsis Command Configuration
8.15. Achieve BdotT Command Configuration
8.16. Achieve BdotR Command Configuration
8.17. 3D View of departure hyperbolic trajectory (EarthView)
8.18. 3D View of heliocentric transfer trajectory (SolarSystemView)
8.19. 3D View of approach hyperbolic trajectory. MAVEN stopped at periapsis (MarsView)
8.20. Mission Sequence showing first and second Target sequences
8.21. Prop for 1 day Command Configuration
8.22. Mars Capture Command Configuration
8.23. Vary MOI Parameter Selection
8.24. Vary MOI Command Configuration
8.25. Apply MOI Command Configuration
8.26. Prop to Mars Apoapsis Command Configuration
8.27. Achieve RMAG Command Configuration
8.28. 3D view of Mars Capture orbit after MOI maneuver (MarsView)
9.1. View of Lunar Flyby from Normal to Earth Equator
9.2. View of Lunar Flyby Geometry
9.3. Definition of Control and Patch Points
9.4. View of Discontinuous Trajectory
9.5. Alternate View (1) of Discontinuous Trajectory
9.6. Alternate View (2) of Discontinuous Trajectory
9.7. Smooth Trajectory Solution
9.8. Optimal Trajectory Solution
9.9. Solution Using New Guess

List of Tables

5.1. Sat Orbit State Settings
6.1. DefaultOrbitView settings
6.2. Additional Target Sequence Commands
7.1. Additional Target Sequence Commands
8.1. MainTank settings
8.2. MAVEN settings
8.3. NearEarth settings
8.4. DeepSpace settings
8.5. NearMars settings
8.6. EarthView settings
8.7. SolarSystemView settings
8.8. MarsView settings
8.9. Additional First Target Sequence Commands
8.10. Additional Second Target Sequence Commands
15. Multiple platforms
16. Windows
17. Mac OS X
18. Linux