Source Code

051035,000001: # Copyright: Public domain. 051036,000002: # Filename: INTEGRATION_INITIALIZATION.agc 051037,000003: # Purpose: Part of the source code for Luminary 1A build 099. 051038,000004: # It is part of the source code for the Lunar Module's (LM) 051039,000005: # Apollo Guidance Computer (AGC), for Apollo 11. 051040,000006: # Assembler: yaYUL 051041,000007: # Contact: Ron Burkey <info@sandroid.org>. 051042,000008: # Website: www.ibiblio.org/apollo. 051043,000009: # Pages: 1205-1226 051044,000010: # Mod history: 2009-05-26 RSB Adapted from the corresponding 051045,000011: # Luminary131 file, using page 051046,000012: # images from Luminary 1A. 051047,000013: # 2011-01-06 JL Fixed pseudo-label indentation. 051048,000014: 051049,000015: # This source code has been transcribed or otherwise adapted from 051050,000016: # digitized images of a hardcopy from the MIT Museum. The digitization 051051,000017: # was performed by Paul Fjeld, and arranged for by Deborah Douglas of 051052,000018: # the Museum. Many thanks to both. The images (with suitable reduction 051053,000019: # in storage size and consequent reduction in image quality as well) are 051054,000020: # available online at www.ibiblio.org/apollo. If for some reason you 051055,000021: # find that the images are illegible, contact me at info@sandroid.org 051056,000022: # about getting access to the (much) higher-quality images which Paul 051057,000023: # actually created. 051058,000024: 051059,000025: # Notations on the hardcopy document read, in part: 051060,000026: 051061,000027: # Assemble revision 001 of AGC program LMY99 by NASA 2021112-61 051062,000028: # 16:27 JULY 14, 1969 051063,000029: 051064,000030: # Page 1205 051065,000031: # 1.0 INTRODUCTION 051066,000032: # ---------------- 051067,000033: 051068,000034: # FROM A USER'S POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION 051069,000035: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND 051070,000036: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF 051071,000037: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUTSIDE 051072,000038: # THE LUNAR SPHERE OF INFLUENCE. 051073,000039: 051074,000040: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM 051075,000041: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE 051076,000042: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE 051077,000043: # CALL TC INTSTALL. 051078,000044: 051079,000045: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND 051080,000046: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE 051081,000047: # BOTH THE LM'S POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM. 051082,000048: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND 051083,000049: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL. 051084,000050: 051085,000051: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION 051086,000052: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL 051087,000053: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC "INTEGRATION" THE USER MAY STILL USE ZERO 051088,000054: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME. 051089,000055: 051090,000056: # 2.0 GENERAL DESCRIPTION 051091,000057: # ----------------------- 051092,000058: 051093,000059: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS -- 051094,000060: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR 051095,000061: # 2) INTEGRATES THE W-MATRIX 051096,000062: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR 051097,000063: 051098,000064: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET 051099,000065: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF 051100,000066: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO 051101,000067: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR 051102,000068: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES 051103,000069: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE 051104,000070: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE 051105,000071: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS 051106,000072: # AND/OR STATE VECTOR. 051107,000073: 051108,000074: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE 051109,000075: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION 051110,000076: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS. 051111,000077: 051112,000078: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS. 051113,000079: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV 051114,000080: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.) 051115,000081: 051116,000082: # Page 1206 051117,000083: # APPENDIX B OF THE USERS' GUIDE LISTS THE STATE VECTOR QUANTITIES. 051118,000084: 051119,000085: # 2.1 RESTARTS 051120,000086: 051121,000087: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS 051122,000088: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS 051123,000089: # (I.E., GROUP2) WINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN 051124,000090: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING 051125,000091: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION WHOULD ENSURE THAT IF PHASE CHANGING IS DONE 051126,000092: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST. 051127,000093: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART. 051128,000094: 051129,000095: # 2.2 SCALING 051130,000096: 051131,000097: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN 051132,000098: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTOR DEPENDS ON THE ORIGIN OF THE COORDINATE 051133,000099: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON 051134,000100: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN 051135,000101: # DIFFERENT SCALING. 051136,000102: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME. 051137,000103: 051138,000104: # 3.0 INPUT/OUTPUT 051139,000105: # ---------------- 051140,000106: 051141,000107: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN 051142,000108: # APPENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION). 051143,000109: # FOR INTEGRVS, THE RCV,VCV,TET OR THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG 051144,000110: 051145,000111: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET --- 051146,000112: # EARTH MOON 051147,000113: # 29 27 051148,000114: # RRECTCSM(LEM) RECTIFIED POSITION VECTOR METERS 2 2 051149,000115: 051150,000116: # 7 5 051151,000117: # VRECTCSM(LEM) RECTIFIED VELOCITY VECTOR M/CSEC 2 2 051152,000118: 051153,000119: # 28 28 051154,000120: # TETCSM(LEM) TIME STATE VECTOR IS VALID CSEC 2 2 051155,000121: # CUSTOMARILY 0, BUT NOTE LUNAR 051156,000122: # ORBIT DEPENDENCE ON REAL TIME. 051157,000123: 051158,000124: # 22 18 051159,000125: # DELTAVCSM(LEM) POSITION DEVIATION METERS 2 2 051160,000126: # 0 IF TCCSM(LEM) = 0 051161,000127: 051162,000128: # 3 -1 051163,000129: # NUVCSM(LEM) VELOCITY DEVIATION M/CSEC 2 2 051164,000130: # 0 IF TCCSM(LEM) = 0 051165,000131: # Page 1207 051166,000132: # 29 27 051167,000133: # RCVSM(LEM) CONIC POSITION METERS 2 2 051168,000134: # EQUALS RRECTCSM(LEM) IF 051169,000135: # TCCSM(LEM) = 0 051170,000136: 051171,000137: # 7 5 051172,000138: # VCVCSM(LEM) CONIC VELOCITY M/CSEC 2 2 051173,000139: # EQUALS VRECTCSM(LEM) IF 051174,000140: # TCCSM(LEM) = 0 051175,000141: 051176,000142: # 28 28 051177,000143: # TCCSM(LEM) TIME SINCE RECTIFICATION CSECS 2 2 051178,000144: # CUSTOMARILY 0 051179,000145: 051180,000146: # 1/2 17 16 051181,000147: # XKEPCSM(LEM) ROOT OF KEPLER'S EQUATION M 2 2 051182,000148: # 0 IF TCCSM(LEM) = 0 051183,000149: 051184,000150: # CMOONFLG PERMANENT FLAGS CORRESPONDING 0 0 051185,000151: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1 051186,000152: # LMOONFLG C = CSM, L = LM 0 0 051187,000153: # LMIDFLG 0,1 0,1 051188,000154: 051189,000155: # SURFFLAG LUNAR SURFACE FLAG 0,1 0,1 051190,000156: 051191,000157: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR 051192,000158: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB- 051193,000159: # ROUTINE MUST BE PRESET. 051194,000160: 051195,000161: # OUTPUT 051196,000162: # AFTER EVERY CALL TO INTEGRATION 051197,000163: # EARTH MOON 051198,000164: # 29 29 051199,000165: # 0D RATT POSITION METERS 2 2 051200,000166: 051201,000167: # 7 7 051202,000168: # 6D VATT VELOCITY M/CSEC 2 2 051203,000169: 051204,000170: # 28 28 051205,000171: # 12D TAT TIME 2 2 051206,000172: 051207,000173: # 29 27 051208,000174: # 14D RATT1 POSITION METERS 2 2 051209,000175: 051210,000176: # 7 5 051211,000177: # 20D VATT1 VELOCITY M/CSEC 2 2 051212,000178: 051213,000179: # 3 2 36 30 051214,000180: # 26D MU(P) MU M /CS 2 2 051215,000181: 051216,000182: # X1 MUTABLE ENTRY -2 -10D 051217,000183: 051218,000184: # X2 COORDINT 051219,000185: # X2 COORDINATE SYSTEM ORIGIN 0 2 051220,000186: # (THIS, NOT MOONFLAG, SHOULD BE 051221,000187: # Page 1208 051222,000188: # USED TO DETERMINE ORIGIN.) 051223,000189: 051224,000190: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER 051225,000191: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH 051226,000192: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE 051227,000193: # CALLING PROGRAM. 051228,000194: 051229,000195: # 4.0 CALLING SEQUENCES AND SAMPLE CODE 051230,000196: # ------------------------------------- 051231,000197: 051232,000198: # A) PRECISION ORBITAL INTEGRATION. CSMPREC, LEMPREC ENTRANCES 051233,000199: # L-X STORE TIME TO 96T5791T5 T 95 PUS L9ST (T4531) 051234,000200: # L CALL 051235,000201: # L+1 CSMPREC (OR LEMPREC) 051236,000202: # L+2 RETURN 051237,000203: # INPUT 28 051238,000204: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2 051239,000205: # OUTPUT 051240,000206: # THE DATA LISTED IN SECTION 3.0 PLUS 051241,000207: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY 051242,000208: # BODY... METERS B-29 ONLY IF MIDFLAG = DIM0FLAG = 1 051243,000209: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES 051244,000210: # L-X STORE TIME IN PUSH LIST (TDEC1) 051245,000211: # L CALL 051246,000212: # L+1 CSMCONIC (OR LEMCONIC) 051247,000213: # INPUT/OUTPUT 051248,000214: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET 051249,000215: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE 051250,000216: # CALL 051251,000217: # INTSTALL 051252,000218: # VLOAD 051253,000219: # POSITION VECTOR 051254,000220: # STOVL RCV 051255,000221: # VELOCITY VECTOR 051256,000222: # STODL VCV 051257,000223: # TIME STATE VECTOR VALID 051258,000224: # STODL TET 051259,000225: # FINAL RADIUS 051260,000226: # STORE RFINAL 051261,000227: # SET(CLEAR) SET(CLEAR) 051262,000228: # INTYPFLAG 051263,000229: # MOONFLAG 051264,000230: # SET(CLEAR) DLOAD 051265,000231: # DESIRED TIME 051266,000232: # STCALL TDEC1 051267,000233: # INTEGRVS 051268,000234: # INPUT 051269,000235: # RCV POSITION VECTOR METERS 051270,000236: # VCV VELOCITY VECTOR M/CSEC 051271,000237: # TET TIME OF STATE VECTOR (MAY = 0) CSEC B-28 051272,000238: # Page 1209 051273,000239: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D) 051274,000240: # (MAY BE INCREMENT IF TET=0) 051275,000241: # OUTPUT 051276,000242: # SAME AS FOR PRECISION OR CONIC INTEGRATION, 051277,000243: # DEPENDING ON INTYPFLG. 051278,000244: # D) INTEGRATE STATE VECTOR. INTGRV ENTRANCE 051279,000245: # L-X STORE TIME IN PUSH LIST (TDEC1) (MAY BE DONE AFTER CALL TO INTSTALL) 051280,000246: # L-8 CALL 051281,000247: # L-7 051282,000248: # L-6 SET(CLEAR) SET(CLEAR) 051283,000249: # L-5 VINTFLAG 1=CSM, 0=LM 051284,000250: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION 051285,000251: # L-3 SET(CLEAR) SET(CLEAR) 051286,000252: # L-2 DIM0FLAG 1=W-MATRIX, 0=NO W-MATRIX 051287,000253: # L-1 D6OR9FLG 1=9X9, 0=6X6 051288,000254: # L SET DLOAD 051289,000255: # L+1 STATEFLG DESIRE PERMANENT UPDATE 051290,000256: # L+2 FINAL RAD. OF STATE VECTOR 051291,000257: # L+3 STCALL RFINAL 051292,000258: # L+4 INTEGRV 051293,000259: # L CALL NORMAL USE -- WILL UPDATE STATE 051294,000260: # L+1 INTEGRV VECTOR IF DIM0FLAG=1. (STATEFLG IS 051295,000261: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER 051296,000262: # IT USED.) 051297,000263: # INPUT 051298,000264: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28 051299,000265: # OUTPUT 051300,000266: # SAME AS FOR PRECISION OR CONIC INTEGRATION 051301,000267: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON 051302,000268: # THE PERMANENT STATE VECTOR REPRESENTATION. 051303,000269: 051304,000270: 11,2376 BANK 11 051305,000271: 13,2000 SETLOC INTINIT 051306,000272: 13,2000 BANK 051307,000273: 13,2604 E3,1554 EBANK= RRECTCSM 051308,000274: 13,2604 COUNT* $$/INTIN 051309,000275: 13,2604 05353 STATEINT TC PHASCHNG 051310,000276: 13,2605 00052 OCT 00052 051311,000277: 13,2606 35017 CAF PRIO5 051312,000278: 13,2607 05105 TC FINDVAC 051313,000279: 13,2610 E3,1554 EBANK= RRECTCSM 051314,000280: 13,2610 02613 26063 2CADR STATINT1 051315,000281: 051316,000282: 13,2612 05261 TC TASKOVER 051317,000283: 13,2613 06037 STATINT1 TC INTPRET 051318,000284: 13,2614 47014 BON RTB 051319,000285: 13,2615 04712 QUITFLAG # KILL INTEGRATION UNTIL NEXT P00. 051320,000286: 13,2616 26653 NOINT 051321,000287: 13,2617 21573 LOADTIME 051322,000288: 13,2620 00041 STORE TDEC1 051323,000289: # Page 1210 051324,000290: 13,2621 77624 CALL 051325,000291: 13,2622 27414 INTSTALL 051326,000292: 13,2623 45014 SET CALL 051327,000293: 13,2624 01076 NODOFLAG 051328,000294: 13,2625 26644 SETIFLGS 051329,000295: 13,2626 77650 GOTO 051330,000296: 13,2627 26026 STATEUP 051331,000297: 13,2630 00003 25140 600SECS 2DEC 60000 B-28 051332,000298: 051333,000299: 13,2632 77414 ENDINT CLEAR EXIT 051334,000300: 13,2633 01672 STATEFLG 051335,000301: 13,2634 05353 TC PHASCHNG 051336,000302: 13,2635 20032 OCT 20032 051337,000303: 13,2636 00006 EXTEND 051338,000304: 13,2637 32631 DCA 600SECS 051339,000305: 13,2640 05277 TC LONGCALL 051340,000306: 13,2641 E3,1626 EBANK= RRECTHIS 051341,000307: 13,2641 02604 26063 2CADR STATEINT 051342,000308: 051343,000309: 13,2643 05155 TC ENDOFJOB 051344,000310: 13,2644 43014 SETIFLGS SET CLEAR 051345,000311: 13,2645 01472 STATEFLG 051346,000312: 13,2646 01673 INTYPFLG 051347,000313: 13,2647 43014 CLEAR CLEAR 051348,000314: 13,2650 01676 DIM0FLAG 051349,000315: 13,2651 01675 D6OR9FLG 051350,000316: 13,2652 77616 RVQ 051351,000317: 13,2653 77776 NOINT EXIT 051352,000318: 13,2654 05353 TC PHASCHNG 051353,000319: 13,2655 00002 OCT 00002 051354,000320: 051355,000321: 13,2656 05516 TC DOWNFLAG 051356,000322: 13,2657 00221 ADRES QUITFLAG 051357,000323: 13,2660 05155 TC ENDOFJOB 051358,000324: 051359,000325: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41 051360,000326: 051361,000327: # CALLING SEQUENCE 051362,000328: # L CALL 051363,000329: # L+1 ATOPCSM 051364,000330: 051365,000331: # NORMAL EXIT AT L+2 051366,000332: 051367,000333: 13,2661 47020 ATOPCSM STQ RTB 051368,000334: 13,2662 00051 S2 051369,000335: 13,2663 26674 MOVEACSM 051370,000336: 13,2664 45014 SET CALL 051371,000337: 13,2665 04063 CMOONFLG 051372,000338: 13,2666 26114 SVDWN1 051373,000339: 13,2667 43014 BON CLRGO 051374,000340: # Page 1211 051375,000341: 13,2670 00303 MOONFLAG 051376,000342: 13,2671 00051 S2 051377,000343: 13,2672 04223 CMOONFLG 051378,000344: 13,2673 00051 S2 051379,000345: 13,2674 03036 MOVEACSM TC SETBANK 051380,000346: 13,2675 55500 TS DIFEQCNT # INITIALIZE INDEX 051381,000347: 13,2676 51500 INDEX DIFEQCNT 051382,000348: 13,2677 31502 CA RRECT 051383,000349: 13,2700 51500 INDEX DIFEQCNT 051384,000350: 13,2701 55554 TS RRECTCSM 051385,000351: 13,2702 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE 051386,000352: 13,2703 12675 TCF MOVEACSM +1 # NO-LOOP 051387,000353: 13,2704 06061 TC DANZIG # COMPLETE -- RETURN 051388,000354: 051389,000355: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41 051390,000356: 051391,000357: # CALLING SEQUENCE 051392,000358: # L CALL 051393,000359: # PTOACSM 051394,000360: 051395,000361: # NORMAL EXIT AT L+2 051396,000362: 051397,000363: 13,2705 43034 PTOACSM RTB BON 051398,000364: 13,2706 26723 MOVEPCSM 051399,000365: 13,2707 04303 CMOONFLG 051400,000366: 13,2710 26716 SETMOON 051401,000367: 13,2711 66214 CLRMOON CLEAR SSP 051402,000368: 13,2712 00263 MOONFLAG 051403,000369: 13,2713 02031 PBODY 051404,000370: 13,2714 00000 0 051405,000371: 13,2715 77616 RVQ 051406,000372: 13,2716 66214 SETMOON SET SSP 051407,000373: 13,2717 00063 MOONFLAG 051408,000374: 13,2720 02031 PBODY 051409,000375: 13,2721 00002 2 051410,000376: 13,2722 77616 RVQ 051411,000377: 13,2723 03036 MOVEPCSM TC SETBANK 051412,000378: 13,2724 55500 TS DIFEQCNT 051413,000379: 13,2725 51500 INDEX DIFEQCNT 051414,000380: 13,2726 31554 CA RRECTCSM 051415,000381: 13,2727 51500 INDEX DIFEQCNT 051416,000382: 13,2730 55502 TS RRECT 051417,000383: 13,2731 11500 CCS DIFEQCNT 051418,000384: 13,2732 12724 TCF MOVEPCSM +1 051419,000385: 13,2733 06061 TC DANZIG 051420,000386: 051421,000387: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41 051422,000388: 13,2734 47020 ATOPLEM STQ RTB 051423,000389: # Page 1212 051424,000390: 13,2735 00051 S2 051425,000391: 13,2736 26747 MOVEALEM 051426,000392: 13,2737 45014 SET CALL 051427,000393: 13,2740 04064 LMOONFLG 051428,000394: 13,2741 26070 SVDWN2 051429,000395: 13,2742 43014 BON CLRGO 051430,000396: 13,2743 00303 MOONFLAG 051431,000397: 13,2744 00051 S2 051432,000398: 13,2745 04224 LMOONFLG 051433,000399: 13,2746 00051 S2 051434,000400: 13,2747 03036 MOVEALEM TC SETBANK 051435,000401: 13,2750 55500 TS DIFEQCNT 051436,000402: 13,2751 51500 INDEX DIFEQCNT 051437,000403: 13,2752 31502 CA RRECT 051438,000404: 13,2753 51500 INDEX DIFEQCNT 051439,000405: 13,2754 55626 TS RRECTLEM 051440,000406: 13,2755 11500 CCS DIFEQCNT 051441,000407: 13,2756 12750 TCF MOVEALEM +1 051442,000408: 13,2757 06061 TC DANZIG 051443,000409: 051444,000410: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41 051445,000411: 051446,000412: 13,2760 47014 PTOALEM BON RTB 051447,000413: 13,2761 04307 SURFFLAG 051448,000414: 13,2762 27001 USEPIOS 051449,000415: 13,2763 26770 MOVEPLEM 051450,000416: 13,2764 52014 BON GOTO 051451,000417: 13,2765 04304 LMOONFLG 051452,000418: 13,2766 26716 SETMOON 051453,000419: 13,2767 26711 CLRMOON 051454,000420: 13,2770 03036 MOVEPLEM TC SETBANK 051455,000421: 13,2771 55500 TS DIFEQCNT 051456,000422: 13,2772 51500 INDEX DIFEQCNT 051457,000423: 13,2773 31626 CA RRECTLEM 051458,000424: 13,2774 51500 INDEX DIFEQCNT 051459,000425: 13,2775 55502 TS RRECT 051460,000426: 13,2776 11500 CCS DIFEQCNT 051461,000427: 13,2777 12771 TCF MOVEPLEM +1 051462,000428: 13,3000 06061 TC DANZIG 051463,000429: 051464,000430: 13,3001 77201 USEPIOS SETPD VLOAD 051465,000431: 13,3002 00001 0 051466,000432: 13,3003 02023 RLS 051467,000433: 13,3004 41525 PDDL PUSH 051468,000434: 13,3005 00041 TDEC1 051469,000435: 13,3006 15517 STODL TET 051470,000436: 13,3007 27712 5/8 051471,000437: 13,3010 77624 CALL 051472,000438: # Page 1213 051473,000439: 13,3011 55716 RP-TO-R 051474,000440: 13,3012 25535 STOVL RCV 051475,000441: 13,3013 24001 ZUNIT 051476,000442: 13,3014 14001 STODL 0D 051477,000443: 13,3015 01517 TET 051478,000444: 13,3016 14007 STODL 6D 051479,000445: 13,3017 27712 5/8 051480,000446: 13,3020 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT 051481,000447: 13,3021 00063 MOONFLAG 051482,000448: 13,3022 55716 RP-TO-R 051483,000449: 13,3023 74235 VXV VXSC 051484,000450: 13,3024 01535 RCV 051485,000451: 13,3025 26001 OMEGMOON 051486,000452: 13,3026 25543 STOVL VCV 051487,000453: 13,3027 24007 ZEROVEC 051488,000454: 13,3030 01521 STORE TDELTAV 051489,000455: 13,3031 67174 AXT,2 SXA,2 051490,000456: 13,3032 00002 2 051491,000457: 13,3033 02030 PBODY 051492,000458: 13,3034 35527 STCALL TNUV 051493,000459: 13,3035 27157 A-PCHK 051494,000460: 13,3036 33042 SETBANK CAF INTBANK 051495,000461: 13,3037 54006 TS BBANK 051496,000462: 13,3040 33452 CAF FORTYONE 051497,000463: 13,3041 00002 TC Q 051498,000464: 13,3042 E3,1554 EBANK= RRECTCSM 051499,000465: 13,3042 26063 INTBANK BBCON INTEGRV 051500,000466: 051501,000467: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH 051502,000468: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION. 051503,000469: 051504,000470: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1. 051505,000471: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE. 051506,000472: # THE PERMANENT STATE VECTOR IS NOT UPDATED. 051507,000473: 051508,000474: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLER'S METHOD TO THE TIME INDICATED IN TDEC1. 051509,000475: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN 051510,000476: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLER'S EQUATION. 051511,000477: 051512,000478: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID. 051513,000479: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS: 051514,000480: # CSMPREC CSMCONIC LEMPREC LEMCONIC 051515,000481: # VINTFLAG SET SET CLEAR CLEAR 051516,000482: # INTYPFLG CLEAR SET CLEAR SET 051517,000483: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR 051518,000484: 051519,000485: # CALLING SEQUENCE 051520,000486: # L-X STORE TDEC1 051521,000487: # L CALL (STCALL TDEC1) 051522,000488: # Page 1214 051523,000489: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC) 051524,000490: 051525,000491: # NORMAL EXIT TO L+2 051526,000492: 051527,000493: # SUBROUTINES CALLED 051528,000494: # INTEGRV1 051529,000495: # PRECOUT FOR CSMPREC AND LEMPREC 051530,000496: # CONICOUT FOR CSMCONIC AND LEMCONIC 051531,000497: 051532,000498: # OUTPUT -- SEE PAGE 2 OF THIS LOG SECTION 051533,000499: 051534,000500: # INPUT 051535,000501: # TDEC1 TIME TO INTEGRATE TO. CSECS B-28 051536,000502: 051537,000503: 13,3043 45020 CSMPREC STQ CALL 051538,000504: 13,3044 00046 X1 051539,000505: 13,3045 27414 INTSTALL 051540,000506: 13,3046 43130 SXA,1 SET 051541,000507: 13,3047 02102 IRETURN 051542,000508: 13,3050 01474 VINTFLAG 051543,000509: 051544,000510: 13,3051 43014 IFLAGP SET CLEAR 051545,000511: 13,3052 01467 PRECIFLG 051546,000512: 13,3053 01676 DIM0FLAG 051547,000513: 13,3054 77614 CLRGO 051548,000514: 13,3055 01633 INTYPFLG 051549,000515: 13,3056 27136 INTEGRV1 051550,000516: 13,3057 45020 LEMPREC STQ CALL 051551,000517: 13,3060 00046 X1 051552,000518: 13,3061 27414 INTSTALL 051553,000519: 13,3062 43130 SXA,1 CLRGO 051554,000520: 13,3063 02102 IRETURN 051555,000521: 13,3064 01634 VINTFLAG 051556,000522: 13,3065 27051 IFLAGP 051557,000523: 051558,000524: 13,3066 45020 CSMCONIC STQ CALL 051559,000525: 13,3067 00046 X1 051560,000526: 13,3070 27414 INTSTALL 051561,000527: 13,3071 43130 SXA,1 SET 051562,000528: 13,3072 02102 IRETURN 051563,000529: 13,3073 01474 VINTFLAG 051564,000530: 13,3074 43014 IFLAGC CLEAR SETGO 051565,000531: 13,3075 01676 DIM0FLAG 051566,000532: 13,3076 01433 INTYPFLG 051567,000533: 13,3077 27136 INTEGRV1 051568,000534: 13,3100 45020 LEMCONIC STQ CALL 051569,000535: 13,3101 00046 X1 051570,000536: 13,3102 27414 INTSTALL 051571,000537: 13,3103 43130 SXA,1 CLRGO 051572,000538: 13,3104 02102 IRETURN 051573,000539: # Page 1215 051574,000540: 13,3105 01634 VINTFLAG 051575,000541: 13,3106 27074 IFLAGC 051576,000542: 051577,000543: 13,3107 66214 INTEGRVS SET SSP 051578,000544: 13,3110 01467 PRECIFLG 051579,000545: 13,3111 02031 PBODY 051580,000546: 13,3112 00000 0 051581,000547: 13,3113 66214 BOF SSP 051582,000548: 13,3114 00343 MOONFLAG 051583,000549: 13,3115 27120 +3 051584,000550: 13,3116 02031 PBODY 051585,000551: 13,3117 00002 2 051586,000552: 13,3120 77220 STQ VLOAD 051587,000553: 13,3121 02102 IRETURN 051588,000554: 13,3122 24007 ZEROVEC 051589,000555: 13,3123 01521 STORE TDELTAV 051590,000556: 13,3124 35527 STCALL TNUV 051591,000557: 13,3125 23441 RECTIFY 051592,000558: 13,3126 43014 CLEAR SET 051593,000559: 13,3127 01676 DIM0FLAG 051594,000560: 13,3130 04062 NEWIFLG 051595,000561: 13,3131 77614 SETGO 051596,000562: 13,3132 04020 RPQFLAG 051597,000563: 13,3133 27150 ALOADED 051598,000564: 051599,000565: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER, 051600,000566: # NORMALLY THE NAVIGATION PROGRAM, TO SET THE INTEG. FLAGS. THE ROUTINE 051601,000567: # IS ENTERED AT INTEGRV1 BY CSMPREC ET AL. AND AT ALOADED BY INTEGRVS. 051602,000568: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG. 051603,000569: # PROGRAM FOR PRECISION OR CONIC. 051604,000570: 051605,000571: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE 051606,000572: # SETTING ANY FLAGS. 051607,000573: 051608,000574: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE 051609,000575: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS) 051610,000576: # INTYPFLG 051611,000577: # DIM0FLAG 051612,000578: # D6OR9FLG 051613,000579: 051614,000580: # CALLING SEQUENCE 051615,000581: # L-X CALL 051616,000582: # L-Y INTSTALL 051617,000583: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED 051618,000584: # AND DIM0FLAG IS CLEAR. 051619,000585: # L CALL 051620,000586: # L+1 INTEGRV 051621,000587: 051622,000588: # INITIALIZATION 051623,000589: # FLAGS AS ABOVE 051624,000590: # STORE TIME TO INTEGRATE TO IN TDEC1 051625,000591: 051626,000592: # OUTPUT 051627,000593: # RATT AS 051628,000594: # VATT DEFINED 051629,000595: # Page 1216 051630,000596: # TAT BEFORE 051631,000597: 051632,000598: 13,3134 77620 INTEGRV STQ 051633,000599: 13,3135 02102 IRETURN 051634,000600: 13,3136 43014 INTEGRV1 SET SET 051635,000601: 13,3137 04060 RPQFLAG 051636,000602: 13,3140 04062 NEWIFLG 051637,000603: 13,3141 77731 INTEGRV2 SSP 051638,000604: 13,3142 00053 QPRET 051639,000605: 13,3143 27150 ALOADED 051640,000606: 13,3144 52014 BON GOTO 051641,000607: 13,3145 01714 VINTFLAG 051642,000608: 13,3146 26705 PTOACSM 051643,000609: 13,3147 26760 PTOALEM 051644,000610: 13,3150 77745 ALOADED DLOAD 051645,000611: 13,3151 00041 TDEC1 051646,000612: 13,3152 01116 STORE TDEC 051647,000613: 13,3153 52014 BOFF GOTO 051648,000614: 13,3154 01753 INTYPFLG 051649,000615: 13,3155 27257 TESTLOOP 051650,000616: 13,3156 27243 RVCON 051651,000617: 13,3157 77414 A-PCHK BOF EXIT 051652,000618: 13,3160 01752 STATEFLG 051653,000619: 13,3161 27200 RECTOUT 051654,000620: 13,3162 05353 TC PHASCHNG 051655,000621: 13,3163 04022 OCT 04022 051656,000622: 13,3164 05504 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN 051657,000623: 13,3165 00236 ADRES REINTFLG # INTSTALL AND INTWAKE 051658,000624: 13,3166 06037 TC INTPRET 051659,000625: 13,3167 77731 SSP 051660,000626: 13,3170 00053 QPRET 051661,000627: 13,3171 27176 PHEXIT 051662,000628: 13,3172 52014 BON GOTO 051663,000629: 13,3173 01714 VINTFLAG 051664,000630: 13,3174 26661 ATOPCSM 051665,000631: 13,3175 26734 ATOPLEM 051666,000632: 13,3176 77624 PHEXIT CALL 051667,000633: 13,3177 11244 GRP2PC 051668,000634: 13,3200 45001 RECTOUT SETPD CALL 051669,000635: 13,3201 00001 0 051670,000636: 13,3202 23441 RECTIFY 051671,000637: 13,3203 53775 VLOAD VSL* 051672,000638: 13,3204 01503 RRECT 051673,000639: 13,3205 57576 0,2 051674,000640: 13,3206 53715 PDVL VSL* # RATT TO PD0 051675,000641: 13,3207 01511 VRECT 051676,000642: 13,3210 57576 0,2 051677,000643: 13,3211 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12 051678,000644: 13,3212 01517 TET 051679,000645: # Page 1217 051680,000646: 13,3213 01503 RRECT 051681,000647: 13,3214 64715 PDVL PDDL* 051682,000648: 13,3215 01511 VRECT 051683,000649: 13,3216 51770 MUEARTH,2 051684,000650: 13,3217 76006 PUSH AXT,1 051685,000651: 13,3220 77765 DEC -10 B-14 051686,000652: 13,3221 76014 BON AXT,1 051687,000653: 13,3222 00303 MOONFLAG 051688,000654: 13,3223 27225 +2 051689,000655: 13,3224 77775 DEC -2 B-14 051690,000656: 13,3225 40001 INTEXIT SETPD BOV 051691,000657: 13,3226 00001 0 051692,000658: 13,3227 27230 +1 051693,000659: 13,3230 43014 CLEAR CLEAR 051694,000660: 13,3231 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR 051695,000661: 13,3232 01667 PRECIFLG 051696,000662: 13,3233 77614 CLEAR 051697,000663: 13,3234 01672 STATEFLG 051698,000664: 13,3235 77535 SLOAD EXIT 051699,000665: 13,3236 02103 IRETURN 051700,000666: 13,3237 30154 CA MPAC 051701,000667: 13,3240 50120 INDEX FIXLOC 051702,000668: 13,3241 54052 TS QPRET 051703,000669: 13,3242 03425 TC INTWAKE 051704,000670: 051705,000671: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND 051706,000672: # VELOCITY FOR THE INTERVAL (TET-TDEC) 051707,000673: 051708,000674: 13,3243 45345 RVCON DLOAD DSU 051709,000675: 13,3244 01116 TDEC 051710,000676: 13,3245 01517 TET 051711,000677: 13,3246 36074 STCALL TAU. 051712,000678: 13,3247 23441 RECTIFY 051713,000679: 13,3250 77624 CALL 051714,000680: 13,3251 22376 KEPPREP 051715,000681: 13,3252 43345 DLOAD DAD 051716,000682: 13,3253 01551 TC 051717,000683: 13,3254 01517 TET 051718,000684: 13,3255 35517 STCALL TET 051719,000685: 13,3256 27200 RECTOUT 051720,000686: 051721,000687: # Page 1218 051722,000688: 13,3257 43014 TESTLOOP BOF CLRGO 051723,000689: 13,3260 04752 QUITFLAG 051724,000690: 13,3261 27264 +3 051725,000691: 13,3262 01632 STATEFLG 051726,000692: 13,3263 27225 INTEXIT # STOP INTEGRATION 051727,000693: 13,3264 73001 +3 SETPD LXA,2 051728,000694: 13,3265 00013 10D 051729,000695: 13,3266 02030 PBODY 051730,000696: 13,3267 51575 VLOAD ABVAL 051731,000697: 13,3270 01535 RCV 051732,000698: 13,3271 43006 PUSH CLEAR # RC TO 10D 051733,000699: 13,3272 00262 MIDFLAG 051734,000700: 13,3273 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP 051735,000701: 13,3274 53755 RME,2 051736,000702: 13,3275 27300 +3 051737,000703: 13,3276 77614 SET 051738,000704: 13,3277 00062 MIDFLAG 051739,000705: 13,3300 41345 NORFINAL DLOAD DMP 051740,000706: 13,3301 00013 10D 051741,000707: 13,3302 00043 34D 051742,000708: 13,3303 55762 SR1R DDV* 051743,000709: 13,3304 51770 MUEARTH,2 051744,000710: 13,3305 41366 SQRT DMP 051745,000711: 13,3306 25752 .3D 051746,000712: 13,3307 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE 051747,000713: 13,3310 54345 DLOAD SL 051748,000714: 13,3311 00155 MPAC 051749,000715: 13,3312 20220 15D # OF 128 CSECS. 051750,000716: 13,3313 40006 PUSH BOV 051751,000717: 13,3314 27341 MAXDT 051752,000718: 13,3315 50021 BDSU BMN 051753,000719: 13,3316 27413 DT/2MAX 051754,000720: 13,3317 27341 MAXDT 051755,000721: 13,3320 45345 DT/2COMP DLOAD DSU 051756,000722: 13,3321 01116 TDEC 051757,000723: 13,3322 01517 TET 051758,000724: 13,3323 54234 RTB SL 051759,000725: 13,3324 21612 SGNAGREE 051760,000726: 13,3325 20211 8D 051761,000727: 13,3326 02076 STORE DT/2 # B-19 051762,000728: 13,3327 51400 BOV ABS 051763,000729: 13,3330 27345 GETMAXDT 051764,000730: 13,3331 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME 051765,000731: 13,3332 00015 12D 051766,000732: 13,3333 27351 P00HCHK 051767,000733: 13,3334 75345 USEMAXDT DLOAD SIGN 051768,000734: 13,3335 00015 12D 051769,000735: 13,3336 02076 DT/2 051770,000736: # Page 1219 051771,000737: 13,3337 36076 STCALL DT/2 051772,000738: 13,3340 27351 P00HCHK 051773,000739: 13,3341 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX. 051774,000740: 13,3342 27413 DT/2MAX 051775,000741: 13,3343 77650 GOTO 051776,000742: 13,3344 27320 DT/2COMP 051777,000743: 13,3345 77634 GETMAXDT RTB 051778,000744: 13,3346 21712 SIGNMPAC 051779,000745: 13,3347 36076 STCALL DT/2 051780,000746: 13,3350 27334 USEMAXDT 051781,000747: 13,3351 51545 P00HCHK DLOAD ABS 051782,000748: 13,3352 02076 DT/2 051783,000749: 13,3353 50025 DSU BMN 051784,000750: 13,3354 27411 DT/2MIN 051785,000751: 13,3355 27157 A-PCHK 051786,000752: 13,3356 46135 SLOAD BHIZ 051787,000753: 13,3357 01012 MODREG 051788,000754: 13,3360 27363 +3 051789,000755: 13,3361 77650 GOTO 051790,000756: 13,3362 23252 TIMESTEP 051791,000757: 13,3363 77614 BON # WAS THIS CALL VIA CSM(LEM)PREC 051792,000758: 13,3364 01707 PRECIFLG 051793,000759: 13,3365 23252 TIMESTEP # YES 051794,000760: 13,3366 45345 DLOAD DSU 051795,000761: 13,3367 02076 DT/2 051796,000762: 13,3370 00015 12D 051797,000763: 13,3371 43040 BMN BOFCLR 051798,000764: 13,3372 27157 A-PCHK 051799,000765: 13,3373 04242 NEWIFLG 051800,000766: 13,3374 23252 TIMESTEP 051801,000767: 13,3375 45345 DLOAD DSU 051802,000768: 13,3376 01116 TDEC 051803,000769: 13,3377 01517 TET 051804,000770: 13,3400 77640 BMN # NO BACKWARD INTEGRATION 051805,000771: 13,3401 27225 INTEXIT 051806,000772: 13,3402 40525 PDDL SR4 051807,000773: 13,3403 02076 DT/2 # IS 4(DT) LS (TDEC - TET) 051808,000774: 13,3404 44322 SR2R BDSU 051809,000775: 13,3405 52040 BMN GOTO 051810,000776: 13,3406 27225 INTEXIT 051811,000777: 13,3407 23252 TIMESTEP 051812,000778: 13,3410 00000 01400 DT/2MIN 2DEC 3 B-20 051813,000779: 051814,000780: 13,3412 14152 00000 DT/2MAX 2DEC 4000 E2 B-20 051815,000781: 051816,000782: 13,3414 77776 INTSTALL EXIT 051817,000783: 13,3415 30106 CA RASFLAG 051818,000784: 13,3416 73466 MASK INTBITAB # IS THIS STALL AREA FREE 051819,000785: 13,3417 00006 EXTEND 051820,000786: 13,3420 13460 BZF OKTOGRAB # YES 051821,000787: # Page 1220 051822,000788: 13,3421 33465 CAF WAKESTAL 051823,000789: 13,3422 05133 TC JOBSLEEP 051824,000790: 13,3423 77776 INTWAKE0 EXIT 051825,000791: 13,3424 13445 TCF INTWAKE1 051826,000792: 051827,000793: 13,3425 40106 INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE 051828,000794: 13,3426 74745 MASK REINTBIT # RESTARTED 051829,000795: 13,3427 10000 CCS A 051830,000796: 13,3430 03445 TC INTWAKE1 # NO 051831,000797: 051832,000798: 13,3431 50120 INDEX FIXLOC 051833,000799: 13,3432 30052 CA QPRET 051834,000800: 13,3433 55055 TS TBASE2 # YES, DON'T RESTART WITH SOMEONE ELSE'S Q 051835,000801: 051836,000802: 13,3434 05353 TC PHASCHNG 051837,000803: 13,3435 04022 OCT 04022 051838,000804: 051839,000805: 13,3436 31055 CA TBASE2 051840,000806: 13,3437 50120 INDEX FIXLOC 051841,000807: 13,3440 54052 TS QPRET 051842,000808: 051843,000809: 13,3441 34745 CAF REINTBIT 051844,000810: 13,3442 70106 MASK RASFLAG 051845,000811: 13,3443 00006 EXTEND 051846,000812: 13,3444 13463 BZF GOBAC # DON'T INTWAKE IF WE CAME HERE VIA RESTART 051847,000813: 051848,000814: 13,3445 33465 INTWAKE1 CAF WAKESTAL 051849,000815: 13,3446 00004 INHINT 051850,000816: 13,3447 05137 TC JOBWAKE 051851,000817: 13,3450 10064 CCS LOCCTR 051852,000818: 13,3451 13445 TCF INTWAKE1 051853,000819: 13,3452 00051 FORTYONE DEC 41 B-14 051854,000820: 13,3453 43466 CS INTBITAB 051855,000821: 13,3454 70106 MASK RASFLAG 051856,000822: 13,3455 54106 TS RASFLAG # RELEASE STALL AREA 051857,000823: 13,3456 00003 RELINT 051858,000824: 13,3457 13463 TCF GOBAC 051859,000825: 13,3460 34736 OKTOGRAB CAF INTFLBIT 051860,000826: 13,3461 00004 INHINT 051861,000827: 13,3462 26106 ADS RASFLAG 051862,000828: 13,3463 06037 GOBAC TC INTPRET 051863,000829: 13,3464 77616 RVQ 051864,000830: 13,3465 27415 WAKESTAL CADR INTSTALL +1 051865,000831: 13,3466 20100 INTBITAB OCT 20100 051866,000832: 051867,000833: # Page 1221 051868,000834: # AVETOMID 051869,000835: 051870,000836: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST 051871,000837: # PHASE BY INITIALIZING THIS VEHICLE'S PERMANENT STATE VECTOR WITH THE 051872,000838: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME. 051873,000839: 051874,000840: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (OR WFLAG OR RENDWFLT IS 051875,000841: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR. 051876,000842: 051877,000843: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME. 051878,000844: 051879,000845: # FINALLY TRKMKCNT IS ZEROED. 051880,000846: 051881,000847: 13,2000 SETLOC INTINIT 051882,000848: 13,2000 BANK 051883,000849: 051884,000850: 13,3467 COUNT* $$/INTIN 051885,000851: 13,3467 43020 AVETOMID STQ BON 051886,000852: 13,3470 02772 EGRESS 051887,000853: 13,3471 02716 RENDWFLG 051888,000854: 13,3472 27536 INT/W # W-MATRIX VALID, GO INTEGRATE IT 051889,000855: 13,3473 77614 BON 051890,000856: 13,3474 01711 ORBWFLAG 051891,000857: 13,3475 27536 INT/W # W-MATRIX VALID, GO INTEGRATE IT. 051892,000858: 051893,000859: 13,3476 45145 OTHERS DLOAD CALL # GET SET FOR OTHER VEHICLE INTEGRATION 051894,000860: 13,3477 01235 PIPTIME # DESIRED TIME 051895,000861: 13,3500 27414 INTSTALL 051896,000862: 13,3501 45014 SET CALL 051897,000863: 13,3502 01474 VINTFLAG # CM 051898,000864: 13,3503 26644 SETIFLGS # SETS UP NONE W-MAT. PERMANENT INTEG. 051899,000865: 13,3504 34041 STCALL TDEC1 051900,000866: 13,3505 27134 INTEGRV 051901,000867: 051902,000868: 13,3506 45174 AXT,2 CALL # NOW MOVE PROPERLY SCALE RN,UN AS WELL AS 051903,000869: 13,3507 00002 2 # PIPTIME TO INTEGRATION ERASABLES. 051904,000870: 13,3510 27414 INTSTALL 051905,000871: 13,3511 77014 BON AXT,2 051906,000872: 13,3512 04304 MOONTHIS 051907,000873: 13,3513 27515 +2 051908,000874: 13,3514 00000 0 051909,000875: 13,3515 53775 VLOAD VSR* 051910,000876: 13,3516 01221 RN 051911,000877: 13,3517 57176 0,2 051912,000878: 13,3520 01503 STORE RRECT 051913,000879: 13,3521 15535 STODL RCV 051914,000880: 13,3522 01235 PIPTIME 051915,000881: 13,3523 25517 STOVL TET 051916,000882: 13,3524 01227 VN 051917,000883: # Page 1222 051918,000884: 13,3525 45057 VSR* CALL 051919,000885: 13,3526 57176 0,2 051920,000886: 13,3527 23455 MINIRECT # FINISH SETTING UP STATE VECTOR 051921,000887: 13,3530 66234 RTB SSP 051922,000888: 13,3531 26747 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT 051923,000889: 13,3532 03463 TRKMKCNT 051924,000890: 13,3533 00000 0 051925,000891: 13,3534 77650 GOTO 051926,000892: 13,3535 47226 FAZAB5 051927,000893: 051928,000894: 13,3536 45145 INT/W DLOAD CALL 051929,000895: 13,3537 01235 PIPTIME # INTEGRATE W THRU BURN 051930,000896: 13,3540 27414 INTSTALL 051931,000897: 13,3541 43014 SET SET 051932,000898: 13,3542 01476 DIM0FLAG # DO W-MATRIX 051933,000899: 13,3543 04476 AVEMIDSW # SO WON'T CLOBBER RN,VN,PIPTIME 051934,000900: 13,3544 43014 SET CLEAR 051935,000901: 13,3545 01475 D6OR9FLG # 9X9 FOR LM 051936,000902: 13,3546 01674 VINTFLAG # LM 051937,000903: 13,3547 34041 STCALL TDEC1 051938,000904: 13,3550 27134 INTEGRV 051939,000905: 13,3551 77650 GOTO 051940,000906: 13,3552 27476 OTHERS # NOW GO DO THE OTHER VEHICLE 051941,000907: 051942,000908: # Page 1223 051943,000909: # MIDTOAV1 051944,000910: 051945,000911: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1. 051946,000912: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA 051947,000913: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATION TIME FOR ONE TIME STEP) 051948,000914: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION 051949,000915: # IS DONE TO THE CURRENT TIME. 051950,000916: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE. 051951,000917: 051952,000918: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC 051953,000919: # TO THE RETURN ADDRESS. 051954,000920: 051955,000921: # IN EITHER CASE, BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRANSFERRED 051956,000922: # FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRATION 051957,000923: # TIME AND MPAC IS SET TO THE DELTA TIME -- 051958,000924: # TAT MINUS CURRENT TIME 051959,000925: 051960,000926: # MIDTOAV2 051961,000927: 051962,000928: # THIS ROUTINE INTEGRATES THIS VEHICLE'S STATE VECTOR TO THE CURRENT TIME. 051963,000929: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN 051964,000930: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE 051965,000931: 051966,000932: 13,3553 E7,1744 EBANK= IRETURN1 051967,000933: 13,3553 43020 MIDTOAV2 STQ CLRGO # INTEGRATE TO PRESENT TIME PLUS TIMEDELT 051968,000934: 13,3554 03744 IRETURN1 051969,000935: 13,3555 04634 MID1FLAG 051970,000936: 13,3556 27572 ENTMID2 051971,000937: 051972,000938: 13,3557 43020 MIDTOAV1 STQ SET # INTEGRATE TO TDEC1 051973,000939: 13,3560 03744 IRETURN1 051974,000940: 13,3561 04474 MID1FLAG 051975,000941: 13,3562 43234 RTB DAD # INITIAL CHECK, IS TDEC1 IN THE FUTURE 051976,000942: 13,3563 21573 LOADTIME 051977,000943: 13,3564 27674 TIMEDELT 051978,000944: 13,3565 51021 BDSU BPL 051979,000945: 13,3566 00041 TDEC1 051980,000946: 13,3567 27576 ENTMID1 # Y5S 051981,000947: 13,3570 77624 CALL 051982,000948: 13,3571 27662 NOTIME # NO, SET ALARM, SWITCH TO MIDTOAV2 051983,000949: 051984,000950: 13,3572 43234 ENTMID2 RTB DAD 051985,000951: 13,3573 21573 LOADTIME 051986,000952: 13,3574 27674 TIMEDELT 051987,000953: 13,3575 00041 STORE TDEC1 051988,000954: 051989,000955: 13,3576 77624 ENTMID1 CALL 051990,000956: 13,3577 27414 INTSTALL 051991,000957: 13,3600 45014 CLEAR CALL 051992,000958: # Page 1224 051993,000959: 13,3601 01676 DIM0FLAG # NO W-MATRIX 051994,000960: 13,3602 26066 THISVINT 051995,000961: 13,3603 43014 CLEAR SET 051996,000962: 13,3604 01673 INTYPFLG 051997,000963: 13,3605 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV. 051998,000964: 13,3606 77624 CALL 051999,000965: 13,3607 27134 INTEGRV # GO INTEGRATE 052000,000966: 13,3610 77214 CLEAR VLOAD 052001,000967: 13,3611 04675 MIDAVFLG 052002,000968: 13,3612 00001 RATT 052003,000969: 13,3613 27545 STOVL RN1 052004,000970: 13,3614 00007 VATT 052005,000971: 13,3615 17553 STODL VN1 052006,000972: 13,3616 00015 TAT 052007,000973: 13,3617 03561 STORE PIPTIME1 052008,000974: 13,3620 66134 SXA,2 SXA,1 052009,000975: 13,3621 02777 RTX2 052010,000976: 13,3622 02776 RTX1 052011,000977: 13,3623 77776 EXIT 052012,000978: 052013,000979: 13,3624 00004 INHINT 052014,000980: 13,3625 00006 EXTEND 052015,000981: 13,3626 40025 DCS TIME2 052016,000982: 13,3627 20155 DAS MPAC 052017,000983: 13,3630 07257 TC TPAGREE 052018,000984: 052019,000985: 13,3631 31744 CA IRETURN1 052020,000986: 13,3632 04640 TC BANKJUMP 052021,000987: 13,3633 47014 CKMID2 BOF RTB 052022,000988: 13,3634 04754 MID1FLAG 052023,000989: 13,3635 27652 MID2 052024,000990: 13,3636 21573 LOADTIME 052025,000991: 13,3637 44215 DAD BDSU 052026,000992: 13,3640 27674 TIMEDELT 052027,000993: 13,3641 01116 TDEC 052028,000994: 13,3642 45044 BPL CALL 052029,000995: 13,3643 27257 TESTLOOP # YES 052030,000996: 13,3644 27662 NOTIME 052031,000997: 052032,000998: 13,3645 43234 TIMEINC RTB DAD 052033,000999: 13,3646 21573 LOADTIME 052034,001000: 13,3647 27674 TIMEDELT 052035,001001: 13,3650 35116 STCALL TDEC 052036,001002: 13,3651 27257 TESTLOOP 052037,001003: 052038,001004: 13,3652 45345 MID2 DLOAD DSU 052039,001005: 13,3653 01116 TDEC 052040,001006: 13,3654 01517 TET 052041,001007: 13,3655 45246 ABS DSU 052042,001008: 13,3656 27672 3CSECS 052043,001009: 052044,001010: # Page 1225 052045,001011: 13,3657 52040 BMN GOTO 052046,001012: 13,3660 27157 A-PCHK 052047,001013: 13,3661 27645 TIMEINC 052048,001014: 052049,001015: 13,3662 77414 NOTIME CLEAR EXIT # TOO LATE 052050,001016: 13,3663 04674 MID1FLAG 052051,001017: 13,3664 25744 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2) 052052,001018: 13,3665 05567 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION -- 052053,001019: 13,3666 01703 OCT 1703 # TIG WILL BE SLIPPED... 052054,001020: 13,3667 06037 TC INTPRET 052055,001021: 13,3670 77616 RVQ 052056,001022: 052057,001023: 13,3671 00000 00003 3CSECS 2DEC 3 B-28 052058,001024: 052059,001025: 13,3673 00000 03720 TIMEDELT 2DEC 2000 B-28 052060,001026: 052061,001027: 27,3360 BANK 27 052062,001028: 04,2000 SETLOC UPDATE2 052063,001029: 04,2000 BANK 052064,001030: 04,3165 1167 EBANK= INTWAKUQ 052065,001031: 052066,001032: 04,3165 COUNT* $$/INTIN 052067,001033: 052068,001034: 04,3165 1167 INTWAKUQ = INTWAK1Q # TEMPORARY UNTIL NAME OF INTWAK1Q IS CHNG 052069,001035: 052070,001036: 04,3165 00003 INTWAKEU RELINT 052071,001037: 04,3166 00006 EXTEND 052072,001038: 04,3167 23167 QXCH INTWAKUQ # SAVE Q FOR RETURN 052073,001039: 052074,001040: 04,3170 06037 TC INTPRET 052075,001041: 052076,001042: 04,3171 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE 052077,001043: 04,3172 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP. 052078,001044: 04,3173 11232 INTWAKUP 052079,001045: 052080,001046: 04,3174 77775 VLOAD # MOVE PRECT(6) AND VRECT(6) INTO 052081,001047: 04,3175 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY. 052082,001048: 04,3176 25535 STOVL RCV 052083,001049: 04,3177 01511 VRECT # NOW GO TO `RECTIFY +13D' TO 052084,001050: 04,3200 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT 052085,001051: 04,3201 23456 RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2), AND XKEP(2) 052086,001052: 04,3202 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF `UPSVFLAG' 052087,001053: 04,3203 01502 UPSVFLAG # TO `UPDATE MOON STATE VECTOR CODE' 052088,001054: 04,3204 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO 052089,001055: 04,3205 11243 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR 052090,001056: 04,3206 11213 INTWAKEM # SPHERE OF INFLUENCE........ 052091,001057: 04,3207 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE. 052092,001058: 04,3210 00000 DEC 0 B-14 052093,001059: 04,3211 00223 MOONFLAG 052094,001060: # Page 1226 052095,001061: 04,3212 11216 INTWAKEC 052096,001062: 04,3213 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE. 052097,001063: 04,3214 00002 DEC 2 B-14 052098,001064: 04,3215 00063 MOONFLAG 052099,001065: 04,3216 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND 052100,001066: # MOONFLAG SET (OR CLEARED). 052101,001067: 04,3217 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM 052102,001068: 04,3220 11226 INTWAKLM # STATE VECTOR UPDATE...... 052103,001069: 04,3221 77624 CALL # UPDATE CSM STATE VECTOR 052104,001070: 04,3222 26661 ATOPCSM 052105,001071: 052106,001072: 04,3223 52014 CLEAR GOTO 052107,001073: 04,3224 01671 ORBWFLAG 052108,001074: 04,3225 11230 INTWAKEX 052109,001075: 052110,001076: 04,3226 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR 052111,001077: 04,3227 26734 ATOPLEM 052112,001078: 052113,001079: 04,3230 77614 INTWAKEX CLEAR 052114,001080: 04,3231 02676 RENDWFLG 052115,001081: 052116,001082: 04,3232 45131 INTWAKUP SSP CALL # REMOVE `UPDATE STATE VECTOR INDICATOR' 052117,001083: 04,3233 01502 UPSVFLAG 052118,001084: 04,3234 00000 0 052119,001085: 04,3235 27423 INTWAKE0 # RELEASE `GRAB' OF ORBIT INTEG. 052120,001086: 04,3236 77776 EXIT 052121,001087: 052122,001088: 04,3237 05353 TC PHASCHNG 052123,001089: 04,3240 04026 OCT 04026 052124,001090: 04,3241 01167 TC INTWAKUQ 052125,001091: 052126,001092: 04,3242 00002 UPMNSVCD OCT 2 052127,001093: 04,3243 00000 OCT 0 052128,001094: 052129,001095: 04,3244 77420 GRP2PC STQ EXIT 052130,001096: 04,3245 02711 GRP2SVQ 052131,001097: 04,3246 05353 TC PHASCHNG 052132,001098: 04,3247 04022 OCT 04022 052133,001099: 04,3250 06037 TC INTPRET 052134,001100: 04,3251 77650 GOTO 052135,001101: 04,3252 02711 GRP2SVQ 052136,001102: End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc