Source Code
These source-code files derive from a printout of Luminary 210 (Apollo 15-17
Lunar Module guidance computer program), from the personal library of
original AGC developer Don Eyles, digitally photographed at archive.org,
financially sponsored by Jim Lawton, and transcribed to source code by a
team of volunteers. This colorized, syntax-highlighted form was created
by assembling that transcribed source code. Note that the full page images
are available on the
Virtual AGC project page at archive.org, while reduced-size images
are presented at the VirtualAGC project website. Report or fix any
transcription errors at
the Virtual AGC project code repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 210 OF AGC PROGRAM LUMINARY BY NASA 2021112-161 17:11 MAR. 19,1971Note that the date is the date of the printout, not the date of the program revision. |
051790,000002: ## Copyright: Public domain.
051791,000003: ## Filename: INTEGRATION_INITIALIZATION.agc
051792,000004: ## Purpose: A section of Luminary revision 210.
051793,000005: ## It is part of the source code for the Lunar Module's (LM)
051794,000006: ## Apollo Guidance Computer (AGC) for Apollo 15-17.
051795,000007: ## This file is intended to be a faithful transcription, except
051796,000008: ## that the code format has been changed to conform to the
051797,000009: ## requirements of the yaYUL assembler rather than the
051798,000010: ## original YUL assembler.
051799,000011: ## Reference: pp. 1202-1224
051800,000012: ## Assembler: yaYUL
051801,000013: ## Contact: Ron Burkey <info@sandroid.org>.
051802,000014: ## Website: www.ibiblio.org/apollo/index.html
051803,000015: ## Mod history: 2016-11-17 JL Created from Luminary131 version.
051804,000016: ## 2016-12-1x HG Transcribed
051805,000017: ## 2016-12-26 RSB Comment-text proofed using ProoferComments
051806,000018: ## and corrected errors found.
051807,000019: ## 2017-03-13 RSB Comment-text fixes noted in proofing Luminary 116.
051808,000020: ## 2017-03-15 RSB Comment-text fixes identified in 5-way
051809,000021: ## side-by-side diff of Luminary 69/99/116/131/210.
051810,000022: ## 2017-08-19 MAS Fixed comment errors found transcribing Zerlina 56.
051811,000023:
Page 1202 |
051813,000025: # 1.0 INTRODUCTION
051814,000026: # ----------------
051815,000027:
051816,000028: # FROM A USERS POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
051817,000029: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
051818,000030: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
051819,000031: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
051820,000032: # SIDE THE LUNAR SPHERE OF INFLUENCE.
051821,000033:
051822,000034: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
051823,000035: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
051824,000036: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
051825,000037: # CALL TC INTSTALL.
051826,000038:
051827,000039: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
051828,000040: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
051829,000041: # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
051830,000042: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
051831,000043: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
051832,000044:
051833,000045: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
051834,000046: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
051835,000047: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
051836,000048: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
051837,000049:
051838,000050: # 2.0 GENERAL DESCRIPTION
051839,000051: # -----------------------
051840,000052:
051841,000053: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS---
051842,000054: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
051843,000055: # 2) INTEGRATES THE W-MATRIX
051844,000056: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
051845,000057:
051846,000058: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
051847,000059: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
051848,000060: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
051849,000061: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
051850,000062: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
051851,000063: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
051852,000064: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
051853,000065: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
051854,000066: # AND/OR STATE VECTOR.
051855,000067:
051856,000068: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
051857,000069: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
051858,000070: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
051859,000071:
051860,000072: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS.
051861,000073: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
051862,000074: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
051863,000075:
Page 1203 |
051865,000077: # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
051866,000078:
051867,000079: # 2.1 RESTARTS
051868,000080:
051869,000081: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
051870,000082: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
051871,000083: # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
051872,000084: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
051873,000085: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
051874,000086: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
051875,000087: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
051876,000088:
051877,000089: # 2.2 SCALING
051878,000090:
051879,000091: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
051880,000092: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTORDEPENDS ON THE ORIGIN OF THE COORDINATE
051881,000093: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
051882,000094: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
051883,000095: # DIFFERENT SCALING.
051884,000096: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
051885,000097:
051886,000098: # 3.0 INPUT/OUTPUT
051887,000099: # ----------------
051888,000100:
051889,000101: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
051890,000102: # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
051891,000103: # FOR INTEGRVS, THE RCV,VCV, TET OF THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
051892,000104:
051893,000105: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
051894,000106: # EARTH MOON
051895,000107: # 29 27
051896,000108: # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
051897,000109:
051898,000110: # 7 5
051899,000111: # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
051900,000112:
051901,000113: # 28 28
051902,000114: # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
051903,000115: # CUSTOMARILY 0, BUT NOTE LUNAR
051904,000116: # ORBIT DEPENDENCE ON REAL TIME.
051905,000117:
051906,000118: # 22 18
051907,000119: # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
051908,000120: # 0 IF TCCSM(LEM) = 0
051909,000121:
051910,000122: # 3 -1
051911,000123: # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
051912,000124: # 0 IF TCCSM(LEM) = 0
051913,000125:
Page 1204 |
051915,000127: # 29 27
051916,000128: # RCVCSM(LEM) - CONIC POSITION METERS 2 2
051917,000129: # EQUALS RRECTCSM(LEM) IF
051918,000130: # TCCSM(LEM) = 0
051919,000131:
051920,000132: # 7 5
051921,000133: # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
051922,000134: # EQUALS VRECTCSM(LEM) IF
051923,000135: # TCCSM(LEM) = 0
051924,000136:
051925,000137: # 28 28
051926,000138: # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
051927,000139: # CUSTOMARILY 0
051928,000140:
051929,000141: # 1/2 17 16
051930,000142: # XKEPCSM(LEM) - ROOT OF KEPLERS EQUATION M 2 2
051931,000143: # 0 IF TCCSM(LEM) = 0
051932,000144:
051933,000145: # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
051934,000146: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
051935,000147: # LMOONFLG C = CSM, L = LM 0 0
051936,000148: # LMIDFLG 0,1 0,1
051937,000149:
051938,000150: # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
051939,000151:
051940,000152: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
051941,000153: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
051942,000154: # ROUTINE MUST BE PRESET.
051943,000155:
051944,000156: # OUTPUT
051945,000157: # AFTER EVERY CALL TO INTEGRATION
051946,000158: # EARTH MOON
051947,000159: # 29 29
051948,000160: # 0D RATT POSITION METERS 2 2
051949,000161: # 7 7
051950,000162: # 6D VATT VELOCITY M/CSEC 2 2
051951,000163: # 28 28
051952,000164: # 12D TAT TIME 2 2
051953,000165: # 29 27
051954,000166: # 14D RATT1 POSITION METERS 2 2
051955,000167: # 7 5
051956,000168: # 20D VATT1 VELOCITY M/CSEC 2 2
051957,000169: # 3 2 36 30
051958,000170: # 26D MU(P) MU M /CS 2 2
051959,000171:
051960,000172: # X1 MUTABLE ENTRY -2 -10D
051961,000173:
051962,000174: # X2 COORDINT
051963,000175: # X2 COORDINATE SYSTEM ORIGEN 0 2
051964,000176: # (THIS, NOT MOONFLAG, SHOULD BE
051965,000177:
Page 1205 |
051967,000179: # USED TO DETERMINE ORIGIN.)
051968,000180:
051969,000181: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
051970,000182: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
051971,000183: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
051972,000184: # CALLING PROGRAM.
051973,000185:
051974,000186: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
051975,000187: # -------------------------------------
051976,000188:
051977,000189: # A) PRECISION ORBITAL INTEGRATION. CSMPREC,LEMPREC ENTRANCES
051978,000190: # L-X STORE TIME TO 95T5791T5 T 95 PUS L9ST (T4531)
051979,000191: # L CALL
051980,000192: # L+1 CSMPREC (OR LEMPREC)
051981,000193: # L+2 RETURN
051982,000194: # INPUT 28
051983,000195: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
051984,000196: # OUTPUT
051985,000197: # THE DATA LISTED IN SECTION 3.0 PLUS
051986,000198: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
051987,000199: # BODY... METERS B-29 ONLY IF MIDFLAG = DIMOFLAG = 1
051988,000200: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
051989,000201: # L-X STORE TIME IN PUSH LIST (TDEC1)
051990,000202: # L CALL
051991,000203: # L+1 CSMCONIC (OR LEMCONIC)
051992,000204: # INPUT/OUTPUT
051993,000205: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
051994,000206: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
051995,000207: # CALL
051996,000208: # INTSTALL
051997,000209: # VLOAD
051998,000210: # POSITION VECTOR
051999,000211: # STOVL RCV
052000,000212: # VELOCITY VECTOR
052001,000213: # STODL VCV
052002,000214: # TIME STATE VECTOR VALID
052003,000215: # STODL TET
052004,000216: # FINAL RADIUS
052005,000217: # STORE RFINAL
052006,000218: # SET(CLEAR) SET(CLEAR)
052007,000219: # INTYPFLAG
052008,000220: # MOONFLAG
052009,000221: # SET(CLEAR) DLOAD
052010,000222: # DESIRED TIME
052011,000223: # STCALL TDEC1
052012,000224: # INTEGRVS
052013,000225: # INPUT
052014,000226: # RCV POSITION VECTOR METERS
052015,000227: # VCV VELOCITY VECTOR M/CSEC
052016,000228: # TET TIME OF STATE VECTOR(MAY = 0) CSEC B-28
052017,000229:
Page 1206 |
052019,000231: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
052020,000232: # (MAY BE INCREMENT IF TET=0)
052021,000233: # OUTPUT
052022,000234: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
052023,000235: # DEPENDING ON INTYPFLG.
052024,000236: # D) INTEGRATE STATE VECTOR.INTGRV ENTRANCE
052025,000237: # L-X STORE TIME IN PUSH LIST (TDEC1)(MAY BE DONE AFTER CALL TO INTSTALL)
052026,000238: # L-8 CALL
052027,000239: # L-7
052028,000240: # L-6 SET(CLEAR) SET(CLEAR)
052029,000241: # L-5 VINTFLAG 1=CSM, 0=LM
052030,000242: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
052031,000243: # L-3 SET(CLEAR) SET(CLEAR)
052032,000244: # L-2 DIMOFLAG 1=W-MATRIX, 0=NO W-MATRIX
052033,000245: # L-1 D6OR9FLG 1=9X9, 0=6X6
052034,000246: # L SET DLOAD
052035,000247: # L+1 STATEFLG DESIRE PERMANENT UPDATE
052036,000248: # L+2 FINAL RAD. OF STATE VECTOR
052037,000249: # L+3 STCALL RFINAL
052038,000250: # L+4 INTEGRV
052039,000251: # L CALL NORMAL USE -- WILL UPDATE STATE
052040,000252: # L+1 INTEGRV VECTOR IF DIMOFLAG=1.(STATEFLG IS
052041,000253: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
052042,000254: # IT IS USED.)
052043,000255: # INPUT
052044,000256: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
052045,000257: # OUTPUT
052046,000258: # SAME AS FOR PRECISION OR CONIC INTEGRATION
052047,000259: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
052048,000260: # THE PERMANENT STATE VECTOR REPRESENTATION.
052049,000261:
052050,000262: 11,2403 BANK 11
052051,000263: 13,2000 SETLOC INTINIT
052052,000264: 13,2000 BANK
052053,000265: 13,2641 E3,1554 EBANK= RRECTCSM
052054,000266: 13,2641 COUNT* $$/INTIN
052055,000267: 13,2641 05355 STATEINT TC PHASCHNG
052056,000268: 13,2642 00052 OCT 00052
052057,000269: 13,2643 35010 CAF PRIO5
052058,000270: 13,2644 05076 TC FINDVAC
052059,000271: 13,2645 E3,1554 EBANK= RRECTCSM
052060,000272: 13,2645 02650 26063 2CADR STATINT1
052061,000273: 13,2647 05263 TC TASKOVER
052062,000274: 13,2650 06060 STATINT1 TC INTPRET
052063,000275: 13,2651 47014 BON RTB
052064,000276: 13,2652 04712 QUITFLAG # KILL INTEGRATION UNTIL NEXT POO.
052065,000277: 13,2653 26711 NOINT
052066,000278: 13,2654 21603 LOADTIME
052067,000279: 13,2655 00041 STORE TDEC1
052068,000280:
Page 1207 |
052070,000282: 13,2656 77624 CALL
052071,000283: 13,2657 27447 INTSTALL
052072,000284: 13,2660 45014 SET CALL
052073,000285: 13,2661 01076 NODOFLAG
052074,000286: 13,2662 26702 SETIFLGS
052075,000287: 13,2663 52014 SET GOTO
052076,000288: 13,2664 01460 POOHFLAG
052077,000289: 13,2665 26026 STATEUP
052078,000290: 13,2666 00003 25140 600SECS 2DEC 60000 B-28
052079,000291:
052080,000292: 13,2670 77414 ENDINT CLEAR EXIT
052081,000293: 13,2671 01672 STATEFLG
052082,000294: 13,2672 05355 TC PHASCHNG
052083,000295: 13,2673 20032 OCT 20032
052084,000296: 13,2674 00006 EXTEND
052085,000297: 13,2675 32667 DCA 600SECS
052086,000298: 13,2676 05301 TC LONGCALL
052087,000299: 13,2677 E3,1626 EBANK= RRECTHIS
052088,000300: 13,2677 02641 26063 2CADR STATEINT
052089,000301: 13,2701 05146 TC ENDOFJOB
052090,000302: 13,2702 43014 SETIFLGS SET CLEAR
052091,000303: 13,2703 01472 STATEFLG
052092,000304: 13,2704 01673 INTYPFLG
052093,000305: 13,2705 43014 CLEAR CLEAR
052094,000306: 13,2706 01676 DIM0FLAG
052095,000307: 13,2707 01675 D6OR9FLG
052096,000308: 13,2710 77616 RVQ
052097,000309: 13,2711 77776 NOINT EXIT
052098,000310: 13,2712 05355 TC PHASCHNG
052099,000311: 13,2713 00002 OCT 00002
052100,000312:
052101,000313: 13,2714 05520 TC DOWNFLAG
052102,000314: 13,2715 00221 ADRES QUITFLAG
052103,000315: 13,2716 05146 TC ENDOFJOB
052104,000316:
052105,000317: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
052106,000318:
052107,000319: # CALLING SEQUENCE
052108,000320: # L CALL
052109,000321: # L+1 ATOPCSM
052110,000322:
052111,000323: # NORMAL EXIT AT L+2
052112,000324:
052113,000325: 13,2717 47020 ATOPCSM STQ RTB
052114,000326: 13,2720 00051 S2
052115,000327: 13,2721 26732 MOVEACSM
052116,000328: 13,2722 45014 SET CALL
052117,000329: 13,2723 04063 CMOONFLG
052118,000330: 13,2724 26114 SVDWN1
052119,000331:
Page 1208 |
052121,000333: 13,2725 43014 BON CLRGO
052122,000334: 13,2726 00303 MOONFLAG
052123,000335: 13,2727 00051 S2
052124,000336: 13,2730 04223 CMOONFLG
052125,000337: 13,2731 00051 S2
052126,000338: 13,2732 03074 MOVEACSM TC SETBANK
052127,000339: 13,2733 55500 TS DIFEQCNT # INITIALIZE INDEX
052128,000340: 13,2734 51500 INDEX DIFEQCNT
052129,000341: 13,2735 31502 CA RRECT
052130,000342: 13,2736 51500 INDEX DIFEQCNT
052131,000343: 13,2737 55554 TS RRECTCSM
052132,000344: 13,2740 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
052133,000345: 13,2741 12733 TCF MOVEACSM +1 # NO-LOOP
052134,000346: 13,2742 06102 TC DANZIG # COMPLETE- RETURN
052135,000347:
052136,000348:
052137,000349: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
052138,000350:
052139,000351: # CALLING SEQUENCE
052140,000352: # L CALL
052141,000353: # PTOACSM
052142,000354:
052143,000355: # NORMAL EXIT AT L+2
052144,000356:
052145,000357: 13,2743 43034 PTOACSM RTB BON
052146,000358: 13,2744 26761 MOVEPCSM
052147,000359: 13,2745 04303 CMOONFLG
052148,000360: 13,2746 26754 SETMOON
052149,000361: 13,2747 66214 CLRMOON CLEAR SSP
052150,000362: 13,2750 00263 MOONFLAG
052151,000363: 13,2751 02031 PBODY
052152,000364: 13,2752 00000 0
052153,000365: 13,2753 77616 RVQ
052154,000366: 13,2754 66214 SETMOON SET SSP
052155,000367: 13,2755 00063 MOONFLAG
052156,000368: 13,2756 02031 PBODY
052157,000369: 13,2757 00002 2
052158,000370: 13,2760 77616 RVQ
052159,000371: 13,2761 03074 MOVEPCSM TC SETBANK
052160,000372: 13,2762 55500 TS DIFEQCNT
052161,000373: 13,2763 51500 INDEX DIFEQCNT
052162,000374: 13,2764 31554 CA RRECTCSM
052163,000375: 13,2765 51500 INDEX DIFEQCNT
052164,000376: 13,2766 55502 TS RRECT
052165,000377: 13,2767 11500 CCS DIFEQCNT
052166,000378: 13,2770 12762 TCF MOVEPCSM +1
052167,000379: 13,2771 06102 TC DANZIG
052168,000380:
052169,000381:
052170,000382: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
052171,000383:
Page 1209 |
052173,000385: 13,2772 47020 ATOPLEM STQ RTB
052174,000386: 13,2773 00051 S2
052175,000387: 13,2774 27005 MOVEALEM
052176,000388: 13,2775 45014 SET CALL
052177,000389: 13,2776 04064 LMOONFLG
052178,000390: 13,2777 26070 SVDWN2
052179,000391: 13,3000 43014 BON CLRGO
052180,000392: 13,3001 00303 MOONFLAG
052181,000393: 13,3002 00051 S2
052182,000394: 13,3003 04224 LMOONFLG
052183,000395: 13,3004 00051 S2
052184,000396: 13,3005 03074 MOVEALEM TC SETBANK
052185,000397: 13,3006 55500 TS DIFEQCNT
052186,000398: 13,3007 51500 INDEX DIFEQCNT
052187,000399: 13,3010 31502 CA RRECT
052188,000400: 13,3011 51500 INDEX DIFEQCNT
052189,000401: 13,3012 55626 TS RRECTLEM
052190,000402: 13,3013 11500 CCS DIFEQCNT
052191,000403: 13,3014 13006 TCF MOVEALEM +1
052192,000404: 13,3015 06102 TC DANZIG
052193,000405:
052194,000406:
052195,000407: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
052196,000408:
052197,000409: 13,3016 47014 PTOALEM BON RTB
052198,000410: 13,3017 04307 SURFFLAG
052199,000411: 13,3020 27037 USEPIOS
052200,000412: 13,3021 27026 MOVEPLEM
052201,000413: 13,3022 52014 BON GOTO
052202,000414: 13,3023 04304 LMOONFLG
052203,000415: 13,3024 26754 SETMOON
052204,000416: 13,3025 26747 CLRMOON
052205,000417: 13,3026 03074 MOVEPLEM TC SETBANK
052206,000418: 13,3027 55500 TS DIFEQCNT
052207,000419: 13,3030 51500 INDEX DIFEQCNT
052208,000420: 13,3031 31626 CA RRECTLEM
052209,000421: 13,3032 51500 INDEX DIFEQCNT
052210,000422: 13,3033 55502 TS RRECT
052211,000423: 13,3034 11500 CCS DIFEQCNT
052212,000424: 13,3035 13027 TCF MOVEPLEM +1
052213,000425: 13,3036 06102 TC DANZIG
052214,000426:
052215,000427:
052216,000428: 13,3037 77201 USEPIOS SETPD VLOAD
052217,000429: 13,3040 00001 0
052218,000430: 13,3041 02021 RLS
052219,000431: 13,3042 41525 PDDL PUSH
052220,000432: 13,3043 00041 TDEC1
052221,000433: 13,3044 15517 STODL TET
052222,000434: 13,3045 27762 5/8
052223,000435:
Page 1210 |
052225,000437: 13,3046 77624 CALL
052226,000438: 13,3047 55716 RP-TO-R
052227,000439: 13,3050 25535 STOVL RCV
052228,000440: 13,3051 24001 ZUNIT
052229,000441: 13,3052 14001 STODL 0D
052230,000442: 13,3053 01517 TET
052231,000443: 13,3054 14007 STODL 6D
052232,000444: 13,3055 27762 5/8
052233,000445: 13,3056 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT
052234,000446: 13,3057 00063 MOONFLAG
052235,000447: 13,3060 55716 RP-TO-R
052236,000448: 13,3061 74235 VXV VXSC
052237,000449: 13,3062 01535 RCV
052238,000450: 13,3063 26001 OMEGMOON
052239,000451: 13,3064 25543 STOVL VCV
052240,000452: 13,3065 24007 ZEROVEC
052241,000453: 13,3066 01521 STORE TDELTAV
052242,000454: 13,3067 67174 AXT,2 SXA,2
052243,000455: 13,3070 00002 2
052244,000456: 13,3071 02030 PBODY
052245,000457: 13,3072 35527 STCALL TNUV
052246,000458: 13,3073 27215 A-PCHK
052247,000459: 13,3074 33100 SETBANK CAF INTBANK
052248,000460: 13,3075 54006 TS BBANK
052249,000461: 13,3076 33505 CAF FORTYONE
052250,000462: 13,3077 00002 TC Q
052251,000463: 13,3100 E3,1554 EBANK= RRECTCSM
052252,000464: 13,3100 26063 INTBANK BBCON INTEGRV
052253,000465:
052254,000466:
052255,000467: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
052256,000468: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
052257,000469:
052258,000470: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
052259,000471: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
052260,000472: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
052261,000473: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
052262,000474: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
052263,000475: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
052264,000476:
052265,000477: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
052266,000478: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
052267,000479: # CSMPREC CSMCONIC LEMPREC LEMCONIC
052268,000480: # VINTFLAG SET SET CLEAR CLEAR
052269,000481: # INTYPFLG CLEAR SET CLEAR SET
052270,000482: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
052271,000483:
052272,000484:
052273,000485: # CALLING SEQUENCE
052274,000486: # L-X STORE TDEC1
052275,000487:
Page 1211 |
052277,000489: # L CALL (STCALL TDEC1)
052278,000490: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
052279,000491:
052280,000492: # NORMAL EXIT TO L+2
052281,000493:
052282,000494:
052283,000495: # SUBROUTINES CALLED
052284,000496: # INTEGRV1
052285,000497: # PRECOUT FOR CSMPREC AND LEMPREC
052286,000498: # CONICOUT FOR CSMCONIC AND LEMCONIC
052287,000499:
052288,000500:
052289,000501: # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
052290,000502: # INPUT
052291,000503: # TDEC1 TIME TO INTEGRATE TO . CSECS B-28
052292,000504: 13,3101 45020 CSMPREC STQ CALL
052293,000505: 13,3102 00046 X1
052294,000506: 13,3103 27447 INTSTALL
052295,000507: 13,3104 43130 SXA,1 SET
052296,000508: 13,3105 02101 IRETURN
052297,000509: 13,3106 01474 VINTFLAG
052298,000510:
052299,000511: 13,3107 43014 IFLAGP SET CLEAR
052300,000512: 13,3110 01467 PRECIFLG
052301,000513: 13,3111 01676 DIM0FLAG
052302,000514: 13,3112 77614 CLRGO
052303,000515: 13,3113 01633 INTYPFLG
052304,000516: 13,3114 27174 INTEGRV1
052305,000517: 13,3115 45020 LEMPREC STQ CALL
052306,000518: 13,3116 00046 X1
052307,000519: 13,3117 27447 INTSTALL
052308,000520: 13,3120 43130 SXA,1 CLRGO
052309,000521: 13,3121 02101 IRETURN
052310,000522: 13,3122 01634 VINTFLAG
052311,000523: 13,3123 27107 IFLAGP
052312,000524:
052313,000525: 13,3124 45020 CSMCONIC STQ CALL
052314,000526: 13,3125 00046 X1
052315,000527: 13,3126 27447 INTSTALL
052316,000528: 13,3127 43130 SXA,1 SET
052317,000529: 13,3130 02101 IRETURN
052318,000530: 13,3131 01474 VINTFLAG
052319,000531: 13,3132 43014 IFLAGC CLEAR SETGO
052320,000532: 13,3133 01676 DIM0FLAG
052321,000533: 13,3134 01433 INTYPFLG
052322,000534: 13,3135 27174 INTEGRV1
052323,000535: 13,3136 45020 LEMCONIC STQ CALL
052324,000536: 13,3137 00046 X1
052325,000537: 13,3140 27447 INTSTALL
052326,000538: 13,3141 43130 SXA,1 CLRGO
052327,000539:
Page 1212 |
052329,000541: 13,3142 02101 IRETURN
052330,000542: 13,3143 01634 VINTFLAG
052331,000543: 13,3144 27132 IFLAGC
052332,000544:
052333,000545: 13,3145 66214 INTEGRVS SET SSP
052334,000546: 13,3146 01467 PRECIFLG
052335,000547: 13,3147 02031 PBODY
052336,000548: 13,3150 00000 0
052337,000549: 13,3151 66214 BOF SSP
052338,000550: 13,3152 00343 MOONFLAG
052339,000551: 13,3153 27156 +3
052340,000552: 13,3154 02031 PBODY
052341,000553: 13,3155 00002 2
052342,000554: 13,3156 77220 STQ VLOAD
052343,000555: 13,3157 02101 IRETURN
052344,000556: 13,3160 24007 ZEROVEC
052345,000557: 13,3161 01521 STORE TDELTAV
052346,000558: 13,3162 35527 STCALL TNUV
052347,000559: 13,3163 27720 RECTIFY
052348,000560: 13,3164 43014 CLEAR SET
052349,000561: 13,3165 01676 DIM0FLAG
052350,000562: 13,3166 04062 NEWIFLG
052351,000563: 13,3167 77614 SETGO
052352,000564: 13,3170 04020 RPQFLAG
052353,000565: 13,3171 27206 ALOADED
052354,000566: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER ,
052355,000567: # NORMALLY THE NAVIGATION PROGRAM ,TO SET THE INTEG. FLAGS. THE ROUTINE
052356,000568: # IS ENTERED AT INTEGRV1 BY CSMPREC ET.AL. AND AT ALOADED BY INTEGRVS.
052357,000569: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
052358,000570: # PROGRAM FOR PRECISION OR CONIC
052359,000571:
052360,000572: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
052361,000573: # SETTING ANY FLAGS.
052362,000574: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
052363,000575: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
052364,000576: # INTYPFLG
052365,000577: # DIM0FLAG
052366,000578: # D6OR9FLG
052367,000579: # CALLING SEQUENCE
052368,000580: # L-X CALL
052369,000581: # L-Y INTSTALL
052370,000582: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
052371,000583: # AND DIM0FLAG IS CLEAR.
052372,000584: # L CALL
052373,000585: # L+1 INTEGRV
052374,000586: # INITIALIZATION
052375,000587: # FLAGS AS ABOVE
052376,000588: # STORE TIME TO INTEGRATE TO IN TDEC1
052377,000589: # OUTPUT
052378,000590: # RATT AS
052379,000591:
Page 1213 |
052381,000593: # VATT DEFINED
052382,000594: # TAT BEFORE
052383,000595:
052384,000596:
052385,000597: 13,3172 77620 INTEGRV STQ
052386,000598: 13,3173 02101 IRETURN
052387,000599: 13,3174 43014 INTEGRV1 SET SET
052388,000600: 13,3175 04060 RPQFLAG
052389,000601: 13,3176 04062 NEWIFLG
052390,000602: 13,3177 77731 INTEGRV2 SSP
052391,000603: 13,3200 00053 QPRET
052392,000604: 13,3201 27206 ALOADED
052393,000605: 13,3202 52014 BON GOTO
052394,000606: 13,3203 01714 VINTFLAG
052395,000607: 13,3204 26743 PTOACSM
052396,000608: 13,3205 27016 PTOALEM
052397,000609: 13,3206 77745 ALOADED DLOAD
052398,000610: 13,3207 00041 TDEC1
052399,000611: 13,3210 01115 STORE TDEC
052400,000612: 13,3211 52014 BOFF GOTO
052401,000613: 13,3212 01753 INTYPFLG
052402,000614: 13,3213 27315 TESTLOOP
052403,000615: 13,3214 27301 RVCON
052404,000616: 13,3215 77414 A-PCHK BOF EXIT
052405,000617: 13,3216 01752 STATEFLG
052406,000618: 13,3217 27236 RECTOUT
052407,000619: 13,3220 05355 TC PHASCHNG
052408,000620: 13,3221 04022 OCT 04022
052409,000621: 13,3222 05506 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
052410,000622: 13,3223 00236 ADRES REINTFLG # INTSTALL AND INTWAKE
052411,000623: 13,3224 06060 TC INTPRET
052412,000624: 13,3225 77731 SSP
052413,000625: 13,3226 00053 QPRET
052414,000626: 13,3227 27234 PHEXIT
052415,000627: 13,3230 52014 BON GOTO
052416,000628: 13,3231 01714 VINTFLAG
052417,000629: 13,3232 26717 ATOPCSM
052418,000630: 13,3233 26772 ATOPLEM
052419,000631: 13,3234 77624 PHEXIT CALL
052420,000632: 13,3235 51770 GRP2PC
052421,000633: 13,3236 45001 RECTOUT SETPD CALL
052422,000634: 13,3237 00001 0
052423,000635: 13,3240 27720 RECTIFY
052424,000636: 13,3241 53775 VLOAD VSL*
052425,000637: 13,3242 01503 RRECT
052426,000638: 13,3243 57576 0,2
052427,000639: 13,3244 53715 PDVL VSL* # RATT TO PD0
052428,000640: 13,3245 01511 VRECT
052429,000641: 13,3246 57576 0,2
052430,000642: 13,3247 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
052431,000643:
Page 1214 |
052433,000645: 13,3250 01517 TET
052434,000646: 13,3251 01503 RRECT
052435,000647: 13,3252 64715 PDVL PDDL*
052436,000648: 13,3253 01511 VRECT
052437,000649: 13,3254 51770 MUEARTH,2
052438,000650: 13,3255 76006 PUSH AXT,1
052439,000651: 13,3256 77765 DEC -10 B-14
052440,000652: 13,3257 76014 BON AXT,1
052441,000653: 13,3260 00303 MOONFLAG
052442,000654: 13,3261 27263 +2
052443,000655: 13,3262 77775 DEC -2 B-14
052444,000656: 13,3263 40001 INTEXIT SETPD BOV
052445,000657: 13,3264 00001 0
052446,000658: 13,3265 27266 +1
052447,000659: 13,3266 43014 CLEAR CLEAR
052448,000660: 13,3267 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
052449,000661: 13,3270 01667 PRECIFLG
052450,000662: 13,3271 77614 CLEAR
052451,000663: 13,3272 01672 STATEFLG
052452,000664: 13,3273 77535 SLOAD EXIT
052453,000665: 13,3274 02102 IRETURN
052454,000666: 13,3275 30154 CA MPAC
052455,000667: 13,3276 50120 INDEX FIXLOC
052456,000668: 13,3277 54052 TS QPRET
052457,000669: 13,3300 03460 TC INTWAKE
052458,000670: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
052459,000671: # VELOCITY FOR THE INTERVAL (TET-TDEC)
052460,000672:
052461,000673: 13,3301 45345 RVCON DLOAD DSU
052462,000674: 13,3302 01115 TDEC
052463,000675: 13,3303 01517 TET
052464,000676: 13,3304 36074 STCALL TAU.
052465,000677: 13,3305 27720 RECTIFY
052466,000678: 13,3306 77624 CALL
052467,000679: 13,3307 22403 KEPPREP
052468,000680: 13,3310 43345 DLOAD DAD
052469,000681: 13,3311 01551 TC
052470,000682: 13,3312 01517 TET
052471,000683: 13,3313 35517 STCALL TET
052472,000684: 13,3314 27236 RECTOUT
052473,000685:
Page 1215 |
052475,000687: # TESTLOOP
052476,000688:
052477,000689: 13,3315 43014 TESTLOOP BOF CLRGO
052478,000690: 13,3316 04752 QUITFLAG
052479,000691: 13,3317 27322 +3
052480,000692: 13,3320 01632 STATEFLG
052481,000693: 13,3321 27263 INTEXIT # STOP INTEGRATION
052482,000694: 13,3322 73001 +3 SETPD LXA,2
052483,000695: 13,3323 00013 10D
052484,000696: 13,3324 02030 PBODY
052485,000697: 13,3325 51575 VLOAD ABVAL
052486,000698: 13,3326 01535 RCV
052487,000699: 13,3327 43006 PUSH CLEAR # RC TO 10D
052488,000700: 13,3330 00262 MIDFLAG
052489,000701: 13,3331 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP
052490,000702: 13,3332 53755 RME,2
052491,000703: 13,3333 27336 +3
052492,000704: 13,3334 77614 SET
052493,000705: 13,3335 00062 MIDFLAG
052494,000706: 13,3336 41345 NORFINAL DLOAD DMP
052495,000707: 13,3337 00013 10D
052496,000708: 13,3340 00043 34D
052497,000709: 13,3341 55762 SR1R DDV*
052498,000710: 13,3342 51770 MUEARTH,2
052499,000711: 13,3343 41366 SQRT DMP
052500,000712: 13,3344 25762 .3D
052501,000713: 13,3345 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE
052502,000714: 13,3346 54345 DLOAD SL
052503,000715: 13,3347 00155 MPAC
052504,000716: 13,3350 20220 15D # OF 128 CSECS.
052505,000717: 13,3351 40006 PUSH BOV
052506,000718: 13,3352 27377 MAXDT
052507,000719: 13,3353 50021 BDSU BMN
052508,000720: 13,3354 27446 DT/2MAX
052509,000721: 13,3355 27377 MAXDT
052510,000722: 13,3356 45345 DT/2COMP DLOAD DSU
052511,000723: 13,3357 01115 TDEC
052512,000724: 13,3360 01517 TET
052513,000725: 13,3361 54234 RTB SL
052514,000726: 13,3362 21622 SGNAGREE
052515,000727: 13,3363 20211 8D
052516,000728: 13,3364 02076 STORE DT/2 # B-19
052517,000729: 13,3365 51400 BOV ABS
052518,000730: 13,3366 27403 GETMAXDT
052519,000731: 13,3367 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
052520,000732: 13,3370 00015 12D
052521,000733: 13,3371 27407 P00HCHK
052522,000734: 13,3372 75345 USEMAXDT DLOAD SIGN
052523,000735: 13,3373 00015 12D
052524,000736: 13,3374 02076 DT/2
052525,000737:
Page 1216 |
052527,000739: 13,3375 36076 STCALL DT/2
052528,000740: 13,3376 27407 P00HCHK
052529,000741: 13,3377 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
052530,000742: 13,3400 27446 DT/2MAX
052531,000743: 13,3401 77650 GOTO
052532,000744: 13,3402 27356 DT/2COMP
052533,000745: 13,3403 77634 GETMAXDT RTB
052534,000746: 13,3404 31765 SIGNMPAC
052535,000747: 13,3405 36076 STCALL DT/2
052536,000748: 13,3406 27372 USEMAXDT
052537,000749: 13,3407 51545 P00HCHK DLOAD ABS
052538,000750: 13,3410 02076 DT/2
052539,000751: 13,3411 50025 DSU BMN
052540,000752: 13,3412 27444 DT/2MIN
052541,000753: 13,3413 27215 A-PCHK
052542,000754: 13,3414 43014 BOFF BON # NO BACKWARDS INTEGRATION
052543,000755: 13,3415 01740 POOHFLAG # WHEN IN POO
052544,000756: 13,3416 23307 TIMESTEP
052545,000757: 13,3417 01707 PRECIFLG
052546,000758: 13,3420 23307 TIMESTEP
052547,000759: 13,3421 45345 DLOAD DSU
052548,000760: 13,3422 02076 DT/2
052549,000761: 13,3423 00015 12D
052550,000762: 13,3424 43040 BMN BOFCLR
052551,000763: 13,3425 27215 A-PCHK
052552,000764: 13,3426 04242 NEWIFLG
052553,000765: 13,3427 23307 TIMESTEP
052554,000766: 13,3430 45345 DLOAD DSU
052555,000767: 13,3431 01115 TDEC
052556,000768: 13,3432 01517 TET
052557,000769: 13,3433 77640 BMN # NO BACKWARD INTEGRATION
052558,000770: 13,3434 27263 INTEXIT
052559,000771: 13,3435 40525 PDDL SR4
052560,000772: 13,3436 02076 DT/2 # IS 4(DT) LS(TDEC - TET)
052561,000773: 13,3437 44322 SR2R BDSU # NO
052562,000774: 13,3440 52040 BMN GOTO
052563,000775: 13,3441 27263 INTEXIT
052564,000776: 13,3442 23307 TIMESTEP
052565,000777: 13,3443 00000 01400 DT/2MIN 2DEC 3 B-20
052566,000778: 13,3445 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
052567,000779:
052568,000780: 13,3447 77776 INTSTALL EXIT
052569,000781: 13,3450 30106 CA RASFLAG
052570,000782: 13,3451 73521 MASK INTBITAB # IS THIS STALL AREA FREE
052571,000783: 13,3452 00006 EXTEND
052572,000784: 13,3453 13513 BZF OKTOGRAB # YES
052573,000785: 13,3454 33520 CAF WAKESTAL
052574,000786: 13,3455 05124 TC JOBSLEEP
052575,000787: 13,3456 77776 INTWAKE0 EXIT
052576,000788:
Page 1217 |
052578,000790: 13,3457 13500 TCF INTWAKE1
052579,000791:
052580,000792: 13,3460 40106 INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
052581,000793: 13,3461 74736 MASK REINTBIT # RESTARTED
052582,000794: 13,3462 10000 CCS A
052583,000795: 13,3463 03500 TC INTWAKE1 # NO
052584,000796:
052585,000797: 13,3464 50120 INDEX FIXLOC
052586,000798: 13,3465 30052 CA QPRET
052587,000799: 13,3466 55054 TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
052588,000800:
052589,000801: 13,3467 05355 TC PHASCHNG
052590,000802: 13,3470 04022 OCT 04022
052591,000803:
052592,000804: 13,3471 31054 CA TBASE2
052593,000805: 13,3472 50120 INDEX FIXLOC
052594,000806: 13,3473 54052 TS QPRET
052595,000807:
052596,000808: 13,3474 34736 CAF REINTBIT
052597,000809: 13,3475 70106 MASK RASFLAG
052598,000810: 13,3476 00006 EXTEND
052599,000811: 13,3477 13516 BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
052600,000812:
052601,000813: 13,3500 33520 INTWAKE1 CAF WAKESTAL
052602,000814: 13,3501 00004 INHINT
052603,000815: 13,3502 05130 TC JOBWAKE
052604,000816: 13,3503 10064 CCS LOCCTR
052605,000817: 13,3504 13500 TCF INTWAKE1
052606,000818: 13,3505 00051 FORTYONE DEC 41 B-14
052607,000819: 13,3506 43521 CS INTBITAB
052608,000820: 13,3507 70106 MASK RASFLAG
052609,000821: 13,3510 54106 TS RASFLAG # RELEASE STALL AREA
052610,000822: 13,3511 00003 RELINT
052611,000823: 13,3512 13516 TCF GOBAC
052612,000824: 13,3513 34727 OKTOGRAB CAF INTFLBIT
052613,000825: 13,3514 00004 INHINT
052614,000826: 13,3515 26106 ADS RASFLAG
052615,000827: 13,3516 06060 GOBAC TC INTPRET
052616,000828: 13,3517 77616 RVQ
052617,000829: 13,3520 27450 WAKESTAL CADR INTSTALL +1
052618,000830: 13,3521 20100 INTBITAB OCT 20100
052619,000831:
Page 1218 |
052621,000833: # AVETOMID
052622,000834:
052623,000835: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
052624,000836: # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
052625,000837: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
052626,000838:
052627,000839: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLG IS
052628,000840: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
052629,000841:
052630,000842: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
052631,000843:
052632,000844: # FINALLY TRKMKCNT IS ZEROED
052633,000845:
052634,000846:
052635,000847: 13,2000 SETLOC INTINIT
052636,000848: 13,2000 BANK
052637,000849:
052638,000850: 13,3522 COUNT* $$/INTIN
052639,000851: 13,3522 43020 AVETOMID STQ BON
052640,000852: 13,3523 02767 EGRESS
052641,000853: 13,3524 02716 RENDWFLG
052642,000854: 13,3525 27571 INT/W # W-MATRIX VALID ,GO INTEGRATE IT
052643,000855: 13,3526 77614 BON
052644,000856: 13,3527 01711 ORBWFLAG
052645,000857: 13,3530 27571 INT/W # W-MATRIX VALID ,GO INTEGRATE IT
052646,000858:
052647,000859: 13,3531 45145 OTHERS DLOAD CALL # GET SET FOR OTHER VEHICLE INTEGRATION
052648,000860: 13,3532 01234 PIPTIME # DESIRED TIME
052649,000861: 13,3533 27447 INTSTALL
052650,000862: 13,3534 45014 SET CALL
052651,000863: 13,3535 01474 VINTFLAG # CM
052652,000864: 13,3536 26702 SETIFLGS # SETS UP NONE W-MAT. PERMANENT INTEG.
052653,000865: 13,3537 34041 STCALL TDEC1
052654,000866: 13,3540 27172 INTEGRV
052655,000867:
052656,000868: 13,3541 45174 AXT,2 CALL # NOW MOVE PROPERLY SCALE RN,UN AS WELL AS
052657,000869: 13,3542 00002 2 # PIPTIME TO INTEGRATION ERASABLES.
052658,000870: 13,3543 27447 INTSTALL
052659,000871: 13,3544 77014 BON AXT,2
052660,000872: 13,3545 04304 MOONTHIS
052661,000873: 13,3546 27550 +2
052662,000874: 13,3547 00000 0
052663,000875: 13,3550 53775 VLOAD VSR*
052664,000876: 13,3551 01220 RN
052665,000877: 13,3552 57176 0,2
052666,000878: 13,3553 01503 STORE RRECT
052667,000879: 13,3554 15535 STODL RCV
052668,000880: 13,3555 01234 PIPTIME
052669,000881: 13,3556 25517 STOVL TET
052670,000882: 13,3557 01226 VN
052671,000883:
Page 1219 |
052673,000885: 13,3560 45057 VSR* CALL
052674,000886: 13,3561 57176 0,2
052675,000887: 13,3562 27734 MINIRECT # FINISH SETTING UP STATE VECTOR
052676,000888: 13,3563 66234 RTB SSP
052677,000889: 13,3564 27005 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
052678,000890: 13,3565 03463 TRKMKCNT
052679,000891: 13,3566 00000 0
052680,000892: 13,3567 77650 GOTO
052681,000893: 13,3570 47211 FAZAB5
052682,000894:
052683,000895: 13,3571 45145 INT/W DLOAD CALL
052684,000896: 13,3572 01234 PIPTIME # INTEGRATE W THRU BURN
052685,000897: 13,3573 27447 INTSTALL
052686,000898: 13,3574 43014 SET SET
052687,000899: 13,3575 01476 DIM0FLAG # DO W-MATRIX
052688,000900: 13,3576 04476 AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
052689,000901: 13,3577 43014 SET CLEAR
052690,000902: 13,3600 01475 D6OR9FLG # 9X9 FOR LM
052691,000903: 13,3601 01674 VINTFLAG # LM
052692,000904: 13,3602 34041 STCALL TDEC1
052693,000905: 13,3603 27172 INTEGRV
052694,000906: 13,3604 77650 GOTO
052695,000907: 13,3605 27531 OTHERS # NOW GO DO THE OTHER VEHICLE
052696,000908:
Page 1220 |
052698,000910: # MIDTOAV1
052699,000911:
052700,000912: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
052701,000913: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
052702,000914: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
052703,000915: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
052704,000916: # IS DONE TO THE CURRENT TIME.
052705,000917: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
052706,000918:
052707,000919: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
052708,000920: # TO THE RETURN ADDRESS
052709,000921:
052710,000922: # IN EITHER CASE , BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
052711,000923: # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
052712,000924: # TION TIME AND MPAC IS SET TO THE DELTA TIME---
052713,000925: # TAT MINUS CURRENT TIME.
052714,000926:
052715,000927:
052716,000928: # MIDTOAV2
052717,000929:
052718,000930: # THIS ROUTINE INTEGRATES THIS VEHICLES STATE VECTOR TO THE CURRENT TIME.
052719,000931: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
052720,000932: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
052721,000933:
052722,000934: 21,2000 SETLOC ORBITAL5
052723,000935: 21,2000 BANK
052724,000936: 21,2760 COUNT* $$/INTIN
052725,000937:
052726,000938: 21,2760 E7,1744 EBANK= IRETURN1
052727,000939: 21,2760 43020 MIDTOAV2 STQ CLRGO # INTEGRATE TO PRESENT TIME PLUS TIMEDELT
052728,000940: 21,2761 03744 IRETURN1
052729,000941: 21,2762 04634 MID1FLAG
052730,000942: 21,2763 27621 ENTMID2
052731,000943:
052732,000944: 13,2000 SETLOC INTINIT
052733,000945: 13,2000 BANK
052734,000946: 13,3606 COUNT* $$/INTIN
052735,000947:
052736,000948: 13,3606 43020 MIDTOAV1 STQ SET # INTEGRATE TO TDEC1
052737,000949: 13,3607 03744 IRETURN1
052738,000950: 13,3610 04474 MID1FLAG
052739,000951: 13,3611 43234 RTB DAD # INITIAL CHECK , IS TDEC1 IN THE FUTURE
052740,000952: 13,3612 21603 LOADTIME
052741,000953: 13,3613 11171 TIMEDELT
052742,000954: 13,3614 51021 BDSU BPL
052743,000955: 13,3615 00041 TDEC1
052744,000956: 13,3616 27625 ENTMID1 # Y5S
052745,000957: 13,3617 77624 CALL
052746,000958: 13,3620 27711 NOTIME # NO, SET ALARM, SWITCH TO MIDTOAV2
052747,000959:
Page 1221 |
052749,000961:
052750,000962: 13,3621 43234 ENTMID2 RTB DAD
052751,000963: 13,3622 21603 LOADTIME
052752,000964: 13,3623 11171 TIMEDELT
052753,000965: 13,3624 00041 STORE TDEC1
052754,000966:
052755,000967: 13,3625 77624 ENTMID1 CALL
052756,000968: 13,3626 27447 INTSTALL
052757,000969: 13,3627 45014 CLEAR CALL
052758,000970: 13,3630 01676 DIM0FLAG # NO W-MATRIX
052759,000971: 13,3631 26066 THISVINT
052760,000972: 13,3632 43014 CLEAR SET
052761,000973: 13,3633 01673 INTYPFLG
052762,000974: 13,3634 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
052763,000975: 13,3635 77624 CALL
052764,000976: 13,3636 27172 INTEGRV # GO INTEGRATE
052765,000977: 13,3637 77214 CLEAR VLOAD
052766,000978: 13,3640 04675 MIDAVFLG
052767,000979: 13,3641 00001 RATT
052768,000980: 13,3642 27545 STOVL RN1
052769,000981: 13,3643 00007 VATT
052770,000982: 13,3644 17553 STODL VN1
052771,000983: 13,3645 00015 TAT
052772,000984: 13,3646 03561 STORE PIPTIME1
052773,000985: 13,3647 66134 SXA,2 SXA,1
052774,000986: 13,3650 02777 RTX2
052775,000987: 13,3651 02776 RTX1
052776,000988: 13,3652 77776 EXIT
052777,000989:
052778,000990: 13,3653 00004 INHINT
052779,000991: 13,3654 00006 EXTEND
052780,000992: 13,3655 40025 DCS TIME2
052781,000993: 13,3656 20155 DAS MPAC
052782,000994: 13,3657 07300 TC TPAGREE
052783,000995:
052784,000996: 13,3660 31744 CA IRETURN1
052785,000997: 13,3661 04631 TC BANKJUMP
052786,000998: 13,3662 47014 CKMID2 BOF RTB
052787,000999: 13,3663 04754 MID1FLAG
052788,001000: 13,3664 27701 MID2
052789,001001: 13,3665 21603 LOADTIME
052790,001002: 13,3666 44215 DAD BDSU
052791,001003: 13,3667 11171 TIMEDELT
052792,001004: 13,3670 01115 TDEC
052793,001005: 13,3671 45044 BPL CALL
052794,001006: 13,3672 27315 TESTLOOP # YES
052795,001007: 13,3673 27711 NOTIME
052796,001008:
052797,001009: 13,3674 43234 TIMEINC RTB DAD
052798,001010: 13,3675 21603 LOADTIME
052799,001011: 13,3676 11171 TIMEDELT
052800,001012:
Page 1222 |
052802,001014: 13,3677 35115 STCALL TDEC
052803,001015: 13,3700 27315 TESTLOOP
052804,001016:
052805,001017: 13,3701 45345 MID2 DLOAD DSU
052806,001018: 13,3702 01115 TDEC
052807,001019: 13,3703 01517 TET
052808,001020: 13,3704 45246 ABS DSU
052809,001021: 13,3705 11167 3CSECS
052810,001022: 13,3706 52040 BMN GOTO
052811,001023: 13,3707 27215 A-PCHK
052812,001024: 13,3710 27674 TIMEINC
052813,001025:
052814,001026: 13,3711 77414 NOTIME CLEAR EXIT # TOO LATE
052815,001027: 13,3712 04674 MID1FLAG
052816,001028: 13,3713 25744 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
052817,001029: 13,3714 05571 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
052818,001030: 13,3715 01703 OCT 1703 # TIG WILL BE SLIPPED...
052819,001031: 13,3716 06060 TC INTPRET
052820,001032: 13,3717 77616 RVQ
052821,001033:
052822,001034: 04,2000 SETLOC UPDATE2
052823,001035: 04,2000 BANK
052824,001036: 04,3166 COUNT* $$/INTIN
052825,001037:
052826,001038: 04,3166 00000 00003 3CSECS 2DEC 3 B-28
052827,001039: 04,3170 00000 03720 TIMEDELT 2DEC 2000 B-28
052828,001040:
052829,001041: 04,3172 E3,1706 EBANK= TEPHEM
052830,001042: 04,3172 COUNT* $$/INTIN
052831,001043:
052832,001044: 04,3172 06060 INTWAKEU TC INTPRET
052833,001045:
052834,001046: 04,3173 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
052835,001047: 04,3174 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
052836,001048: 04,3175 11241 INTWAKUP
052837,001049:
052838,001050: 04,3176 77775 VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
052839,001051: 04,3177 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
052840,001052: 04,3200 25535 STOVL RCV
052841,001053: 04,3201 01511 VRECT # NOW GO TO 'RECTIFY +13D' TO
052842,001054: 04,3202 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
052843,001055: 04,3203 27735 RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
052844,001056: 04,3204 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF 'UPSVFLAG'
052845,001057: 04,3205 01502 UPSVFLAG # TO 'UPDATE MOON STATE VECTOR CODE'
052846,001058: 04,3206 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
052847,001059: 04,3207 11250 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
052848,001060: 04,3210 11215 INTWAKEM # SPHERE OF INFLUENCE.........
052849,001061: 04,3211 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
052850,001062: 04,3212 00000 DEC 0 B-14
052851,001063:
Page 1223 |
052853,001065: 04,3213 00223 MOONFLAG
052854,001066: 04,3214 11220 INTWAKEC
052855,001067: 04,3215 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE.
052856,001068: 04,3216 00002 DEC 2 B-14
052857,001069: 04,3217 00063 MOONFLAG
052858,001070: 04,3220 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
052859,001071: # MOONFLAG SET (OR CLEARED).
052860,001072: 04,3221 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
052861,001073: 04,3222 11230 INTWAKLM # STATE VECTOR UPDATE......
052862,001074: 04,3223 77624 CALL # UPDATE CSM STATE VECTOR
052863,001075: 04,3224 26717 ATOPCSM
052864,001076:
052865,001077: 04,3225 52014 CLEAR GOTO
052866,001078: 04,3226 01671 ORBWFLAG
052867,001079: 04,3227 11232 INTWAKEX
052868,001080:
052869,001081: 04,3230 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
052870,001082: 04,3231 26772 ATOPLEM
052871,001083:
052872,001084: 04,3232 77414 INTWAKEX CLEAR EXIT
052873,001085: 04,3233 02676 RENDWFLG
052874,001086:
052875,001087: 04,3234 34746 CAF ZERO
052876,001088: 04,3235 00006 EXTEND
052877,001089: 04,3236 01077 WRITE CHAN77 # ZERO CHANNEL 77
052878,001090: 04,3237 E3,1501 EBANK= UPSVFLAG
052879,001091: 04,3237 55501 TS UPSVFLAG
052880,001092:
052881,001093: 04,3240 06060 TC INTPRET
052882,001094: 04,3241 77624 INTWAKUP CALL
052883,001095: 04,3242 27456 INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
052884,001096: 04,3243 77776 EXIT
052885,001097:
052886,001098: 04,3244 05355 TC PHASCHNG
052887,001099: 04,3245 04026 OCT 04026
052888,001100: 04,3246 03714 TC UPOUT +1
052889,001101:
052890,001102: 04,3247 00002 UPMNSVCD OCT 2
052891,001103: 04,3250 00000 OCT 0
052892,001104:
052893,001105: 24,2000 SETLOC ORBITAL4
052894,001106: 24,2000 BANK
052895,001107: 24,3770 COUNT* $$/INTIN
052896,001108:
052897,001109: 24,3770 77420 GRP2PC STQ EXIT
052898,001110: 24,3771 02711 GRP2SVQ
052899,001111: 24,3772 05355 TC PHASCHNG
052900,001112: 24,3773 04022 OCT 04022
052901,001113: 24,3774 06060 TC INTPRET
Page 1224 |
052903,001115: 24,3775 77650 GOTO
052904,001116: 24,3776 02711 GRP2SVQ
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc