70-FM-26 RTCC Requirements for Apollo 14: Trajectory Computers for TLI and MCC Processors

Survival, Water, Medical Field Manuals

Military Manuals

Brody O. Mccaffety, William E. Moore, And Quentin A. Holmes

Document text

MSC-01 594 


REPOST SOIRC'L 

NATIONAL AERoR^^Pl^l^l^i^ SPACE ADMINISTRATION 

MSC INTERNAL NOTE NO. 70-FM-26 
February 26, 1970 i 


;RTCC REQUIREMENTS FOR APOLLO 14: 
i TRAJECTORY computers for tli 
AND MCC PROCESSORS 



Lunar Mission Analysis Branch 

MISSION PLANNING AND ANALYSIS DIVISION ) 

) 


> 


MANNED SPACECRAFT CENTER 
houston.texas 


























MSC INTERNAL NOTE NO. 70-FM-26 


PROJECT APOLLO 

RTCC REQUIREMENTS FOR APOLLO 14: TRAJECTORY COMPUTERS 
FOR TLI AND MCC PROCESSORS 

By Brody 0. McCaffety, William E. Moore, and Quentin A. Holmes 
Lunar Mission Analysis Branch 


February 26, 1970 


MISSION PLANNING AND ANALYSIS DIVISION 
NATIONAL AERONAUTICS AND SPACE ADMINISTRATION 
MANNED SPACECRAFT CENTER 
HOUSTON, TEXAS 


Approved: 


r\ 


