You are on page 1of 33

A MATLAB Script for Propagating Trajectories from the Earth to the Moon

This document is the user’s manual for a MATLAB script called pprop_lunar that can be used to
numerically integrate the geocentric orbital equations of motion of a trajectory from the Earth to the
Moon. This scientific simulation begins at a user-defined epoch and geocentric state vector (position
and velocity vectors) representing the point of trans-lunar injection (TLI) and ends at (1) closest
approach to the Moon, (2) a user-defined Moon-centered (selenocentric) distance, or (3) at a user-
defined final epoch.

All internal calculations and the output provided by the pprop_lunar software are performed in the
metric system. The geocentric equations of motion include the non-spherical gravity effects of the Earth
and Moon, and (optionally) the point-mass gravity of the sun. The option to include the effect of solar
radiation pressure during the trajectory propagation is also provided.

This manual also includes a technical discussion that summarizes the numerical technique and methods
implemented in this computer program. Barycentric Dynamical Time (TDB) is the fundamental time
argument for this simulation and the fundamental solar and lunar ephemeris is based on a JPL
Development Ephemeris such as DE421 or perhaps DE424. This script also uses a MATLAB version of
the Naval Observatory Vector Astrometry Software (NOVAS) library for sidereal time calculations.

User interaction with the script

The pprop_lunar script will interactively prompt the user for the name of a simulation definition data
file with a window similar to the following;

The file type defaults to names with a *.in filename extension. However, you can select any
compatible ASCII data file by selecting the Files of type: field or by typing the name of the file directly
in the File name: field.

Input file format and contents

The pprop_lunar software is “data-driven” by a user-created text file. The following is a typical input
file used by this MATLAB script. 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 change the number of lines reserved
for each comment and data item. However, you may change them to reflect your own explanation or

page 1
information. The annotation line also includes the correct units and when appropriate, the valid range of
the input data items. ASCII text input is not case sensitive but must be spelled correctly. In the
following discussion, the actual input file contents are in bold courier font and all explanations are in
times italic font.

The first four lines of any input file are reserved for user comments. These lines are read but ignored by
the software. However the input file must begin with four and only four initial text lines.
**********************************************
* pprop_lunar input data file - pprop_lunar.in
* Earth-to-Moon trajectory propagation example
**********************************************

The second program input is the difference between ephemeris time (Barycentric Dynamical Time) and
Universal Coordinated Time (UTC) in seconds.
ET-UTC (seconds)
65.184

This next option specifies the type of final conditions of the propagated trajectory. Option 1 propagates
to closest approach at the Moon, option 2 propagates to a user-defined selenocentric distance, and
option 3 propagates to a user-defined final epoch.
type of propagation final condition
1 = lunar closest approach
2 = user-defined selenocentric distance
3 = user-defined final epoch
-----------------------------
1

The next two sets of inputs define the calendar date and UTC time of the final epoch for option 3
described above. Be sure to include all four digits of the calendar year.
user-defined final calendar date
(1 <= month <= 12, 1 <= day <= 31, year = all digits!)
------------------------------------------------------
9, 20, 2008

user-defined final UTC


(0 <= hours <= 24, 0 <= minutes <= 60, 0 <= seconds <= 60)
----------------------------------------------------------
0, 0, 0

The next input defines the user-defined selenocentric distance for program option 2 described above.
user-defined selenocentric distance (kilometers)
10000.0

The next two inputs define the calendar date and UTC at the initial time.
initial calendar date
(1 <= month <= 12, 1 <= day <= 31, year = all digits!)
------------------------------------------------------
9, 15, 2008

initial UTC
(0 <= hours <= 24, 0 <= minutes <= 60, 0 <= seconds <= 60)
----------------------------------------------------------
9, 54, 1.015

page 2
The next three data items define the x, y, and z components of the geocentric position vector of the
trajectory at the initial time.
initial geocentric position vector components
(mean equator and equinox j2000 - kilometers)
---------------------------------------------
-3358.54711130
-4871.14690579
-2840.95894469

The next three data items define the x, y, and z components of the geocentric velocity vector of the
trajectory at the initial time. The position and velocity vectors must be specified relative to the Earth
mean equator and equinox of J2000 (EME2000) coordinate system.
initial geocentric velocity vector components
(mean equator and equinox j2000 - kilometers/second)
----------------------------------------------------
9.36637513219
-5.17963813841
-2.19458266670

The next integer allows the user to include the point-mass gravity of the sun during the trajectory
propagation. To activate this option, the input should be set to 1. Otherwise, the input should be 0.
include solar point-mass perturbation (1 = yes, 0 = no)
-------------------------------------------------------
1

The name of the ASCII data file containing the Earth gravity model data is specified in the next line.
Please see the Technical Discussion section later in this document for a description and format of the
data in this file.
name of Earth gravity model data file
-------------------------------------
egm96.dat

The order (zonals) of the Earth gravity model is an integer defined in the next line.
order of the gravity model (zonals)
-----------------------------------
8

The degree (tesserals) of the Earth gravity model is an integer defined in this next line.
degree of the gravity model (tesserals)
---------------------------------------
8

The name of the ASCII data file containing the lunar gravity model data is specified in the next line.
name of lunar gravity model data file
-------------------------------------
lp150q.dat

The order (zonals) of the lunar gravity model is an integer defined in the next line.
order of the gravity model (zonals)
-----------------------------------
8

page 3
The degree (tesserals) of the lunar gravity model is an integer defined in this next line.
degree of the gravity model (tesserals)
---------------------------------------
8

The next series of inputs define the characteristics used for solar radiation pressure perturbation
calculations. These three items include the reference mass, reference cross-sectional area, and
reflectivity coefficient. To exclude this perturbation, input a mass of zero.
mass (kilograms; input 0 to ignore SRP calculations)
----------------------------------------------------
2000.0d0
SRP reference area (square meters)
----------------------------------
18.75

reflectivity coefficient (non-dimensional)


------------------------------------------
1.4d0

Important utility and astrodynamics constants required by this script are defined in a MATLAB function
called om_constants.m. The following is a typical constants and models function. Please note the
proper units for each data item.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% pprop_lunar astrodynamic and utility constants
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

global aunit clight psr emu req omega mmu req_moon smu

% astronomical unit (kilometers)

aunit = 149597870.691;

% speed of light (meters/second)

clight = 299792458.0;

% solar flux at 1 AU (watts/meters**2)

psr = 1366.1;

% Earth gravitational constant (km**3/sec**2)

emu = 398600.4415;

% Earth equatorial radius (kilometers)

req = 6378.1363;

% earth inertial rotation rate (radians/second)

omega = 7.292115486e-5;

% Moon gravitational constant (km**3/sec**2)

mmu = 4902.800238;

% Moon equatorial radius (kilometers)

req_moon = 1738.0;

page 4
% sun gravitational constant (km**3/sec**2)

smu = 132712440040.9446;

Script example

The following is the program output for a typical closest approach simulation. Explanatory text is
provided in italic times Roman font. Appendix A contains a brief explanation of these data items.

The first part of the output summarizes the file names of the data used in the simulation along with the
type of propagation final condition.

pprop_lunar - Earth-to-Moon trajectory propagation


--------------------------------------------------

simulation definition data file ==> pprop_lunar.in

JPL ephemeris ==> de421.bin

lunar closest approach

initial time and geocentric conditions


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 15-Sep-2008

UTC time 09:54:01.015

UTC julian date 2454724.91251175

TDB time 09:55:06.199

TDB julian date 2454724.91326619

sma (km) eccentricity inclination (deg) argper (deg)


+1.91019260009642e+05 +9.65639819698036e-01 +2.85000095011977e+01 +2.45098495629458e+02

raan (deg) true anomaly (deg) arglat (deg) period (days)


+3.53244686743961e+02 +1.31500072200494e-02 +2.45111645636678e+02 +9.61641009430156e+00

rx (km) ry (km) rz (km) rmag (km)


-3.35854711130000e+03 -4.87114690579000e+03 -2.84095894469000e+03 +6.56345630000103e+03

vx (kps) vy (kps) vz (kps) vmag (kps)


+9.36637513219000e+00 -5.17963813841000e+00 -2.19458266670000e+00 +1.09258330319824e+01

time and geocentric conditions at lunar closest approach


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 19-Sep-2008

UTC time 20:25:20.758

UTC julian date 2454729.35093469

TDB time 20:26:25.941

TDB julian date 2454729.35168914

page 5
sma (km) eccentricity inclination (deg) argper (deg)
-2.26126009998755e+05 +2.62734917647342e+00 +9.01741981723714e+01 +1.61033560890649e+02

raan (deg) true anomaly (deg) arglat (deg)


+2.31767208961374e+02 +3.54681164097936e+02 +1.55714724988584e+02

rx (km) ry (km) rz (km) rmag (km)


+2.07865764797275e+05 +2.64585276160775e+05 +1.51818091033456e+05 +3.69137206605989e+05

vx (kps) vy (kps) vz (kps) vmag (kps)


+4.32301287570536e-01 +5.39592811339795e-01 -1.85588903043593e+00 +1.98049713420069e+00

This section of the display summarizes the time and conditions at closest approach to the Moon. It
includes both the selenocentric coordinates and the B-plane coordinates of the trajectory with respect to
a Moon-centered mean equator and IAU node of epoch coordinate system.
time and selenocentric conditions at lunar closest approach
(lunar mean equator and IAU node of epoch)
------------------------------------------

calendar date 19-Sep-2008

UTC time 20:25:20.758

UTC julian date 2454729.35093469

TDB time 20:26:25.941

TDB julian date 2454729.35168914

sma (km) eccentricity inclination (deg) argper (deg)


-6.83366390350645e+03 +1.26895069238471e+00 +8.99761039618165e+01 +1.40395237732523e+02

raan (deg) true anomaly (deg) arglat (deg)


+1.46630113229380e+02 +5.34198687189501e-07 +1.40395238266722e+02

rx (km) ry (km) rz (km) rmag (km)


+1.18232145234533e+03 -7.79291214457045e+02 +1.17165101786796e+03 +1.83791863837247e+03

vx (kps) vy (kps) vz (kps) vmag (kps)


+1.31022365379149e+00 -8.61999041731923e-01 -1.89549085512153e+00 +2.46020607932564e+00

b-plane coordinates of incoming selenocentric hyperbola


(lunar mean equator and IAU node of epoch)
------------------------------------------

b-magnitude 5338.293869 kilometers


b dot t 2.227291 kilometers
b dot r -5338.293405 kilometers
b-plane angle 270.023905 degrees
v-infinity 847.023172 meters/second
r-periapsis 1837.918638 kilometers
decl-asymptote 1.608665 degrees
rasc-asymptote 326.629442 degrees

flight path angle 2.9876003453e-07 degrees

The last part of the simulation displays the geocentric coordinates of the Moon at the time of closest
approach along with the propagation duration in hours and days.
time and geocentric conditions of the Moon at closest approach
(Earth mean equator and equinox of J2000)
-----------------------------------------

page 6
calendar date 19-Sep-2008

UTC time 20:25:20.758

UTC julian date 2454729.35093469

TDB time 20:26:25.941

TDB julian date 2454729.35168914

sma (km) eccentricity inclination (deg) argper (deg)


+3.87058605045660e+05 +4.69277130396077e-02 +2.74682423853030e+01 +6.54886637963356e+01

raan (deg) true anomaly (deg) arglat (deg) period (days)


+3.52456400297867e+02 +3.57078940968000e+02 +6.25676047643357e+01 +2.77371815288727e+01

rx (km) ry (km) rz (km) rmag (km)


+2.06629156216827e+05 +2.65693966727711e+05 +1.51030976450419e+05 +3.68916315716655e+05

vx (kps) vy (kps) vz (kps) vmag (kps)


-8.80062293052333e-01 +5.53144202550402e-01 +2.25007926359825e-01 +1.06353500901117e+00

declination 24.166577 degrees


right ascension 52.127933 degrees

propagation duration 106.522151 hours


4.438423 days

The pprop_lunar script will also create a graphics display of the geocentric trajectory. Please note
that the coordinates are displayed in the units of Earth radii (ER). The transfer trajectory is red and the
Moon’s orbit is blue with a small dot every four hours. The blue asterisk symbol is the beginning of the
trajectory and the red asterisk is the spacecraft location at the final event. A three-dimensional plot of
the Earth is labeled with an EME2000 coordinate system. The x-axis of this system is red, the y-axis is
green and the z-axis blue. The following is the graphics display for this example.

page 7
If the trajectory passes within 64,000 kilometers of the Moon, the pprop_lunar script will also create a
graphics display of the selenocentric trajectory. This threshold can be changed by the user in line 466 of
the main script source code which reads if (norm(rsc) <= 64000.0). Please note that the
coordinates are displayed in the units of the Moon’s radius (MR). The blue asterisk symbol is the
beginning of the selenocentric trajectory as it enters the lunar sphere-of-influence (SOI). A three-
dimensional plot of the Moon is labeled with a lunar mean equator and IAU node of epoch coordinate
system. The x-axis of this system is red, the y-axis is green and the z-axis blue.

Trajectory image files are saved to disk in both encapsulated, color Postscript format and MATLAB fig
format. The disk file names for the geocentric trajectory are pprop_lunar1.eps, and
pprop_lunar1.fig. The disk file names for the selenocentric trajectory are pprop_lunar2.eps,
and pprop_lunar2.fig. These files are created with MATLAB source code similar to

% create color eps graphics file with tiff preview

print('-depsc', 'pprop_lunar2.eps');

saveas(h, 'pprop_lunar2.fig');

The interactive features of MATLAB graphics allow the user to re-load and manipulate the fig version
of the trajectory display. These capabilities allow the user to interactively find the best viewpoint as
well as verify basic three-dimensional geometry of the trajectory.

Technical Discussion

The orbital motion is modeled 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).

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

In this computer program the heliocentric coordinates of the sun, Moon and planets are based on a JPL
Development Ephemeris such as DE421 or DE424. These coordinates are provided in the Earth mean
equator and equinox of J2000 coordinate system (EME2000). The binary ephemeris files, located at
www.cdeagle.com, were created for use on Windows-compatible computers. However, they have also
been tested on an Intel-based MacBook Air. For other platforms, you may need to create binary files
specific to that system. Information and computer programs for creating these files can be found at the
JPL solar system FTP site located at ftp://ssd.jpl.nasa.gov/pub/eph/planets/.

Geocentric-to-selenocentric coordinate transformation

This section describes the transformation of coordinates between the Earth mean equator and equinox of
J2000 (EME2000) and lunar mean equator and IAU node of epoch coordinate systems. This
transformation is used to compute the B-plane coordinates, state vector and classical orbital elements at
lunar encounter. The following diagram illustrates the orientation of the lunar mean equator and IAU
node of epoch coordinate frame.

Figure 2. Lunar mean equator and IAU node of epoch coordinate system

page 9
A unit vector in the direction of the pole of the Moon can be determined from

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

where  p and  p are the right ascension and declination of the lunar pole. The right ascension and
declination of the lunar pole in the EME2000 coordinate system are given by the following expressions

 P  269.9949  0.0031T  3.8787sin E1  0.1204sin E 2


0.0700sin E 3  0.0172sin E 4  0.0072sin E 6
0.0052sin E10  0.0043sin E13

 P  66.5392  0.0130T  1.5419 cos E1  0.0239 cos E 2


0.0278cos E 3  0.0068cos E 4  0.0029 cos E 6
0.0009 cos E 7  0.0008cos E10  0.0009 cos E13

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

The trigonometric arguments, in degrees, for these equations are

E1  125.045  0.0529921d E 2  250.089  0.1059842d


E 3  260.008  13.0120009d E 4  176.625  13.3407154d
E 6  311.589  26.4057084d E 7  134.963  13.0649930d
E10  15.134  0.1589763d E13  25.053  12.9590088d

where d  JD  2451545 is the number of days since January 1.5, 2000. These equations are given in
“Report of the IAU Working Group on Cartographic Coordinates and Rotational Elements: 2009”,
Celestial Mechanics and Dynamical Astronomy, 109: 101-135, 2011.

The unit vector in the x-axis direction of this selenocentric coordinate system is given by

xˆ  zˆ  pˆ Moon

where zˆ  0 0 1 . The unit vector in the y-axis direction can be determined using
T

yˆ  pˆ Moon  xˆ

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

M  xˆ yˆ pˆ Moon 
T

page 10
Propagating the geocentric trajectory

The pprop_lunar MATLAB script implements a special perturbation technique which numerically
integrates the vector system of second-order, nonlinear differential equations of motion given by

a r, t   r r, t   a g r, t   as r, t   am r, t   asrp r, t 

where
t  dynamical time
r  inertial geocentric position vector
a g  acceleration due to Earth gravity
a s  acceleration due to the sun
a m  acceleration due to the Moon
a srp  acceleration due to solar radiation pressure

Geocentric acceleration due to non-spherical Earth gravity

The software uses a spherical harmonic representation of the Earth’s geopotential function given by

    n R
 n n
R
  r,  ,      C   Pn0  u      Pnm  u   Snm sin m  Cnm cos m 
0
n
r r n 1  r  r n 1 m1  r 

where  is the geocentric latitude,  is the geocentric east longitude and r  r  x 2  y 2  z 2 is the
geocentric distance. In this expression the S’s and C’s are harmonic coefficients of the geopotential, and
the P’s are associated Legendre polynomials of degree n and order m with argument u  sin  .

The software calculates the acceleration due to the Earth’s gravity field with a vector equation derived
from the gradient of the potential function expressed as

a g  r, t    r, t 

This acceleration vector is a combination of pure two-body or point mass gravity acceleration and the
gravitational acceleration due to higher order nonspherical terms in the Earth’s geopotential. In terms of
the Earth’s geopotential  , the inertial rectangular cartesian components of the acceleration vector are
as follows:
1 z   1 
x  x 2 y
 r  r r 2 x 2  y 2    x  y 2
 
 

1 z   1 


y   y 2 x
 r  r r 2 x 2  y 2    x  y 2
 
 

1  x2  y2   
z  z   
r r   r 2
 
 

page 11
The three partial derivatives of the geopotential with respect to r, ,  are given by

 1   N  R
n

        n  1  Cnm cos m  Snm sin m  Pnm  sin  


n

r r  r  n 2  r  m 0

  N R
n n

 
  r  n2  r 
 C
m 0
m
n cos m  Snm sin m   Pnm1  sin    m tan  Pnm  sin  

  N R
n n

 
  r  n2  r 
mS
m 0
m
n cos m  Cnm sin m  Pnm  sin  

where
R  radius of the Earth
r  geocentric distance
Snm , Cnm  harmonic coefficients
  geocentric declination  sin 1  z r 
  longitude     g
  right ascension  tan 1  y x 
 g  right ascension of Greenwich

The right ascension is measure positive east of the vernal equinox, longitude is measured positive east of
Greenwich, and declination is positive above the Earth’s equator and negative below.

For m  0 the coefficients are called zonal terms, when m  n the coefficients are sectorial terms, and
for n  m  0 the coefficients are called tesseral terms.

The Legendre polynomials with argument sin  are computed using recursion relationships given by:

1
Pn0  sin     2n  1 sin  Pn01  sin     n  1 Pn02  sin  
n
Pnn  sin     2n  1 cos  Pnn11  sin   , m  0, m  n
Pnm  sin    Pnm2  sin     2n  1 cos  Pnm11  sin   , m  0, m  n

where the first few associated Legendre functions are given by

P00 sin    1, P10 sin    sin  , P11 sin    cos


and Pi j  0 for j  i .

The trigonometric arguments are determined from expansions given by

page 12
sin m  2 cos  sin  m  1   sin  m  2  
cos m  2 cos  cos  m  1   cos  m  2  
m tan    m  1 tan   tan 

The gravity model data files included with this MATLAB script are simple space delimited ASCII data
files. The following is a portion of a typical gravity model data file. In this file, column one is the
degree index, column two is the model order index, and columns three and four are the corresponding
un-normalized gravity coefficients (zonals and tesserals, respectively).

2 0 -0.10826300D-02 0.00000000D+00
3 0 0.25321531D-05 0.00000000D+00
4 0 0.16109876D-05 0.00000000D+00
5 0 0.23578565D-06 0.00000000D+00
6 0 -0.54316985D-06 0.00000000D+00
7 0 0.33237640D-06 0.00000000D+00
8 0 0.17721040D-06 0.00000000D+00
9 0 0.14459876D-06 0.00000000D+00
10 0 0.23339780D-06 0.00000000D+00
11 0 -0.27870829D-06 0.00000000D+00
12 0 0.17036617D-06 0.00000000D+00
13 0 0.25024428D-06 0.00000000D+00

Gravity model coefficients are often published in normalized form. The relationship between
normalized Cl ,m , Sl ,m and un-normalized gravity coefficients Cl ,m , Sl ,m is given by the following
expression:
 l  m ! Cl ,m 
12
Cl ,m   1
    
 Sl ,m    2   m 0  2l  1  l  m  !   Sl ,m 

where  m 0 is equal to 1 if m is zero and equal to zero if m is greater than zero.

Geocentric acceleration due to lunar gravity

The acceleration contribution of the Moon is given by

 r r 
am  r, t    m  m sc 3  em 3 
r rem 
 m sc

where
m  gravitational constant of the Moon
rm sc  position vector from the Moon to the trajectory
rem  position vector from the Earth to the Moon

The first term within the bracket is called the direct contribution and the second term is called the
indirect contribution. The software uses a spherical harmonic representation of the Moon’s
selenopotential function to calculate the direct contribution. The terms in the potential are as follows

page 13
R  radius of the moon
r  selenocentric distance of the satellite
Snm , Cnm  harmonic coefficients
  selenocentric declination of the satellite  sin 1  z r 
  longitude of the satellite     pm
  right ascension of the satellite  tan 1  y x 
 pm  right ascension of the selenocentric prime meridian

In the pprop_lunar software, right ascension is measure positive east of the vernal equinox, longitude
is measured positive east of the lunar prime meridian, and declination is positive above the moon’s
equator and negative below.

According to “Report of the IAU/IAG Working Group on Cartographic Coordinates and Rotational
Elements: 2010”, the transformation matrix from the Earth mean equator and equinox of J2000
(EME2000) coordinate system to the moon-centered, body-fixed lunar principal axis (PA) system is
given by the following (3-1-3) rotation sequence;

 M EME 2000  Rz   Rx   Rz  
PA

In this equation,  is the angle along the ICRF (International Celestial Reference Frame) equator, from
the ICRF x-axis to the ascending node of the lunar equator,  is the inclination of the lunar equator to
the ICRF equator, and  is the angle along the lunar equator from the node to the lunar prime meridian.
These three Euler angles represent the numerically integrated physical librations of the Moon.

The principal axis frame is aligned with the three maximum moments of inertia of the Moon. The
LP150Q lunar gravity model was developed using this frame.

The relationship between these angles and the classical IAU (International Astronomical Union)
orientation angles is
    90

  90  
W 

In this MATLAB script, the lunar libration angles are obtained from the same JPL binary ephemeris
used to compute the solar and lunar coordinates. Developmental Ephemeris DE421 is considered the
best currently available lunar ephemeris and Chebyshev polynomial representations of the Euler angles
and their rates in the PA system are included in the DE421 ephemeris file.

After the non-spherical lunar gravity vector is computed in the principal axis system, it is transformed
back to the EME2000 system using the transpose of the  M EME 2000 matrix given earlier and included in
PA

the geocentric orbital equations of motion.

page 14
Geocentric acceleration due to the point-mass gravity of the sun

The acceleration contribution of the sun represented by a point mass is given by

 r r 
a s  r, t    s  s  sc 3  es 3 
r res 
 s  sc
where
s  gravitational constant of the sun
rs  sc  position vector from the sun to the trajectory
re s  position vector from the Earth to the sun

To avoid numerical problems, use is made of Richard Battin’s f  q  function given by

 3  3qk  qk2 
f  qk   qk  3

1  1  qk  
where
r T  r  2sk 
qk 
sTk sk

The point-mass acceleration due to n gravitational bodies can now be expressed as

n
k
r   r  f  qk  s k 
k 1 d k3 

In these equations, s k is the vector from the primary body to the secondary body, k is the gravitational
constant of the secondary body and dk  r  sk , where r is the position vector relative to the primary
body. The derivation of the f  q  functions is described in Section 8.4 of “An Introduction to the
Mathematics and Methods of Astrodynamics, Revised Edition”, by Richard H. Battin, AIAA Education
Series, 1999.

The first-order system of equations required by this computer program can be created from the second-
order system by the method of order reduction. With the following definitions,

y1  rx y2  ry y3  rz
y4  v x y5  v y y6  v z

where vx , v y , vz are the velocity vector components, the first-order system of differential equations is
given by

page 15
y1  v x y2  v y y3  v z

y4  a x  e  a x  m  ax  s  ax  srp

y5  a y  e  a y  m  a y  s  a y  srp

y6  az  e  az  m  az  s  az  srp

In these equations, ax e , a y e and az e are the x, y and z gravitational contributions of the Earth,
ax m , a y m and az m are the x, y and z gravitational contributions of the Moon, ax s , a y s and az s are the
x, y and z gravitational contributions of the sun, and ax srp , a y srp and az srp are the x, y and z
gravitational contributions due to solar radiation pressure.

Geocentric acceleration due to solar radiation pressure

