swh:1:snp:92f3f585b9ae79620ad8c41a332d6329b31fd381
Tip revision: a4a63bc20b80eae78970dbffa2ff02cebc6b61d7 authored by Mike Stewart on 24 December 2020, 18:51:12 UTC
Manche45R2: incorporated the R-2 potential model, which makes all checksums correct.
Manche45R2: incorporated the R-2 potential model, which makes all checksums correct.
Tip revision: a4a63bc
INTEGRATION_INITIALIZATION.agc
### FILE="Main.annotation"
## Copyright: Public domain.
## Filename: INTEGRATION_INITIALIZATION.agc
## Purpose: A module for revision 0 of BURST120 (Sunburst). It
## is part of the source code for the Lunar Module's
## (LM) Apollo Guidance Computer (AGC) for Apollo 5.
## Assembler: yaYUL
## Contact: Ron Burkey <info@sandroid.org>.
## Website: www.ibiblio.org/apollo/index.html
## Mod history: 2016-09-30 RSB Created draft version.
## 2016-10-29 MAS Transcribed.
## 2016-10-31 RSB Typos.
## 2016-12-06 RSB Comments proofed using octopus/ProoferComments,
## changes made.
## Page 766
# AVETOMID PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO A COASTING PHASE. THE ROUTINE INITIALIZES THE
# ORBITAL INTEGRATION PROGRAM AND RESCALES AND TRANSFORMS LEMS STATE VECTOR FROM THE STABLE MEMBER COORDINATE
# SYSTEM USED IN AVERAGEG TO THE REFERENCE SYSTEM USED IN ORBITAL INTEGRATION DURING COAST
# INPUT - LEM STATE VECTOR IN SM COORDINATE SYSTEM AND TIME
# RN, POSITION IN METERS SCALED AT 2(+24)
# VN, VELOCITY IN M/CSEC SCALED AT 2(+7)
# PIPTIME, TIME IN CSEC CORRESPONDING TO RN, VN
# OUTPUT - LEM STATE VECTOR IN REF. COORDINATE SYSTEM AND TIME
# RRECT AND RCV, POSITION IN KM SCALED AT 2(+14)
# VRECT AND VCV, VELOCITY IN 1/SQRT(KM) SCALED AT 2(-6)
# TET, TIME IN CSEC
# P-MEMORY (REFRRECT TO REFRRECT + 42)
# AVETOMID CALLING SEQUENCE
# L-2 EXTEND
# L-1 DCA (2CADR OF AVETOMID)
# L DXCH Z
# DELETE
# NORMAL EXIT
# AT L+1 OF CALLING SEQUENCE
BANK 07
EBANK= AMEMORY
AVETOMID DXCH AVMIDRTN
TC INTPRET
CALL # ORBITAL INTEGRATION INITIALIZATION
INITINT
VLOAD
ZEROVEC
STORE TDELTAV # ZERO POS DEVIATIONS
STORE TNUV # ZERO VEL DEVIATIONS
STORE TC # ALSO CLEARS TET AND XKEP
SMTOREF AXT,1 SSP # SET UP TIX LOOP FOR STATE VEC TRANSFORM
12D
S1
6
SMTOREF1 VLOAD* VXSC* # TRANSFORM STATE FROM SM TO REF SYSTEM
RN +12D,1
SCLRAVMD +12D,1
VXM VSL2
REFSMMAT
STORE RRECT +12D,1
STORE RCV +12D,1
TIX,1 EXIT
SMTOREF1
EXTEND
## Page 767
DCA PIPTIME # SAVE PIPTIME
DXCH TET # PIPTIME UN TET
TC MOVETEMP # TRANSFER STATE AND INIT. DATA TO P-MEM
DXCH AVMIDRTN
DXCH Z
PIPEBANK OCT 02400 # EBANK 05
TESTLOOP EXIT # FOR DUMP.
TC INTPRET
DLOAD BOV
TDEC
+1 # CLEAR OVERFLOW INDICATOR
DSU RTB
TET
SGNAGREE
SL DDV
11D
EARTHTAB +9D
STORE DT/2
BOV ABS
GETMAXDT
DSU BMN
DT/2MIN
DECISION # INTEGRATION FINISHED-DECIDE WHERE TO GO
DAD DSU
DT/2MIN
DT/2MAX
BMN
TIMESTEP
USEMAXDT DLOAD SIGN
DT/2MAX
DT/2
STCALL DT/2
TIMESTEP
GETMAXDT RTB
SIGNMPAC
STCALL DT/2
USEMAXDT
SCALER DEC 14
SCALDELT DEC 4
SCALEDT DEC 18
28SECS 2DEC 2800
270SECS 2DEC 27000
## Page 768
2SECS 2DEC 200
30SECS 2DEC 3000 # USED ONLY FOR LOGIC IN IGN+28 * 206 ONLY
ZEROVEC 2DEC 0
2DEC 0
2DEC 0
# THE ORDER OF THE SIX FOLLOWING CONSTANTS CANNOT BE CHANGED
SCLRAVMD 2DEC .512 # METERS TO KM 1/2(1024/1000)
DT/2MIN 2DEC .00003
SCLRMDAV 2DEC 1000 B-10 # KM TO METERS
SCLVAVMD 2DEC .64876819 # METERS/CSEC TO 1/SQR(KM)
DT/2MAX 2DEC .65027077 B-1 # 270 SEC MAX TIME STEP
SCLVMDAV 2DEC .7706913 # 1/SQR(KM) TO METERS/CSEC
## Page 769
# STATEINT IS CALLED UP UNDER A JOB EVERY 539 SECONDS DURING A COASTING PHASE BY THE MISSION SCHEDULING
# MAINTENANCE ROUTINE TO MAINTAIN THE LEMS STATE VECTOR WITHIN TWO INTEGRATION STEPS (540 SECONDS) OF THE CURRENT
# TIME (TIME2). THE ROUTINE COMPARES TIME2 WITH TET (THAT TIME CORRESPONDING TO THE STATE VECTOR IN STORAGE).
# IF TET LAGS BY 270 SECONDS OR MORE, THE ORBITAL INTEGRATION PROGRAM IS CALLED UP AND THE STATE IS UPDATED TO
# TIME2. IF TET DOES NOT LAG, STATEINT IS TERMINATED BY ENDOFJOB.
# INPUT-STATEINT ASSUMES THAT THE COASTING IN PROGRESS WAS INITIALIZED BY
# THE AVETOMID ROUTINE.
STATEINT EXTEND
DCA TIME2 # GET CURRENT TIME IN TDEC
DXCH TDEC
TC FLAG2UP # SET ORBITAL INTEGRATION FLAG
OCT 100
TC MOVEPERM # BRING STATE FROM PMEMORY
TC INTPRET
DLOAD DSU # FORM TDEC-TET
TDEC
TET
BMN DSU # IS STATE LAGGING
NOINT # NO, TET GREATER THAN TDEC
270SECS
BMN SSP
NOINT # NO, TET GREATER THAN TDEC-270 SECS.
MEASMODE # BRING TO CURRENT TIME-SET MEASMODE (-1)
DEC -1
CALL
INITINT # INITIALIZE BRANCH REGS
GOTO
TESTLOOP # START INTEGRATION FROM TET TO TDEC
NOINT EXIT # TEMPORARY STATEINT EXIT
TCF INTOUT # NO INTEGRATION, TERMINATE THIS JOB
## Page 770
# MOVETEMP TRANSFERS RRECT TO RRECT +42 FROM A-MEMORY TO P-MEMORY
# CALLING SEQUENCE
# L TC MOVETEMP
# NORMAL EXIT AT L+1
MOVETEMP EXTEND
QXCH PBODY # TEMP. HERE-PBODY INITIALIZED BEFORE INT
CAF FORTYTWO
MTEMPLUP TS DIFEQCNT # INITIALIZE INDEX
INDEX DIFEQCNT
CA RRECT # PICK UP RRECT TO RRECT +42 FROM A-MEMORY
INDEX DIFEQCNT
TS REFRRECT # STORE IN REFRRECT TO REFRRECT +42 IN P-M
CCS DIFEQCNT # IS TRANSFER COMPLETE
TCF MTEMPLUP # NO --- LOOP AGAIN.
TC PBODY
# MOVEPERM TRANSFERS REFRRECT TO REFRRECT +42 FROM PMEMORY TO A-MEMORY
MOVEPERM EXTEND
QXCH PBODY # TEMP. HERE-PBODY INIT. BEFORE INTEGRATIO
CAF FORTYTWO
MPERMLUP TS DIFEQCNT
INDEX DIFEQCNT
CA REFRRECT
INDEX DIFEQCNT
TS RRECT
CCS DIFEQCNT
TCF MPERMLUP
TC PBODY
INITINT SSP SSP
PBODY # EARTHTAB INTO PBOAY
EARTHTAB
STEPEXIT # TESTLOOP INTO STEPEXIT
TESTLOOP
CLEAR CLEAR
MIDFLAG # ZERO ON 206
MOONFLAG # ZERO ON 206
CLEAR RVQ
WMATFLAG # W-MATRIX NOT USED ON 206
## Page 771
# MIDTOAVE PERFORMS THE STATE VECTOR TRANSITION FROM A COASTING PHASE
# USING THE ORBITAL INTEGRATION PROGRAMS TO A TRUSTING PHASE WHICH USES
# AVERAGEG INTEGRATION. THE ROUTINE RESCALES AND TRANSFORMS THE STATE
# VECTOR AT TIGN-30, TIGN-2 AND TIGN FROM REFERENCE COORDINATES TO
# STABLE MEMBER COORDINATES AS DIRECTED BY THE DECISION ROUTINE
# INPUT-MIDTOAVE ASSUMES THAT THE COASTING INTEGRATION WAS INITIALIZED
# BY THE AVETOMID ROUTINE, STATE IN REF. COORD. IN PMEMORY.
# RRECT, RCV-POSITION IN KM SCALED AT 2(+14)
# VRECT, VCV- VELOCITY IN 1/SQRT(KM) SCALED AT 2(-6)
# TET, TIME IN CSECS.
# OUTPUT-STATE IN STABLE MEMBER COORDINATES
# AT TIGN-30
# RAVEGON, POSITION IN METERS SCALED IN 2(+24)
# VAVEGON, VELOCITY IN METERS/CSEC SCALED AT 2(+7)
# AT TIGN-2
# RIG-2SEC, POSITION IN METERS SCALED AT 2(+24)
# AT TIGN
# RIGNTION, POSITION IN METERS SCALED AT 2(+24)
# VIGNTION, VELOCITY IN METERS/CSEC SCALED AT 2(+7)
# CALLING SEQUENCE
# (COMPUTE TDEC=TIME OF IGNITION-30 SECS.)
# L-2 EXTEND
# L-1 DCA (2CADR OF MIDTOAVE)
# L DXCH Z
# NORMAL EXIT
# L+1 OF CALLING SEQUENCE
RVUPDATE DXCH AVMIDRTN
CAF BIT1 # SET MEASMODE TO +1 TO INTEGRATE STATE
TCF MIDTOAVE +2 # TO TDEC AND STORED IN RIGNTION ONLY
MIDTOAVE DXCH AVMIDRTN
CA NEG0
TS MEASMODE # SET MEASMODE (-0) TO INTEGRATE TO IG-30
TC FLAG2UP # SET ORBITAL INTEGRATION FLAG
OCT 100
TC MOVEPERM # BRING STATE FROM PMEMORY
TC INTPRET
CALL # INITIALIZE ORBITAL INTEGRATION REGS
INITINT
GOTO
TESTLOOP # GO TO ORBITAL INTEGRATION
## Page 772
# THE DECISION ROUTINE DETERMINES THE ACTION TO BE TAKEN AFTER ORBITAL
# INTEGRATION HAS UPDATED THE STATE VECTOR TO THE TIME INDICATED
# BY TDEC. THE ACTION TAKEN IS BASED ON THE CONTENTS OF MEASMODE,
# C(MEASMODE)=(-0), STATE INTEGRATED (REF. COORD.) TO TIGN-30, SET
# MEASMODE=(+0), SET TDEC=TIGN-2SECS.
# C(MEASMODE)=(+0), POSITION VECTOR INTEGRATED TO TIGN-2, SET MEASMODE=,+1
# SET TDEC=TIGN
# C(MEASMODE)=(+1), STATE INTEGRATED TO TIGN, TRANSFORM STATE FROM REF TO
# SM COORD. SYSTEM AND RETURN TO MISSION PROGRAM
# C(MEASMODE)=(-1), STATE INTEGRATED TO TDEC DURING COAST PHASE, TERMINATE
# STATEINT JOB INITIATED BY MISSION SCHEDULING PACKAGE
DECISION EXIT
CCS MEASMODE
TCF +3 # STATE IN REF COOR AT IGN
TCF +2 # STATE IN REF COORD AT IGN-2
TCF COASTINT # COAST INTEGRATION STEP COMPLETE
TC INTPRET
CALL
RECTIFY # RECTIFY AT IGN-30,IGN-2,IGN
EXIT
CCS MEASMODE
TCF REFTOSM # STATE AT TIGN-FINISH UP MIDTOAVE
TCF IGN-2SEC # POS AT TIGN-2, DO TIGN NEXT
FORTYTWO DEC 41
TCF AVEGON # STATE AT TIGN-30, DO TIGN-2 NEXT
AVEGON TC INTPRET
AXT,1 SSP # SET LOOP
12D
S1
6
SPECPLS1 VLOAD* VXSC*
RRECT +12D,1
SCLRMDAV +12D,1 # REF TO SM SCALE FACTOR
MXV VSL1
REFSMMAT
STORE RAVEGON +12D,1
TIX,1 DLOAD
SPECPLS1
TDEC # TDEC NOW=TIGN-30
STORE PIPTIME # SAVE TIGN-30 IN PIPTIME FOR AVERAGEG
STORE TAVEGON # TIME TIG-30 FOR DWNLINK IN NORMLIZE
DAD
28SECS # TDEC + 28SECS
STORE TDEC # TDEC SET TIGN-2
SSP GOTO
MEASMODE # SET MEASMODE=(+0)
## Page 773
0
TESTLOOP # GO INTEGRATE STATE TO IGN-2
IGN-2SEC TC INTPRET
VLOAD VXSC # TRANSFORM POS AT IGN-2 FROM REF TO SM
RRECT
SCLRMDAV
MXV VSL1
REFSMMAT
STODL RIG-2SEC # POS IN SM COORD. AT IGN-2
TDEC
BONCLR DAD
INTEGRSW # IF SET, FINAL TESTLOOP GIVES IGN+28 STAT
IGN+28 # INSTEAD OF IGN STATE - FOR MP 4 ONLY.
2SECS
TDECSTOR STORE TDEC
SSP GOTO
MEASMODE # SET MEASMODE=(+1)
1
TESTLOOP # GO INTEGRATE STATE TO IGN OR IGN+28
IGN+28 DAD GOTO
30SECS # FOR MP4. REMOVE AFTER FLIGHT 206.
TDECSTOR
REFTOSM TC FLAG2DWN # REMOVE ORBITAL INTEGRATION GLAG
OCT 100
TC INTPRET
AXT,1 SSP # SET UP TIX LOOP
12D # 12 IN X1
S1 # 6 IN S1
6
REFTOSM1 VLOAD* VXSC* # TRANSFORM STATE AT TIGN FROM REF TO SM
RRECT +12D,1
SCLRMDAV +12D,1 # REF TO SM SCALE FACTOR
MXV VSL1
REFSMMAT
STORE RIGNTION +12D,1 # STATE AT TIGN IN SM COORDINATES
TIX,1 EXIT
REFTOSM1
EXTEND # PLAY SAFE WITH BASIC********************
DCA TET # ****************************************
DXCH TIGNTION # STATE TIME FOR DOWNLINK IN VPATCHER
DXCH AVMIDRTN
DXCH Z
# THE COASTINT ROUTINE TERMINATES THE ORBITAL INTEGRATION JOB SET BY
# MISSION SCHEDULING ROUTINE EVERY 539 SECONDS DURING COASTING PHASES.
# THE ROUTINE TRANSFERS THE STATE VECTOR AND ALL OTHER ORBITAL INTEGRATION
# QUANTITIES TO P-MEMORY. IT FORMS A TOTAL STATE VECTOR AND TRANSFORMS IT
# TO STABLE MEMBER COORDINATES AND STORES IT WITH TIME IN RN, VN AND
## Page 774
# STATIME FOR DOWNLINK. THE ROUTINE THEN REMOVES THE INTEGRATION FLAG
# TO ALLOW GROUND UPDATE OF THE STATE VECTOR AND DOES ENDOFJOB.
COASTINT TC PHASCHNG
OCT 05021
OCT 05000
TC MOVETEMP
UPDATINT TC PHASCHNG
OCT 05021
OCT 05000
TC INTPRET
VLOAD VSR8 # FORM TOTAL STATE VECTOR
DELTAV
VSR2 VAD
REFRCV
STOVL RRECT
NUV
VSR8 VAD
REFVCV
STORE VRECT # TOTAL VEL. VECTOR
AXT,1 SSP # SET TIX LOOP TO TRANSFORM STATE TO SM
12D
S1
6
TRANTOSM VLOAD* VXSC* # TRANSFORM STATE AND RE-STORE IN RRECT
RRECT +12D,1
SCLRMDAV +12D,1
MXV VSL1
REFSMMAT
STORE RRECT +12D,1 # STATE IN SM SYSTEM
TIX,1
TRANTOSM
EXIT
INHINT # INHIBIT INTERUPT TO STORE STATE IN RN
CAF ELEVEN # INITIALIZE INDEX TO DEC 11
STATORN TS RUPTREG1
INDEX RUPTREG1
CA RRECT # PICK RRECT + NEXT 11 REGS
INDEX RUPTREG1
TS RN # JAM IN RN TO RN+11 FOR DOWNLINK
CCS RUPTREG1
TCF STATORN
EXTEND
DCA TE # GET STATE TIME
DXCH STATIME
## Page 775
RELINT # STATE AND TIME IN DOWNLINK REGS
INTOUT TC FLAG2DWN # REMOVE ORBITAL INTEGRATION FLAG
OCT 100
TC PHASCHNG
OCT 00001
TC ENDOFJOB