Proof INTEGRATION_INITIALIZATION (#509)

* Lines 0-115

* 116-363

* 363-800

* 800-1175
This commit is contained in:
Dan Foad 2019-12-05 16:59:12 +00:00 committed by James Harris
parent 10bb1a6b95
commit 060e8fd77d

View File

@ -37,29 +37,29 @@
# FROM A USER'S POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION # FROM A USER'S POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
# PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
# OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
# TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUTSIDE # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
# THE LUNAR SPHERE OF INFLUENCE. # SIDE THE LUNAR SPHERE OF INFLUENCE.
# #
# IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
# WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
# INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
# CALL TC INTSTALL. # CALL TO INTSTALL.
# #
# WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
# INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
# BOTH THE LM'S POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM. # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
# THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
# THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL. # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
# #
# USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
# IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
# TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC "INTEGRATION" THE USER MAY STILL USE ZERO # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
# AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME. # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
# #
# 2.0 CENTRAL DESCRIPTION # 2.0 CENTRAL DESCRIPTION
# ----------------------- # -----------------------
# #
# THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS -- # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS---
# 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
# 2) INTEGRATES THE W-MATRIX # 2) INTEGRATES THE W-MATRIX
# 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
@ -83,22 +83,22 @@
# SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.) # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
# #
# Page 1310 # Page 1310
# APPENDIX B OF THE USERS' GUIDE LISTS THE STATE VECTOR QUANTITIES. # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
# #
# 2.1 RESTARTS # 2.1 RESTARTS
# #
# PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
# INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
# (I.E., GROUP2) WINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
# INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
# PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION WHOULD ENSURE THAT IF PHASE CHANGING IS DONE # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
# THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST. # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
# THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART. # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
# #
# 2.2 SCALING # 2.2 SCALING
# #
# THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
# APPENDIX B OF THE USERS' GUIDE. THE SCALING OF THE OUTPUT POSITION VECTOR DEPENDS ON THE ORIGIN OF THE COORDINATE # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTORDEPENDS ON THE ORIGIN OF THE COORDINATE
# SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
# MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
# DIFFERENT SCALING. # DIFFERENT SCALING.
@ -107,55 +107,56 @@
# 3.0 INPUT/OUTPUT # 3.0 INPUT/OUTPUT
# ---------------- # ----------------
# #
# PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
# APPENDIX B OF THE USERS' GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION). # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
# FOR INTEGRVS, THE RCV,VCV, TET OR THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG # FOR INTEGRVS, THE RCV,VCV, TET OR THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
# #
# FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET --- # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
#
# EARTH MOON # EARTH MOON
# 29 27 # 29 27
# RRECTCSM(LEM) RECTIFIED POSITION VECTOR METERS 2 2 # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
# #
# 7 5 # 7 5
# VRECTCSM(LEM) RECTIFIED VELOCITY VECTOR M/CSEC 2 2 # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
# #
# 28 28 # 28 28
# TETCSM(LEM) TIME STATE VECTOR IS VALID CSEC 2 2 # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
# CUSTOMARILY 0, BUT NOTE LUNAR # CUSTOMARILY 0, BUT NOTE LUNAR
# ORBIT DEPENDENCE ON REAL TIME. # ORBIT DEPENDENCE ON REAL TIME.
# #
# 22 18 # 22 18
# DELTAVCSM(LEM) POSITION DEVIATION METERS 2 2 # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
# 0 IF TCCSM(LEM) = 0 # 0 IF TCCSM(LEM) = 0
# #
# 3 -1 # 3 -1
# NUVCSM(LEM) VELOCITY DEVIATION M/CSEC 2 2 # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
# 0 IF TCCSM(LEM) = 0 # 0 IF TCCSM(LEM) = 0
# Page 1311 # Page 1311
# 29 27 # 29 27
# RCVSM(LEM) CONIC POSITION METERS 2 2 # RCVCSM(LEM) - CONIC POSITION METERS 2 2
# EQUALS RRECTCSM(LEM) IF # EQUALS RRECTCSM(LEM) IF
# TCCSM(LEM) = 0 # TCCSM(LEM) = 0
# #
# 7 5 # 7 5
# VCVCSM(LEM) CONIC VELOCITY M/CSEC 2 2 # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
# EQUALS VRECTCSM(LEM) IF # EQUALS VRECTCSM(LEM) IF
# TCCSM(LEM) = 0 # TCCSM(LEM) = 0
# #
# 28 28 # 28 28
# TCCSM(LEM) TIME SINCE RECTIFICATION CSECS 2 2 # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
# CUSTOMARILY 0 # CUSTOMARILY 0
# #
# 1/2 17 16 # 1/2 17 16
# XKEPCSM(LEM) RDOT OF KEPLER'S EQUATION M 2 2 # XKEPCSM(LEM) - RDOT OF KEPLER'S EQUATION M 2 2
# 0 IF TCCSM(LEM) = 0 # 0 IF TCCSM(LEM) = 0
# #
# CMOONFLG PERMANENT FLAGS CORRESPONDING 0 0 # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
# CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1 # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
# LMOONFLG C = CSM, L = LM 0 0 # LMOONFLG C = CSM, L = LM 0 0
# LMIDFLG 0,1 0,1 # LMIDFLG 0,1 0,1
# #
# SURFFLAG LUNAR SURFACE FLAG 0,1 0,1 # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
# #
# IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
# SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB- # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
@ -166,26 +167,21 @@
# EARTH MOON # EARTH MOON
# 29 29 # 29 29
# 0D RATT POSITION METERS 2 2 # 0D RATT POSITION METERS 2 2
#
# 7 7 # 7 7
# 6D VATT VELOCITY M/CSEC 2 2 # 6D VATT VELOCITY M/CSEC 2 2
#
# 28 28 # 28 28
# 12D TAT TIME 2 2 # 12D TAT TIME 2 2
#
# 29 27 # 29 27
# 14D RATT1 POSITION METERS 2 2 # 14D RATT1 POSITION METERS 2 2
#
# 7 5 # 7 5
# 20D VATT1 VELOCITY M/CSEC 2 2 # 20D VATT1 VELOCITY M/CSEC 2 2
#
# 3 2 36 30 # 3 2 36 30
# 26D MU(P) MU M /CS 2 2 # 26D MU(P) MU M /CS 2 2
# #
# X1 MUTABLE ENTRY -2 -10D # X1 MUTABLE ENTRY -2 -10D
# #
# X2 COORDINT # X2 COORDINT
# X2 COORDINATE SYSTEM ORIGIN 0 2 # X2 COORDINATE SYSTEM ORIGEN 0 2
# (THIS, NOT MOONFLAG, SHOULD BE # (THIS, NOT MOONFLAG, SHOULD BE
# Page 1312 # Page 1312
# USED TO DETERMINE ORIGIN.) # USED TO DETERMINE ORIGIN.)
@ -206,9 +202,9 @@
# INPUT 28 # INPUT 28
# TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2 # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
# OUTPUT # OUTPUT
# THE DATA LISTED IN SECTION 3.2 PLUS # THE DATA LISTED IN SECTION 3.0 PLUS
# RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
# BODY... METERS B-29 ONLY IF MIDFLAG = DIM0FLAG = 1 # BODY... METERS B-29 ONLY IF MIDFLAG = DIMOFLAG = 1
# B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
# L-X STORE TIME IN PUSH LIST (TDEC1) # L-X STORE TIME IN PUSH LIST (TDEC1)
# L CALL # L CALL
@ -252,7 +248,7 @@
# L-5 VINTFLAG 1=CSM, 0=LM # L-5 VINTFLAG 1=CSM, 0=LM
# L-4 INTYPFLAG 1=CONIC, 0=PRECISION # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
# L-3 SET(CLEAR) SET(CLEAR) # L-3 SET(CLEAR) SET(CLEAR)
# L-2 DIM0FLAG 1=W-MATRIX, 0=NO W-MATRIX # L-2 DIMOFLAG 1=W-MATRIX, 0=NO W-MATRIX
# L-1 D6OR9FLG 1=9X9, 0=6X6 # L-1 D6OR9FLG 1=9X9, 0=6X6
# L SET DLOAD # L SET DLOAD
# L+1 STATEFLG DESIRE PERMANENT UPDATE # L+1 STATEFLG DESIRE PERMANENT UPDATE
@ -260,9 +256,9 @@
# L+3 STCALL RFINAL # L+3 STCALL RFINAL
# L+4 INTEGRV # L+4 INTEGRV
# L CALL NORMAL USE-- WILL UPDATE STATE # L CALL NORMAL USE-- WILL UPDATE STATE
# L+1 INTEGRV VECTOR IF DIM0FLAG=1. (STATEFLG IS # L+1 INTEGRV VECTOR IF DIMOFLAG=1.(STATEFLG IS
# L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
# IT USED.) # IT IS USED.)
# INPUT # INPUT
# TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28 # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
# OUTPUT # OUTPUT
@ -356,7 +352,7 @@ MOVEACSM TC SETBANK
TS RRECTCSM TS RRECTCSM
CCS DIFEQCNT # IS TRANSFER COMPLETE CCS DIFEQCNT # IS TRANSFER COMPLETE
TCF MOVEACSM +1 # NO-LOOP TCF MOVEACSM +1 # NO-LOOP
TC DANZIG # COMPLETE -- RETURN TC DANZIG # COMPLETE- RETURN
# PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41 # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
# #
@ -475,15 +471,15 @@ INTBANK BBCON INTEGRV
# SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
# APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION. # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
# #
# CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1. # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
# ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE. # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
# THE PERMANENT STATE VECTOR IS NOT UPDATED. # THE PERMANENT STATE VECTOR IS NOT UPDATED.
# CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLER'S METHOD TO THE TIME INDICATED IN TDEC1. # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
# NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
# STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLER'S EQUATION. # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
# #
# THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID. # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
# SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
# CSMPREC CSMCONIC LEMPREC LEMCONIC # CSMPREC CSMCONIC LEMPREC LEMCONIC
# VINTFLAG SET SET CLEAR CLEAR # VINTFLAG SET SET CLEAR CLEAR
# INTYPFLG CLEAR SET CLEAR SET # INTYPFLG CLEAR SET CLEAR SET
@ -497,12 +493,13 @@ INTBANK BBCON INTEGRV
# #
# NORMAL EXIT TO L+2 # NORMAL EXIT TO L+2
# #
#
# SUBROUTINES CALLED # SUBROUTINES CALLED
# INTEGRV1 # INTEGRV1
# PRECOUT FOR CSMPREC AND LEMPREC # PRECOUT FOR CSMPREC AND LEMPREC
# CONICOUT FOR CSMCONIC AND LEMCONIC # CONICOUT FOR CSMCONIC AND LEMCONIC
# #
# OUTPUT -- SEE PAGE 2 OF THIS LOG SECTION # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
# #
# INPUT # INPUT
# TDEC1 TIME TO INTEGRATE TO . CSECS B-28 # TDEC1 TIME TO INTEGRATE TO . CSECS B-28
@ -577,13 +574,11 @@ INTEGRVS SET SSP
# #
# THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
# SETTING ANY FLAGS. # SETTING ANY FLAGS.
#
# THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
# VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS) # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
# INTYPFLG # INTYPFLG
# DIM0FLAG # DIM0FLAG
# D6OR9FLG # D6OR9FLG
#
# CALLING SEQUENCE # CALLING SEQUENCE
# L-X CALL # L-X CALL
# L-Y INTSTALL # L-Y INTSTALL
@ -591,7 +586,6 @@ INTEGRVS SET SSP
# AND DIM0FLAG IS CLEAR. # AND DIM0FLAG IS CLEAR.
# L CALL # L CALL
# L+1 INTEGRV # L+1 INTEGRV
#
# INITIALIZATION # INITIALIZATION
# FLAGS AS ABOVE # FLAGS AS ABOVE
# STORE TIME TO INTEGRATE TO IN TDEC1 # STORE TIME TO INTEGRATE TO IN TDEC1
@ -627,7 +621,7 @@ ALOADED DLOAD
BANK BANK
A-PCHK BOF CALL A-PCHK BOF CALL
MIDFLAG MIDFLAG
ANDOUT # DON'T MAKE ORIGIN CHANGE CHECK ANDOUT # DONT MAKE ORIGIN CHANGE CHECK
CHKSWTCH CHKSWTCH
BPL CALL BPL CALL
ANDOUT # NO ORIGIN CHANGE ANDOUT # NO ORIGIN CHANGE
@ -790,7 +784,7 @@ P00HCHK DLOAD ABS
INTEXIT INTEXIT
PDDL SR4 PDDL SR4
DT/2 # IS 4(DT) LS(TDEC - TET) DT/2 # IS 4(DT) LS(TDEC - TET)
SR2R BDSU SR2R BDSU # NO
BMN GOTO BMN GOTO
INTEXIT INTEXIT
TIMESTEP TIMESTEP
@ -820,7 +814,7 @@ INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
INDEX FIXLOC INDEX FIXLOC
CA QPRET CA QPRET
TS TBASE2 # YES, DON'T RESTART WITH SOMEONE ELSE'S Q TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
TC PHASCHNG TC PHASCHNG
OCT 04022 OCT 04022
@ -832,7 +826,7 @@ INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
CAF REINTBIT CAF REINTBIT
MASK RASFLAG MASK RASFLAG
EXTEND EXTEND
BZF GOBAC # DON'T INTWAKE IF WE CAME HERE VIA RESTART BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
INTWAKE1 CAF ZERO INTWAKE1 CAF ZERO
WAKE TS STALTEM # INDEX OF ANY STALL USER WAKE TS STALTEM # INDEX OF ANY STALL USER
@ -877,10 +871,10 @@ INTBITAB OCT 20100
# AVETOMID # AVETOMID
# #
# THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
# PHASE BY INITIALIZING THIS VEHICLE'S PERMANENT STATE VECTOR WITH THE # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
# VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME. # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
# #
# BEFORE THIS IS DONE THE W-MATRIX, IF IT'S VALID (OR WFLAG OR RENDWFLT IS # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLT IS
# SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR. # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
# #
# IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME. # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
@ -897,9 +891,9 @@ AVETOMID STQ BON
INT/W # W-MATRIX VALID ,GO INTEGRATE IT INT/W # W-MATRIX VALID ,GO INTEGRATE IT
BON BON
ORBWFLAG ORBWFLAG
INT/W # W-MATRIX VALID, GO INTEGRATE IT. INT/W # W-MATRIX VALID ,GO INTEGRATE IT
SETCOAST AXT,2 CALL # NOW MOVE PROPERLY SCALED RN,UN AS WELL AS SETCOAST AXT,2 CALL # NOW MOVE PROPERLY SCALED RN,VN AND
2 # PIPTIME TO INTEGRATION ERASABLES. 2 # PIPTIME TO INTEGRATION ERASABLES.
INTSTALL INTSTALL
BON AXT,2 BON AXT,2
@ -945,7 +939,7 @@ INT/W DLOAD CALL
INTSTALL INTSTALL
SET SET SET SET
DIM0FLAG # DO W-MATRIX DIM0FLAG # DO W-MATRIX
AVEMIDSW # SO WON'T CLOBBER RN,VN,PIPTIME AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
CLEAR SET CLEAR SET
D6OR9FLG D6OR9FLG
VINTFLAG VINTFLAG
@ -959,27 +953,27 @@ INT/W DLOAD CALL
# #
# THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1. # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
# IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
# TIME (SEE TIMEDELT.....BASED ON THE COMPUTATION TIME FOR ONE TIME STEP) # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
# IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
# IS DONE TO THE CURRENT TIME. # IS DONE AS IT IS FOR MIDTOAV2.
# RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE. # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
# #
# IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
# TO THE RETURN ADDRESS. # TO THE RETURN ADDRESS.
# #
# IN EITHER CASE, BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRANSFERRED # IN EITHER CASE , BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
# FROM R,VATT TO R,VN1 -- PIPTIME1 IS SET TO THE FINISHING INTEGRATION # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
# TIME AND MPAC IS SET TO THE DELTA TIME -- # TION TIME AND MPAC IS SET TO THE DELTA TIME---
# TAT MINUS CURRENT TIME # TAT MINUS CURRENT TIME.
# MIDTOAV2 # MIDTOAV2
# #
# THIS ROUTINE INTEGRATES THIS VEHICLE'S STATE VECTOR TO THE CURRENT TIME PLUS # THIS ROUTINE INTEGRATES THE CSM STATE VECTOR TO CURRENT TIME PLUS
# INCREMENTS OF TIMEDELT SUCH THAT THE DIFFERENCE BETWEEN CURRENT TIME # INCREMENTS OF TIMEDELT SUCH THAT THE DIFFERENCE BETWEEN CURRENT TIME
# AND THE STATE VECTOR TIME AT THE END OF THE LAST STEP IS AT LEAST 5.6 # AND THE STATE VECTOR TIME AT THE END OF THE LAST STEP IS AT LEAST 5.6
# SECS. # SECS.
# NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
# ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1 -- PIPTIME1 -- AND MPAC DONE # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
SETLOC INTINIT SETLOC INTINIT
BANK BANK
@ -999,13 +993,13 @@ MIDTOAV1 STQ CALL
SET RTB SET RTB
MID1FLAG MID1FLAG
LOADTIME LOADTIME
DAD BDSU # INITIAL CHECK, IS TDEC1 IN THE FUTURE DAD BDSU # INITIAL CHECK.IS TDEC1 IN THE FUTURE.
TIMEDELT TIMEDELT
TDEC1 TDEC1
BPL CALL BPL CALL
ENTMID1 ENTMID1
# Page 1330 # Page 1330
NOTIME # NO, SET ALARM, SWITCH TO MIDTOAV2 NOTIME # NO SET ALARM.SWITCH TO MIDTOAV2
ENTMID2 RTB DAD ENTMID2 RTB DAD
LOADTIME LOADTIME
@ -1077,9 +1071,9 @@ MID2 DLOAD DSU
TET TET
DSU BPL DSU BPL
5.6SECS 5.6SECS
A-PCHK # YES. GET OUT. A-PCHK # YES,GET OUT.
DLOAD DAD # NO. ADD TIMEDELT TO T-TO-ADD AND TRY DLOAD DAD # NO,ADD TIMEDELT TO T-TO-ADD AND TRY
T-TO-ADD # AGAIN. T-TO-ADD # AGAIN.
TIMEDELT TIMEDELT
STCALL T-TO-ADD STCALL T-TO-ADD
@ -1121,17 +1115,17 @@ INTWAKEU RELINT
UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP. UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
INTWAKUP INTWAKUP
VLOAD # MOVE PRECT(6) AND VRECT(6) INTO VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
RRECT # RCV(6) AND VCV(6) RESPECTIVELY. RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
STOVL RCV STOVL RCV
VRECT # NOW GO TO `RECTIFY +13D' TO VRECT # NOW GO TO 'RECTIFY +13D' TO
CALL # STORE VRECT INTO VCV AND ZERO OUT CALL # STORE VRECT INTO VCV AND ZERO OUT
RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2), AND XKEP(2) RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
SLOAD ABS # COMPARE ABSOLUTE VALUE OF `UPSVFLAG' SLOAD ABS # COMPARE ABSOLUTE VALUE OF 'UPSVFLAG'
UPSVFLAG # TO `UPDATE MOON STATE VECTOR CODE' UPSVFLAG # TO 'UPDATE MOON STATE VECTOR CODE'
DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
INTWAKEM # SPHERE OF INFLUENCE........ INTWAKEM # SPHERE OF INFLUENCE.........
AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE. AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
DEC 0 DEC 0
MOONFLAG MOONFLAG
@ -1156,11 +1150,11 @@ INTWAKLM CALL # UPDATE LM STATE VECTOR
INTWAKEX CLEAR INTWAKEX CLEAR
RENDWFLG RENDWFLG
INTWAKUP SSP CALL # REMOVE `UPDATE STATE VECTOR INDICATOR' INTWAKUP SSP CALL # REMOVE :UPDATE STATE VECTOR INDICATOR:
# Page 1333 # Page 1333
UPSVFLAG UPSVFLAG
0 0
INTWAKE0 # RELEASE `GRAB' OF ORBIT INTEG. INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
EXIT EXIT
TC PHASCHNG TC PHASCHNG
@ -1178,5 +1172,3 @@ GRP2PC STQ EXIT
GOTO GOTO
GRP2SVQ GRP2SVQ