Source Code

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