Proof TPI_SEARCH #265 (#387)

* Proof FIXED_FIXED_CONSTANT_POOL (#207)

* Proof TPI_SEARCH #265
pull/405/head
Glenn Dwiyatcita 2019-05-09 01:17:48 +02:00 committed by James Harris
parent e82746d732
commit 9d2f8c04ab
1 changed files with 28 additions and 33 deletions

View File

@ -30,30 +30,27 @@
# Page 551
# TPI SEARCH
#
# PROGRAM DESCRIPTION S17.1 AND S17.2
#
# FUNCTIONAL DESCRIPTION
#
# THE TPI SEARCH ROUTINE DETERMINES THE MINIMUM TOTAL VELOCITY TRANSFER TRAJECTORY FROM A GIVEN TPI
# THE TPI SEARCH ROUTINE DETERMINES THE MINIMUM TOTAL VELOCITY TRANSFER TRAJECTORY FROM A GIVEN TPI
# MANEUVER TIME WITHIN THE CONSTRAINT OF A SAFE PERICENTER. THIS VELOCITY IS THE SUM OF THE IMPULSIVE VELOCITIES
# FOR THE TPI AND TPF MANEUVERS.
#
# THE S17.1 ROUTINE EXTRAPOLATES THE STATE VECTORS OF BOTH VEHICLES TO THE TPI TIME AND COMPUTES THE
# RELATIVE PHASE ANGLE BETWEEN THE VEHICLES, THE ALTITUDE DIFFERENCE (I.E., THE MAGNITUDE DIFFERENCE OF THE
# THE S17.1 ROUTINE EXTRAPOLATES THE STATE VECTORS OF BOTH VEHICLES TO THE TPI TIME AND COMPUTES THE
# RELATIVE PHASE ANGLE BETWEEN THE VEHICLES, THE ALTITUDE DIFFERENCE(I.E. THE MAGNITUDE DIFFERENCE OF THE
# POSITION VECTORS) AND SELECTS A SEARCH SECTOR BASED ON THE SIGN OF THE ALTITUDE DIFFERENCE.
#
# THE S17.2 ROUTINE FURTHER DEFINES THE SEARCH SECTOR BY COMPUTING ANGULAR LIMITS AND USES THE TIME THETA
# THE S17.2 ROUTINE FURTHER DEFINES THE SEARCH SECTOR BY COMPUTING ANGULAR LIMITS AND USES THE TIME THETA
# SUBROUTINE TO COMPUTE THE SEARCH START AND END TIMES. THE SEARCH IS THEN MADE IN AN ITERATIVE LOOP USING THE
# LAMBERT SUBROUTINE TO COMPUTE THE VELOCITIES REQUIRED AT TPI TIME AND AT TPF TIME. EXIT FROM THE SEARCH LOOP
# IS MADE WHEN SOLUTION CRITERIA ARE MET (NORMAL EXIT) OR AS SOON AS IT IS EVIDENT THAT NO SOLUTION EXISTS IN
# THE SECTOR SEARCHED.
#
# CALLING SEQUENCE
#
# BOTH ROUTINES ARE CALLED IN INTERPRETIVE CODE AND RETURN VIA QPRET. S17.1 HAS ONLY A NORMAL EXIT.
# S17.2 RETURNS VIA QPRET FOR NORMAL EXIT AND TO ALARUMS FOR ERROR EXIT.
#
# S17.2 RETURNS VIA QPRET FOR NORMAL EXIT AND TO ALARUMS FOR ERROR EXIT.
# SUBROUTINES CALLED
#
# CSMCONIC
@ -69,11 +66,11 @@
EBANK= RACT3
# **** TEMPORARY ****
# **** TEMPORARY ****
HPE 2DEC 157420.0 B-29 # EARTH'S MIN. PERICENTER ALTITUDE 85 N.M.
HPL 2DEC 10668.0213 B-29 # MOON'S MIN. PERICENTER ALTITUDE 35000 FT.
HPL 2DEC 10668.0213 B-29 # MOON:S MIN. PERICENTER ALTITUDE 35000FT
CDSEC 2DEC 40000
@ -301,7 +298,7 @@ JUNCT3 VLOAD
SL*
0,2
STORE HP
# ITSWICH DENOTES INTERPOLATION -- SOLUTION ACCEPTANCE IS FORCED
# ITSWICH DENOTES INTERPOLATION--SOLUTION ACCEPTANCE IS FORCED
BON DLOAD
ITSWICH
ENDEN
@ -315,9 +312,9 @@ JUNCT3 VLOAD
BMN DSU # (HPLIM-HPO)-(HPLIM-HP)=HP-HPO
INTERP # SOLUTION AT HAND
BMN DLOAD
ALARUMS # IT'S GETTING WORSE -- SOUND THE ALARM
ALARUMS # IT'S GETTING WORSE - SOUND THE ALARM
CDSEC
JUNCT1 BOFF DCOMP # OFF IS PLUS, ON IS MINUS
JUNCT1 BOFF DCOMP # OFF IS PLUS ON IS MINUS
KFLAG
+1
STORE DELTEE
@ -386,7 +383,7 @@ ENDEN VLOAD
RELDELV
SIGN STADR # NOW SIGN(RELDELV)=SIGN(SG2)
STCALL RELDELV
TRANSANG # COMPUTE OMEGA T, CENTRAL ANGLE
TRANSANG # COMPUTE OMEGA T , CENTRAL ANGLE
VLOAD DOT
RACT3
# Page 558
@ -417,8 +414,7 @@ NEXUS STODL NN1
COUNT 07/XANG
# CENTRAL ANGLE SUBROUTINE
#
# THIS SUBROUTINE COMPUTES THE CENTRAL ANGLE OF TRAVEL OF THE
# THIS SUBROUTINE COMPUTES THE CENTRAL ANGLE OF TRAVEL OF THE
# PASSIVE VEHICLE DURING THE TRANSFER.
TRANSANG STQ SETPD
@ -435,9 +431,9 @@ TRANSANG STQ SETPD
PDVL VSR* # SQRT MU (+18 OR +15) 00D
RPASS4
0,2
ABVAL PDDL* # MAGNITUDE OF R (+29 OR +27) 02D
ABVAL PDDL* # MAGNITUDE OF R (+29 OR +27) 02D
MUTABLE,1
PDVL VSQ # 1/MU (+34 OR +28) 04D
PDVL VSQ # 1/MU (+34 OR +28) 04D
VVEC
NORM DMPR # PUSH LIST AT 02D
X1
@ -445,12 +441,12 @@ TRANSANG STQ SETPD
DMP SRR*
02D
0 -3,1
BDSU # R V**/MU (+6)
BDSU # R V**/MU (+6)
D1/32
NORM PDDL
X1 # (2 - R V**/MU) (+6-N)
SR1R DDV # MAGNITUDE OF R (+30 OR +28)
SL* PUSH # R/(2 - R V**/MU) (+29 OR +27) 02D
SL* PUSH # R/(2 - R V**/MU) (+29 OR +27)02D
0 -5,1
SR1 SQRT
DMP
@ -475,9 +471,9 @@ TRANSANG STQ SETPD
# TPI SEARCH DISPLAY ROUTNE
P17 TC AVFLAGA # AVFLAG = CSM, SET TRACK + UPDATE FLAGS
P17 TC AVFLAGA # AVFLAG = CSM , SET TRACK + UPDATE FLAGS
TC P17.1
P77 TC AVFLAGP # AVFLAG = LEM, SET TRACK + UPDATE FLAGS
P77 TC AVFLAGP # AVFLAG = LEM , SET TRACK + UPDATE FLAGS
P17.1 TC P20FLGON # SET UPDATE FLAG
CAF V06N37 # DISPLAY TTPI TIME
TC VNP00H
@ -487,15 +483,15 @@ P17.1 TC P20FLGON # SET UPDATE FLAG
S17.1 # UPDATE STATE VECTORS TO TTPI
SET AXT,1
UPDATFLG
DEC 2 # DELTA H = 2 K POSITIVE, KFLAG OFF
DEC 2 # DELTA H = 2 K POSITIVE , KFLAG OFF
BOFF AXT,1
KFLAG
+2
DEC 1 # DELTA H = 1 K NEGATIVE, KFLAG ON
DEC 1 # DELTA H = 1 K NEGATIVE , KFLAG ON
# Page 560
SXA,1 EXIT
OPTION2
CAF V06N72 # DISPLAY PHI, DELTA H, SEARCH OPTION K
CAF V06N72 # DISPLAY PHI , DELTA H , SEARCH OPTION K
TC VNCOMP17
TC INTPRET
CLEAR SET
@ -519,9 +515,9 @@ P17.2 STCALL HPERMIN
S17.2
SET EXIT
UPDATFLG
P17.3 CAF V06N58 # DISPLAY DELTA VTPI, DELTA VTPF, AND H
P17.3 CAF V06N58 # DISPLAY DELTA VTPI , DELTA VTPF , AND H
TC VNCOMP17
CAF V06N55 # DISPLAY PERICENTER CODE AND CENTRAL ANG,
CAF V06N55 # DISPLAY PERICENTER CODE AND CENTRAL ANG.
TC BANKCALL
CADR GOFLASHR
TC GOTOP00H # TERMINATE PROGRAM
@ -554,4 +550,3 @@ ALARUMS SET EXIT
TC VNCOMP17
TC GOTOP00H # PROCEED ILLEGAL TERMINATE PROGRAM
V06N72 VN 0672