We can define a solar radiation constant as a function of its size, mass and surface reflective properties
according to the equation:
A
Csrp   Ps a 2
m
where
  reflectivity constant
Ps  solar radiation pressure constant
a  astronomical unit
A  surface area normal to the incident radiation
m  mass

The reflectivity constant is a dimensionless number between 0 and 2. For a perfectly absorbent body
  1 , for a perfectly reflective body   2 , and for a translucent body   1 . For example, the
reflectivity constant for an aluminum surface is approximately 1.96.

The value of the solar radiation pressure on a perfectly absorbing surface at a distance of one
Astronomical Unit from the Sun is
G Newton
Ps  1 
c meters 2

where G1 is the solar flux at a distance of one Astronomical Unit in watts per square meter, and c is the
speed of light in meters per second. The values of the solar flux and speed of light used during a
simulation are defined by the user in the constants and models MATLAB function.

The acceleration vector due to solar radiation pressure is given by:

rsc  s
a srp  csrp 3
rsc  s

page 16
where
rsc = geocentric, inertial position vector
re s = geocentric, inertial position vector of the sun
rsc s  rsc  re s

During the geocentric integration process, the software must determine if the trajectory is in Earth
shadow or sunlight. Obviously, there can be no solar radiation perturbation during Earth eclipse of the
orbit. The software makes use of a shadow parameter to determine eclipse conditions. This parameter
is defined by the following expression:

rsc  res
  sign(rsc  res )
re s

where rsc is the geocentric, inertial position vector of the trajectory and re s is the geocentric, inertial
position vector of the sun relative to the trajectory.

The critical values of the shadow parameter for the penumbra (subscript p) and umbra part (subscript u)
of the shadow are given by:
 p  rsc sin p

u  rsc sin u

The penumbra and umbra shadow angles are found from:

 p  p

 u    u

They are the angles between the geocentric anti-sun vector and the vector to the trajectory at the time of
shadow entrance or exit.

If we represent the shadow as a cylinder, the shadow angle is given by:

 re 
  sin 1  
 rsc 

The corresponding penumbra and umbra cone angles are as follows:

 rs  re 
 p  sin 1  
 re s 

 rs  re 
u  sin 1  
 re s 

page 17
where

re  radius of the Earth


rs  radius of the sun
re s  distance from the Earth to the sun

If the condition u     p is true, the geocentric trajectory is in the penumbra part of the Earth’s
shadow, and if the inequality 0    u is true, the trajectory is in the umbra part of the shadow. If the
absolute value of the shadow parameter is larger than the penumbra value, the trajectory is in full
sunlight. The shadow calculations used in this MATLAB script also assume the Earth’s atmosphere
increases the radius of the Earth by 90 kilometers.

Predicting closest approach to the Moon

Closest approach is determined during the numerical integration of the geocentric equations of motion
by finding the time at which the flight path angle relative to the Moon is essentially zero. This mission
constraint is computed as follows
rv
sin    0
rv

where r and v are the Moon-centered position and velocity vectors, respectively. Closest approach is
predicted using the event prediction capability of the built-in ode45 MATLAB function.

The following is the MATLAB source code for the function that determines closest approach.

function [jdtdb_ca, re2sc, ve2sc, rm2sc, vm2sc] = findca(jdtdb_tli, ri, vi)

% solve for lunar closest approach conditions

% input

% ri = initial geocentric position vector (kilometers)


% vi = initial geocentric velocity vector (kilometers/second)

% output

% jdtdb_ca = tdb julian date at closest approach


% re2sc = geocentric position vector (kilometers)
% ve2sc = geocentric velocity vector (kilometers/second)
% rm2sc = selenocentric position vector (kilometers)
% vm2sc = selenocentric velocity vector (kilometers/second)

% NOTE: rm2sc and vm2sc => Moon mean equator and IAU node of epoch
% re2sc and ve2sc => Earth mean equator and equinox of J2000

% Orbital Mechanics with MATLAB

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% set up options for ode45

options = odeset('RelTol', 1.0e-10, 'AbsTol', 1.0e-10, 'Events', @fpa_event);

% solve for closest approach conditions

page 18
tend = 7.0 * 86400.0;

[t, ysol, tevent, yevent, ie] = ode45(@pprop_eqm, [0 tend], [ri vi], options);

% geocentric coordinates at closest approach

re2sc = yevent(1:3);

ve2sc = yevent(4:6);

% compute "solved for" tdb julian date at lunar closest approach

jdtdb_ca = jdtdb_tli + tevent / 86400.0;

% compute lunar state vector at closest approach

svmoon = jplephem(jdtdb_ca, 10, 3);

rmoon = svmoon(1:3);

vmoon = svmoon(4:6);

% compute selenocentric state vector

rsc = yevent(1:3)' - rmoon(1:3);

vsc = yevent(4:6)' - vmoon(1:3);

tmatrix = mm2000(jdtdb_ca);

rm2sc = tmatrix * rsc;

vm2sc = tmatrix * vsc;

The following is the MATLAB function that evaluates the current value of the selenocentric flight path
angle required by the findca function.

function [value, isterminal, direction] = fpa_event(t, y)

% selenocentric flight path angle event function

% required by pprop_lunar.m

% input

% t = time since tli tdb julian date (seconds)


% y = spacecraft geocentric state vector (km, km/sec)

% output

% value = selenocentric flight path angle (radians)

% Orbital Mechanics with MATLAB

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

global jdtdb_tli

% lunar state vector at current time t

jdate = jdtdb_tli + t / 86400.0;

svmoon = jplephem(jdate, 10, 3);

page 19
% form the selenocentric position and velocity

rsc = y(1:3) - svmoon(1:3);

vsc = y(4:6) - svmoon(4:6);

tmatrix = mm2000(jdate);

rm2sc = tmatrix * rsc;

vm2sc = tmatrix * vsc;

% sine of the selenocentric flight path angle

value = rm2sc' * vm2sc / (norm(rm2sc) * norm(vm2sc));

isterminal = 1;

direction = [];

Predicting the conditions at a user-defined selenocentric distance

The trajectory conditions at the boundary of a user-defined selenocentric distance are determined during
the numerical integration of the geocentric equations of motion by finding the time at which the
difference between the selenocentric distance and the user-defined value is essentially zero. This
mission constraint is computed as follows

r  rsc  ruser  0

where rsc is the selenocentric position vector of the trajectory and ruser is the user-specified value of the
selenocentric distance. Selenocentric distance conditions are also predicted using the event prediction
capability of the built-in ode45 MATLAB function. The following is the source code for the function
that performs this calculation.

