Source Code
055188,000001: # Copyright: Public domain.
055189,000002: # Filename: INTEGRATION_INITIALIZATION.agc
055190,000003: # Purpose: Part of the source code for Colossus, build 249.
055191,000004: # It is part of the source code for the Command Module's (CM)
055192,000005: # Apollo Guidance Computer (AGC), possibly for Apollo 8 and 9.
055193,000006: # Assembler: yaYUL
055194,000007: # Reference: Starts on p. 1291 of 1701.pdf.
055195,000008: # Contact: Ron Burkey <info@sandroid.org>.
055196,000009: # Website: www.ibiblio.org/apollo.
055197,000010: # Mod history: 08/29/04 RSB. Began adapting from corresponding Luminary131 file.
055198,000011: # 2010-10-24 JL Indentation fixes.
055199,000012:
055200,000013: # The contents of the "Colossus249" files, in general, are transcribed
055201,000014: # from a scanned document obtained from MIT's website,
055202,000015: # http://hrst.mit.edu/hrs/apollo/public/archive/1701.pdf. Notations on this
055203,000016: # document read, in part:
055204,000017:
055205,000018: # Assemble revision 249 of AGC program Colossus by NASA
055206,000019: # 2021111-041. October 28, 1968.
055207,000020:
055208,000021: # This AGC program shall also be referred to as
055209,000022: # Colossus 1A
055210,000023:
055211,000024: # Prepared by
055212,000025: # Massachusetts Institute of Technology
055213,000026: # 75 Cambridge Parkway
055214,000027: # Cambridge, Massachusetts
055215,000028: # under NASA contract NAS 9-4065.
055216,000029:
055217,000030: # Refer directly to the online document mentioned above for further information.
055218,000031: # Please report any errors (relative to 1701.pdf) to info@sandroid.org.
055219,000032:
055220,000033: # In some cases, where the source code for Luminary 131 overlaps that of
055221,000034: # Colossus 249, this code is instead copied from the corresponding Luminary 131
055222,000035: # source file, and then is proofed to incorporate any changes.
055223,000036:
055224,000037: # Page 1291
055225,000038: # 1.0 INTRODUCTION
055226,000039: # ----------------
055227,000040:
055228,000041: # FROM A USER'S POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
055229,000042: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
055230,000043: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
055231,000044: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUTSIDE
055232,000045: # THE LUNAR SPHERE OF INFLUENCE.
055233,000046:
055234,000047: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
055235,000048: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
055236,000049: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
055237,000050: # CALL TC INTSTALL.
055238,000051:
055239,000052: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
055240,000053: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
055241,000054: # BOTH THE LM'S POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
055242,000055: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
055243,000056: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
055244,000057:
055245,000058: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
055246,000059: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
055247,000060: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC "INTEGRATION" THE USER MAY STILL USE ZERO
055248,000061: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
055249,000062:
055250,000063: # 2.0 CENTRAL DESCRIPTION
055251,000064: # -----------------------
055252,000065:
055253,000066: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS --
055254,000067: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
055255,000068: # 2) INTEGRATES THE W-MATRIX
055256,000069: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
055257,000070:
055258,000071: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
055259,000072: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
055260,000073: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
055261,000074: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
055262,000075: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
055263,000076: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
055264,000077: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
055265,000078: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
055266,000079: # AND/OR STATE VECTOR.
055267,000080:
055268,000081: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
055269,000082: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
055270,000083: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
055271,000084:
055272,000085: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE ODER THAN 4 TIMESTEPS.
055273,000086: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
055274,000087: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
055275,000088:
055276,000089: # Page 1292
055277,000090: # APPENDIX B OF THE USERS' GUIDE LISTS THE STATE VECTOR QUANTITIES.
055278,000091:
055279,000092: # 2.1 RESTARTS
055280,000093:
055281,000094: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
055282,000095: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
055283,000096: # (I.E., GROUP2) WINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
055284,000097: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
055285,000098: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION WHOULD ENSURE THAT IF PHASE CHANGING IS DONE
055286,000099: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
055287,000100:
055288,000101: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
055289,000102:
055290,000103: # 2.2 SCALING
055291,000104:
055292,000105: # THE INTEGRATION ROUTIEN WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
055293,000106: # APPENDIX B OF THE USERS' GUIDE. THE SCALING OF THE OUTPUT POSITION VECTOR DEPENDS ON THE ORIGIN OF THE COORDINATE
055294,000107: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
055295,000108: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
055296,000109: # DIFFERENT SCALING.
055297,000110:
055298,000111: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
055299,000112:
055300,000113: # 3.0 INPUT/OUTPUT
055301,000114: # ----------------
055302,000115:
055303,000116: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN
055304,000117: # APPENDIX B OF THE USERS' GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
055305,000118: # FOR INTEGRVS, THE RCV,VCV,TET OR THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
055306,000119:
055307,000120: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
055308,000121: # EARTH MOON
055309,000122: # 29 27
055310,000123: # RRECTCSM(LEM) RECTIFIED POSITION VECTOR METERS 2 2
055311,000124:
055312,000125: # 7 5
055313,000126: # VRECTCSM(LEM) RECTIFIED VELOCITY VECTOR M/CSEC 2 2
055314,000127:
055315,000128: # 28 28
055316,000129: # TETCSM(LEM) TIME STATE VECTOR IS VALID CSEC 2 2
055317,000130: # CUSTOMARILY 0, BUT NOT LUNAR
055318,000131: # ORBIT DEPENDENCE ON REAL TIME.
055319,000132:
055320,000133: # 22 18
055321,000134: # DELTAVCSM(LEM) POSITION DEVIATION METERS 2 2
055322,000135: # 0 IF TCCSM(LEM) = 0
055323,000136:
055324,000137: # 3 -1
055325,000138: # NUVCSM(LEM) VELOCITY DEVIATION M/CSEC 2 2
055326,000139: # 0 IF TCCSM(LEM) = 0
055327,000140: # Page 1293
055328,000141: # 29 27
055329,000142: # RCVSM(LEM) CONIC POSITION METERS 2 2
055330,000143: # EQUALS RRECTCSM(LEM) IF
055331,000144: # TCCSM(LEM) = 0
055332,000145:
055333,000146: # 7 5
055334,000147: # VCVCSM(LEM) CONIC VELOCITY M/CSEC 2 2
055335,000148: # EQUALS VRECTCSM(LEM) IF
055336,000149: # TCCSM(LEM) = 0
055337,000150:
055338,000151: # 28 28
055339,000152: # TCCSM(LEM) TIME SINCE RECTIFICATION CSECS 2 2
055340,000153: # CUSTOMARILY 0
055341,000154:
055342,000155: # 1/2 17 16
055343,000156: # XKEPCSM(LEM) RDOT OF KEPLER'S EQUATION M 2 2
055344,000157: # 0 IF TCCSM(LEM) = 0
055345,000158:
055346,000159: # CMOONFLG PERMANENT FLAGS CORRESPONDING 0 0
055347,000160: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
055348,000161: # LMOONFLG C = CSM, L = LM 0 0
055349,000162: # LMIDFLG 0,1 0,1
055350,000163:
055351,000164: # SURFFLAG LUNAR SURFACE FLAG 0,1 0,1
055352,000165:
055353,000166: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
055354,000167: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
055355,000168: # ROUTINE MUST BE PRESET.
055356,000169:
055357,000170: # OUTPUT
055358,000171: # AFTER EVERY CALL TO INTEGRATION
055359,000172: # EARTH MOON
055360,000173: # 29 29
055361,000174: # 0D RATT POSITION METERS 2 2
055362,000175:
055363,000176: # 7 7
055364,000177: # 6D VATT VELOCITY M/CSEC 2 2
055365,000178:
055366,000179: # 28 28
055367,000180: # 12D TAT TIME 2 2
055368,000181:
055369,000182: # 29 27
055370,000183: # 14D RATT1 POSITION METERS 2 2
055371,000184:
055372,000185: # 7 5
055373,000186: # 20D VATT1 VELOCITY M/CSEC 2 2
055374,000187:
055375,000188: # 3 2 36 30
055376,000189: # 26D MU(P) MU M /CS 2 2
055377,000190:
055378,000191: # X1 MUTABLE ENTRY -2 -10D
055379,000192:
055380,000193: # X2 COORDINT
055381,000194: # X2 COORDINATE SYSTEM ORIGIN 0 2
055382,000195: # (THIS, NOT MOONFLAG, SHOULD BE
055383,000196: # Page 1294
055384,000197: # USED TO DETERMINE ORIGIN.)
055385,000198:
055386,000199: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
055387,000200: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
055388,000201: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
055389,000202: # CALLING PROGRAM.
055390,000203:
055391,000204: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
055392,000205: # -------------------------------------
055393,000206:
055394,000207: # A) PRECISION ORBITAL INTEGRATION. CSMPREC, LEMPREC ENTRANCES
055395,000208: # L-X STORE TIME TO 96T5791T5 T 95 PUS L9ST (T4531)
055396,000209: # L CALL
055397,000210: # L+1 CSMPREC (OR LEMPREC)
055398,000211: # L+2 RETURN
055399,000212: # INPUT 28
055400,000213: # TDEC1 (PD 32D) TIME TC INTEGRATE TO...CENTISECONDS SCALED 2
055401,000214: # OUTPUT
055402,000215: # THE DATA LISTED IN SECTION 3.2 PLUS
055403,000216: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
055404,000217: # BODY... METERS B-29 ONLY IF MIDFLAG = DIM0FLAG = 1
055405,000218: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
055406,000219: # L-X STORE TIME IN PUSH LIST (TDEC1)
055407,000220: # L CALL
055408,000221: # L+1 CSMCONIC (OR LEMCONIC)
055409,000222: # INPUT/OUTPUT
055410,000223: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
055411,000224: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
055412,000225: # CALL
055413,000226: # INTSTALL
055414,000227: # VLOAD
055415,000228: # POSITION VECTOR
055416,000229: # STOVL RCV
055417,000230: # VELOCITY VECTOR
055418,000231: # STODL VCV
055419,000232: # TIME STATE VECTOR VALID
055420,000233: # STODL TET
055421,000234: # FINAL RADIUS
055422,000235: # STORE RFINAL
055423,000236: # SET(CLEAR) SET(CLEAR)
055424,000237: # INTYPFLAG
055425,000238: # MOONFLAG
055426,000239: # SET(CLEAR) DLOAD
055427,000240: # DESIRED TIME
055428,000241: # STCALL TDEC1
055429,000242: # INTEGRVS
055430,000243: # INPUT
055431,000244: # RCV POSITION VECTOR METERS
055432,000245: # VCV VELOCITY VECTOR M/CSEC
055433,000246: # TET TIME OF STATE VECTOR (MAY = 0) CSEC B-28
055434,000247: # Page 1295
055435,000248: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
055436,000249: # (MAY BE INCREMENT IF TET=0)
055437,000250: # OUTPUT
055438,000251: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
055439,000252: # DEPENDING ON INTYPFLG.
055440,000253: # D) INTEGRATE STATE VECTOR. INTGRV ENTRANCE
055441,000254: # L-X STORE TIME IN PUSH LIST (TDEC1) (MAY BE DONE AFTER CALL TO INTSTALL)
055442,000255: # L-8 CALL
055443,000256: # L-7
055444,000257: # L-6 SET(CLEAR) SET(CLEAR)
055445,000258: # L-5 VINTFLAG 1=CSM, 0=LM
055446,000259: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
055447,000260: # L-3 SET(CLEAR) SET(CLEAR)
055448,000261: # L-2 DIM0FLAG 1=W-MATRIX, 0=NO W-MATRIX
055449,000262: # L-1 D6OR9FLG 1=9X9, 0=6X6
055450,000263: # L SET DLOAD
055451,000264: # L+1 STATEFLG DESIRE PERMANENT UPDATE
055452,000265: # L+2 FINAL RAD. OF STATE VECTOR
055453,000266: # L+3 STCALL RFINAL
055454,000267: # L+4 INTEGRV
055455,000268: # L CALL NORMAL USE -- WILL UPDATE STATE
055456,000269: # L+1 INTEGRV VECTOR IF DIM0FLAG=1. (STATEFLG IS
055457,000270: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
055458,000271: # IT USED.)
055459,000272: # INPUT
055460,000273: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
055461,000274: # OUTPUT
055462,000275: # SAME AS FOR PRECISION OR CONIC INTEGRATION
055463,000276: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
055464,000277: # THE PERMANENT STATE VECTOR REPRESENTATION.
055465,000278:
055466,000279: 11,2310 BANK 11
055467,000280: 13,2000 SETLOC INTINIT
055468,000281: 13,2000 BANK
055469,000282: 13,2561 E3,1554 EBANK= RRECTCSM
055470,000283: 13,2561 COUNT 13/INTIN
055471,000284:
055472,000285: 13,2561 05301 STATEINT TC PHASCHNG
055473,000286: 13,2562 00052 OCT 00052
055474,000287: 13,2563 34754 CAF PRIO5
055475,000288: 13,2564 05042 TC FINDVAC
055476,000289: 13,2565 E3,1554 EBANK= RRECTCSM
055477,000290: 13,2565 02570 26063 2CADR STATINT1
055478,000291:
055479,000292: 13,2567 05213 TC TASKOVER
055480,000293: 13,2570 06006 STATINT1 TC INTPRET
055481,000294: 13,2571 47014 BON RTB
055482,000295: 13,2572 04712 QUITFLAG
055483,000296: 13,2573 26630 NOINT # NO STATEINT IF V96
055484,000297: 13,2574 45505 LOADTIME
055485,000298: # Page 1296
055486,000299: 13,2575 00041 STORE TDEC1
055487,000300: 13,2576 77624 CALL
055488,000301: 13,2577 27371 INTSTALL
055489,000302: 13,2600 45014 SET CALL
055490,000303: 13,2601 01076 NODOFLAG
055491,000304: 13,2602 26621 SETIFLGS
055492,000305: 13,2603 77650 GOTO
055493,000306: 13,2604 26000 STATEUP
055494,000307: 13,2605 00003 25140 600SECS 2DEC 60000 B-28
055495,000308:
055496,000309: 13,2607 77414 ENDINT CLEAR EXIT
055497,000310: 13,2610 01672 STATEFLG
055498,000311: 13,2611 05301 TC PHASCHNG
055499,000312: 13,2612 20032 OCT 20032
055500,000313: 13,2613 00006 EXTEND
055501,000314: 13,2614 32606 DCA 600SECS
055502,000315: 13,2615 05231 TC LONGCALL
055503,000316: 13,2616 E3,1554 EBANK= RRECTHIS
055504,000317: 13,2616 02561 26063 2CADR STATEINT
055505,000318:
055506,000319: 13,2620 05112 TC ENDOFJOB
055507,000320: 13,2621 43014 SETIFLGS SET CLEAR
055508,000321: 13,2622 01472 STATEFLG
055509,000322: 13,2623 01673 INTYPFLG
055510,000323: 13,2624 43014 CLEAR CLEAR
055511,000324: 13,2625 01676 DIM0FLAG
055512,000325: 13,2626 01675 D6OR9FLG
055513,000326: 13,2627 77616 RVQ
055514,000327: 13,2630 77776 NOINT EXIT
055515,000328: 13,2631 05301 TC PHASCHNG
055516,000329: 13,2632 00002 OCT 2
055517,000330:
055518,000331: 13,2633 05447 TC DOWNFLAG
055519,000332: 13,2634 00221 ADRES QUITFLAG
055520,000333:
055521,000334: 13,2635 05112 TC ENDOFJOB
055522,000335:
055523,000336: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
055524,000337:
055525,000338: # CALLING SEQUENCE
055526,000339: # L CALL
055527,000340: # L+1 ATOPCSM
055528,000341:
055529,000342: # NORMAL EXIT AT L+2
055530,000343:
055531,000344: 13,2636 47020 ATOPCSM STQ RTB
055532,000345: 13,2637 00051 S2
055533,000346: 13,2640 26651 MOVEACSM
055534,000347: 13,2641 45014 SET CALL
055535,000348: 13,2642 04063 CMOONFLG
055536,000349: # Page 1297
055537,000350: 13,2643 20237 SVDWN1
055538,000351: 13,2644 43014 BON CLRGO
055539,000352: 13,2645 00303 MOONFLAG
055540,000353: 13,2646 00051 S2
055541,000354: 13,2647 04223 CMOONFLG
055542,000355: 13,2650 00051 S2
055543,000356: 13,2651 03015 MOVEACSM TC SETBANK
055544,000357: 13,2652 55500 TS DIFEQCNT # INITIALIZE INDEX
055545,000358: 13,2653 51500 INDEX DIFEQCNT
055546,000359: 13,2654 31502 CA RRECT
055547,000360: 13,2655 51500 INDEX DIFEQCNT
055548,000361: 13,2656 55554 TS RRECTCSM
055549,000362: 13,2657 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
055550,000363: 13,2660 12652 TCF MOVEACSM +1 # NO-LOOP
055551,000364: 13,2661 06030 TC DANZIG # COMPLETE -- RETURN
055552,000365:
055553,000366: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
055554,000367:
055555,000368: # CALLING SEQUENCE
055556,000369: # L CALL
055557,000370: # PTOACSM
055558,000371:
055559,000372: # NORMAL EXIT AT L+2
055560,000373:
055561,000374: 13,2662 43034 PTOACSM RTB BON
055562,000375: 13,2663 26700 MOVEPCSM
055563,000376: 13,2664 04303 CMOONFLG
055564,000377: 13,2665 26673 SETMOON
055565,000378: 13,2666 66214 CLRMOON CLEAR SSP
055566,000379: 13,2667 00263 MOONFLAG
055567,000380: 13,2670 02151 PBODY
055568,000381: 13,2671 00000 0
055569,000382: 13,2672 77616 RVQ
055570,000383: 13,2673 66214 SETMOON SET SSP
055571,000384: 13,2674 00063 MOONFLAG
055572,000385: 13,2675 02151 PBODY
055573,000386: 13,2676 00002 2
055574,000387: 13,2677 77616 RVQ
055575,000388: 13,2700 03015 MOVEPCSM TC SETBANK
055576,000389: 13,2701 55500 TS DIFEQCNT
055577,000390: 13,2702 51500 INDEX DIFEQCNT
055578,000391: 13,2703 31554 CA RRECTCSM
055579,000392: 13,2704 51500 INDEX DIFEQCNT
055580,000393: 13,2705 55502 TS RRECT
055581,000394: 13,2706 11500 CCS DIFEQCNT
055582,000395: 13,2707 12701 TCF MOVEPCSM +1
055583,000396: 13,2710 06030 TC DANZIG
055584,000397:
055585,000398: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
055586,000399: # Page 1298
055587,000400: 13,2711 47020 ATOPLEM STQ RTB
055588,000401: 13,2712 00051 S2
055589,000402: 13,2713 26724 MOVEALEM
055590,000403: 13,2714 45014 SET CALL
055591,000404: 13,2715 04064 LMOONFLG
055592,000405: 13,2716 20263 SVDWN2
055593,000406: 13,2717 43014 BON CLRGO
055594,000407: 13,2720 00303 MOONFLAG
055595,000408: 13,2721 00051 S2
055596,000409: 13,2722 04224 LMOONFLG
055597,000410: 13,2723 00051 S2
055598,000411: 13,2724 03015 MOVEALEM TC SETBANK
055599,000412: 13,2725 55500 TS DIFEQCNT
055600,000413: 13,2726 51500 INDEX DIFEQCNT
055601,000414: 13,2727 31502 CA RRECT
055602,000415: 13,2730 51500 INDEX DIFEQCNT
055603,000416: 13,2731 55626 TS RRECTLEM
055604,000417: 13,2732 11500 CCS DIFEQCNT
055605,000418: 13,2733 12725 TCF MOVEALEM +1
055606,000419: 13,2734 06030 TC DANZIG
055607,000420:
055608,000421: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
055609,000422:
055610,000423: 13,2735 47014 PTOALEM BON RTB
055611,000424: 13,2736 04307 SURFFLAG
055612,000425: 13,2737 26756 USEPIOS
055613,000426: 13,2740 26745 MOVEPLEM
055614,000427: 13,2741 52014 BON GOTO
055615,000428: 13,2742 04304 LMOONFLG
055616,000429: 13,2743 26673 SETMOON
055617,000430: 13,2744 26666 CLRMOON
055618,000431: 13,2745 03015 MOVEPLEM TC SETBANK
055619,000432: 13,2746 55500 TS DIFEQCNT
055620,000433: 13,2747 51500 INDEX DIFEQCNT
055621,000434: 13,2750 31626 CA RRECTLEM
055622,000435: 13,2751 51500 INDEX DIFEQCNT
055623,000436: 13,2752 55502 TS RRECT
055624,000437: 13,2753 11500 CCS DIFEQCNT
055625,000438: 13,2754 12746 TCF MOVEPLEM +1
055626,000439: 13,2755 06030 TC DANZIG
055627,000440:
055628,000441: 13,2756 77201 USEPIOS SETPD VLOAD
055629,000442: 13,2757 00001 0
055630,000443: 13,2760 02026 RLS
055631,000444: 13,2761 41525 PDDL PUSH
055632,000445: 13,2762 00041 TDEC1
055633,000446: 13,2763 15517 STODL TET
055634,000447: 13,2764 27756 5/8
055635,000448: # Page 1299
055636,000449: 13,2765 77624 CALL
055637,000450: 13,2766 55341 RP-TO-R
055638,000451: 13,2767 25535 STOVL RCV
055639,000452: 13,2770 11450 ZUNIT
055640,000453: 13,2771 14001 STODL 0D
055641,000454: 13,2772 01517 TET
055642,000455: 13,2773 14007 STODL 6D
055643,000456: 13,2774 27756 5/8
055644,000457: 13,2775 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT
055645,000458: 13,2776 00063 MOONFLAG
055646,000459: 13,2777 55341 RP-TO-R
055647,000460: 13,3000 74235 VXV VXSC
055648,000461: 13,3001 01535 RCV
055649,000462: 13,3002 27014 OMEGMOON
055650,000463: 13,3003 25543 STOVL VCV
055651,000464: 13,3004 11456 ZEROVEC
055652,000465: 13,3005 01521 STORE TDELTAV
055653,000466: 13,3006 67174 AXT,2 SXA,2
055654,000467: 13,3007 00002 2
055655,000468: 13,3010 02150 PBODY
055656,000469: 13,3011 35527 STCALL TNUV
055657,000470: 13,3012 27136 A-PCHK
055658,000471: 13,3013 07112 06620 OMEGMOON 2DEC* 2.66169947 E-8 B+23*
055659,000472:
055660,000473: 13,3015 33021 SETBANK CAF INTBANK
055661,000474: 13,3016 54006 TS BBANK
055662,000475: 13,3017 33436 CAF FORTYONE
055663,000476: 13,3020 00002 TC Q
055664,000477: 13,3021 E3,1554 EBANK= RRECTCSM
055665,000478: 13,3021 26063 INTBANK BBCON INTEGRV
055666,000479:
055667,000480: # SPECIAL PURPOS ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
055668,000481: # APPROPRIATE SWITCHES SET OR CLEARED FOR TEH DESIRED INTEGRATION.
055669,000482:
055670,000483: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1.
055671,000484: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
055672,000485: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
055673,000486:
055674,000487: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLER'S METHOD TO THE TIME INDICATED IN TDEC1.
055675,000488: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
055676,000489: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLER'S EQUATION.
055677,000490:
055678,000491: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
055679,000492: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS:
055680,000493: # CSMPREC CSMCONIC LEMPREC LEMCONIC
055681,000494: # VINTFLAG SET SET CLEAR CLEAR
055682,000495: # INTYPFLG CLEAR SET CLEAR SET
055683,000496: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
055684,000497: # Page 1300
055685,000498:
055686,000499: # CALLING SEQUENCE
055687,000500: # L-X STORE TDEC1
055688,000501: # L CALL (STCALL TDEC1)
055689,000502: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
055690,000503:
055691,000504: # NORMAL EXIT TO L+2
055692,000505:
055693,000506: # SUBROUTINES CALLED
055694,000507: # INTEGRV1
055695,000508: # PRECOUT FOR CSMPREC AND LEMPREC
055696,000509: # CONICOUT FOR CSMCONIC AND LEMCONIC
055697,000510:
055698,000511: # OUTPUT -- SEE PAGE 2 OF THIS LOG SECTION
055699,000512:
055700,000513: # INPUT
055701,000514: # TDEC1 TIME TO INTEGRATE TO. CSECS B-28
055702,000515:
055703,000516: 13,3022 45020 CSMPREC STQ CALL
055704,000517: 13,3023 00046 X1
055705,000518: 13,3024 27371 INTSTALL
055706,000519: 13,3025 43130 SXA,1 SET
055707,000520: 13,3026 02214 IRETURN
055708,000521: 13,3027 01474 VINTFLAG
055709,000522:
055710,000523: 13,3030 43014 IFLAGP SET CLEAR
055711,000524: 13,3031 01467 PRECIFLG
055712,000525: 13,3032 01676 DIM0FLAG
055713,000526: 13,3033 77614 CLRGO
055714,000527: 13,3034 01633 INTYPFLG
055715,000528: 13,3035 27115 INTEGRV1
055716,000529: 13,3036 45020 LEMPREC STQ CALL
055717,000530: 13,3037 00046 X1
055718,000531: 13,3040 27371 INTSTALL
055719,000532: 13,3041 43130 SXA,1 CLRGO
055720,000533: 13,3042 02214 IRETURN
055721,000534: 13,3043 01634 VINTFLAG
055722,000535: 13,3044 27030 IFLAGP
055723,000536:
055724,000537: 13,3045 45020 CSMCONIC STQ CALL
055725,000538: 13,3046 00046 X1
055726,000539: 13,3047 27371 INTSTALL
055727,000540: 13,3050 43130 SXA,1 SET
055728,000541: 13,3051 02214 IRETURN
055729,000542: 13,3052 01474 VINTFLAG
055730,000543: 13,3053 43014 IFLAGC CLEAR SETGO
055731,000544: 13,3054 01676 DIM0FLAG
055732,000545: 13,3055 01433 INTYPFLG
055733,000546: 13,3056 27115 INTEGRV1
055734,000547: 13,3057 45020 LEMCONIC STQ CALL
055735,000548: 13,3060 00046 X1
055736,000549: # Page 1301
055737,000550: 13,3061 27371 INTSTALL
055738,000551: 13,3062 43130 SXA,1 CLRGO
055739,000552: 13,3063 02214 IRETURN
055740,000553: 13,3064 01634 VINTFLAG
055741,000554: 13,3065 27053 IFLAGC
055742,000555:
055743,000556: 13,3066 66214 INTEGRVS SET SSP
055744,000557: 13,3067 01467 PRECIFLG
055745,000558: 13,3070 02151 PBODY
055746,000559: 13,3071 00000 0
055747,000560: 13,3072 66214 BOF SSP
055748,000561: 13,3073 00343 MOONFLAG
055749,000562: 13,3074 27077 +3
055750,000563: 13,3075 02151 PBODY
055751,000564: 13,3076 00002 2
055752,000565: 13,3077 77220 STQ VLOAD
055753,000566: 13,3100 02214 IRETURN
055754,000567: 13,3101 11456 ZEROVEC
055755,000568: 13,3102 01521 STORE TDELTAV
055756,000569: 13,3103 35527 STCALL TNUV
055757,000570: 13,3104 23344 RECTIFY
055758,000571: 13,3105 43014 CLEAR SET
055759,000572: 13,3106 01676 DIM0FLAG
055760,000573: 13,3107 04062 NEWIFLG
055761,000574: 13,3110 77614 SETGO
055762,000575: 13,3111 04020 RPQFLAG
055763,000576: 13,3112 27127 ALOADED
055764,000577:
055765,000578: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER,
055766,000579: # NORMALLY THE NAVIGATION PROGRAM, TO SET THE INTEG. FLAGS. THE ROUTINE
055767,000580: # IS ENTERED AT INTEGRV1 BY CSMPREC ET. AL. AND AT ALOADED BY INTEGRVS.
055768,000581: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
055769,000582: # PROGRAM FOR PRECISION OR CONIC.
055770,000583:
055771,000584: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
055772,000585: # SETTING ANY FLAGS.
055773,000586:
055774,000587: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
055775,000588: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
055776,000589: # INTYPFLG
055777,000590: # DIM0FLAG
055778,000591: # D6OR9FLG
055779,000592:
055780,000593: # CALLING SEQUENCE
055781,000594: # L-X CALL
055782,000595: # L-Y INTSTALL
055783,000596: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
055784,000597: # AND DIM0FLAG IS CLEAR.
055785,000598: # L CALL
055786,000599: # L+1 INTEGRV
055787,000600:
055788,000601: # INITIALIZATION
055789,000602: # FLAGS AS ABOVE
055790,000603: # STORE TIME TO INTEGRATE TO IN TDEC1
055791,000604:
055792,000605: # Page 1302
055793,000606: # OUTPUT
055794,000607: # RATT AS
055795,000608: # VATT DEFINED
055796,000609: # TAT BEFORE
055797,000610:
055798,000611: 13,3113 77620 INTEGRV STQ
055799,000612: 13,3114 02214 IRETURN
055800,000613: 13,3115 43014 INTEGRV1 SET SET
055801,000614: 13,3116 04060 RPQFLAG
055802,000615: 13,3117 04062 NEWIFLG
055803,000616: 13,3120 77731 INTEGRV2 SSP
055804,000617: 13,3121 00053 QPRET
055805,000618: 13,3122 27127 ALOADED
055806,000619: 13,3123 52014 BON GOTO
055807,000620: 13,3124 01714 VINTFLAG
055808,000621: 13,3125 26662 PTOACSM
055809,000622: 13,3126 26735 PTOALEM
055810,000623: 13,3127 77745 ALOADED DLOAD
055811,000624: 13,3130 00041 TDEC1
055812,000625: 13,3131 01101 STORE TDEC
055813,000626: 13,3132 52014 BOFF GOTO
055814,000627: 13,3133 01753 INTYPFLG
055815,000628: 13,3134 27234 TESTLOOP
055816,000629: 13,3135 27220 RVCON
055817,000630: 13,3136 77414 A-PCHK BOFCLR EXIT
055818,000631: 13,3137 01652 STATEFLG
055819,000632: 13,3140 27157 RECTOUT
055820,000633: 13,3141 05301 TC PHASCHNG
055821,000634: 13,3142 04022 OCT 04022
055822,000635: 13,3143 05435 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
055823,000636: 13,3144 00236 ADRES REINTFLG # INTSTALL AND INTWAKE
055824,000637: 13,3145 06006 TC INTPRET
055825,000638: 13,3146 77731 SSP
055826,000639: 13,3147 00053 QPRET
055827,000640: 13,3150 27155 PHEXIT
055828,000641: 13,3151 52014 BON GOTO
055829,000642: 13,3152 01714 VINTFLAG
055830,000643: 13,3153 26636 ATOPCSM
055831,000644: 13,3154 26711 ATOPLEM
055832,000645: 13,3155 77624 PHEXIT CALL
055833,000646: 13,3156 56741 GRP2PC
055834,000647: 13,3157 45001 RECTOUT SETPD CALL
055835,000648: 13,3160 00001 0
055836,000649: 13,3161 23344 RECTIFY
055837,000650: 13,3162 53775 VLOAD VSL*
055838,000651: 13,3163 01503 RRECT
055839,000652: 13,3164 57576 0,2
055840,000653: 13,3165 53715 PDVL VSL* # RATT TO PD0
055841,000654: 13,3166 01511 VRECT
055842,000655: # Page 1303
055843,000656: 13,3167 57576 0,2
055844,000657: 13,3170 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
055845,000658: 13,3171 01517 TET
055846,000659: 13,3172 01503 RRECT
055847,000660: 13,3173 64715 PDVL PDDL*
055848,000661: 13,3174 01511 VRECT
055849,000662: 13,3175 50041 MUEARTH,2
055850,000663: 13,3176 76006 PUSH AXT,1
055851,000664: 13,3177 77765 DEC -10 B-14
055852,000665: 13,3200 76014 BON AXT,1
055853,000666: 13,3201 00303 MOONFLAG
055854,000667: 13,3202 27204 +2
055855,000668: 13,3203 77775 DEC -2 B-14
055856,000669: 13,3204 40001 INTEXIT SETPD BOV
055857,000670: 13,3205 00001 0
055858,000671: 13,3206 27207 +1
055859,000672: 13,3207 43014 CLEAR CLEAR
055860,000673: 13,3210 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
055861,000674: 13,3211 01667 PRECIFLG
055862,000675: 13,3212 77535 SLOAD EXIT
055863,000676: 13,3213 02215 IRETURN
055864,000677: 13,3214 30154 CA MPAC
055865,000678: 13,3215 50120 INDEX FIXLOC
055866,000679: 13,3216 54052 TS QPRET
055867,000680: 13,3217 03406 TC INTWAKE
055868,000681:
055869,000682: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
055870,000683: # VELOCITY FOR THE INTERVAL (TET-TDEC)
055871,000684:
055872,000685: 13,3220 45345 RVCON DLOAD DSU
055873,000686: 13,3221 01101 TDEC
055874,000687: 13,3222 01517 TET
055875,000688: 13,3223 36312 STCALL TAU.
055876,000689: 13,3224 23344 RECTIFY
055877,000690: 13,3225 77624 CALL
055878,000691: 13,3226 22310 KEPPREP
055879,000692: 13,3227 43345 DLOAD DAD
055880,000693: 13,3230 01551 TC
055881,000694: 13,3231 01517 TET
055882,000695: 13,3232 35517 STCALL TET
055883,000696: 13,3233 27157 RECTOUT
055884,000697:
055885,000698: # Page 1304
055886,000699: 13,3234 43014 TESTLOOP BOF CLRGO
055887,000700: 13,3235 04752 QUITFLAG
055888,000701: 13,3236 27241 +3
055889,000702: 13,3237 01632 STATEFLG
055890,000703: 13,3240 27204 INTEXIT # STOP INTEGRATION
055891,000704: 13,3241 73001 +3 SETPD LXA,2
055892,000705: 13,3242 00013 10D
055893,000706: 13,3243 02150 PBODY
055894,000707: 13,3244 51575 VLOAD ABVAL
055895,000708: 13,3245 01535 RCV
055896,000709: 13,3246 43006 PUSH CLEAR # RC TO 10D
055897,000710: 13,3247 00262 MIDFLAG
055898,000711: 13,3250 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP
055899,000712: 13,3251 67241 RME,2
055900,000713: 13,3252 27255 +3
055901,000714: 13,3253 77614 SET
055902,000715: 13,3254 00062 MIDFLAG
055903,000716: 13,3255 41345 NORFINAL DLOAD DMP
055904,000717: 13,3256 00013 10D
055905,000718: 13,3257 00043 34D
055906,000719: 13,3260 55762 SR1R DDV*
055907,000720: 13,3261 50041 MUEARTH,2
055908,000721: 13,3262 41366 SQRT DMP
055909,000722: 13,3263 23675 .3D
055910,000723: 13,3264 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE
055911,000724: 13,3265 54345 DLOAD SL
055912,000725: 13,3266 00155 MPAC
055913,000726: 13,3267 20220 15D # OF 128 CSECS.
055914,000727: 13,3270 40006 PUSH BOV
055915,000728: 13,3271 27316 MAXDT
055916,000729: 13,3272 50021 BDSU BMN
055917,000730: 13,3273 27370 DT/2MAX
055918,000731: 13,3274 27316 MAXDT
055919,000732: 13,3275 45345 DT/2COMP DLOAD DSU
055920,000733: 13,3276 01101 TDEC
055921,000734: 13,3277 01517 TET
055922,000735: 13,3300 54234 RTB SL
055923,000736: 13,3301 45541 SGNAGREE
055924,000737: 13,3302 20211 8D
055925,000738: 13,3303 02314 STORE DT/2 # B-19
055926,000739: 13,3304 51400 BOV ABS
055927,000740: 13,3305 27322 GETMAXDT
055928,000741: 13,3306 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
055929,000742: 13,3307 00015 12D
055930,000743: 13,3310 27326 P00HCHK
055931,000744: 13,3311 75345 USEMAXDT DLOAD SIGN
055932,000745: 13,3312 00015 12D
055933,000746: 13,3313 02314 DT/2
055934,000747: # Page 1305
055935,000748: 13,3314 36314 STCALL DT/2
055936,000749: 13,3315 27326 P00HCHK
055937,000750: 13,3316 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
055938,000751: 13,3317 27370 DT/2MAX
055939,000752: 13,3320 77650 GOTO
055940,000753: 13,3321 27275 DT/2COMP
055941,000754: 13,3322 77634 GETMAXDT RTB
055942,000755: 13,3323 45707 SIGNMPAC
055943,000756: 13,3324 36314 STCALL DT/2
055944,000757: 13,3325 27311 USEMAXDT
055945,000758: 13,3326 51545 P00HCHK DLOAD ABS
055946,000759: 13,3327 02314 DT/2
055947,000760: 13,3330 50025 DSU BMN
055948,000761: 13,3331 27366 DT/2MIN
055949,000762: 13,3332 27136 A-PCHK
055950,000763: 13,3333 46135 SLOAD BHIZ
055951,000764: 13,3334 01012 MODREG
055952,000765: 13,3335 27340 +3
055953,000766: 13,3336 77650 GOTO
055954,000767: 13,3337 23155 TIMESTEP
055955,000768: 13,3340 77614 BON # WAS THIS CALL VIA CSM(LEM)PREC
055956,000769: 13,3341 01707 PRECIFLG
055957,000770: 13,3342 23155 TIMESTEP # YES
055958,000771: 13,3343 45345 DLOAD DSU
055959,000772: 13,3344 02314 DT/2
055960,000773: 13,3345 00015 12D
055961,000774: 13,3346 43040 BMN BOFCLR
055962,000775: 13,3347 27136 A-PCHK
055963,000776: 13,3350 04242 NEWIFLG
055964,000777: 13,3351 23155 TIMESTEP
055965,000778: 13,3352 45345 DLOAD DSU
055966,000779: 13,3353 01101 TDEC
055967,000780: 13,3354 01517 TET
055968,000781: 13,3355 77640 BMN # NO BACKWARD INTEGRATION
055969,000782: 13,3356 27204 INTEXIT
055970,000783: 13,3357 40525 PDDL SR4
055971,000784: 13,3360 02314 DT/2 # IS 4(DT) LS (TDEC - TET)
055972,000785: 13,3361 44322 SR2R BDSU
055973,000786: 13,3362 52040 BMN GOTO
055974,000787: 13,3363 27204 INTEXIT
055975,000788: 13,3364 23155 TIMESTEP
055976,000789: 13,3365 00000 01400 DT/2MIN 2DEC 3 B-20
055977,000790: 13,3367 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
055978,000791:
055979,000792: 13,3371 77776 INTSTALL EXIT
055980,000793: 13,3372 34714 CAF ZERO
055981,000794: 13,3373 54001 ALLSTALL TS L
055982,000795: 13,3374 30106 CA RASFLAG
055983,000796: 13,3375 50001 INDEX L
055984,000797: # Page 1306
055985,000798: 13,3376 73467 MASK INTBITAB # IS THIS STALL AREA FREE
055986,000799: 13,3377 00006 EXTEND
055987,000800: 13,3400 13445 BZF OKTOGRAB # YES
055988,000801: 13,3401 50001 INDEX L
055989,000802: 13,3402 33464 CAF WAKESTAL
055990,000803: 13,3403 05070 TC JOBSLEEP
055991,000804: 13,3404 77776 INTWAKE0 EXIT
055992,000805: 13,3405 13426 TCF INTWAKE1
055993,000806:
055994,000807: 13,3406 40106 INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
055995,000808: 13,3407 74704 MASK REINTBIT # RESTARTED
055996,000809: 13,3410 10000 CCS A
055997,000810: 13,3411 03426 TC INTWAKE1 # NO
055998,000811:
055999,000812: 13,3412 50120 INDEX FIXLOC
056000,000813: 13,3413 30052 CA QPRET
056001,000814: 13,3414 55055 TS TBASE2 # YES, DON'T RESTART WITH SOMEONE ELSE'S Q
056002,000815:
056003,000816: 13,3415 05301 TC PHASCHNG
056004,000817: 13,3416 04022 OCT 04022
056005,000818:
056006,000819: 13,3417 31055 CA TBASE2
056007,000820: 13,3420 50120 INDEX FIXLOC
056008,000821: 13,3421 54052 TS QPRET
056009,000822:
056010,000823: 13,3422 34704 CAF REINTBIT
056011,000824: 13,3423 70106 MASK RASFLAG
056012,000825: 13,3424 00006 EXTEND
056013,000826: 13,3425 13450 BZF GOBAC # DON'T INTWAKE IF WE CAME HERE VIA RESTART
056014,000827:
056015,000828: 13,3426 34714 INTWAKE1 CAF ZERO
056016,000829: 13,3427 54154 WAKE TS STALTEM # INDEX OF ANY STALL USER
056017,000830: 13,3430 50154 WAKE1 INDEX STALTEM
056018,000831: 13,3431 33464 CAF WAKESTAL
056019,000832: 13,3432 00004 INHINT
056020,000833: 13,3433 05074 TC JOBWAKE
056021,000834: 13,3434 10064 CCS LOCCTR
056022,000835: 13,3435 13430 TCF WAKE1 # MAY BE MORE TO WAKE UP
056023,000836: 13,3436 00051 FORTYONE DEC 41 B-14
056024,000837: 13,3437 50154 INDEX STALTEM
056025,000838: 13,3440 43467 CS INTBITAB
056026,000839: 13,3441 70106 MASK RASFLAG
056027,000840: 13,3442 54106 TS RASFLAG # RELEASE STALL AREA
056028,000841: 13,3443 00003 RELINT
056029,000842: 13,3444 13450 TCF GOBAC
056030,000843: 13,3445 50001 OKTOGRAB INDEX L
056031,000844: 13,3446 34675 CAF INTFLBIT
056032,000845: 13,3447 26106 ADS RASFLAG
056033,000846: 13,3450 06006 GOBAC TC INTPRET
056034,000847: 13,3451 77616 RVQ
056035,000848: # Page 1307
056036,000849: 13,3452 77776 ERASTAL1 EXIT
056037,000850: 13,3453 34712 CAF ONE
056038,000851: 13,3454 13373 TCF ALLSTALL
056039,000852: 13,3455 77776 ERASTAL2 EXIT
056040,000853: 13,3456 34711 CAF TWO
056041,000854: 13,3457 13373 TCF ALLSTALL
056042,000855: 13,3460 34712 ERASWAK1 CAF ONE
056043,000856: 13,3461 13427 TCF WAKE
056044,000857: 13,3462 34711 ERASWAK2 CAF TWO
056045,000858: 13,3463 13427 TCF WAKE
056046,000859: 13,3464 27372 WAKESTAL CADR INTSTALL +1
056047,000860: 13,3465 27453 CADR ERASTAL1 +1
056048,000861: 13,3466 27456 CADR ERASTAL2 +1
056049,000862: 13,3467 0154 STALTEM EQUALS MPAC
056050,000863: 13,3467 20100 INTBITAB OCT 20100
056051,000864: 13,3470 10040 OCT 10040
056052,000865: 13,3471 04020 OCT 04020
056053,000866:
056054,000867: # Page 1308
056055,000868: # AVETOMID
056056,000869:
056057,000870: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
056058,000871: # PHASE BY INITIALIZING THIS VEHICLE'S PERMANENT STATE VECTOR WITH THE
056059,000872: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
056060,000873:
056061,000874: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (OR WFLAG OR RENDWFLT IS
056062,000875: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
056063,000876:
056064,000877: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
056065,000878:
056066,000879: # FINALLY TRKMKCNT IS ZEROED.
056067,000880:
056068,000881: 13,2000 SETLOC INTINIT
056069,000882: 13,2000 BANK
056070,000883:
056071,000884: 13,3472 COUNT* $$/INTIN
056072,000885: 13,3472 43020 AVETOMID STQ BON
056073,000886: 13,3473 02317 EGRESS
056074,000887: 13,3474 02716 RENDWFLG
056075,000888: 13,3475 27550 INT/W # W-MATRIX VALID, GO INTEGRATE IT
056076,000889: 13,3476 77614 BON
056077,000890: 13,3477 01711 ORBWFLAG
056078,000891: 13,3500 27550 INT/W # W-MATRIX VALID, GO INTEGRATE IT.
056079,000892:
056080,000893: 13,3501 77614 OTHERS BON # FOR
056081,000894: 13,3502 04307 SURFFLAG # CSM
056082,000895: 13,3503 27520 SETCOAST # DON'T DO LM ONLY
056083,000896: 13,3504 45145 DLOAD CALL # GET SET FOR OTHER VEHICLE INTEGRATION
056084,000897: 13,3505 01205 PIPTIME # DESIRED TIME
056085,000898: 13,3506 27371 INTSTALL
056086,000899: 13,3507 45014 SET CALL
056087,000900: 13,3510 01474 VINTFLAG # CM
056088,000901: 13,3511 26621 SETIFLGS # SETS UP NONE W-MAT. PERMANENT INTEG.
056089,000902: 13,3512 43014 BOF CLEAR
056090,000903: 13,3513 02747 COMPUTER
056091,000904: 13,3514 27516 +2 # COMPUTER IS LM, INTEG CM.
056092,000905: 13,3515 01674 VINTFLAG # COMPUTER IS CM, INTEG LM.
056093,000906: 13,3516 34041 STCALL TDEC1
056094,000907: 13,3517 27113 INTEGRV
056095,000908:
056096,000909: 13,3520 45174 SETCOAST AXT,2 CALL # NOW MOVE PROPERLY SCALE RN,UN AS WELL AS
056097,000910: 13,3521 00002 2 # PIPTIME TO INTEGRATION ERASABLES.
056098,000911: 13,3522 27371 INTSTALL
056099,000912: 13,3523 77014 BON AXT,2
056100,000913: 13,3524 04303 MOONTHIS
056101,000914: 13,3525 27527 +2
056102,000915: 13,3526 00000 0
056103,000916: 13,3527 53775 VLOAD VSR*
056104,000917: # Page 1309
056105,000918: 13,3530 01171 RN
056106,000919: 13,3531 57176 0,2
056107,000920: 13,3532 01503 STORE RRECT
056108,000921: 13,3533 15535 STODL RCV
056109,000922: 13,3534 01205 PIPTIME
056110,000923: 13,3535 25517 STOVL TET
056111,000924: 13,3536 01177 VN
056112,000925: 13,3537 45057 VSR* CALL
056113,000926: 13,3540 57176 0,2
056114,000927: 13,3541 23360 MINIRECT # FINISH SETTING UP STATE VECTOR
056115,000928: 13,3542 66234 RTB SSP
056116,000929: 13,3543 26651 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
056117,000930: 13,3544 01127 TRKMKCNT
056118,000931: 13,3545 00000 0
056119,000932: 13,3546 77650 GOTO
056120,000933: 13,3547 75745 FAZAB5
056121,000934:
056122,000935: 13,3550 45145 INT/W DLOAD CALL
056123,000936: 13,3551 01205 PIPTIME # INTEGRATE W THRU BURN
056124,000937: 13,3552 27371 INTSTALL
056125,000938: 13,3553 43014 SET SET
056126,000939: 13,3554 01476 DIM0FLAG # DO W-MATRIX
056127,000940: 13,3555 04476 AVEMIDSW # SO WON'T CLOBBER RN,VN,PIPTIME
056128,000941: 13,3556 43014 SET CLEAR
056129,000942: 13,3557 01475 D6OR9FLG # 9X9 FOR LM
056130,000943: 13,3560 01674 VINTFLAG # LM
056131,000944: 13,3561 43014 BOF SET
056132,000945: 13,3562 02747 COMPUTER
056133,000946: 13,3563 27567 +4 # LM TO DO
056134,000947: 13,3564 01474 VINTFLAG
056135,000948: 13,3565 77614 CLEAR
056136,000949: 13,3566 01675 D6OR9FLG # 6X6 FOR CM
056137,000950: 13,3567 34041 STCALL TDEC1
056138,000951: 13,3570 27113 INTEGRV
056139,000952: 13,3571 77650 GOTO
056140,000953: 13,3572 27501 OTHERS # NOW GO DO THE OTHER VEHICLE
056141,000954:
056142,000955: # Page 1310
056143,000956: # MIDTOAV1
056144,000957:
056145,000958: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
056146,000959: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
056147,000960: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATION TIME FOR ONE TIME STEP)
056148,000961: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
056149,000962: # IS DONE TO THE CURRENT TIME.
056150,000963: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
056151,000964:
056152,000965: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
056153,000966: # TO THE RETURN ADDRESS.
056154,000967:
056155,000968: # IN EITHER CASE, BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRANSFERRED
056156,000969: # FROM R,VATT TO R,VN1 -- PIPTIME1 IS SET TO THE FINISHING INTEGRATION
056157,000970: # TIME AND MPAC IS SET TO THE DELTA TIME --
056158,000971: # TAT MINUS CURRENT TIME
056159,000972:
056160,000973: # MIDTOAV2
056161,000974:
056162,000975: # THIS ROUTINE INTEGRATES THIS VEHICLE'S STATE VECTOR TO THE CURRENT TIME.
056163,000976: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
056164,000977: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1 -- PIPTIME1 -- AND MPAC DONE
056165,000978:
056166,000979: 13,3573 1127 EBANK= IRETURN1
056167,000980: 13,3573 43020 MIDTOAV2 STQ CLRGO # INTEGRATE TO PRESENT TIME PLUS TIMEDELT
056168,000981: 13,3574 01127 IRETURN1
056169,000982: 13,3575 04634 MID1FLAG
056170,000983: 13,3576 27612 ENTMID2
056171,000984:
056172,000985: 13,3577 43020 MIDTOAV1 STQ SET # INTEGRATE TO TDEC1
056173,000986: 13,3600 01127 IRETURN1
056174,000987: 13,3601 04474 MID1FLAG
056175,000988: 13,3602 43234 RTB DAD # INITIAL CHECK, IS TDEC1 IN THE FUTURE
056176,000989: 13,3603 45505 LOADTIME
056177,000990: 13,3604 27714 TIMEDELT
056178,000991: 13,3605 51021 BDSU BPL
056179,000992: 13,3606 00041 TDEC1
056180,000993: 13,3607 27616 ENTMID1 # Y5S
056181,000994: 13,3610 77624 CALL
056182,000995: 13,3611 27702 NOTIME # NO, SET ALARM, SWITCH TO MIDTOAV2
056183,000996:
056184,000997: 13,3612 43234 ENTMID2 RTB DAD
056185,000998: 13,3613 45505 LOADTIME
056186,000999: 13,3614 27714 TIMEDELT
056187,001000: 13,3615 00041 STORE TDEC1
056188,001001:
056189,001002: 13,3616 77624 ENTMID1 CALL
056190,001003: 13,3617 27371 INTSTALL
056191,001004: 13,3620 45014 CLEAR CALL
056192,001005: # Page 1311
056193,001006: 13,3621 01676 DIM0FLAG # NO W-MATRIX
056194,001007: 13,3622 26034 THISVINT
056195,001008: 13,3623 43014 CLEAR SET
056196,001009: 13,3624 01673 INTYPFLG
056197,001010: 13,3625 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
056198,001011: 13,3626 77624 CALL
056199,001012: 13,3627 27113 INTEGRV # GO INTEGRATE
056200,001013: 13,3630 77214 CLEAR VLOAD
056201,001014: 13,3631 04675 MIDAVFLG
056202,001015: 13,3632 00001 RATT
056203,001016: 13,3633 25232 STOVL RN1
056204,001017: 13,3634 00007 VATT
056205,001018: 13,3635 15240 STODL VN1
056206,001019: 13,3636 00015 TAT
056207,001020: 13,3637 01246 STORE PIPTIME1
056208,001021: 13,3640 66134 SXA,2 SXA,1
056209,001022: 13,3641 03746 RTX2
056210,001023: 13,3642 03745 RTX1
056211,001024: 13,3643 77776 EXIT
056212,001025:
056213,001026: 13,3644 00004 INHINT
056214,001027: 13,3645 00006 EXTEND
056215,001028: 13,3646 40025 DCS TIME2
056216,001029: 13,3647 20155 DAS MPAC
056217,001030: 13,3650 07226 TC TPAGREE
056218,001031:
056219,001032: 13,3651 31127 CA IRETURN1
056220,001033: 13,3652 04577 TC BANKJUMP
056221,001034: 13,3653 47014 CKMID2 BOF RTB
056222,001035: 13,3654 04754 MID1FLAG
056223,001036: 13,3655 27672 MID2
056224,001037: 13,3656 45505 LOADTIME
056225,001038: 13,3657 44215 DAD BDSU
056226,001039: 13,3660 27714 TIMEDELT
056227,001040: 13,3661 01101 TDEC
056228,001041: 13,3662 45044 BPL CALL
056229,001042: 13,3663 27234 TESTLOOP # YES
056230,001043: 13,3664 27702 NOTIME
056231,001044:
056232,001045: 13,3665 43234 TIMEINC RTB DAD
056233,001046: 13,3666 45505 LOADTIME
056234,001047: 13,3667 27714 TIMEDELT
056235,001048: 13,3670 35101 STCALL TDEC
056236,001049: 13,3671 27234 TESTLOOP
056237,001050:
056238,001051: 13,3672 45345 MID2 DLOAD DSU
056239,001052: 13,3673 01101 TDEC
056240,001053: 13,3674 01517 TET
056241,001054: 13,3675 45246 ABS DSU
056242,001055: 13,3676 27712 3CSECS
056243,001056:
056244,001057: # Page 1312
056245,001058: 13,3677 52040 BMN GOTO
056246,001059: 13,3700 27136 A-PCHK
056247,001060: 13,3701 27665 TIMEINC
056248,001061:
056249,001062: 13,3702 77414 NOTIME CLEAR EXIT # TOO LATE
056250,001063: 13,3703 04674 MID1FLAG
056251,001064: 13,3704 25127 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
056252,001065: 13,3705 05537 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
056253,001066: 13,3706 01703 OCT 1703 # TIG WILL BE SLIPPED...
056254,001067: 13,3707 06006 TC INTPRET
056255,001068: 13,3710 77616 RVQ
056256,001069:
056257,001070: 13,3711 00000 00003 3CSECS 2DEC 3 B-28
056258,001071: 13,3713 00000 02342 TIMEDELT 2DEC 1250 B-28
056259,001072:
056260,001073: 27,2662 BANK 27
056261,001074: 27,2000 SETLOC UPDATE2
056262,001075: 27,2000 BANK
056263,001076: 27,2662 0330 EBANK= INTWAKUQ
056264,001077:
056265,001078: 27,2662 COUNT* $$/INTIN
056266,001079:
056267,001080: 27,2662 0330 INTWAKUQ = INTWAK1Q # TEMPORARY UNTIL NAME OF INTWAK1Q IS CHNG
056268,001081:
056269,001082: 27,2662 00003 INTWAKEU RELINT
056270,001083: 27,2663 00006 EXTEND
056271,001084: 27,2664 22330 QXCH INTWAKUQ # SAVE Q FOR RETURN
056272,001085:
056273,001086: 27,2665 06006 TC INTPRET
056274,001087:
056275,001088: 27,2666 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
056276,001089: 27,2667 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
056277,001090: 27,2670 56727 INTWAKUP
056278,001091:
056279,001092: 27,2671 77775 VLOAD # MOVE PRECT(6) AND VRECT(6) INTO
056280,001093: 27,2672 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
056281,001094: 27,2673 25535 STOVL RCV
056282,001095: 27,2674 01511 VRECT # NOW GO TO `RECTIFY +13D' TO
056283,001096: 27,2675 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
056284,001097: 27,2676 23361 RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2), AND XKEP(2)
056285,001098: 27,2677 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF `UPSVFLAG'
056286,001099: 27,2700 01502 UPSVFLAG # TO `UPDATE MOON STATE VECTOR CODE'
056287,001100: 27,2701 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
056288,001101: 27,2702 16740 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
056289,001102: 27,2703 56710 INTWAKEM # SPHERE OF INFLUENCE........
056290,001103: 27,2704 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
056291,001104: 27,2705 00000 DEC 0 B-14
056292,001105: 27,2706 00223 MOONFLAG
056293,001106: # Page 1313
056294,001107: 27,2707 56713 INTWAKEC
056295,001108: 27,2710 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE.
056296,001109: 27,2711 00002 DEC 2 B-14
056297,001110: 27,2712 00063 MOONFLAG
056298,001111: 27,2713 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
056299,001112: # MOONFLAG SET (OR CLEARED).
056300,001113: 27,2714 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
056301,001114: 27,2715 56723 INTWAKLM # STATE VECTOR UPDATE......
056302,001115: 27,2716 77624 CALL # UPDATE CSM STATE VECTOR
056303,001116: 27,2717 26636 ATOPCSM
056304,001117:
056305,001118: 27,2720 52014 CLEAR GOTO
056306,001119: 27,2721 01671 ORBWFLAG
056307,001120: 27,2722 56725 INTWAKEX
056308,001121:
056309,001122: 27,2723 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
056310,001123: 27,2724 26711 ATOPLEM
056311,001124:
056312,001125: 27,2725 77614 INTWAKEX CLEAR
056313,001126: 27,2726 02676 RENDWFLG
056314,001127:
056315,001128: 27,2727 45131 INTWAKUP SSP CALL # REMOVE `UPDATE STATE VECTOR INDICATOR'
056316,001129: 27,2730 01502 UPSVFLAG
056317,001130: 27,2731 00000 0
056318,001131: 27,2732 27404 INTWAKE0 # RELEASE `GRAB' OF ORBIT INTEG.
056319,001132: 27,2733 77776 EXIT
056320,001133:
056321,001134: 27,2734 05301 TC PHASCHNG
056322,001135: 27,2735 04026 OCT 04026
056323,001136: 27,2736 00330 TC INTWAKUQ
056324,001137:
056325,001138: 27,2737 00002 UPMNSVCD OCT 2
056326,001139: 27,2740 00000 OCT 0
056327,001140:
056328,001141: 27,2741 77420 GRP2PC STQ EXIT
056329,001142: 27,2742 03536 GRP2SVQ
056330,001143: 27,2743 05301 TC PHASCHNG
056331,001144: 27,2744 04022 OCT 04022
056332,001145: 27,2745 06006 TC INTPRET
056333,001146: 27,2746 77650 GOTO
056334,001147: 27,2747 03536 GRP2SVQ
056335,001148:
056336,001149:
056337,001150:
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc