Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

A MATLAB Script For Creating Pork Chop Plots of Ballistic Earth-to-Mars Trajectories

You are on page 1of 15

A Computer Program for Creating Pork Chop Plots of

Ballistic Earth-to-Mars Trajectories

This document describes a Windows compatible Fortran computer program called porkchop_ftn that
can be used to create and display interplanetary “pork chop” plots for Type I and Type II Earth-to-Mars
missions. These plots illustrate the behavior of departure energy (C3L), right ascension (RLA) and
declination (DLA) of the departure v-infinity vector, time-of-flight, and arrival v-infinity, DLA and
RLA for a range of user-defined departure and arrival calendar dates.

The data required for these contour plots is created by solving the heliocentric, two-body “patched-
conic” Lambert problem. A patched-conic trajectory ignores the gravitational effect of both the
departure and arrivals planets on the heliocentric trajectory. Type I trajectories are characterized by
heliocentric Earth-to-Mars transfer angles which are less than 180 degrees while Type II trajectories
have transfer angles greater than 180 degrees. Pork chop plots are typically used for preliminary
interplanetary mission analysis.

The graphics displayed by this software were created using the DISLIN library (www.dislin.de) and
version 11.1 of the Intel Visual Fortran compiler.

Running the software

An input file created by the user can be run from the command line or a simple batch file with a
statement similar to the following:

porkchop_ftn mars05.in

If the software is executed without an input file on the command line, the computer program will display
the following prompt:

***********************************
* program porkchop_ftn *
* *
* porkchop plots of Earth-to-Mars *
* interplanetary trajectories *
* *
* September 14, 2012 *
***********************************

please input the name of the simulation definition file

At this point the user should input the name of a valid input file, including the filename extension.

To create a DOS command window in Windows 7, select start, then All Programs, then Accessories
and finally Command Prompt. The size, font and other characteristics of the screen can be controlled
by the user with the c:\ icon in the upper left corner of the window. To log into the subdirectory created
during the installation of the Fortran executable and support files, type root:\ and then cd subdirectory
from the DOS command line where root is the name of the root directory, usually c:, and subdirectory is
the name of the subdirectory created by the user. The DOS command line prompt looks similar to
C:\porkchop_ftn>_.

page 1
Input data file

This section describes a typical input data file for the software. In the following discussion the actual
input file contents are in courier font and all explanations are in times italic font. Each data item
within an input file is preceded by one or more lines of annotation text. Do not delete any of these
annotation lines or increase or decrease the number of lines reserved for each comment. However, you
may change them to reflect your own explanation. The annotation line also includes the correct units.

The first six lines of any input file are reserved for user comments. These lines are ignored by the
software. However the input file must begin with six and only six initial text lines.
***********************************************
** porkchop plot of Earth-to-Mars patched-conic
** ballistic interplanetary trajectories
** Mars 2028 example - mars28.in
** November 27, 2011
***********************************************

The next three numbers specify the nominal departure calendar date. Be sure to include all four digits
of the calendar year.
nominal departure calendar date (month, day, year)
11, 24, 2028

The next program integer input defines the time span about the nominal departure date.
departure date time span (days)
90

These three numbers specify the nominal arrival calendar date. Be sure to include all four digits of the
calendar year.
nominal arrival calendar date (month, day, year)
10, 30, 2029

The next program integer input defines the time span about the nominal arrival date.
arrival date time span (days)
180

This next item defines the step size to use during the creation of the graphics data file. An integer value
between 2 and 5 days is recommended.
time span step size (days)
2

The last program option is an integer that specifies the type of graphics display to create.
graphics plot option
====================
1 = departure C3 and time-of-flight
2 = departure C3 and declination of departure v-infinity vector
3 = departure C3 and right ascension of departure v-infinity vector
4 = departure C3 and arrival v-infinity

page 2
5 = arrival v-infinity and declination of arrival v-infinity vector
6 = arrival v-infinity and right ascension of arrival v-infinity vector
7 = mission constraints
-----------------------------------------------------------------------
6

Please see Appendix A for additional information about graphics option 7.

Pork chop graphics

The porkchop_ftn computer program creates a comma separated variable (csv) data file of the Earth-
to-Mars trajectory characteristics. This data file is named porkchp.csv. The following are the first
few lines of a typical data file. In the numerical data area of this file, column 1 is the departure scan
data, column 2 is the arrival scan data, column 3 is the departure energy, column 4 is the time-of-flight
data, column 5 is the declination of the departure v-infinity vector, column 6 is the right ascension of the
departure v-infinity vector, column 7 is the magnitude of the arrival v-infinity vector, column 8 is the
declination of the arrival asymptote, and column 9 is the right ascension of the arrival asymptote.

