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