function [jdtdb_rm, re2sc, ve2sc, rm2sc, vm2sc] = findrm(jdtdb_tli, ri, vi)

% solve for selenocentric distance conditions

% input

% jdtdb_tli = initial tdb julian date


% ri = initial geocentric position vector (kilometers)
% vi = initial geocentric velocity vector (kilometers/second)

% output

% jdtdb_rm = tdb julian date at user-defined selenocentric distance


% rm2sc = selenocentric position vector (kilometers)
% vm2sc = selenocentric velocity vector (kilometers/second)

% NOTE: rm2sc and vm2sc => Moon mean equator and IAU node of epoch

% Orbital Mechanics with MATLAB

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% set up options for ode45

page 20
options = odeset('RelTol', 1.0e-10, 'AbsTol', 1.0e-10, 'Events', @rm_event);

% solve for closest approach conditions

tof = 7.0 * 86400.0;

[t, ysol, tevent, yevent, ie] = ode45(@pprop_eqm, [0 tof], [ri vi], options);

% geocentric coordinates at closest approach

re2sc = yevent(1:3);

ve2sc = yevent(4:6);

% compute "solved for" tdb julian date at user-defined selenocentric


% distance

jdtdb_rm = jdtdb_tli + tevent / 86400.0;

% compute lunar state vector at user-defined selenocentric distance

svmoon = jplephem(jdtdb_rm, 10, 3);

rmoon = svmoon(1:3);

vmoon = svmoon(4:6);

% compute selenocentric state vector

rsc = yevent(1:3)' - rmoon(1:3);

vsc = yevent(4:6)' - vmoon(1:3);

tmatrix = mm2000(jdtdb_rm);

rm2sc = tmatrix * rsc;

vm2sc = tmatrix * vsc;

The following is the MATLAB source code for the function that evaluates the difference between the
current selenocentric distance and the user-defined value defined by rmag_user.

function [value, isterminal, direction] = rm_event(t, y)

% selenocentric distance event function

% required by pprop_lunar.m

% input

% t = time since tli tdb julian date (seconds)


% y = spacecraft geocentric state vector (km, km/sec)

% output

% value = selenocentric distance difference (kilometers)

% Orbital Mechanics with MATLAB

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

global jdtdb_tli rmag_user

% compute lunar geocentric state vector at current time t

page 21
jdate = jdtdb_tli + t / 86400.0;

svmoon = jplephem (jdate, 10, 3);

rmoon = svmoon(1:3);

% form the moon-centered position vector

rm2sc = y(1:3) - rmoon(1:3);

% selenocentric distance

value = norm(rm2sc) - rmag_user;

isterminal = 1;

direction = [];

Predicting the conditions at a user-defined final epoch

For this program option, the software simply integrates the geocentric equations of motion from the
initial time to the user-defined final time.

The B-plane

The derivation of B-plane coordinates is described in the classic JPL reports, “A Method of Describing
Miss Distances for Lunar and Interplanetary Trajectories” and “Some Orbital Elements Useful in Space
Trajectory Calculations”, both by William Kizner. The following diagram illustrates the fundamental
geometry of the B-plane coordinate system.

page 22
The arrival asymptote unit vector Ŝ is given by

cos   cos   
 
Sˆ   cos   sin   
 sin  
  

where   and   are the declination and right ascension of the asymptote of the incoming hyperbola at
lunar encounter.

The following computational steps summarize the calculation of the B-plane vector from a Moon-
centered position vector r and velocity vector v evaluated at closest approach to the Moon.

angular momentum vector


h rv

radius rate
r r v r

semiparameter
p  h2 

semimajor axis
r
a
 r v2 
 
 
2

orbital eccentricity
e  1 p a

true anomaly
pr rh
cos   sin  
er e

B-plane magnitude
B pa

fundamental vectors
r v  rr
zˆ 
h

pˆ  cos rˆ  sin  zˆ qˆ  sin  rˆ  cos zˆ

page 23
S vector
a b
S pˆ  qˆ
a 2  b2 a 2  b2

B vector
b2 ab
B pˆ  qˆ
a 2  b2 a 2  b2

T vector
 S ,  S ,0
2 2 T

T
y x

S x2  S y2

R vector
R  S  T    SzTy , SzTx , S xTy  S yTx 
T

Time systems

Terrestrial Time, TT
Terrestrial Time is the time scale that would be kept by an ideal clock on the geoid - approximately, sea
level on the surface of the Earth. Since its unit of time is the SI (atomic) second, TT is independent of
the variable rotation of the Earth. TT is meant to be a smooth and continuous “coordinate” time scale
independent of Earth rotation. In practice TT is derived from International Atomic Time (TAI), a time
scale kept by real clocks on the Earth's surface, by the relation TT = TAI + 32s.184. It is the time scale
now used for the precise calculation of future astronomical events observable from Earth.

TT = TAI + 32.184 seconds


TT = UTC + (number of leap seconds) + 32.184 seconds

Barycentric Dynamical Time, TDB


Barycentric Dynamical Time is the time scale that would be kept by an ideal clock, free of gravitational
fields, co-moving with the solar system barycenter. It is always within 2 milliseconds of TT, the
difference caused by relativistic effects. TDB is the time scale now used for investigations of the
dynamics of solar system bodies.

TDB = TT + periodic corrections

where typical periodic corrections (USNO Circular 179) are

page 24
TDB  TT  0.001657sin  628.3076T  6.2401
 0.000022sin  575.3385T  4.2970 
 0.000014sin 1256.6152T  6.1969 
 0.000005sin  606.9777T  4.0212 
 0.000005sin  52.9691T  0.4444 
 0.000002sin  21.3299T  5.5431
 0.000010T sin  628.3076T  4.2490  

In this equation, the coefficients are in seconds, the angular arguments are in radians, and T is the
number of Julian centuries of TT from J2000; T = (Julian Date(TT) – 2451545.0) / 36525.

page 25
Algorithm and Modeling Resources

(1) “Lunar Trajectories”, NASA TN D-866, August 1961.

(2) “Earth-Moon Trajectories”, JPL Technical Report No. 32-503, May 1, 1964.

(3) “Three-Dimensional Lunar Trajectories”, V. A. Egorov, Mechanics of Space Flight Series, Israel
Program for Scientific Translations, Jerusalem 1969.

(4) “Circumlunar Trajectory Calculations”, MIT Instrumentation Laboratory Report R-353, April 1962.