- ( ^miald L. Berry, Chief (/ 


Lunar Mission Analysis Branch 


Approved: 

to? 33P 



Mission Planning and Analysis Division 













CONTENTS 


Section 

1.0 SUMMARY AND INTRODUCTION . 

1.1 The Trajectory Computers . . 

1.2 Variables, Stopping Conditions 

1.3 Lunar Orbits . 

2.0 ABBREVIATIONS . 

3.0 SUBROUTINES . 

3.1 Subroutine BURN . 

3.1.1 Function . 

3.1.2 Nomenclature . 

3.1.3 Method . 

3.2 Subroutine CTBODY . 

3.2.1 Function . 

3.2.2 Nomenclature . 

3.2.3 Method . 

3.3 Subroutine DGAMMA . 

3.3.1 Function . 

3.3.2 Nomenclature . 

3.3.3 Method . 

3.4 Subroutine EBETA. 

3.4.1 Function . 

3.4.2 Nomenclature . 

3.4.3 Method . 

3.5 Subroutine EPHM . 


Page 

1 

2 

2 

3 

3 

4 

5 

5 

5 

6 

8 

8 

8 

9 

l4 

l4 

15 

15 

16 

16 

17 

17 

18 


3.5.1 Function 

3.5.2 Remarks 


18 

18 


































Section Page 

3.6 Subroutine ELEMT . 18 

3.6.1 Function. 18 

3.6.2 Nomenclature. 19 

3.6.3 Method. 19 

3.7 Subroutine FCOMP . 20 


3.7.1 Function. 20 

3.7.2 Nomenclature. 20 

3.7.3 Method. 20 

3.8 Subroutine LIBRAT . 22 

3.8.1 Function. 22 

3.8.2 Nomenclature. 22 

3.8.3 Method. 22 

3.9 Subroutine LOPC. 24 

3.9.1 Function. 24 

3.9*2 Nomenclature. 24 

3.9.3 Method. 25 

3.10 Subroutine PATCH . 26 


3.10.1 Function . 26 

3.10.2 Nomenclature . 26 

3.10.3 Method . 27 


3.11 Subroutine RBETA 


3.11.1 Function . 29 

3.11.2 Nomenclature . 30 

3.11.3 Method . 30 


3.12 Subroutine RNTSIM 


33 


3.12.1 Function . . 

3.12.2 Nomenclat ur e 

3.12.3 Method . . . 


33 

33 

34 


3.13 Subroutine RTASC 


35 


3.13.1 Function 


35 


iv 






































Section 


Page 


3.14 Subroutine RVIO . . 

3.14.1 Function . , 

3.14.2 Nomenclature 

3.14.3 Method. . . . 

3.15 Subroutine TLIBRN . . 

3.15.1 Function . . 

3.15.2 Remarks . . . 

3.16 Subroutine TLMC . . . 

3.16.1 Function . . 

3.16.2 Nomenclature 

3.16.3 Method . . . 

3.17 Subroutine XBETA . . 

3.17.1 Function . . 

3.17.2 Nomenclature 

3.17.3 Method . . . 

3.18 Subroutine PRCOMP . . 

3.18.1 Function . . 

3.18.2 Nomenclature 

3.18.3 Method . . . 

3.19 Subroutine MCOMP . . 

3.19.1 Function . . 

3.19.2 Method . . . 

3.20 Subroutine PPC . . . 


35 

35 

35 

36 

37 

37 

37 

37 

37 

37 

38 

39 

39 

39 

40 

41 

4l 

4i 

45 

47 

47 

47 

48 

48 

48 


3.20.1 Function . . 

3.20.2 Nomenclature 


76 




































FLOW CHARTS 


Flow Chart Page 

1 Subroutine PPC. 

2 Real time applications of the generalized 

iterator. 

■ 3 Translunar midcourse first guess trajectory 

computer. g 0 

^ Functional flow of analytical trajectory computer 

for conic mission. 

5 Integrating trajectory computer . 71 


vi 













RTCC REQUIREMENTS FOR APOLLO lit: TRAJECTORY COMPUTERS 
FOR TLI AND MCC PROCESSORS 

By Brody 0. McCaffety, William E. Moore, and Quentin A. Holmes 
1.0 SUMMARY AND INTRODUCTION 


used S i S°Scc S t^an^ aS 'S ° f ? S ! riSS documenti ng the Generalized Iterator 
for Anollo if T^r +r ar + - nJe n and midcourse correction processors 
JUl 1 f • .fHi mathema tical formulation of the iterator itself is 
general and is documented in reference 1; the programs for the various 

references 2°^d P 3° V1 ?h d ^ £1 ? r ° CeSsors haYe been documented in 
progr- - sup.rviso” 1 toatctoy t OTpSLr! e i,5 e ”»2"! '2j.e2t2ator is 

soSt°i» of "“ latl °” th>t * PPl1 '' tP i W. ViS iMS 

mpa^sss sysstsfes 

EKS* "Tnl to g.Lr.te t£ d‘s"2 t,._ 

the trai.ff f ves the Actional and detailed information about 

t^ y =°T r ’ ^ thS su ^ rou tines used to construct a tra¬ 
jectory, their function, and their algorithms. 

and M22'o22o‘2 0all!r ° f te *J"tori,s generated by the TLI 

amp*;, 2d‘SS B p ?.°f e * g ”"‘ tea of e “ th orMt (1 "" *-*«■« 

treasLi2’c2st' *” a * return- to-n<Minal trajectories generated daring 




Free-return trajectories generated from EPO 


translunar 









d. Free-return, EAP reoptimized trajectories generated during trans- 
lunar coast 

e. Non-free-return, BAP reoptimized trajectories generated during 
translunar coast 

These possibilities are shown in flow chart 3. 

The calculation of each type involves the use of analytical and 
integrated computations. Conic, or analytical, trajectories are used 
in first guess routines to generate initial conditions and in optimizations 
to shorted computation time. Integrated calculations are necessary to 
provide precision target conditions. An explanation of the ways these com¬ 
putation modes are used together is contained in references 2, 3, It, and 5. 


1.1 The Trajectory Computers 

Separate trajectory computers are used to provide first guesses 
for the midcourse correction, for the conic, and for the precision 
trajectory computations. 

The MCC first guess trajectory computer solves Lambert's problem. 
Subroutine TLMC computes the first guess trajectory for the MCC. The 
flow diagram is shown in flow chart k. 

A functional flow diagram of the analytic trajectory computer for 
conic mission calculations is given in flow chart 5. This flow chart shows 
the general flow indicating the sequence of state vector calculations, 
the entry of the appropriate independent variables, the calculation of the 
dependent variables, and the sequence of the mass history calculations. 

The precision propagation of an arc is done using the Herrick-Beta 
technique documented in the appendix of reference 5. Flow chart 5 shows 
the functional flow of the precision trajectory computer. 


1.2 Variables, Stopping Conditions 

Independent and dependent variables for the different trajectory 
computers are shown in tables I and II. 


The stopping conditions for the computers are indicated in the 
flow diagrams but are also discussed here. Integrated trajectories that 
return to the nominal x, y, and z of the LOI node stop at the time of the 
node; the non-free-return BAP options also integrate the same arc and 
stop on the time of the node obtained from the conic optimization. 








3 


However, the precision transearth trajectory used in the lunar flyby 
stops on an entry flight-path angle. Finally, during the iteration 
process, before the height of LOI is completely correct, the position an< 
ve ocity vectors at the start of LPO are scaled to circular conditions. 
These vectors are used to compute the rest of the trajectory; thus, the 
integrity of those independent variables based on the desired height of 
the orbit is retained; for example, AT AT 

lo’ 11s 


1.3 Lunar Orbits 

The initial lunar orbit may be either an ellipse or a circle 
Subroutine PRCOMP is used with the LOI and DOI maneuvers. This subroutine 
integrates backward from the lunar landing site in an approximation to the 
initial LPO to obtain orbital elements at LOI and DOI times. This routine 
provides the link between the state vector at the start of LOI and the 
state vector at first pass over the lunar landing site. 


2.0 ABBREVIATIONS 


BAP 

EOI 


LLM 

LOI 

LOPC 

LPO 

MCC 

RTCC 

TEI 

TLI 


best adaptive path 
earth orbit insertion 
earth-moon plane 
earth parking orbit 
lunar landing mission 
lunar orbit insertion 

lunar orbit plane change prior to lunar module ascent 

lunar parking orbit 

midcourse correction 

Real-Time Computer Complex 

transearth injection 

translunar injection 









h 


3.0 SUBROUTINES 


The subroutines and computation modules used in the trajectory 
computers are listed in table III. The following subroutines are involved. 

a. BURN - simulates impulsive thrusting for application of a 
delta velocity magnitude, delta azimuth, and delta flight-path angle 
in the topocentric reference frame. 

,b; CTBODY - used for propagation of a conic state vector for a 
specified time interval. 


c. DGAMMA - determines the universal conic variable from periapsis 
to the nearest specified flight-path angle. 

d. EBETA - determines the interval in the universal conic variable 
irom a given state vector to periapsis. 

v *• + ™ T ~ '^l^tes a set of orbital elements from a given state 
vector, time, and central body constant. 

f. EPHM - obtains earth and moon states vectors relative to each 
S0 ^ P° sit i°n> and a precession-nutation-libration direction 
cosine matrix from the magnetic tape ephemeris. 

value^of f °- * 

. r . te . ncfteLtfS ™™. 11 '”'** 1 " 5 " P0 “ " 1 ” I “ t stat » 

COmPUt “ thS ’ iZ ‘ “ d ° f tha °S>>“ 


EA ^ CIi I accomplishes patching of the geocentric and selenocentric 
vehicle state vectors at the sphere of action of the moon. 


k. RBETA 
propagate from 


determines the value of the universal conic variable to 
given state vector to a specified radial magnitude. 


1. RNTSIM - determines the landing conditions. 


RTASC - determines right ascension of the Greenwich meridian. 


n. RVIO - transforms a given set of 
spherical form to the other form. 


coordinates in Cartesian or 








5 


o. TLIBRN - simulates the translunar injection thrusting 
by evaluation precomputed polynomials 


p. TLMC - in control when first 
velocity, and delta flight-path angle 
abort of midcourse maneuvers. 


guesses for delta azimuth, delta 
are determined for translunar 


q. XBETA - propagates a given state vector through 
universal conic g to a desired state vector. The 6 
condition for XBETA. 


a specified 
is the stopping 


L' r • RRC0MP - simulates lunar parking orbits from the start of LOI 
through first pass over the lunar landing site by integrating backwards 
in time in an approximation to the initial LPO. 

s. MCOMP - computes the mass after each maneuver (accounting for 
SefirS the SPS ° r DPS) and retUrnS 311 err ° r messase if all DPS 


t. PPC - computes AV for plane changes 
orbits using conic propagation. 


circular lunar parking 


The remaining text of this internal note will be devoted to a detailed 
description of the input, output, and the mathematics needed for each of 
the subroutines listed above. All lunar orbit computations will be 
r,aius ** 1 " 41 ” e ■« 


3.1 Subroutine BURN 


3.1.1 

the vehicle, 
consumption, 
burns. 


Subroutine BURN simulates impulsive thrusting 
velocity equation is used to determine 
This subroutine is used for the MCC, LOI, LOPC, 


■ propellant 
and TEI 


Function .- 
The ideal 


3.1.2 Nomenclature .- 

Symbol In P ut pj > 

Output (0) 

V c 0 

Av r 0 


Definition 


circular velocity 
characteristic delta velocity 











6 


Symbol 

Av 

V pl 

Ay 

A ill 
I 

sp 


Input (I), 
output (0) 


change 

burn 


Definition 

1 scalar velocity during 


velocity at perilune of the desired 
ellipse (if ellipse is required) 

.change in flight-path angle 
during burn 

change in azimuth during burn 
specific impulse 

ratio of mass after burn to mass 
before burn 

constant used to convert pounds 
force to pounds mass 

gravitational constant of current 
reference body 

initial position vector 

initial velocity vector 

initial flight-path angle 

intermediate velocity vectors 

final position vector 

final velocity vector 


3.1.3 M ethod .- The vector R f is the same as R; that is, the 

assures that the position does not change during the maneuver. 
Compute the values for r and v according to equations (l) and (2) 








If a circular state vector after the burn i: 


specified, enter 


vVf 


If an elliptical state vector is specified, enter 


Av 


In the other more general option, Av, Ay, and Ai|i 
input. Compute equations (3) through (7) 


are entered as 


d = R-R 

h = |R x r| • (k) 


= R cos Ay + 


-R - dR 


sin Ay 


(5) 










8 


aUK • R 1 J . R X R 

R 2 = -2- s i n2 g + R cos Ai|i--- sin Ai/i ( 6) 

*r -h( l * ¥} m 

Equation (7) represents the velocity vector part of the state S f after 
the burn. The characteristic velocity can be determined from equation (8). 

(AVr) 2 = Av2 + W(v + Av) ^sin 2 J —° S 2 A ^ ~ M Sin Ay sin 2 mj (8) 

The mass ratio is represented by equation (9). 



(9) 


3.2 Subroutine CTBODY 

3.2.1 Function.- Subroutine CTBODY determines the propagated state 
vector at a specified time, At, from a given epoch state vector. This 
is the classical problem of Kepler and must be solved iteratively because 
of the transcendental relationship between time and the anomalies. 

3.2.2 Nomenclature .- 


Symbols 


Input(I), 
output (0) 


Definition 


central body indicator 
position vector magnitude 














9 

Symbols 

Input (I), 

output (0) Definition 

I velocity vector magnitude 

F l’ F 2’j 

I gravity constant 

0 square of universal variable 

divided by semimajor axis 

0 functions of the universal 

F 3’ F 4 1 

variable 

R 

semimajor axis 

I initial position vector 

R 

o 

1 initial velocity vector 

t 

I initial time 

R f 

0 final position vector 

R f 

0 final velocity vector 

radius of moon 

■. 

3/2 J 2 , second harmonic of 
moon's gravity 

> 

I final time 

3.2.3 Method.- 

- Determine the interval of propagation with equation (10) 


At = t, 


( 10 ) 









10 


|At I < 10 12 , the final state vector is the initial state vector, 
the operation is complete; if not |At| < 10-12 equations (ll 
U2) result 


( 11 ) 


D = R 


(12) 


A first guess of the universal variable for the 
is made from equations (13) and (ll*). 


Kewton-Baphson 


iteration 


At 


(13) 


Subroutine PCOMP is entered to obtain F and F,; and the 

time equation is evaluated according to equations (15) and (l6). 




(15) 


(16) 








11 


Increment g as defined by equation (17) 


B = 6 + (At - t 


(17) 


Equation (15) is evaluated with the new value of g, and the Newton- 
Raphson iteration [eq. (17)] continues until the covergence tolerance 
of 1 x io is met. 



10-12 


(18) 


Exit with an error message if no convergence is obtained after, for 
example, 10 iterations. 

.. . As the iterations proceed, g will move in the same direction until 
it is very close to the answer. To protect against the tolerance of 10“12 
m equation (18) being too small, the signs of successive values of At - t 
are compared. If two successive iterations should have different signs 
before equation (l8) is satisfied, g is replaced by the average of the 
two values associated with these iterations, and the process is repeated 
thS 1 10-l2 r 1VS dlfference between two values being averaged is less 

S ? he uni ^ sal variable determined, the state vector at the final 
time is determined from equations (19) through (24). 










12 


41 eF- 

f = (21) 

6 2 F 

g = 1 - -7— (22) 

R f = fR o + gR o (23) 

R f = fE o + gR Q (2*0 


Cheak to see whether the ascending node is to be precessed. If 
not,. R, R are produced as output. Otherwise (at time t^), rotate 
R, R to stenographic, coordinates G q , G q . The components of G and 
G q will be x, y , z and x, y, z, respectively. 

Compute n^', n 2 , and n with equation (25) through (27). 


n 2 = z y - z y 
n =V^ + n 2 


(25) 

(26) 
(27) 










13 


If n £ 10 12 return without precessing the node. Otherwise, 
compute equations (28), (29), and (30). 


cos ft = — 


(28) 


1° X G ol 


The components of H will be h^ h g , ly Then cos i = h 3 , ? 
sin i = + h 2 


Compute equations (3l) through (38) 


Aft = -Jr_ 2 4T cos i ^ ^ / At (31) 


= R 2 = G 


(33) 











lU 



(3U) 


cos fi cos Ml - sin ft sin Aft 
sin ft cos Aft + cos ft sin Aft 

L 0 


M = 


i (sin ft cos Aft + cos ft sin Aft 
i (cos ft cos Aft - sin ft sin Ml 


(35) 


(36) 


G 



n 


M 


(37) 


*K x Gj 


With the 



time t f , rotate G, G hack into selenocentric coordinates 


3.3 Subroutine DGAMMA 

3.3.1 Function.- Subroutine DGAMMA determines the value of the 
universal variable necessary to obtain a state vector at a desired flight- 
path angle, with a specific initial position magnitude and the reciprocal 
of the semimajor axis. 

















15 


3.3.2 Nomenclature .- 


Input (I), 
output (0) 


Definition 

vector at 


o 1 magnitude of positi 

periapsis 

1//a 1 . reciprocal of semimajor axis 

^ 1 flight-path angle 

^ 0 hyperbolic eccentric anomaly 

® ^ elliptic eccentric anomaly 

6 0 universal variable 

eccentricity 

3.3.3 Method.- Because the given state vector is computed at periapsis 
equations (39) and (bo) are satisfied. 


■m 


If a < °> the orbit is hyperbolic. 


: tan y + 

; 
















16 


If 


0, the orbit is elliptic. 


sin E = 



(where -y; 


6 = E/a 


the orbit is parabolic. 


3 = (sin y/cos y) 


... 3,3,i| . -f narks , ~ 0n an ellipse, the eccentric anomaly is double-valued 
foJ TIZl II ? fli f kt -P atk angle. It is apparent from the equation 
for E that the algorithm always given the solution nearer periapsis. 


This 

trajectory 
energy. 


formulation does not provide for optimization of the same 
arc from a hyperbolic energy through parabolic to an elliptical 


For the elliptic case, y may be such that I sin El 
instance, y cannot be achieved, and there is an error. 


In this 


3.U Subroutine EBETA 

~U ti0n ; : Subroutine EBETA determines the universal variable 
necessary to obtain the state vector at periapsis. 











IT 


3.^.2 Nomenclature.- 
Symbol 


Input (I), 
output (0) 


1//a 0 reciprocal of the semimajor axis 

R o 1 initial position vector 

R o T initial velocity vector 

r o magnitude of initial position vector 

Y o magnitude of initial velocity vector 

® 0 universal variable 

w 1 gravitational constant 

e lliptical eccentric anomaly 
R hyperbolic eccentric anomaly 

eccentricity 

. M* 3 Method.- The universal variable and the state vector at 
per laps is are determined by equations (In) and (1»2). 


D 0 = R 0 • R o (mi 

l/a = 2/r o - v q 2 /p ( 42) 

If a > 0, the orbit is elliptic. 

e cos E = 1 - -2. 

e sin E = D //pT 










18 


E = tan -1 (e sin E/e cos E) 


If 1/a = 0, the orbit is parabolic. 

D 

6 = - — 

4T 

If a < 0, the orbit is hyperbolic. 

e cosh H = 1 - r /a 
e sinh H = D /p | a| 


H = In 


I 


e cosh H + 

cosh H) 2 - 


e sinh H _ 

(e sinh H) 2 | 1 


6 = -h/| a | 


3.5 Subroutine EPHM 

and sub ” ut ““ locate, transmit into tor., 

.oon SwSoS ;.2Svft?^“r 1 t\ tape - Fr " “=*• «*« b «* 

nutation-libration tSSSk ^SSSf* “ 4 * 

ajsttm'^broSS:" eph “" ls -tontines uses in th, HTCC » 1U b . 


3.6 Subroutine ELEMT 


3.6.1 Function .- Subroutine ELEMT 
elements from a given state vector, time 


calculates a s 
, and central 


set of orbital 
body constant. 











19 


3.6.2 Nomenclature .- 


Symbol 

Input 

(I), 

output 

(0) Definition 

I 

I 

position vector 

R 

I 

velocity vector 

H 

•> ■ . '.0! 

angular momentum vector per unit 

1 

I 

gravity constant 

a 

0 

semimajor axis 

e 

0 

eccentricity 

i 

0 

inclination of conic 

n 

0 

mean motion 

P 

I 

period 

n 

0 

true anomaly 

3.6.3 Method.- With R, R, t 
quantities are calculated. 

, y specified, the following seven 


1 _ ( 2 
a ~ \W" 

■ 

^ / (43) 


"\IM 

(R • R) 2 

ya (44) 


H = R 

x R (45) 


1 ' “ s ‘‘ (w) 


(46) 












20 


n = tan 1 


/1H | ( R • R) \ 
\ IHI 2 - V> | R1/ 


2u&/a 

p = — n - 


(18) 


(19) 


Equations (1*3) through (1*7) apply for all conics; equation (1*8) 
does not apply to circular orbits, and equation (1*9) does not apply to 
parabolas and hyperbolas. 


3.7 Subroutine FCOMP 

3.7.1 Function.- Subroutine FCOMP determines the functions of 
the universal variable necessary to express two-body state vector 
quantities with a specific epoch state vector. The functions are well 
efined by circular and hyperbolic functions except as the universal 
variable approaches zero. To avoid numerical difficulty, the same series 
expansion is always used. FCOMP is used by XBETA and CTBODY to evaluate 
the functions of the universal constant. 


3.7.2 Nomenclature .- 

Symbol In P ut (i), 

output (o) 


Definition 


F 


3.7 


functions of the universal variable 
parameter needed to obtain F 


F j S (2i + 4 - j); <3 = 1 > 2 (50) 

Equation (50) is used to compute F and F • F v 

p r l ana nd F h 81-6 computed 

from equations (51) and (52). 













21 


3 ~ ur i T x 151; 

F 4 = aF 2 + 1 (52) 

Determine n (the number of terms to be used in the series) as 
follows: For |a| < x, n = y. 


y 


2-5 

6 

2-3 

7 

2-2 

8 

2- 1 

9 


10 

>>•'•2-, ' 

11 

k 

13 

8 

15 

16 

18 

32 

21 

6k 

25 

128 

30 

256 

38 

512 

46 











22 


3.8 Subroutine LIBRAT 


3.8.1 Function.- Subroutine LIBRAT obtains an appropriate trans¬ 
formation matrix and transforms input state vectors from selenographic 
coordinates to other coordinate systems. 


3.8.2 nomenclature .- 


Symbol 

R 

R 

t 

K 


Input (i), 
output (0) 
I and 0 
I and 0 


3.8.3 Method .- Six options exist 
to different coordinate systems. 


Definition 
position vector 
velocity vector 
time of state vector 
indicator 

moon with respect to earth 
fron conversion of state vectors 


K 1 - Earth-moon plane to selenographic 
K = 2 - Selenographic to earth-moon plane 
^ — 3 - Earth—moon plane to selenocentric 
K = 4 - Selenocentric to earth-moon plane 


K = 5 - Selenocentric to selenographic 
K = 6 - Selenographic to selenocentric 


? lane is inVolved ’ a ma trix is used to convert either 
to or from this coordinate system. This matrix is formed as follows. 


With the specified position R 

ME 

respect to the earth at each given time 
from equations (53), (54), and (55). 


and velocity 
, 1, j, and 


3® of the moon with 
k can be determined 










23 


= 


(53) 


k = ^ * R ME 

x 


(5 1 *) 


j = k x T (55) 

Set A t = J’ ^ and n °te that 1, }, t are taken as column vectors. 

Let A denote the transpose of [ A . Then if the selenocentric coordinates 

in the equatorial system are R, R, EMP coordinates are defined by 
equations (56a) and (56b). J 

R ' = A T R (56a) 

S' = A T R (56b) 


or, equivalently, R = AR' 


(57a) 


+n ^ Wh6n 1 a conve ^ io ^ is made from the selenocentric coordinate system 
matrix i^j^ aphle (moon - flxed ) coordinate system, the libration 


With the precession-nutation-libration matrix, B at each given 
time and the selenocentric coordinates R, R, transform to the seleno- 
graphic coordinates R', R" by equations (58a) and (58b). 










(58a) 


2k 


conversely. 


R = 


(58b) 

(59a) 

(59b) 


A combination of the two preceding techniques can be used to 
transform vectors from moon orbit plane to selenographic coordinates 
and the reverse. 


3.9 Subroutine LOPC 


3-9-1 Function.- Subroutine LOPC determines the size and effect 
of the lunar orbit plane change maneuver (CSM2). 


3.9.2 Nomenclature .- 


Symbol 


Input (I), 
output (0) 


Definition 


I number of revolutions from first 

pass over lunar landing site 
(LLS) to (CSM2+ 1/U) 

I number of revolutions from 

(CSM2 + 1/U) to second pass 
over LLS 

I period of orbit adjusted by the 

rotational rate of the moon 

S o 1 state vector at lunar landing 


time at lunar landing 










25 


Symbol Input (I ), 

output (0) 



L . ■ ^ v" - ' •- j.' \ 

3.9.3 Method .- Compute equation 


Definition 


time from first pass over LLS to 
CSM2 

state vector before CSM2 


time from first pass over LLS to 
second pass over LLS 

predicted state vector at second 
pass over LLS 

time of second pass over LLS if 
no CSM2 

state vector after CSM2 


mass ratio of CSM2 maneuver 


position vector at second pass 
over LLS in selenographic 
coordinates 

velocity vector at second pass 
over LLS in selenographic 
coordinates 

selenographic components of unit 
vector pointing to the LLS 


(60) 


Use CTBODY (regressed) to propagate S q from t Q to (t + At ) to 
obtain S^ Then compute equation (6l). 


\ = t 0 + At 2 = *0 + + n ) p 


(61) 










2 6 


Use CTBODY (regressed) to propagate S Q to t L to obtain S^. 

Call LIBRAT at time t^ to transform Sg to selenographic coordinates 



Call BURN to obtain 



using S, , Ai|i, and I . 

1 sp 


3.10 Subroutine PATCH 

3.10.1 Function .- Subroutine PATCH finds a point at which there is 
a specific ratio between the spacecraft and the earth and the moon, and 
the spacecraft changes reference bodies at that point. 


3.10.2 

Nomenclature.- 


Symbol 

Input (I), 
output (0) 

Definition 

R 

I and 0 

position vector 

R 

I and 0 

velocity vector 

t 

I and 0 

time of vector 

r 


magnitude of position vector 

. i 


reference body subscript: 
i = 1, primary body 
i = 2, secondary body 

Q 

'i ; 1 

direction of patch in time 

ERROR 


error return 


i 

gravitational constant 

a 

i 

acceleration with respect to 
body i 


universal variable 












27 


Symbol 


Input (I), 

output (0) Definition 


primary reference indicator 

position of the secondary body 
with respect to the primary 
body 


magnitude of R 21 


innut?' 1 ?; 3 •" In thS followin S> if = 1 (earth reference 

secoJSI b r rth T f £; ferred to as the primary body and the moon as the 
««> 2 ( ” on lnrat) ' tie -°°» is ?>■““> 


Subscripts 1 and 2 indicate primary and 
The ratio is defined as follows. 


secondary bodies, respectively. 


Ratio = r _ distance of spacecraft from secondary body 
1 distance of spacecraft from primary body 

Therefore, for a specific two-body orbit. Ratio is a function of the 
&t al P aram eters, the universal variable 6, and the moon-earth ephemeris 
KiSne Ratio 1 ’° C< t Ure 13 to calculate a second order Taylor's expansion 
giving Ratio in tern, of the folloving fc and second partial derivatives. 


d Ratio d 2 Ratio 

d 6 and ~dF- 


® ln Wxth an x “ffial value of 6, a corresponding initial value of Ratio 

vlr 0 r=rr nt ’ n to e> set Rati ° (e + ab) equai to the Paired 

tT+T L Rtl °’ and SOlVe the result ing quadratic equation for AB. 

If the discriminant is less than zero, set d 2 Ratio/dB 2 = 0 and solve the 
ihr“-tTf \°V nStead - - Wlth M inltial S ues3ed value 6, propagate 
Sth resnect S t tv, VeCt ° r ^ XBETA) t0 a final State vector at the pStch 
SSJ with 't ™ r y ref erence body. The position of the secondary 

chaLrl mdf ! Pr ' mary b ° dy 13 obtained EPHM. A reference 

change is made, and r 2 and d g are calculated. 










28 


ARatio = R - Ratio (62) 

( 1, 

0,275 ^ moon is 'the primary body 

0.275 if the earth is the primary body 

A. Ratio 1 ( r 2 2d l\ 

dg = r 2 ^ V 2 '^7 (63) 


where d = R. • R., i = 1,2 


= Il . V + R 2 ' A 2 d l d 2 


.^i_!£i! + r 2 , 2d i 2r 2 

y i r 2 r i y l ^ y i r l d 


where v 2 = R • R i =1,2 and A„ = || 
ill 2 r. 


- (> i + "?> „ 

r 3 R 91 


tsgi*♦ , lg „ ii-gasl ySj|tioE + 2 Mo idfip: 



















29 


Replace 6 by g + i 
1 x 10-12. 


and repeat the process until ARatio 


primary bodies 
10 e.r., respect- 


The last state vector and time with respect to the secondary 
body are the output state and time. 

The initial first guesses for the earth and moon e 
are the values of g needed to propagate to 1(0 e.r. ar 
ively. 

Upon further reference to the routine using a given primary body, 
the last value of distance in that particular primary body is used to 
derive a first guess for g. This method implies that two distances 
are saved, one for each primary body; the maximum distance will be 
60 e.r. if the earth is the primary body, and the maximum distance will 
be 15 e.r. if the moon is the primary body. 

3.10.1( Remarks .- The last variable in the calling sequence is an 
error indicator which is a logical variable and which will return a 
value of .TRUE, when an error has occurred in the routine. There are 
four situations in which .TRUE, will be set up on the error indicator. 

a. If the patch iterative procedure fails to converge within 10 
iterations. 

b. If the.ephemeris data table has not been initialized or the time 
calculated within the routine is outside the range of the ephemeris data. 

c. If the magnitude of the input position vector is greater than 
40 e.r. when the earth is the primary body or 10 e.r. when the moon is 
the primary body and if the conic defined by the input state vector is 
such that the radius of periapsis is greater than 40 e.r. when the earth 
is the primary body or 10 e.r. when the moon is the primary body. 

d. Any error indicator from subroutine RBETA. 


3.11 Subroutine RBETA 


3.11.1 Function .- Subroutine RBETA determines the universal 
necessary to obtain a state vector at a desired radial magnitude, 
an initial state vector 







30 


3.11.2 Nomenclature .- 


Symbol 


Input (I), 
output (0) 


Definition 


R 

R 


E 

H 



initial position state vector 

initial velocity state vector 

magnitude of initial position • 
vector 

magnitude of initial velocity 
vector 

direction indicator 

universal variable 

elliptic eccentric anomaly 

hyperbolic eccentric anomaly 

indicator of error return 

gravity constant of reference 
body 

desired radius magnitude 
semimajor axis 
eccentricity 


KBI- Subr °utine RBETA is restricted to cases in which 
an orbii is cirmi mag ^ tude is greater than the initial magnitude. If 
indica^r set SUbroutine ^es a return with the error 

1 - ftzzzsnr 









31 


Determine the dot produce of R q and R q , the semimajor axis, and 
the eccentricity with equations (65) through (67). 


D^ = R^ • R 


(65) 


•■vfW 

If 1/a < 0 5 the orbit is hyperbolic. 

cosh H = - (l - -2.) 

0 e V a / 

cosh H = i ^1 _ 

H o = ±ln ^ c °sh H o + ycosh 2 H Q - 1^ 
where the sign is chosen to he the sign of D 


( 67 ) 


1 ^cosh H + y c osh 2 H?--1 ^ . 


9 = H o 


- QH 


8 = Q|e|/M 












32 


If 1/a > 0, the orbit is elliptic. 



where the sign is chosen to be ths sign of D . 


-1 V1 - cos 2 E 


6 = Q| 6 | /a 


If 1/a = 0, the orbit is parabolic. 


D o JW- ■ 


3.11.U Remarks .- If any of the radicands 
than zero, the distance r is impossible, and 
with error indicator set .TRUE. 


involving r is less 

the calculation is suspended 













33 


3.12 Subroutine RNTSIM 


„* ,.+ : 12,1 gH P - gtion - Subroutine RNTSIM determines the landing conditions 
conditions of delta time from entry to landing and longitude oflanding ’ 

3.12.2 Nomenclature .- 


Symbol 


A 

X L 

AX 

R 

R 


Y 

e 


Input (I), 

output (0) Definition 

0 computed longitude of landing 

I longitude of landing 

error in longitude of landing 

I position vector at reentry 

velocity vector at reentry 

1 magnitude of position vector 

at reentry 

1 magnitude of velocity vector 

at reentry 

I time of entry 

I entry range, n. mi. 

1 time from reentry to landing 

latitude at landing 

right ascension at landing 

Greenwich right ascension at 
time of landing 

flight-path angle at reentry 

central angle between reentry 
and landing 












34 


3. 

0, S, 


.12.3 Method.-With R, R, and RR specified, the values of p 
V and “l can be determined with equation (68) through (72) 


0 = RR/3443.933585 


where S is the position at landing. 

<f> T = tan -1 - — 


( 68 ) 

(69) 

(70) 


(71) 


(72) 


Call RTASC at time t + At to obtain c^. Then 


AX 


X 


a L I a G 


Reduce 
than tt, 
add 2tt. 


AX by any excess multiples of 2 tt. If the 
subtract 2n; if the result is less than or 
Thus, -tt < AX > IT. 


result is greater 
equal to -tt. 










35 


To allow partial derivatives to be obtained correctly despite the 

S::°^ ies . nh : rent in this scheme ’ the quoins l it* 

After each n^in l 6 involved in partial derivative calculations. 

“ ^ trajectory computation, the value of AX is retained 
During the perturbed trajectory computations, this value, called AA 

is compared with the current value of AX. If (AA - AAJ < -ir, then 
AA is replaced by AA + 2ir; if (AA - AA ) > 


AA - 2ir. 


is replaced by 


3.13 Subroutine RTASC 


of SUb ” Jtlr ‘ e RTASC a ««"«lnes the right .scansion 

sp.=i?iS"“e?e"L l eT' computation for the right a.coneion i. 


3.l4 Subroutine RVIO 


3.14.1 

coordinates 


Function.- Subroutine RVIO transforms a given set of 
Ln Cartesian or spherical form to the other form. 


3-14.2 Nomenclature .- 


Symbol Input (i), 
output (0) 

R I and 0 
R I and 0 
r I and 0 
v I and 0 
x I and 0 
y I and 0 
z I and 0 
x I and 0 
y I and 0 
z I and 0 


Definition 
position vector 
velocity vector 
position magnitude 
velocity magnitude 
x component of position vector 
y component of position vector 
z component of position vector 
x component of position vector 
y component of position vector 
z component of position vector 













36 


Input (I), 
output (0) 

I and 0 

I and 0 

I and 0 

I and 0 


Definition 

latitude 

right ascension angle 
flight-path angle 
azimuth angle 


3.14.3 Method .- To transform spherical coordinates to Cartesis 
coordinates, use equations (73) through (76) 


x = r cos <J> cos 0 
y = r cos if> sin 0 


(73) 

(74) 

(75) 


COS (j) cos 0 
cos ij> sin 0 
sin <(> 


-sin 0 -sin <{> cos 0 

cos 0 -sin <(> sin 0 


cos y sin ip 
cos y cos 


(76) 


To transform Cartesian coordinates to spherical coordinates, use 
equations (77) through (82). 


(77) 

(78) 

(79) 















37 


r =Vx2 + ^ + s 

. = Bln -] R • R 


(80) 

(81) 



3.15 Subroutine TLIBRN 

3.15.1 Function.- Subroutine TLIBRN simulates the translunar 
injection thrusting maneuver by use of a precomputed polynominal. 

3.15.2 Re marks .- The method of this subroutine is contained in 
references 7 and 8. 


3.16 Subroutine TLMC 


3-16.1 Function ■- Subroutine 
delta azimuth, delta velocity, and 
lunar state at abort or midcourse. 


TLMC determines the first guesses for 
delta flight-path angle for a trans- 


3.16.2 Nomenclature.— 


Symbol 


t 

t 

I 

x 

y 


Input (I), 

output (0) Definition 

I and 0 state vector 

1 time of state vector S 

1 nominal time of node 

1 x component of position vector 

1 y component of position vector 

z component of position vector 
















Symbol 


Input (I), 
output (0) 


Definition 


\ 


Y 

f 

At 


ERROR 

AV 


Ay 


A<p 


I desired radius at the perilune 

longitude of perilune in earth- 
moon plane system 

velocity magnitude at perilune 

flight-path angle at perilune 

I latitude of perilune in earth- 

moon plane system 

azimuth of perilune in earth- 
moon system 

I amount of change in t (for 

non-free-return) 
adjusted time of node 

0 flight indicating an error in 

TLMC 

0 change in scalar velocity for 

MCC 

0 change in flight-path angle for 

MCC 

0 change in azimuth for MCC 


3.16.3 Method.- Compute the adjusted time of node: t = t + 
The earth-moon plane (EMP) matrix is obtained by subroutine LIBRAT s 
the time t n for use in transforming the EMP coordinates at the 
node to the selenocentric system. 


• J he ? 6Xt ®^ ep sets the de P end ent variable limits, weights, and 
weight cuts. Three dependent variables, x, y, z, are defined as the 
components of the position vector at abort or midcourse. They are designated 
class 1 variables. The minimum and maximum required values of the 








39 


position components are found by addition and subtraction of a small 

tolerance (10 e.r.) to the abort position components. Flight-path angle 

at time of abort is a class two dependent variable with limits of 90-182°. 

After the dependent variables have been described, the independent 
variables are set up and given a first guess. The first independent 
variable is the longitude of perilune, and the second independent variable 
is the velocity of perilune. First guesses for these two variables are 
obtained from the empirical equations given in reference 3. The third 
independent variable is the azimuth at the perilune, and the first guess 
is % to obtain a retrograde lunar approach hyperbola. 


With the perilune forced to lie at the required EMP latitude and 
to have the required height and flight-path angle, the above independent 
variables determine the state vector at perilune in the FMP. tm«, 



3.17 Subroutine XBETA 


3.17.1 Function.- Subroutine XBETA determines the state vector 
variable ^ p ^ initial state vector for a desired value of the universal 

3.17.2 Uomenclature .- 


Symbols 


Input (I) 
output (o) 


Definition 


I 


universal variable 


K 


I 


central body indicator 


F. 


functions of the universal 
variable 


gravity constant 













Symbols 


Input (i), 
output (0) 


Definition 


I initial position vector 

I initial velocity vector 

I magnitude of initial position 

vector 

I magnitude of initial velocity 

vector 

I initial time 


0 fixed position vector 
0 fixed velocity vector 
0 final time 


3.17.3 Method .- From the initial state vector, the final state 
vector is determined as a function of B with equation (83) through (85). 


D o = R o ’ R o (83) 

1/a = 2/r - v q 2 /u ( 8U) 

a = -3 2 /a (85) 


Call subroutine FCOMP and determine the functions of the universal 
variable. Use equations (86) through (,9k). 


( D n 6F ? \ 

8 'i * * *„»,j > 









kl 


tf = t Q + t 

(87) 

ft + ft 6t, I 

(88) 

p£ 

f = 1-- 

O 

(89) 

g = t - 6 3 F 1 u 

(90) 

f = -Vv 3F 3 /r o r 

(91) 

g = 1 - ^Fj/r 

(92) 

R = fR Q + gR 

(93) 

R = fR Q + gR 

(91*) 


3.18 Subroutine PRCOMP 

.ft ft 1 ? unction, ~ Subroutine PRCOMP constructs state vectors at LOI 
and DOI based upon the coordinates of the lunar landing site and the 
orientation and shapes of the LOI and DOI ellipses. This routine is 

twi <; e du ft ng a real-time RAP computation: at the start of the 
first select mode and again at the beginning of the optimize mode. 

3.18.2 Nomenclature .- 


Symbol 


Input (I), 

output (0) Definition 


iJ/LLS 


selenographic approach azimuth 
to the lunar landing site 


<t>LLS 


selenographic latitude of the 
lunar landing site 












1*2 


Symbol 


Input (I), 
output (0) 


Definition 


ILLS 


r ils 


selenographic longitude of the 
lunar landing site 

radius of the lunar landing site 


h „ 
alls 

h m 

plls 


I apolune altitude of DOI ellipse 

during landing rev 

I perilune altitude of DOI ellipse 

during landing rev 

I central angle between perilune 

of DOI ellipse and lunar land¬ 
ing site during the landing rev 

I estimate of true anomaly of LOI 

(on ellipse) 


“lpoi 


I apolune altitude of LOI ellipse 


I perilune altitude of LOI ellipse 


“am 


I number of complete revs spent in 

the DOI ellipse 

I total number of revs spent in 

the LOI ellipse (a non-integer) 

integer part of RVS1 

decimal part of RVS1 converted 
to radiams 

0 radius of apolune on the LOI 

ellipse 

radius of perilune on the LOI 
ellipse 


a lls 


semimajor axis on the DOI ellipse 


T 


nd 


time of the nodal state on the 
approach hyperbola 








Symbol 


Input (I), 
output (0) 


Definition 


r)2 


W2,X2 5 R2| 

(V2 jY2,i(/2) 




e l 


estimated time of first pass 
over the landing site 

increment of time required for 
a conic trajectory to propagate 
from a true anomaly of nl 
forward through DR1 radians 
along the LOI ellipse 

true anomaly on the LOI ellipse 
at the position of DOI 

selenocentric unit position vector 
of the landing site 

selenocentric unit position vector 
to the hyperbolic perilune 

fraction of a rev (in radians) 
traveled in the DOI ellipse 

polar components of a selenor 
graphic state vector over the 
lunar landing site at time T LLg 

approximate time of DOI obtained 
by backward integration 

semimajor axis of the DOI ellipse 
at time 


eccentricity of the DOI ellipse 
at time 

unit selenocentric perilune 
position vector of the LOI 
ellipse at time T 


RA2 


apolune radius associated with 
the DOI ellipse at time T 










Symbol 


Definition 


1A 


Input (I), 
output (0) 


RP2 


<M,Rj 


R1I 


VII 


U pl 

RA1 

RP1 


Ah 


P 


Perilune radius associated with 
the DOI ellipse at time 


polar components of a selen- 
ocentric state at the start 
of DOI 

position vector on the LOI 
ellipse obtained by backward 
integration to time T 

nd 

velocity vector on the LOI 
ellipse obtained by backward 
integration to time T 

nd 

unit perilune position vector 
associated with R1I, VII 

radius of apolune associated 
with Til, VII 

radius of perilune associated 
with Rll, VII 

change in perilune position of 
the LOI ellipse because of 
propagation 

change in apolune altitude of 
the LOI ellipse because of 
propagation 

change in perilune altitude of 
the LOI ellipse because of 
propagation 

time increment from LOI to DOI 

selenographic state vector at 
the end of LOI 

selenographic unit position 
vector of perilune on the DOI 
ellipse at time 








^5 


3.18.3 Me thod .- Input provides a nodal state on the approach hyperbola 
from the trajectory computer; the lunar landing site coordinates and the 
stenographic approach azimuth are taken from preflight data, while the 
size, orientation, and duration of the LOI and DOI ellipses are specified 
Vis’ Vis’ n1 ’ PlPOl “W RVS1, and RVS2, 


by MED quantities 
and Aw. 


1 ’ 


“lpoi - “lpoi * r ll ,’ RP LP01 ■ “ P tP01 * r lls ’ “* 
l lls “ r lls + ^ h alls + h plls^^"^’ ^en use equation (95) to compute 
in estimate of the time of first pass over the lunar landing site. 


vi 


where At g is the time increment required for a conic to propagate from a 

true anomaly of nl on the LOI ellipse forward through DR1 radians. (The 
true anomaly at the end of this conic prapogation is saved as n2). 


Next, form a unit position vector to the landing site, transform it 
and call it u,,_. Let 


to selenocentric coordinates at time T 

) and assume Act to be 


= arc cos(u 


11s' 

■“Us ' u pc ' ana assume Aa to be Act' or 2ir - Act' 
according to whether landing site passage occurs after or prior to -u 
on the DOI ellipse, that is, if gV x Up J . RXV 0 f hyperbola >0, ^ 

A “ V* W Form . DA ' = Aa = DR 1 & nd then use DA .equal to DA' 
or it + DA according to whether DA' is positive or negative. Increment 
^LLS by the conlc time required to travel DA radians from the landing 
site back along the DOI ellipse. Recompute a selenocentric unit position 
vector to the landing site with this updated time, and redetermine DA. 

A selenographic state vector over the lunar landing site can be 
constructed in polar form according to $2 = <t> , \2 = X ip2 = \p 

with equations (96) through (98). LLS LLS LLS 


: 2 )/[l - 


! (Aw x )] 









46 



where e - -1 + (h allg + r n s ^/ a n s ' Convert this state vector to 
Cartesian form, then transform to selenocentric form at time T 

LLS 

and integrate backward through 2 tt • RVS2 + DA radians. The time of 
resultant state vector will be used as T^> the approximate time of 

DOI. Calculate the associated semimajor axis, A^, eccentricity E , 
and unit perilune position vector Compute the radius at apolune 

RA2, and the radius at perilune RP2. 

A state vector at the end of the LOI ellipse can be constructed 
in polar form by noting that no plane change occurs during the DOI 
maneuver. With the abbreviations A = \ (RA TDnl + ) and 

2, . J-iirOJ. LP 01 

E = -1 + a (RA LP01^ e< l uations (99) through (lOl) can be evaluated. 

R = A(1 - E 2 )/[l + E cos (n2)] (99) 

v = u (|_I ) 1/2 (100) 

Y = sign(n2) arc cos E2) j (lOl) 

with 4>, X, ip, and time equal to their values at the start of the DOI 
ellipse (l.e., at the end of the backward propagation). Integrate this 
state vector backward in time to T nd to obtain R1I, VII. Compute the 

associated unit perilune position vector, u radius at apolune, RA1 
and radius at perilune RP1. P 1 ’’ 












47 


• (R1I X VII)] 


Evaluate % . „c co. („ pl • u^) sign » 

and form the differences Ah = RA2 - RA1, Ah = RP2 - RP1 Form 
a p 

AT = T - T ; set the independent variable AT = T m 

L nd 1st pass X LLS nd : 

and return to the main program. 


3.19 Subroutine MCOMP 

3.19.1 Function.- Subroutine MCOMP computes the mass of the space- 
craft after each maneuver. The maneuver may be performed with either the 
SPS or the DPS. After the LM is undocked from the CSM, only SPS maneuvers 
are performed. An error message is returned if the LM fuel has been 
completely expended. 

3.19.2 M ethod .- The subroutine is called with the maneuver AV a 
docked or undocked indicator, a DPS or SPS indicator, the present space¬ 
craft mass, the available LM fuel, the LM fuel spent in previous 
maneuvers, and the specific impulses of the SPS and DPS full throttle- 
and returns the mass after the maneuver. 

An initial test is made to see whether the LM is still docked. If 
. -AV/g I of SPS. 

it is not docked, the final mass is computed as m e 0 S P 

If it is still docked, a test is made to see whether the maneuver is to 
be performed with the DPS. If it is not to be performed with the DPS, 

_ ~AV/g I of SPS 

the final mass is computed as m e ° sp . If it is to be 

performed with the DPS, the mass expended on the maneuver is computed as 
-AV/g I of DPS 

m of?i 6 ). If the sum of this delta mass and any previous 

LM mass expended is greater than the LM fuel available for a maneuver, 
an error message is to be displayed which will indicate that this plan of 
maneuvers cannot be performed. If the sum of this delta mass and any 
previous expended LM fuel is less than the LM fuel available for maneuvers 
atest^smade to see whether the LM is to be dropped after this maneuver. 
If it is to be dropped, the final mass is computed as m - (m - Am ) 
x, .. . 1 . , o LM total 

If it is not to be dropped, the final mass 
the maneuver. 


i computed £ 










3.20 Subroutine PPC 


3.20.1 Function .- Subroutine PPC accepts a selenocentric LPO state 
vector and computes the delta V required to make a plane change which 
will place the spacecraft over a given photographic site revs later. 
The selenographic state vector at passage over the photographic site 

is output. Several plane changes can be handled sequentially. 

3.20.2 Nomenclature .- 


Symbol 

D 

D1 

DL 

DT 

DV 

DVS 

GMT 

H 

H' 

HSMA 

INTL 

IMAX 


K 

ND1 

PP 



s a 


SIN 


Definition 
time from SMA to ND1 

angle between ND1 and S used for first guess computation 

angle between SLLG and SG used for first guess computation 

time from ND1 and SMB 

total accumulated velocity required 

stored total velocity required (use for INTL ^ 0) 

stored time from base time of original input state vector 
(used for INTL ^ 0) 

unit angular momentum vector associated with SMB 
unit angular momentum vector associated with SMA 
negative angular momentum associated with SMA 
counter for lunar photographic sites 

initialization flag (INTL = 0 Iterate, INTL j 0 transform 
previous iterated result) 

maximum number of photographic sites 
iteration counter 

unit nodal vector of parking orbits defined by SMA and SMB 
period of LPO 

unit projection of SMB into plane defined by SMA 
number of passages over each photographic site 

current selenocentric base state vector (input state 
vector or previous site) 

input selenocentric LPO state vector 


. . ^ 11 state vectors are of dimension 13 and contain X, Y, Z, r, r 2 , i 

V ’ I 2 ’ ?3 ’ and time from base time - Thus > S(7) represents the 
velocity vector associated with the state vector S, and so on. 











SMA 

SMB 

TSMB 


selenographic state corresponding to S 
selenographic state vector associated with current 
X i’ ^i ’ ^i ( This state vector is saved for 
INTL = 0 execution.) 

selenocentric state vector after the current maneuver 
selenocentric state vector before the current maneuver 
HSMA x SMB 


AAZ required plane change 

X i selenographic longitude of photographic sites 

*LLS selenocentric longitude associated with SLLS 

*ND selenocentric longitude associated with ND1 

h gravitational constant of the moon 

't’i selenographic latitude of photographic sites 

^i selenographic approach azimuth of photographic sites 






























51 



Flow chart 1.- Subroutine PPC - Continued. 

























-© 















































55 


TABLE I.- INDEPENDENT VARIABLES FOR 
THE TRAJECTORY COMPUTERS 


























5 6 


TABLE II.- DEPENDENT VARIABLES FOR 
THE TRAJECTORY COMPUTERS 




Use 

Variable 

Reference 

Analytic 

MCC 

first guess 

Analytic 
traj ectory 
computer 

Integrating 

trajectory 

computer 

X mcpt 

GC dr SC 

/ 



y mcpt 

GC dr SC 

/ 



Z mcpt 

GC or SC 

/ 



n^TLi 



/ 

/ 

At TL Coast 




/ 

H 

ap 



wm ? 

/ 

H 

pc 



/ 

/ 

I 

pc 

EMP 


/ 

/ 

PC 

EMP 


/ 

/ 

H fr-rtny 



I 

/ 

X fr 

EEP 


/ 

/ 

H nd 



/ 

/ 

^nd 

EMP 


/ 

/ 

X nd 

EMP 


/ 

/ 

^O 



/ 


Ah 



/ 


6 



/ 


LOI 



/ 


av doi 



/ 

















57 


TABLE II.- DEPENDENT VABIABLES FOR 
THE TRAJECTORY COMPUTERS - Concluded 


Variable 

Reference 

frame 

Use 

Analytic 

MCC 

first guess 

Analytic 

trajectory 

computer 

Integrating 

trajectory 

computer 

^LLS 

SG 


/ 


X LLS 

SG 


/ 


^LLS 

SG 


/ 


^TEI 



/ 


^TE Coast 



/ 


















58 


TABLE III.- BASIC MODULES USED IK TRAJECTORY COMPUTERS 


MCC first guess 
trajectory computer 

TLI/MCC analytic 
trajectory computer 

TLI/MCC 

integrated trajectory 

EPHM (ephemeris) 

DGAMMA 

Integrator 

RVIO (Cartesian to 
spherical, etc.) 

XBETA (BETA 

mation) 

Forcing function 

PATCH (both ways) 

BURN-impulsive 

Runge Kutta 

EBETA 

PATCH (both ways) 

Predictor-corrector 

RBETA 

EBETA 

Editor 

XBETA (BETA series sum¬ 
mation) 

XBETA (BETA 
series sum¬ 
mation) 

EPHM 

EPHM 

i RBETA 

BETA series summation 

CTBODY (BETA series 
summation) 

EPHM (ephemeris) 

RTASC 

LIBRAT 

CTBODY 

TLIBRH 

FCOMP 

LIBRAT 



EPHM 



TLIBRN (cal¬ 
ibrated) 

LIBRAT 


ELEMT (orbital) 

ELEMT (orbital) 


CTBODY (BETA 
series sum¬ 
mation) 

RVIO (Cartesian to spher¬ 
ical, etc.) 


EBETA 



RTASC 



RVIO (Cartesian 
to spherical, 
etc.) 



FCOMP 




































60 















I CALCULATE DEPENDENT VARIABLES! 


( RETURN ) 








































63 





































6b 




















65 





























66 


AND SET THE DEPENDENT 


VARIABLE AV LQ| ACCORDING TO ^ 


- 32 ;“'^'^- 

' I 

| rsis 1 




















67 




























m 


MANEUVER, WHERE M f IS MASS AFTER 






1 


wBNBsam 


Nr 


L- ™ 


±gr 


KffiffiBSffS;?""'’" 





















69 




























































1 


-© 



































































76 


REFERENCES 


1. Moore, William E.: AS-503/504 Requirements for the RTCC: The 

Generalized Iterator. msc IN 66-FM-131, Nov. 4, 1966. 

2. Scheffman, David S.; Yencharis, Jerome D.; Zeiler, Kenneth T.: 

RTCC Requirements for Apollo 12 (Mission H-l): Translunar Injec¬ 
tion Processor. MSC IN 69-FM-250, Sept. 25, 1969. 

3. Holmes, Quentin A.; and Zeiler: RTCC Requirements for Apollo l4: 

XYZT and Free-Return Modes of the Translunar Midcourse Correction 
Processor. MSC IN 70-FM-15, 

4. Holmes, Quentin A.; and Zeiler, Kenneth T. Zeiler: RTCC Requirements 

for Apollo 14: Non-Free-Return Modes of the Translunar Midcourse 
Correction Processor. MSC IN 70-FM-14, Feb. l6, 1970. 

5. Zeiler, Kenneth T.; Holmes, Quentin A.: RTCC Requirements for 

Apollo 14: Flyby Modes of the Translunar Midcourse Correction 
Processor. MSC IN 70-FM-ll, Feb. 6, 1970. 

6. Moore, William E.: The Generalized Forward Iterator. MSC IN 66-FM-55, 

June 15, 1966. 

7. Martin, D. T.; and Redwine, W. J.: Empirical Simulation of the 

Nominal and Alternate Mission Translunar Injection Burn Fit for an 
Extended Range of Independent Variables. TRW Note No. 67-FMT-506 
(A-77), April l4, 1967. 

8. Yencharis, J. D.: RTCC Requirements for Missions F and G: Empirical 

Equations for Simulating the Translunar Injection. MSC IN 68-FM-53, 
Feb. 26, 1968. 

9. Flanagan, P. F: RTCC Requirements for Missions E, F, and G: Greenwich 

Hour Angle Formulation for the Predictor. MSC IN 68-FM-53, Feb. 26, 

1968. 


NASA-MSC 








CHANGE SHEET 


FOR 

MSC INTERNAL NOTE 70-FM-26 (MSC-01594) DATED Februaiy 26, 1970 
RTCC REQUIREMENTS FOR APOLLO l4: TRAJECTORY COMPUTERS FOR TLI 
AND MCC PROCESSORS 

By Brady 0. McCaffety, William E. Moore, and Quentin A. Holmes 
Change 2 
ember 12, 1971 



Ronald L. BerryY Chief 

Planetary Mission Analysis Branch 



NOTE: A black bar in the margin indicates the area of change. 

After the attached enclosures, which are replacement pages, have 
been inserted and the pen-and-ink changes have been made, place this 
CHANGE SHEET between the cover and title page and write on the cover, 
"CHANGE 2 inserted." 


Replace pages 43-1+4, 45-46, 65 - 66 , and 67 - 68 . 













CHANGE HISTORY FOR 70-FM-26 


Date 


5/25/70 


11/12/71 


Description 


Page 6k : Pen-and-ink change to correct 
typographical error. 

Page 66: Pen-and-ink changes to eliminate 
redundant computation. 

Page 67: Deleted page because computation 
is no longer needed. 

Page 68: Pen-and-ink changes to eliminate 
redundant computation of mass ratios. 

Replace page 72: Added a call to MCOMP 
for computation of mass ratios. 

These changes reflect the logic by which 
LPO-1 and LPO-2 are matched in the RTCC 
MCC processor. 















Symbol 


Input (i), 
output (0) 


Definition 


n2 


DA 

U2,X2,R2) 

|v2,Y2,ij;2) 


*L 


V 


RA2 


estimated time of first pass 
over the landing site 

increment of time required for 
a conic trajectory to propagate 
from a true anomaly of nl 
forward through DR1 radians 
along the LOI ellipse 

true anomaly on the LOI ellipse 
at the position of DOI 

selenocentric unit position vector 
of the landing site 

selenocentric unit position vector 
to the node on the approach 
hyperbola 

fraction of a rev (in radians) 
traveled in the DOI ellipse 


polar components of a seleno^ 
graphic state vector over the 
lunar landing site at time T TJR 

approximate time of DOI obtained 
by backward integration 

semimajor axis of the DOI ellipse 
at time 


eccentricity of the DOI ellipse 
at time T L 

unit selenocentric perilune 
position vector of the LOI 
ellipse at time 

apolune radius associated with 
the DOI ellipse at time 


Change 2, November 12, 1971 









Symbol 


Input (I), 
output (0) 


Definition 


RP2 


U,X S R) 


R1I 


vii 


u pi 

RAl 

RP1 


Ah 


Ah 


P 


AT 

SGSLOI 

U L 


Perilune radius associated with 
the DOI ellipse at time 


polar components of a selenr- 
ocentric state at the start 
of DOI 

position vector on the LOI ' 
ellipse obtained by backward 
integration to time T , 
nd 

velocity vector on the LOI 
ellipse obtained by backward 
integration to time T^ 


unit perilune position vector 
associated with R1I, VII 

radius of apolune associated 
with Til, VII 

radius of perilune associated 
with R1I, VII 

change in perilune position of 
the LOI ellipse because of 
propagation 

change in apolune altitude of 
the LOI ellipse because of 
propagation 

change in perilune altitude of 
the LOI ellipse because of 
propagation 

time increment from LOI to DOI 

selenographic state vector at 
the end of LOI 

selenographic unit position 
vector of perilune on the DOI 
ellipse at time T 


Change 2, November 12, 1971 









3.18.3 Method .- Input provides a nodal state on the approach hyperbola 
from the trajectory computer; the lunar landing site coordinates and the 
selenographic approach azimuth are taken from preflight data, while the 
size, orientation, and duration of the LOI and DOI ellipses are specified 
by MED quantities h^, , nl, HA^ HP^, RVS1, and RVS2, 

and A to^. 

Set “lpoi = n^oi + r iis’ rp lpoi = “lpoi + r ils’ and 
a lls " r i]_ s + ( h alls + h plls )/2 - 0; then use e 4 ua tion (95) to compute 
an estimate of the time of first pass over the lunar landing site. 


|{ m [ - H : S.o’ gLP01 ] 3/2 


OTS2 [*llJ 3/ 1* at 2 ( 55 ) 


where At g is the time increment required for a conic to propagate from a 

true anomaly of nl on the LOI ellipse forward through DR1 radians. (The 
true anomaly at the end of this conic prapogation is saved as n2). 

Next, form a unit position vector to the landing site, transform it 

to selenocentric coordinates at' time T tt „, and call it u . Let 
LLS Us 

Aa - arc cosiu llg • u^J and assume Aa to be Act’ or 2-n - Act' 

according to whether landing site passage occurs after or prior to -u 

on the DOI ellipse, that is, if (u^ x u^) • RXV of hyperbola >0, PC 
Aa = 2 tt - DA'. Form DA' = Aa = DR1 and then use DA ;equal to DA' 
or 2-n + DA' according to whether DA' is positive or negative. Increment 
T LLS by the conic time re <3.uired to travel DA radians from the landing 
site back along the DOI ellipse. Recompute a selenocentric unit position 
vector to the landing site with this updated time, and redetermine DA. 

A selenographic state vector over the lunar landing site can be 

constructed in polar form according to $2 = <fi TT „, A2 =■ \ ,il> \h2 s ib 

LLS T.T.fl 9 Y LLS 

with equations (96) through (98). 


R2 “ a ii s (! - e 2 )/[l + e cos (Au^)] (96) 


Change 2, November 12, 1971 









U6 



where e = -1 + (h ,, + r,, )/a,, . Convert this state vector to Cartesian form, 

alls 11s 11s 

then transform to selenocentric coordinates at time T LLg and integrate backward 
in time through 2 n • RVS2 + DA radians. The time of the resulting state vector 
will be used as T^, the approximate time of DOI. Calculate the associated semi¬ 
major axis, A l> eccentricity , and radius R^. Compute the radius at apolune, 
RA2, the radius at perilune, RP2, flight-path angle y^, and velocity 

A state vector at the start of DOI can be constructed in polar form by noting 
that no plane change occurs during the DOI maneuver, that the true anomaly on LP01 
is n2 at the impulsive position of DOI and that the altitude on LP01 and LP02 
differ by 6(Ah). We have 


E = (RA lpol - [R L - 6(Ah)]}/{RA lp01 + [R L - 6(Ah)] cos ( n 2)} (99a) 

A = RA^^/d + E) (99b) 

V1 ^ { tR-6(Ah)] -| }1/2 (1 ° 0) 

II = sign (n2) arc cos (lOl) 

with if, 1, and time equal to their values at the start of the DOI ellipse 
(i.e., at the end of the backward integration). _Integrate this new state vector 
backward in time to I to obtain R1I, and VII. Store R1I, vn in seleno- 
nd 

graphic coordinates and compute the associated true anomaly n, unit perilune 
position vector u^, radius at apolune RA1, radius at perilune RP1, semimajor 
axis Al, and eccentricity El. Project u pc onto the LP01 plane and compute 
the angle An' between it and R1I. Use subroutine DELTAT to compute the time 
increment, DTCORR, required to travel from n to n + An' on the LOI ellipse. 
Transform to selenographic coordinates update T TTf . by DTCORR and repeat 

the backward integration of LP02 and LP01 just once. 

Change 2, November 12, 1971 














65 



































67 


























:SSSi5P 

t ll =W, ately after LO,*W 




Eiliiiilf 




‘' N »s 


“W 




1 


















Mission Planning and Analysis Division 
NATIONAL AERONAUTICS AND SPACE ADMINISTRATION 
MANNED SPACECRAFT CENTER 
Houston, Texas 77058 


REPLY REFER TO: 70-FM54-123 


J5 1970 


MEMORANDUM TO: See attached list 


FROM : FM5/Chief, Lunar Mission Analysis Branch 

SUBJECT : RTCC requirements for Apollo l4 (H-3): Trajectory 

computers for TLI and MCC processors - Change 1 


Enclosed is Change 1 to MSC Internal Note No. 70-FM-26. This changP 
reflects elimination of some redundant paths in the trajectory computers 
and some minor corrections to the original logic. 



Johnsj 1 . Mayer 

Chief, Mission Planning 

and Analysis Division 


The Flight Software Branch concurs with the above recommendations. 

o_ cM 

James C. Stokes, Jr., Chief 
!y Flight Software Branch 


Enclosure 










CHANGE HISTORY FOR 70-FM-26 


Date 

5/25/70 


Description 

Page 6k: Pen-and-ink change to correct typographical 
error. 

Page 66: Pen-and-ink changes to eliminate redundant 
computation. 

Page 67: Deleted page because computation is no longer 
needed. 

Page 68: Pen-and-ink changes to eliminate redundant 
computation of mass ratios. 

Replace page 72: Added a call to MCOMP for computa¬ 
tion of mass ratios. 












CHANGE SHEET 
FOR 

MSC INTERNAL NOTE 70-FM-26 DATED FEBRUARY 26, 1970 
RTCC REQUIREMENTS FOR APOLLO lit: TRAJECTORY COMPUTERS 
FOR TLI AND MCC PROCESSORS 

By Brody 0. McCaffety, William E. Moore, and Quentin A. Holmes 
Change 1 
May 25, 1970 


Ronald L. Berry, Chief 

Lunar Mission Analysis Branch^'^ 




John P. Mayer, Chief 

Mission Planning and Analysis Division 


Page 1 of 3 
(with enclosures) 


NOTE: A black bar in the margin indicates the area of change. 

After the attached enclosures, which are replacement pages, have 
been inserted and after the following pen-and-ink changes have been 
made, place this CHANGE SHEET between the cover and title page and 
write on the cover, "CHANGE 1 inserted". 


1. Page 61*: reverse the direction of the arrow to 

■ W 


it points toward^ 


0 that 


2.. Page 66: delete the block which reads 
using either SPS thrust parameters or DPS thrust 
bined AV of LOI and DOI". 


"Compute the mass ratio 
parameters for the com- 


3. Page 66: 


replace (3/c) with 


® • 


k. 

with "A) 


Page 68: 
LOI MASS 


delete the topmost block on page 68 
RATIO: WHERE M Q IS MASS BEFORE...". 


which begins 






















72 


/ IS THIS \nO 
\ A caseonly L /- v3y 


CALL BETA-TIf 

W§g 

dE INTEGRATOR 






-0 


| CALL MC0MP~1