number of x-data values


91

number of y-data values


181

nominal departure date


7,19,2005

nominal arrival date


6, 4,2006

-.9000000000000000D+02, -.1800000000000000D+03, 0.5852003846859203D+02,


0.2300000000000000D+03, 0.3179805240285841D+01, 0.1486687765850444D+02,
0.3723252154545597D+01, 0.1820830337436039D+02, 0.3180842577861193D+03,
-.9000000000000000D+02, -.1780000000000000D+03, 0.5832877029718923D+02,
0.2320000000000000D+03, 0.3032262372406990D+01, 0.1498624040924910D+02,
0.3661620140326489D+01, 0.1834380354263786D+02, 0.3173294299670796D+03,
-.9000000000000000D+02, -.1760000000000000D+03, 0.5817121591592641D+02,
0.2340000000000000D+03, 0.2895684189656570D+01, 0.1510224239263127D+02,
0.3604452915323141D+01, 0.1847134923222726D+02, 0.3165405162263877D+03,

After the porkchop.csv data file is created, the porkchop_ftn software calls one of the following
executable programs to actually create the graphics display.

cplot1.exe = departure C3 and time-of-flight


cplot2.exe = departure C3 and declination of departure v-infinity vector
cplot3.exe = departure C3 and right ascension of departure v-infinity vector
cplot4.exe = departure C3 and arrival v-infinity
cplot5.exe = arrival v-infinity and declination of the arrival v-infinity vector
cplot6.exe = arrival v-infinity and right ascension of the arrival v-infinity vector
cplot7.exe = “composite” mission constraints (see Appendix A)

page 3
Please note that these programs can be run standalone from a DOS command line or by double clicking
on the name after a porkchop.csv data file is created.

Prior to creating a graphics display of the data computed by porkchop_ftn, the software will display
an interactive graphics setup screen similar to the following.

This screen allows the user to modify such items as the plot, subplot and axis titles. It also includes
options for defining the type of graphics output, the font to use for text and numbers, and the name for
graphic disk files.

The following typical contour plot summarizes the behavior of the departure energy (C3L) in km2 sec2
and the time-of-flight in days for this example. The C3L contours are red and the time-of-flight
contours are blue.

page 4
This next contour plot illustrates the behavior of the departure energy (C3L) and the geocentric
declination of the departure v-infinity vector (DLA) in degrees relative to the Earth mean equator and
equinox of J2000 (EME2000) coordinate system.

page 5
This next plot illustrates the behavior of the departure energy (C3L) and the right ascension of the
departure v-infinity vector (RLA) in degrees relative to the Earth mean equator and equinox of J2000
(EME2000) coordinate system.

This contour plot summarizes the behavior of the departure energy (C3L) and the magnitude of the
arrival v-infinity vector in kilometers per second at Mars.

page 6
The final two plots illustrate the behavior of the arrival conditions at Mars.

Please note that the declination and right ascension of the incoming hyperbolic trajectory are displayed
in the Mars mean equator and IAU node of epoch coordinate system. The coordinate transformation
used to compute these flight characteristics is described in Appendix B.

page 7
Technical Discussion

A solution for the departure and arrival impulsive delta-v vectors can be determined from the solution of
the Lambert two-point boundary-value problem (TPBVP). Lambert’s Theorem states that the time to
traverse a trajectory depends only upon the length of the semimajor axis a of the transfer trajectory, the
sum ri  rf of the distances of the initial and final positions relative to a central body, and the length c of
the chord joining these two positions.

Lambert’s Problem

Lambert’s problem is concerned with the determination of an orbit that passes between two positions
within a specified time-of-flight. This classic astrodynamic problem is also known as the orbital two-
point boundary value problem (TPBVP).

The time to traverse a trajectory depends only upon the length of the semimajor axis a of the transfer
trajectory, the sum ri  rf of the distances of the initial and final positions relative to a central body, and
the length c of the chord joining these two positions. This relationship can be stated as follows:

tof  tof  ri  rf , c, a 

From the following form of Kepler’s equation

a3
t  t0   E  e sin E 

we can write
a3
t  E  E0  e  sin E  sin E0 
 

where E is the eccentric anomaly associated with radius r, E0 is the eccentric anomaly at r0 , and t  0
when r  r0 .

At this point we need to introduce the following trigonometric sun and difference identities:

 a
sin   sin   2sin cos
2 2
 a
cos   cos   2sin sin
2 2
 a
cos   cos   2 cos cos
2 2

If we let E   and E0   and substitute the first trig identity into the second equation above, we have
the following equation:

page 8
a3  E  E0  E  E0  
t  E  E0  2sin  e cos 
  2  2 

With the two substitutions given by

E  E0 
e cos  cos
2 2
E  E0 
sin  sin
2 2

the time equation becomes

a3   
t      2sin cos 
 2 2 

From the elliptic relationships given by

r  a 1  e cos E 

x  a  cos E  e 

y  a sin E 1  e 2

and some more manipulation, we have the following equations:

 r  r0  c r  r0  c s
cos    1    1  1
 2a  2a 2a a

 r  r0  c r  r0  c sc
sin    1    1  1
 2a  2a 2a a

This part of the derivation makes use of the following three relationships:

  r  r0
cos cos 1
2 2 2

  E  E0 E  E0 
2

sin sin  sin 1   e cos 
2 2 2  2 

       x  x0   y  y0   c 
2 2 2 2

 sin sin       
 2 2   2a   2a   2a 

page 9
With the use of the half angle formulas given by

 s  sc
sin  sin 
2 2a 2 2a

and several additional substitutions, we have the time-of-flight form of Lambert’s theorem

a3
t       sin   sin  
 

A discussion about the angles  and  can be found in “Geometrical Interpretation of the Angles  and
 in Lambert’s Problem” by J. E. Prussing, AIAA Journal of Guidance and Control, Volume 2,
Number 5, Sept.-Oct. 1979, pages 442-443. The algorithm used in this computer program is based on
the method described in “A Procedure for the Solution of Lambert’s Orbital Boundary-Value Problem”
by R. H. Gooding, Celestial Mechanics and Dynamical Astronomy 48: 145-165, 1990. This iterative
solution is valid for elliptic, parabolic and hyperbolic transfer orbits which may be either posigrade or
retrograde, and involve one or more revolutions about the central body.

The V ' s required at departure and arrival are simply the differences between the velocity on the
transfer trajectory determined by the solution of Lambert’s problem and the heliocentric velocities of the
two planets. If we treat each planet as a point mass and assume impulsive maneuvers, the planet-
centered magnitude and direction of the required maneuvers are given by the two vector equations:

VL  VTL  VPL

VA  VPA  VTA


where

VTL  heliocentric velocity vector of the transfer trajectory at departure


VTA  heliocentric velocity vector of the transfer trajectory at arrival
VPL  heliocentric velocity vector of the departure planet
VPA  heliocentric velocity vector of the arrival planet

The scalar magnitude of each maneuver is also called the “hyperbolic excess velocity” or v at
departure and arrival. The hyperbolic excess velocity is the speed of the spacecraft relative to each
planet at an infinite distance from the planet. Furthermore, the energy or C3 at departure or arrival is
equal to v2 for the respective maneuver. C3 is also equal to twice the orbital energy per unit mass (the
specific orbital energy).

The orientation of the departure and arrival hyperbolas is specified in terms of the right ascension and
declination of the departure v-infinity velocity vector. These coordinates can be calculated using the x,
y and z components of the departure v-infinity velocity vector.

page 10
The right ascension of the departure v-infinity velocity vector is determined from


  tan 1 v , v
y x

and the geocentric declination of the departure v-infinity velocity vector is given by

  900  cos1  vˆ z



where vˆ z is the z-component of the unit v-infinity vector.

This Fortran computer program models the planetary coordinates using the DE421 binary ephemeris
from the Jet Propulsion Laboratory (JPL).

The DE421 ephemeris and the declination and right ascension of the departure v-infinity vector are
computed with respect to the Earth mean equator and equinox of J2000 (EME2000) coordinate system.
The following figure illustrates the geometry of the EME2000 coordinate system. The origin of this
Earth-centered-inertial (ECI) inertial coordinate system is the geocenter and the fundamental plane is the
Earth’s mean equator. The z-axis of this system is normal to the Earth’s mean equator at epoch J2000,
the x-axis is parallel to the vernal equinox of the Earth’s mean orbit at epoch J2000, and the y-axis
completes the right-handed coordinate system. The epoch J2000 is the Julian Date 2451545.0 which
corresponds to January 1, 2000, 12 hours Terrestrial Time (TT).

Figure 1. Earth mean equator and equinox of J2000 coordinate system

page 11
Algorithm Resources

“Modern Astrodynamics”, Victor R. Bond and Mark C. Allman, Princeton University Press, 1996.

“Interplanetary Mission Design Handbook, Volume 1, Part 2”, JPL Publication 82-43, September 15,
1983.

Explanatory Supplement to the Astronomical Almanac, Edited by P. K. Seidelmann, University Science


Books, 1992.

“Update to Mars Coordinate Frame Definitions”, R. A. Mase, JPL IOM 312.B/015-99, 15 July 1999.

R. H. Battin, An Introduction to the Mathematics and Methods of Astrodynamics, AIAA, 1987.

“The Planetary and Lunar Ephemeris DE 421”, W. M. Folkner, J. G. Williams, D. H. Boggs, JPL IOM
343R-08-003, 31-March-2008.

“Report of the IAU/IAG Working Group on Cartographic Coordinates and Rotational Elements of the
Planets and Satellites: 2009”, Celestial Mechanics and Dynamical Astronomy, 109: 101-135, 2011.

“IERS Conventions (2003)”, IERS Technical Note 32, November 2003.

“Planetary Constants and Models”, R. Vaughan, JPL D-12947, December 1995.

page 12
APPENDIX A
Graphics Option for Creating a Composite Display

Graphics option 7 of the porkchop_ftn program creates a “composite” plot of four important mission
constraints. These constraints are the launch energy (C3L), the geocentric declination of the launch
hyperbola (DLA), the time of flight (TOF) and the scalar magnitude of the arrival v-infinity. A
composite plot allows the user to visualize the departure-arrival mission space that satisfies or bounds
reasonable values for these four mission constraints.

When creating a mission constraint plot, the software reads a simple user-defined data file named
mc_plot.in. The following is a typical mission constraint data file for this program option. Each
constraint item allows the user to define exactly four constraint values. To define less than four values
for plotting, simply repeat the data values. The proper choice of each data value will allow the user to
visualize the “trending” or direction of a particular constraint. Do not delete any of these annotation
lines or increase or decrease the number of lines reserved for each comment or explanation.

*********************************
* mc_plot contour level data file
*********************************

departure C3 contour plot levels (km**2/sec**2)


-----------------------------------------------
8, 10, 10, 10

time-of-flight contour plot levels (days)


-----------------------------------------
200, 200, 300, 300

departure declination contour plot levels (degrees)


---------------------------------------------------
10.0, 20.0, 25.0, 28.5

arrival v-infinity contour plot levels (km/sec)


-----------------------------------------------
3, 3, 4, 4

The following is the mission constraint plot for this example using the mars11.in data file. We can
use this plot to locate the range of departure and arrival conditions such that the following typical
mission constraints are satisfied:
C 3L  10 km 2 sec 2

DLA  28.5

TOF  300 days

v  3 km sec

By examining the boundaries of each constraint, we can see the mission space that satisfies this set of
mission constraints is a small triangular area near the -20, -20 area of the graphics display.

page 13
page 14
APPENDIX B
EME2000-to-Areocentric Coordinate Transformation

This appendix describes the transformation of coordinates between the Earth mean equator and equinox
of J2000 (EME2000) and the areocentric mean equator and IAU node of epoch coordinate systems.
This transformation is used to compute the right ascension and declination of the incoming asymptote at
Mars arrival.

A unit vector in the direction of the pole of Mars can be determined from

cos  p cos  p 
 
pˆ Mars   sin  p cos  p 
 sin  p 

The IAU 2000 right ascension and declination of the pole of Mars in the Earth mean equator and
equinox of J2000 (EME2000) coordinate system are given by the following expressions

 p  317.68143  0.1061T

 p  52.88650  0.0609 T

where T is the time in Julian centuries given by T   JD  2451545.0 / 36525 and JD is the TDB Julian
Date.

The unit vector in the direction of the IAU-defined x-axis is computed from

xˆ  pˆ J 2000  pˆ Mars

where pˆ J 2000  0 0 1 is unit vector in the direction of the pole of the J2000 coordinate system.
T

The unit vector in the y-axis direction of this coordinate system is

yˆ  pˆ Mars  xˆ

Finally, the components of the matrix that transforms coordinates from the EME2000 system to the
Mars-centered mean equator and IAU node of epoch system are as follows:

 xˆ 
M   yˆ 
 
 pˆ Mars 

page 15

You might also like