(5) “Optimal Low Thrust Trajectories to the Moon”, John T. Betts and Sven O. Erb, SIAM Journal on
Applied Dynamical Systems, Vol. 2, No. 2, pp. 144-170, 2003.

(6) “Integrated Algorithm for Lunar Transfer Trajectories Using a Pseudostate Technique”, R. V.
Ramanan, AIAA Journal of Guidance, Control and Dynamics, Vol. 25, No. 5, September-October 2002,
pp. 946-952.

(7) “Nonimpact Lunar Transfer Trajectories Using the Pseudostate Technique”, R. V. Ramanan and V.
Adimurthy, AIAA Journal of Guidance, Control and Dynamics, Vol. 28, No. 2, March-April 2005, pp.
217-225.

(8) “Injection Conditions for Lunar Trajectories”, R. Kolenkiewicz and W. Putney, NASA TM X-55390,
November 1965.

(9) “Coplanar Three-Body Trans-Earth Lunar Trajectory Simulation Methodology”, H. Ikawa, AIAA
88-0381, AIAA 26th Aerospace Sciences Meeting, Reno, Nevada, January 11-14, 1988.

(10) “Lunar Constants and Models Document”, JPL D-32296, September 23, 2005.

(11) NOVAS (Naval Observatory Vector Astrometry Subroutines) software package, version 3.1, U.S.
Naval Observatory, March 2011.

(12) Explanatory Supplement to the Astronomical Almanac, Edited by P. K. Seidelmann, University


Science Books, 1992.

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

(14) “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.

(15) R. P. Brent, Algorithms for Minimization Without Derivatives, Prentice-Hall, 1972.

(16) W. Kizner, “A Method of Describing Miss Distances for Lunar and Interplanetary Trajectories”,
Publication 674, Jet Propulsion Laboratory, August 1, 1959.

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

page 26
APPENDIX A
Contents of the Simulation Summary

This appendix is a brief summary of the information contained in the simulation summary screen display
produced by the pprop_lunar MATLAB script.

calendar date = calendar date of trajectory event

UTC time = UTC time of trajectory event

UTC julian date = Julian Date of trajectory event on UTC time scale

TDB time = TDB time of trajectory event

TDB julian date = Julian Date of trajectory event on TDB time scale

sma (km) = semimajor axis in kilometers

eccentricity = orbital eccentricity (non-dimensional)

inclination (deg) = orbital inclination in degrees

argper (deg) = argument of periapsis in degrees

raan (deg) = right ascension of the ascending node in degrees

true anomaly (deg) = true anomaly in degrees

arglat (deg) = argument of latitude in degrees. The argument of latitude is the sum of
true anomaly and argument of perigee.

period (days) = orbital period in days

rx (km) = x-component of the position vector in kilometers

ry (km) = y-component of the position vector in kilometers

rz (km) = z-component of the position vector in kilometers

rmag (km) = scalar magnitude of the position vector in kilometers

vx (kps) = x-component of the velocity vector in kilometers per second

vy (kps) = y-component of the velocity vector in kilometers per second

vz (ksp) = z-component of the velocity vector in kilometers per second

vmag (kps) = scalar magnitude of the velocity vector in kilometers per second

b-magnitude = magnitude of the b-plane vector in kilometers

b dot t = dot product of the B-plane b-vector and t-vector in kilometers

b dot r = dot product of the B-plane b-vector and r-vector in kilometers

b-plane angle = orientation of the b-plane vector in degrees

v-infinity = magnitude of incoming v-infinity vector in kilometers/second

r-periapsis = periapsis radius of incoming hyperbola in kilometers

decl-asymptote = declination of incoming asymptote at the Moon in degrees

page 27
rasc-asymptote = right ascension of incoming asymptote at the Moon in degrees

flight path angle = flight path angle relative to the Moon in degrees

declination = EME2000 declination of the Moon at the final event in degrees

right ascension = EME2000 right ascension of the Moon at the final event in degrees

propagation duration = trajectory time from the initial conditions to the final user-
defined event in both hours and days

page 28
APPENDIX B
Additional Script Examples

This appendix summarizes typical output data created by the pprop_lunar software for the other two
program options. The initial epoch and state vector for both examples are the same as the close
approach example given earlier in this document.

The first output summary is for the user-defined selenocentric distance option. The user-defined Moon
relative distance for this example is 10,000 kilometers.

pprop_lunar - Earth-to-Moon trajectory propagation


--------------------------------------------------

simulation definition data file ==> pprop_lunar.in

JPL ephemeris ==> de421.bin

user-defined selenocentric distance

initial time and geocentric conditions


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 15-Sep-2008

UTC time 09:54:01.015

UTC julian date 2454724.91251175

TDB time 09:55:06.199

TDB julian date 2454724.91326619

sma (km) eccentricity inclination (deg) argper (deg)


+1.91019260009642e+05 +9.65639819698036e-01 +2.85000095011977e+01 +2.45098495629458e+02

raan (deg) true anomaly (deg) arglat (deg) period (days)


+3.53244686743961e+02 +1.31500072200494e-02 +2.45111645636678e+02 +9.61641009430156e+00

rx (km) ry (km) rz (km) rmag (km)


-3.35854711130000e+03 -4.87114690579000e+03 -2.84095894469000e+03 +6.56345630000103e+03

vx (kps) vy (kps) vz (kps) vmag (kps)


+9.36637513219000e+00 -5.17963813841000e+00 -2.19458266670000e+00 +1.09258330319824e+01

time and geocentric conditions at user-defined selenocentric distance


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 19-Sep-2008

UTC time 18:33:52.380

UTC julian date 2454729.27352292

TDB time 18:34:57.564

TDB julian date 2454729.27427736

sma (km) eccentricity inclination (deg) argper (deg)


+1.90651764893510e+05 +9.41099453640484e-01 +1.37905798481514e+02 +3.22348330153128e+02

page 29
raan (deg) true anomaly (deg) arglat (deg) period (days)
+2.01442461168241e+02 +1.78813508839874e+02 +1.41161838993003e+02 +9.58867244518236e+00

rx (km) ry (km) rz (km) rmag (km)


+2.04649394389841e+05 +2.64765628561647e+05 +1.55045273006932e+05 +3.68810587393538e+05

vx (kps) vy (kps) vz (kps) vmag (kps)


+2.47169184196132e-01 -1.82049692675599e-02 -9.69348321522789e-02 +2.66121002941528e-01

