1 views

Uploaded by cdeaglejr

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.

- 7. Traverse Computations
- still life drawing rubric
- Lunar Mission Analysis
- KS2 Science Worksheet
- SolidCAM 2012 Solid Probe User Guide
- Conflict Style Differences Between Individualists and Collectivists
- Edexcel GCE core 4 mathematics C4 6666 advanced subsidiary jun 2006 mark scheme
- TreeSketch: Interactive Procedural Modeling of Trees on a Tablet
- Definite INTEGRATION ASSIGNMENT FOR IIT-JEE
- Formulae on ECTE002
- Unit 1 Pure Mathematics (2008) P1 ROR
- Create a Simple Vibrant Light Effect in Photoshop
- PLAN-J Mathematics Form4_2011
- Mathcad - CAPE - 2004 - Math Unit 2 - Paper 01
- final science lp 2015
- FORMULAES_1539652668410
- BPSM Mod 4 Competitive Analysis and Choice of Strategies
- TRIGO IMP (1)
- 6.-ELEMENTS-OF-ART.pdf
- Local Axes Shell Objects

You are on page 1of 33

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.

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.

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

(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

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

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

aunit = 149597870.691;

clight = 299792458.0;

psr = 1366.1;

emu = 398600.4415;

req = 6378.1363;

omega = 7.292115486e-5;

mmu = 4902.800238;

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.

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

(Earth mean equator and equinox of J2000)

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

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

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

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

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

(Earth mean equator and equinox of J2000)

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

page 5

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

-2.26126009998755e+05 +2.62734917647342e+00 +9.01741981723714e+01 +1.61033560890649e+02

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

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

+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)

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

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

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

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

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

(lunar mean equator and IAU node of epoch)

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

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

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

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

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

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

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

right ascension 52.127933 degrees

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

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/.

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

0.0700sin E 3 0.0172sin E 4 0.0072sin E 6

0.0052sin E10 0.0043sin E13

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.

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

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

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 m1 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

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

r r r n 2 r m 0

N R

n n

r n2 r

C

m 0

m

n cos m Snm sin m Pnm1 sin m tan Pnm sin

N R

n n

r n2 r

mS

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 Pn01 sin n 1 Pn02 sin

n

Pnn sin 2n 1 cos Pnn11 sin , m 0, m n

Pnm sin Pnm2 sin 2n 1 cos Pnm11 sin , m 0, m n

and Pi j 0 for j i .

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

r r

am r, t m m sc 3 em 3

r rem

m sc

where

m gravitational constant of the Moon

rm sc position vector from the Moon to the trajectory

rem 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

page 14

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

r r

a s r, t s s sc 3 es 3

r res

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

3 3qk qk2

f qk qk 3

1 1 qk

where

r T r 2sk

qk

sTk sk

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.

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.

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 res

sign(rsc res )

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

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.

re

sin 1

rsc

rs re

p sin 1

re s

rs re

u sin 1

re s

page 17

where

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.

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.

% input

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

% output

% 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

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

page 18

tend = 7.0 * 86400.0;

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

re2sc = yevent(1:3);

ve2sc = yevent(4:6);

rmoon = svmoon(1:3);

vmoon = svmoon(4:6);

tmatrix = mm2000(jdtdb_ca);

The following is the MATLAB function that evaluates the current value of the selenocentric flight path

angle required by the findca function.

% required by pprop_lunar.m

% input

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

% output

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

global jdtdb_tli

page 19

% form the selenocentric position and velocity

tmatrix = mm2000(jdate);

isterminal = 1;

direction = [];

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.

% input

% ri = initial geocentric position vector (kilometers)

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

% output

% rm2sc = selenocentric position vector (kilometers)

% vm2sc = selenocentric velocity vector (kilometers/second)

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

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

page 20

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

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

re2sc = yevent(1:3);

ve2sc = yevent(4:6);

% distance

rmoon = svmoon(1:3);

vmoon = svmoon(4:6);

tmatrix = mm2000(jdtdb_rm);

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.

% required by pprop_lunar.m

% input

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

% output

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

page 21

jdate = jdtdb_tli + t / 86400.0;

rmoon = svmoon(1:3);

% selenocentric distance

isterminal = 1;

direction = [];

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.

h rv

radius rate

r r v r

semiparameter

p h2

semimajor axis

r

a

r v2

2

orbital eccentricity

e 1 p a

true anomaly

pr rh

cos sin

er e

B-plane magnitude

B pa

fundamental vectors

r v rr

zˆ

h

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 = UTC + (number of leap seconds) + 32.184 seconds

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.

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

(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.

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.

(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.

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

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

arglat (deg) = argument of latitude in degrees. The argument of latitude is the sum of

true anomaly and argument of perigee.

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

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

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.

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

(Earth mean equator and equinox of J2000)

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

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

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

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

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

(Earth mean equator and equinox of J2000)

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

+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

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

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

(lunar mean equator and IAU node of epoch)

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

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

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

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

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

(Earth mean equator and equinox of J2000)

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

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

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

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

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

right ascension 50.952732 degrees

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.

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

(Earth mean equator and equinox of J2000)

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

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

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

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

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

(Earth mean equator and equinox of J2000)

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

page 31

calendar date 20-Sep-2008

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

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

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

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

(lunar mean equator and IAU node of epoch)

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

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

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

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

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

(Earth mean equator and equinox of J2000)

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

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

+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

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

right ascension 54.404079 degrees

4.587488 days

page 33

- 7. Traverse ComputationsUploaded byMarc Dared Cagaoan
- still life drawing rubricUploaded byapi-293228411
- Lunar Mission AnalysisUploaded bycdeaglejr
- KS2 Science WorksheetUploaded byEzra Loganathan Muniandi
- SolidCAM 2012 Solid Probe User GuideUploaded byMario Mlinarić
- Conflict Style Differences Between Individualists and CollectivistsUploaded bychovdary
- Edexcel GCE core 4 mathematics C4 6666 advanced subsidiary jun 2006 mark schemeUploaded byrainman875
- TreeSketch: Interactive Procedural Modeling of Trees on a TabletUploaded byjamey_mork1
- Definite INTEGRATION ASSIGNMENT FOR IIT-JEEUploaded byApex Institute
- Formulae on ECTE002Uploaded byChris Jomarie Obra
- Unit 1 Pure Mathematics (2008) P1 RORUploaded byAkshay Starzz Lal
- Create a Simple Vibrant Light Effect in PhotoshopUploaded byNathy Correa
- PLAN-J Mathematics Form4_2011Uploaded byRafidatul Suib
- Mathcad - CAPE - 2004 - Math Unit 2 - Paper 01Uploaded byNefta Baptiste
- final science lp 2015Uploaded byapi-282407713
- FORMULAES_1539652668410Uploaded bydeena
- BPSM Mod 4 Competitive Analysis and Choice of StrategiesUploaded bySaaribh Sinha
- TRIGO IMP (1)Uploaded bypiccasa
- 6.-ELEMENTS-OF-ART.pdfUploaded byErika Mae Libang
- Local Axes Shell ObjectsUploaded bynuwan01
- Proc GplotUploaded byjugnoosuthar
- The Video GuideUploaded byMiguel Arosemena Artista
- Young CAT2e SSM Ch8 Part1Uploaded byaelle00
- Weekly Lesson Plans for Week 8Uploaded bykellieouzts
- MAT290 Matlab Module1Uploaded bySamprit Raihan
- Learn_Trigonometry_in_One_Day.pdfUploaded bySomeone
- test3kUploaded byJhony Gómez
- Chapt_12Uploaded byLátex Estrada Vázquez
- 12044-0130670227_ismSec5.pdfUploaded byAngel Hilasaca
- ES11LE1 Reviewer.pdfUploaded byTidal Surges

- Orbit Theory and ApplicationUploaded byPeacefulLion
- Computer Methods for TransEarth TCM Delta-V Design and OptimizationUploaded bycdeaglejr
- PRE-FLIGHT INTERPLANETARY MISSION ANALYSISUploaded bycdeaglejr
- Selenocentric Coordinates and TransformationsUploaded bycdeaglejr
- Atmospheric Reentry Trajectory OptimizationUploaded bycdeaglejr
- Finite-Burn, Earth Orbit Rendezvous Trajectory OptimizationUploaded bycdeaglejr
- Two Maneuver, Finite-Burn Trajectory OptimizationUploaded bycdeaglejr
- A MATLAB Script for Propagating Interplanetary Trajectories from Earth to MarsUploaded bycdeaglejr
- The Gravity Perturbed Hohmann TransferUploaded bycdeaglejr
- Low-Thrust Interplanetary Trajectory OptimizationUploaded bycdeaglejr
- A Computer Program for Propagating Spacecraft Trajectories from Earth to MarsUploaded bycdeaglejr
- A MATLAB Script for Ballistic Interplanetary Trajectory Design and OptimizationUploaded bycdeaglejr
- A MATLAB Script for Creating Pork Chop Plots of Ballistic Earth-to-Mars TrajectoriesUploaded bycdeaglejr
- A Computer Program for Parametric Analysis of Ballistic Earth-to-Mars TrajectoriesUploaded bycdeaglejr
- Lunar Ascent Trajectory OptimizationUploaded bycdeaglejr
- The Gravity Perturbed Hohmann TransferUploaded bycdeaglejr
- Two-body Partial DerivativesUploaded bycdeaglejr
- Targeting with Modified Equinoctial Orbital ElementsUploaded bycdeaglejr
- Generalized Linear Targeting and GuidanceUploaded bycdeaglejr
- A MATLAB Script for Creating Pork Chop Plots of Ballistic Earth-to-Mars TrajectoriesUploaded bycdeaglejr
- Earth-to-Mars Mission Design (Fortran)Uploaded bycdeaglejr
- Optimal Finite-Burn Earth Orbit-to-Interplanetary InjectionUploaded bycdeaglejr
- Earth-to-Mars Mission Design (MATLAB)Uploaded bycdeaglejr
- A Computer Program for Designing Interplanetary Injection Trajectories (Fortran)Uploaded bycdeaglejr

- Nyaya-VaisesikaUploaded byVIKH33
- The Theory of RelativityUploaded byCarlos
- Biomechanical_Principles_Resource_May_07.docUploaded bySubrataTalapatra
- 2D Motion Problem SetUploaded byeltytan
- Pendulum LabUploaded bymt9260
- scientific revolution projectUploaded byapi-345188268
- Geophysical Methods in HC ExplorationUploaded byginozky
- Theory of RelativityUploaded byRajesh Punia
- Exercise Solutions ch.6Uploaded byTsz Yan Lam
- Atwood Lab 3Uploaded bySandiyo
- lab_221Uploaded byAditya Parab
- Class 9 Nso 3 Year e Book Level 2 13[1]2Uploaded bynallimini
- IMG_0001Uploaded byANDREWLAWZH
- History of Einstein EquationsUploaded byGuillermo Eaton
- The Man in the Red UnderpantsUploaded bydocsforu
- Acceleration (1)Uploaded byRafyss Rodriguez
- Errors of Wald on General RelativityUploaded byC-y Lo
- ch04.pptUploaded byKathleen Young
- R.pearson - Key to Consciousness. Quantum GravitationUploaded byJorgee_Porgee_8203
- 119004243-Chapter-13Uploaded byYash Shah
- 15. Vision Ias Csp 2016 Test 15 SolutionUploaded byPremMehta
- Principle of Spiral ConcentratorUploaded byPrasanta Kumar Baskey
- Ch.4 OB assesmentUploaded bycod5pro
- Pseudo GravityUploaded byLuis De Melo Tassinari
- CENG 23 - Finals_1Uploaded byJayvee Coliao
- Frank Y. Wang- The Image of a WormholeUploaded byKunma050
- The Science Behind Falling ObjectsUploaded bycaden lewis
- Physics Newtons Second Law ExperimentUploaded by908039480
- Vastu ShastraUploaded bygkvs
- Newton's Laws of MotionUploaded bysemone_83