time and selenocentric conditions at user-defined selenocentric distance


(lunar mean equator and IAU node of epoch)
------------------------------------------

calendar date 19-Sep-2008

UTC time 18:33:52.380

UTC julian date 2454729.27352292

TDB time 18:34:57.564

TDB julian date 2454729.27427736

sma (km) eccentricity inclination (deg) argper (deg)


-6.83873434110260e+03 +1.26876052832607e+00 +8.99752563527698e+01 +1.40411299126444e+02

raan (deg) true anomaly (deg) arglat (deg)


+1.46632806552764e+02 +2.42644619626158e+02 +2.30559187526023e+01

rx (km) ry (km) rz (km) rmag (km)


-7.68545695383416e+03 +5.05928861159591e+03 +3.91629286867255e+03 +9.99999998389387e+03

vx (kps) vy (kps) vz (kps) vmag (kps)


+1.08687310730616e+00 -7.15735893614285e-01 -6.24927641150463e-02 +1.30287235228933e+00

time and geocentric coordinates of the Moon at user-defined selenocentric distance


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 19-Sep-2008

UTC time 18:33:52.380

UTC julian date 2454729.27352292

TDB time 18:34:57.564

TDB julian date 2454729.27427736

sma (km) eccentricity inclination (deg) argper (deg)


-4.43815323637575e+03 +8.41276388681764e+01 +2.74684623125673e+01 +6.16306066103503e+01

raan (deg) true anomaly (deg) arglat (deg)


+3.52457297490933e+02 +3.59831432693374e+02 +6.14620393037243e+01

rx (km) ry (km) rz (km) rmag (km)


+2.12478177288882e+05 +2.61946541616357e+05 +1.49498841109535e+05 +3.68934777409055e+05

vx (kps) vy (kps) vz (kps) vmag (kps)


-8.68896493603294e-01 +5.67399986761576e-01 +2.33126684344508e-01 +1.06361267034884e+00

declination 23.904760 degrees


right ascension 50.952732 degrees

propagation duration 104.664268 hours


4.361011 days

page 30
Here’s the selenocentric graphics display for this example.

The second example exercises the user-defined final epoch option. The final epoch for this case is about
four hours past closest approach.

pprop_lunar - Earth-to-Moon trajectory propagation


--------------------------------------------------

simulation definition data file ==> pprop_lunar.in

JPL ephemeris ==> de421.bin

user-defined final epoch

initial time and geocentric conditions


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 15-Sep-2008

UTC time 09:54:01.015

UTC julian date 2454724.91251175

TDB time 09:55:06.199

TDB julian date 2454724.91326619

sma (km) eccentricity inclination (deg) argper (deg)


+1.91019260009642e+05 +9.65639819698036e-01 +2.85000095011977e+01 +2.45098495629458e+02

raan (deg) true anomaly (deg) arglat (deg) period (days)


+3.53244686743961e+02 +1.31500072200494e-02 +2.45111645636678e+02 +9.61641009430156e+00

rx (km) ry (km) rz (km) rmag (km)


-3.35854711130000e+03 -4.87114690579000e+03 -2.84095894469000e+03 +6.56345630000103e+03

vx (kps) vy (kps) vz (kps) vmag (kps)


+9.36637513219000e+00 -5.17963813841000e+00 -2.19458266670000e+00 +1.09258330319824e+01

time and geocentric conditions at user-defined final epoch


(Earth mean equator and equinox of J2000)
-----------------------------------------

page 31
calendar date 20-Sep-2008

UTC time 00:00:00.000

UTC julian date 2454729.50000000

TDB time 00:01:05.184

TDB julian date 2454729.50075444

sma (km) eccentricity inclination (deg) argper (deg)


-5.42046535366771e+05 +1.67641985936543e+00 +3.52982665363465e+01 +1.43999152374523e+02

raan (deg) true anomaly (deg) arglat (deg)


+2.69798693758110e+02 +3.55519886182572e+02 +1.39519038557095e+02

rx (km) ry (km) rz (km) rmag (km)


+1.95620912447156e+05 +2.78731929846242e+05 +1.37804240441323e+05 +3.67354105443342e+05

vx (kps) vy (kps) vz (kps) vmag (kps)


-1.09744114121591e+00 +1.04563793899229e+00 -7.79578024117137e-01 +1.70454617232262e+00

time and selenocentric conditions at user-defined final epoch


(lunar mean equator and IAU node of epoch)
------------------------------------------

calendar date 20-Sep-2008

UTC time 00:00:00.000

UTC julian date 2454729.50000000

TDB time 00:01:05.184

TDB julian date 2454729.50075444

sma (km) eccentricity inclination (deg) argper (deg)


-6.85309188067894e+03 +1.26827418299267e+00 +8.99809794526851e+01 +1.40373418743854e+02

raan (deg) true anomaly (deg) arglat (deg)


+1.46666290733960e+02 +1.26636058630170e+02 +2.67009477374024e+02

rx (km) ry (km) rz (km) rmag (km)


+7.50593974241521e+02 -4.86875942158679e+02 -1.71252284921267e+04 +1.71485827520751e+04

vx (kps) vy (kps) vz (kps) vmag (kps)


-1.71696725384004e-01 +1.13371656080615e-01 -1.11574362178183e+00 +1.13455574012778e+00

time and geocentric coordinates of the Moon at user-defined final epoch


(Earth mean equator and equinox of J2000)
-----------------------------------------

calendar date 20-Sep-2008

UTC time 00:00:00.000

UTC julian date 2454729.50000000

TDB time 00:01:05.184

TDB julian date 2454729.50075444

sma (km) eccentricity inclination (deg) argper (deg)


+3.86866004153497e+05 +4.64707938645909e-02 +2.74678574808475e+01 +6.61247820915044e+01

raan (deg) true anomaly (deg) arglat (deg) period (days)


+3.52454717625201e+02 +3.58571555705276e+02 +6.46963377967801e+01 +2.77164810152622e+01

page 32
rx (km) ry (km) rz (km) rmag (km)
+1.95160587951349e+05 +2.72638429282301e+05 +1.53827075478875e+05 +3.68893124578677e+05

vx (kps) vy (kps) vz (kps) vmag (kps)


-9.00680607302385e-01 +5.25130870820299e-01 +2.09145603462359e-01 +1.06335782844098e+00

declination 24.645097 degrees


right ascension 54.404079 degrees

propagation duration 110.099718 hours


4.587488 days

Here’s the selenocentric graphics display for this example.

page 33