Source Code
These source-code files were transcribed from a printout in Don Eyles's personal
collection, scanned by archive.org, and financially sponsored by Linden Sims.
A team of volunteers performed the transcription and proof-reading. The scanned
page images are available at
the Virtual AGC Project website, as well as higher-quality (but much larger)
images at
the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating
"issues" at
the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 56 OF AGC PROGRAM ZERLINA BY ZOROASTER 9:12 OCT. 21,1970Note that the date is the date of the printout, not the date of the program revision. |
054967,000002: ## Copyright: Public domain.
054968,000003: ## Filename: TIME_OF_FREE_FALL.agc
054969,000004: ## Purpose: A log section of Zerlina 56, the final revision of
054970,000005: ## Don Eyles's offline development program for the variable
054971,000006: ## guidance period servicer. It also includes a new P66 with LPD
054972,000007: ## (Landing Point Designator) capability, based on an idea of John
054973,000008: ## Young's. Neither of these advanced features were actually flown,
054974,000009: ## but Zerlina was also the birthplace of other big improvements to
054975,000010: ## Luminary including the terrain model and new (Luminary 1E)
054976,000011: ## analog display programs. Zerlina was branched off of Luminary 145,
054977,000012: ## and revision 56 includes all changes up to and including Luminary
054978,000013: ## 183. It is therefore quite close to the Apollo 14 program,
054979,000014: ## Luminary 178, where not modified with new features.
054980,000015: ## Reference: pp. 1257-1272
054981,000016: ## Assembler: yaYUL
054982,000017: ## Contact: Ron Burkey <info@sandroid.org>.
054983,000018: ## Website: www.ibiblio.org/apollo/index.html
054984,000019: ## Mod history: 2017-07-28 MAS Created from Luminary 210.
054985,000020: ## 2017-08-29 RSB Transcribed.
054986,000021:
Page 1257 |
054988,000023: # THE TFF SUBROUTINES MAY BE USED IN EITHER EARTH OR MOON CENTERED COORDINATES. THE TFF ROUTINES NEVER
054989,000024: # KNOW WHICH ORIGIN APPLIES. IT IS THE USER WHO KNOWS, AND WHO SUPPLIES RONE, VONE AND 1/SQRT(MU) AT THE
054990,000025: # APPROPRIATE SCALE LEVEL FOR THE PROPER PRIMARY BODY.
054991,000026:
054992,000027: # EARTH ORIGIN POSITION -29 METERS
054993,000028: # VELOCITY -7 METERS/CENTISECOND
054994,000029: # 1/SQRT(MU) +17 SQRT(CS SQ/METERS CUBED)
054995,000030:
054996,000031: # MOON ORIGIN POSITION -27 METERS
054997,000032: # VELOCITY -5 METERS/CENTISECONDS
054998,000033: # 1/SQRT(MU) +14 SQRT(CS SQ/METERS CUBED)
054999,000034:
055000,000035: # ALL DATA PROVIDED TO AND RECEIVED FROM ANY TFF SUBROUTINE WILL BE AT ONE OF THE LEVELS ABOVE. IN ALL CASES,
055001,000036: # THE FREE FALL TIME IS RETURNED IN CENTISECONDS AT (-28). PROGRAM TFF/CONIC WILL GENERATE VONE/RTMU AND
055002,000037: # LEAVE IT IN VONE' AT (+10) IF EARTH ORIGIN AND (+9) IF MOON ORIGIN.
055003,000038: # THE USER MUST STORE THE STATE VECTOR IN RONE, VONE AND MU IN THE FORM 1/SQRT(MU) IN TFF/RTMU
055004,000039: # AT THE PROPER SCALE BEFORE CALLING TFF/CONIC. SINCE RONE, VONE ARE IN THE EXTENDED VERB STORAGE AREA,
055005,000040: # THE USER MUST ALSO LOCK OUT THE EXTENDED VERBS, AND RELEASE THEM WHEN FINISHED.
055006,000041: # PROGRAMS CALC/TFF AND CALC/TPER ASSUME THAT THE TERMINAL RADIUS IS LESS THAN THE PRESENT
055007,000042: # RADIUS. THIS RESTRICTION CAN BE REMOVED BY A 15 W CODING CHANGE, BUT AT PRESENT IT IS NOT DEEMED NECESSARY.
055008,000043:
055009,000044: # THE FOLLOWING ERASABLE QUANTITIES ARE USED BY THE TFF ROUTINES, AND ARE LOCATED IN THE PUSH LIST.
055010,000045:
055011,000046: # BELOW E: IS USED FOR EARTH ORIGIN SCALE
055012,000047: # M: IS USED FOR MOON ORIGIN SCALE
055013,000048:
055014,000049: # TFFSW = 119D BIT1 0 = CALCTFF 1 = CALCTPER
055015,000050: 10,2213 TFFDELQ = 10D # Q2-Q1 E: (-16) M: (-15)
055016,000051: 10,2213 RMAG1 = 12D # ABVAL(RN) M E: (-29) M: (-27)
055017,000052: # RPER = 14D PERIGEE RADIUS M E: (-29) M: (-27)
055018,000053: 10,2213 TFFQ1 = 14D # R.V / SQRT(MUE) E: (-16) M: (-15)
055019,000054: # SDELF/2 SIN(THETA) /2
055020,000055: 10,2213 CDELF/2 = 14D # COS(THETA) /2
055021,000056: # RAPO = 16D APOGEE RADIUS M E: (-29) M: (-27)
055022,000057: 10,2213 NRTERM = 16D # TERMINAL RADIUS M E: (-29+NR)
055023,000058: # M: (-27+NR)
055024,000059: 10,2213 RTERM = 18D # TERMINAL RADIUS M E: (-29) M: (-27)
055025,000060: 10,2213 TFFVSQ = 20D # -(V SQUARED/MU) 1/M E: (20) M: (18)
055026,000061: 10,2213 TFF1/ALF = 22D # SEMI MAJ AXIS M E: (-22-2 NA)
055027,000062: # M: (-20-2 NA)
055028,000063: 10,2213 TFFRTALF = 24D # SQRT(ALFA) E: (10+NA) M: (9+NA)
055029,000064: 10,2213 TFFALFA = 26D # ALFA 1/M E: (26-NR) M: (24-NR)
055030,000065: 10,2213 TFFNP = 28D # SEMI LATUS RECTUM M E: (-38+2 NR)
055031,000066: # M: (-36+2 NR)
055032,000067: 10,2213 TFF/RTMU = 30D # 1/SQRT(MU) E: (17) M: (14)
055033,000068: 10,2213 NRMAG = 32D # PRESENT RADIUS M E: (-29+NR)
055034,000069: # M: (-27+NR)
055035,000070: 10,2213 TFFX = 34D
055036,000071: 10,2213 TFFTEM = 36D # TEMPORARY
055037,000072:
Page 1258 |
055039,000074: # REGISTERS S1, S2 ARE UNTOUCHED BY ANY TFF SUBROUTINE
055040,000075: # INDEX REGISTERS X1, X2 ARE USED BY ALL TFF SUBROUTINES. THEY ARE ESTAB-
055041,000076: # LISHED IN TFF/CONIC AND MUST BE PRESERVED BETWEEN CALLS TO SUBSEQUENT
055042,000077: # SUBROUTINES.
055043,000078: # -NR C(X1) = NORM COUNT OF RMAG
055044,000079: # -NA C(X2)= NORM COUNT OF SQRT(ABS(ALFA))
055045,000080:
Page 1259 |
055047,000082:
055048,000083:
055049,000084: # SUBROUTINE NAME: TFFCONIC DATE: 01.29.67
055050,000085: # MOD NO: 0 LOG SECTION: TIME OF FREE FALL
055051,000086: # MOD BY: RR BAIRNSFATHER
055052,000087: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 11 APR 67
055053,000088: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 21 NOV 67 ADD MOON MU.
055054,000089: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 68 ACCEPT DIFFERENT EARTH/MOON SCALES
055055,000090: # FUNCTIONAL DESCRIPTION: THIS SUBROUTINE IS CALLED TO COMPUTE THOSE CONIC PARAMETERS REQUIRED BY THE TFF
055056,000091: # SUBROUTINES AND TO ESTABLISH THEM IN THE PUSH LIST AREA. THE PARAMETERS ARE LISTED UNDER OUTPUT.
055057,000092: # THE EQUATIONS ARE
055058,000093: # - - -
055059,000094: # H = RN*VN ANGULAR MOMENTUM
055060,000095: # - -
055061,000096: # LCP = H.H / MU SEMI LATUS RECTUM
055062,000097: # - -
055063,000098: # ALFA = 2/RN - VN.VN / MU RECIPROCAL SEMI MAJ AXIS, SIGNED
055064,000099:
055065,000100: # AND ALFA IS POS FOR ELLIPTIC ORBITS
055066,000101: # 0 FOR PARABOLIC ORBITS
055067,000102: # NEG FOR HYPERBOLIC ORBITS.
055068,000103: # SUBROUTINE ALSO COMPUTES AND SAVES RMAG.
055069,000104: # CALLING SEQUENCE:
055070,000105: # TFFCONIC EXPECTS CALLER TO ENTER WITH CORRECT GRAVITATIONAL CONSTANT IN MPAC, IN THE FORM
055071,000106: # 1/SQRT(MU). PROGRAM WILL SAVE IN TFF/RTMU . THE SCALE IS DETERMINED BY WHETHER EARTH OR MOON
055072,000107: # ORIGIN IS USED. THE CALLER MUST LOCK OUT THE EXTENDED VERBS BEFORE PROVIDING STATE VECTOR IN RONE,
055073,000108: # VONE AT PROPER SCALE. THE EXTENDED VERBS MUST BE RESTORED WHEN THE CALLER IS FINISHED USING THE
055074,000109: # TFF ROUTINES.
055075,000110: # ENTRY POINT TFFCONMU EXPECTS THAT TFF/RTMU IS ALREADY LOADED.
055076,000111: # TO SPECIFY MU: DLOAD CALL IF MU ALREADY STORED: CALL
055077,000112: # YOURMU 1/RTMU E: (17) M: (14) TFFCONMU
055078,000113: # TFFCONIC
055079,000114: # PUSHLOC = PDL+0, ARBITRARY IF LEQ 18D
055080,000115:
055081,000116: # SUBROUTINES CALLED: NONE
055082,000117: # NORMAL EXIT MODES: RVQ
055083,000118: # ALARMS: NONE
055084,000119: # OUTPUT: THE FOLLOWING ARE STORED IN THE PUSH LIST AREA.
055085,000120: # RMAG1 E:(-29) M:(-27) M RN, PRESENT RADIUS LENGTH.
055086,000121: # NRMAG E: (-29+NR) M RMAG, NORMALIZED
055087,000122: # M: (-27+NR)
055088,000123: # X1 -NR, NORM COUNT
055089,000124: # TFFNP E: (-38+2NR) M LCP, SEMI LATUS RECTUM, WEIGHTED BY NR. FOR VGAMCALC
055090,000125: # M: (-36+2NR)
055091,000126: # TFF/RTMU E:(17) M:(14) 1/SQRT(MU)
055092,000127: # TFFVSQ E:(20) M:(18) 1/M -(V SQ/MU): PRESENT VELOCITY,NORMLIZED. FOR VGAMCALC
055093,000128: # TFFALFA E: (26-NR) 1/M ALFA, WEIGHTED BY NR
055094,000129: # M: (24-NR)
055095,000130: # TFFRTALF E: (10+NA) SQRT(ALFA), NORMALIZED
055096,000131: # M: (9+NA)
Page 1260 |
055098,000133: # X2 -NA, NORM COUNT
055099,000134: # TFF1/ALF E: (-22-2NA) SIGNED SEMI MAJ AXIS, WEIGHTED BY NA
055100,000135: # M: (-20-2NA)
055101,000136: # PUSHLOC AT PDL+0
055102,000137: # THE FOLLOWING IS STORED IN GENERAL ERASABLE
055103,000138: # VONE' E:(10) M:(9) V/RT(MU), NORMALIZED VELOCITY
055104,000139: # ERASABLE INITIALIZATION REQUIRED:
055105,000140: # RONE E:(-29) M:(-27) M STATE VECTOR LEFT BY CALLER
055106,000141: # VONE E:(-7) M:(-5) M/CS STATE VECTOR LEFT BY CALLER
055107,000142: # TFF/RTMU E:(17) M:(14) 1/RT(CS SQ/M CUBE) IF ENTER VIA TFFCONMU.
055108,000143: # DEBRIS: QPRET, PDL+0 ... PDL+3
055109,000144:
055110,000145:
055111,000146: 33,3766 BANK 33
055112,000147: 27,2000 SETLOC TOF-FF
055113,000148: 27,2000 BANK
055114,000149:
055115,000150: 27,3342 COUNT* $$/TFF
055116,000151:
055117,000152: 27,3342 00037 TFFCONIC STORE TFF/RTMU # 1/SQRT(MU) E: (17) M: (14)
055118,000153:
055119,000154: 27,3343 53575 TFFCONMU VLOAD UNIT # COME HERE WITH TFFRTMU LOADED.
055120,000155: 27,3344 02200 RONE # SAVED RN. M E: (-29) M: (-27)
055121,000156: 27,3345 77725 PDDL # UR/2 TO PDL+0, +5
055122,000157: 27,3346 00045 36D # MAGNITUDE
055123,000158: 27,3347 00015 STORE RMAG1 # M E: (-29) M: (-27)
055124,000159:
055125,000160: 27,3350 77701 NORM
055126,000161: 27,3351 00047 X1 # -NR
055127,000162: 27,3352 24041 STOVL NRMAG # RMAG M E: (-29+NR) M: (-27+NR)
055128,000163: 27,3353 02206 VONE # SAVED VN. M/CS E: (-7) M: (-5)
055129,000164: 27,3354 77761 VXSC
055130,000165: 27,3355 00037 TFF/RTMU # E: (17) M: (14)
055131,000166: 27,3356 02161 STORE VONE' # VN/SQRT(MU) E: (10) M: (9)
055132,000167:
055133,000168: 27,3357 47361 VXSC VXV
055134,000169: 27,3360 00041 NRMAG # E: (-29+NR) M: (-27+NR)
055135,000170: # UR/2 FROM PDL
055136,000171: 27,3361 47572 VSL1 VSQ # BEFORE: E:(-19+NR) M:(-18+NR)
055137,000172: 27,3362 14035 STODL TFFNP # LC P M E:(-38+2NR) M:(-36+2NR)
055138,000173: # SAVE ALSO FOR VGAMCALC
055139,000174: 27,3363 06510 TFF1/4
055140,000175: 27,3364 63271 DDV PDVL # (2/RMAG) 1/M E:(26-NR) M:(24-NR)
055141,000176: 27,3365 00041 NRMAG # RMAG M E:(-29+NR) M:(-27+NR)
055142,000177: 27,3366 02161 VONE' # SAVED VN. E: (10) M: (9)
055143,000178: 27,3367 57436 VSQ DCOMP # KEEP MPAC+2 HONEST FOR SQRT.
055144,000179: 27,3370 00025 STORE TFFVSQ # -(V SQ/MU) E:(20) M:(18)
055145,000180: # SAVE FOR VGAMCALC
055146,000181: 27,3371 43257 SR* DAD
Page 1261 |
055148,000183: 27,3372 20573 0 -6,1 # GET -VSQ/MU E:(26-NR) M:(24-NR)
055149,000184: 27,3373 77626 STADR
055150,000185: # 2/RMAG FROM PDL+2
055151,000186: 27,3374 77744 STORE TFFALFA # ALFA 1/M E:(26-NR) M:(24-NR)
055152,000187: 27,3375 41457 SL* PUSH # TEMP SAVE ALFA E:(20) M:(18)
055153,000188: 27,3376 20173 0 -6,1
055154,000189: 27,3377 75446 ABS SQRT # E:(10) M:(9)
055155,000190: 27,3400 77701 NORM
055156,000191: 27,3401 00050 X2 # X2 = -NA
055157,000192: 27,3402 00031 STORE TFFRTALF # SQRT( ABS(ALFA) ) E:(10+NA) M:(9+NA)
055158,000193: 27,3403 75316 DSQ SIGN # NOT SO ACCURATE, BUT OK
055159,000194: # ALFA FROM PDL+2 E:(20) M:(18)
055160,000195: 27,3404 55254 BZE BDDV # SET 1/ALFA =0, TO SHOW SMALL ALFA
055161,000196: 27,3405 57407 +2
055162,000197: 27,3406 06510 TFF1/4
055163,000198: 27,3407 00027 +2 STORE TFF1/ALF # 1/ALFA E:(-22-2 NA) M:(-20-2 NA)
055164,000199: 27,3410 77616 DUMPCNIC RVQ
055165,000200:
055166,000201: # 39 W
055167,000202:
Page 1262 |
055169,000204: # SUBROUTINE NAME: TFFRP/RA DATE: 01.17.67
055170,000205: # MOD NO: 0 LOG SECTION: TIME OF FREE FALL
055171,000206: # MOD BY: RR BAIRNSFATHER
055172,000207: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 11 APR 67
055173,000208: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 68 ACCEPT DIFFERENT EARTH/MOON SCALES
055174,000209: # ALSO IMPROVE ACCURACY OF RAPO.
055175,000210: # FUNCTIONAL DESCRIPTION: USED BY CALCTPER AND TFF DISPLAYS TO CALCULATE PERIGEE RADIUS AND ALSO
055176,000211: # APOGEE RADIUS FOR A GENERAL CONIC.
055177,000212: # PROGRAM GIVES PERIGEE RADIUS AS APOGEE RADIUS IS GIVEN BY
055178,000213: # RP = P /(1+E) RA = (1+E) / ALFA
055179,000214: # WHERE 2
055180,000215: # E = 1 - P ALFA
055181,000216: # IF RA IS NEGATIVE OR SHOWS DIVIDE OVERFLOW, THEN RA = POSMAX BECAUSE
055182,000217: # 1. APOGEE RADIUS IS NOT MEANINGFUL FOR HYPERBOLA
055183,000218: # 2. APOGEE RADIUS IS NOT DEFINED FOR PARABOLA
055184,000219: # 3. APOGEE RADIUS EXCEEDS THE SCALING FOR ELLIPSE.
055185,000220: # THIS SUBROUTINE REQUIRES THE SIGNED RECIPROCAL SEMI MAJ AXIS, ALFA, AND SEMI LATUS RECTUM AS DATA.
055186,000221: # CALLING SEQUENCE: CALL
055187,000222: # TFFRP/RA
055188,000223: # PUSHLOC = PDL+0, ARBITRARY IF LEQ 10D
055189,000224: # C(MPAC) UNSPECIFIED
055190,000225:
055191,000226: # SUBROUTINES CALLED: NONE
055192,000227: # NORMAL EXIT MODE: RVQ
055193,000228: # IF ELLIPSE, WITHIN NORMAL SCALING, RAPO IS CORRECT.
055194,000229: # OTHERWISE, RAPO = POSMAX.
055195,000230: # ALARMS: NONE
055196,000231: # OUTPUT: STORED IN PUSH LIST AREA. SCALE OF OUTPUT AGREES WITH DATA SUPPLIED TO TFF/CONIC.
055197,000232: # RPER E:(-29) M:(-27) M PERIGEE RADIUS DESTROYED BY CALCTFF/CALCTPER, TFFTRIG.
055198,000233: # RAPO E:(-29) M:(-27) M APOGEE RADIUS WILL BE DESTROYED BY CALCTFF/CALCTPER
055199,000234: # PUSHLOC AT PDL+0
055200,000235: # ERASABLE INITIALIZATION REQUIRED:
055201,000236: # TFFALFA E:(26-NR) M 1/SEMI MAJ AXIS LEFT BY TFFCONIC
055202,000237: # M:(24-NR)
055203,000238: # TFFNP E: (-38+2NR) M LC P, SEMI LATUS RECTUM LEFT BY TFFCONIC
055204,000239: # M: (-36+2NR)
055205,000240: # X1 -NR, NORM COUNT OF RMAG LEFT BY TFFCONIC
055206,000241: # X2 -NA, NORM COUNT OF ALFA LEFT BY TFFCONIC
055207,000242: # DEBRIS: QPRET, PDL+0 ... PDL+1
055208,000243:
Page 1263 |
055210,000245: 27,3411 RAPO = 16D # APOGEE RADIUS M E:(-29) M:(-27)
055211,000246: 27,3411 RPER = 14D # PERIGEE RADIUS M E:(-29) M:(-27)
055212,000247:
055213,000248: 27,3411 41345 TFFRP/RA DLOAD DMP
055214,000249: 27,3412 00033 TFFALFA # ALFA 1/M E:(26-NR) M:(24-NR)
055215,000250: 27,3413 00035 TFFNP # LC P M E:(-38+2NR) M:(-36+2NR)
055216,000251: 27,3414 57457 SR* DCOMP # ALFA P (-12+NR)
055217,000252: 27,3415 20571 0 -8D,1 # ALFA P (-4)
055218,000253: 27,3416 51415 DAD ABS # (DCOMP GIVES VALID TP RESULT FOR SQRT)
055219,000254: # (ABS PROTECTS SQRT IF E IS VERY NEAR 0)
055220,000255: 27,3417 17747 DP2(-4)
055221,000256: 27,3420 43366 SQRT DAD # E SQ = (1- P ALFA) (-4)
055222,000257: 27,3421 06510 TFF1/4
055223,000258: 27,3422 55206 PUSH BDDV # (1+E) (-2) TO PDL+0
055224,000259: 27,3423 00035 TFFNP # LCP M E:(-38+2NR) M:(-36+2NR)
055225,000260: 27,3424 53657 SR* SR* # (DOES SR THEN SL TO AVOID OVFL)
055226,000261: 27,3425 20601 0,1 # X1=-NR
055227,000262: 27,3426 20572 0 -7,1 # (EFFECTIVE SL)
055228,000263: 27,3427 14017 STODL RPER # PERIGEE RADIUS M E:(-29) M:(-27)
055229,000264: # (1+E) (-2) FROM PDL+0
055230,000265: 27,3430 41005 DMP BOVB
055231,000266: 27,3431 00027 TFF1/ALF # E:(-22-2NA) M:(-20-2NA)
055232,000267: 27,3432 57735 TCDANZIG # CLEAR OVFIND, IF ON.
055233,000268: 27,3433 53654 BZE SL*
055234,000269: 27,3434 57443 MAXRA # SET POSMAX, IF ALFA=0
055235,000270: 27,3435 57603 0 -5,2 # -5+NA
055236,000271: 27,3436 40057 SL* BOV
055237,000272: 27,3437 57576 0,2
055238,000273: 27,3440 57443 MAXRA # SET POSMAX IF OVFL.
055239,000274: 27,3441 77644 BPL # CONTINUE WITH VALID RAPO.
055240,000275: 27,3442 57445 +3
055241,000276: 27,3443 77745 MAXRA DLOAD # RAPO CALC IS NOT VALID. SET RAPO =
055242,000277: 27,3444 17753 NEARONE # POSMAX AS A TAG.
055243,000278: 27,3445 00021 +3 STORE RAPO # APOGEE RADIUS M E:(-29) M:(-27)
055244,000279: 27,3446 77616 DUMPRPRA RVQ
055245,000280:
055246,000281: # 30 W
055247,000282:
Page 1264 |
055249,000284: # SUBROUTINE NAME: CALCTPER / CALCTFF DATE: 01.29.67
055250,000285: # MOD NO: 0 LOG SECTION: TIME OF FREE FALL
055251,000286: # MOD BY: RR BAIRNSFATHER
055252,000287: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 67
055253,000288: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 14 APR 67
055254,000289: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 8JUL 67 NEAR EARTH MUE AND NEG TFF (GONEPAST)
055255,000290: # MOD NO: 4 MOD BY: RR BAIRNSFATHER DATE: 21 NOV 67 ADD VARIABLE MU.
055256,000291: # MOD NO: 5 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 68 ACCEPT DIFFERENT EARTH/MOON SCALES
055257,000292: # FUNCTIONAL DESCRIPTION: PROGRAM CALCULATES THE FREE-FALL TIME OF FLIGHT FROM PRESENT POSITION RN AND
055258,000293: # VELOCITY VN TO A RADIUS LENGTH SPECIFIED BY RTERM , SUPPLIED BY THE USER. THE POSITION VECTOR
055259,000294: # RN MAY BE ON EITHER SIDE OF THE CONIC, BUT RTERM IS CONSIDERED ON THE INBOUND SIDE.
055260,000295: # THE EQUATIONS ARE
055261,000296:
055262,000297: # Q2 = -SQRT(RTERM (2-RTERM ALFA) - LCP) (INBOUND SIDE)) LEQ +- LCE/SQRT(ALFA)
055263,000298: # - -
055264,000299: # Q1 = RN.VN / SQRT(MU) LEQ +- LCE/SQRT(ALFA)
055265,000300:
055266,000301: # Z = NUM / DEN LEQ +- 1/SQRT(ALFA)
055267,000302:
055268,000303: # WHERE, IF INBOUND
055269,000304: # NUM = RTERM - RN LEQ +- 2 LCE/ALFA
055270,000305: # DEN = Q2+Q1 LEQ +- 2 LCE/SQRT(ALFA)
055271,000306:
055272,000307: # AND, IF OUTBOUND
055273,000308: # NUM = Q2-Q1 LEQ +- 2 LCE/SQRT(ALFA)
055274,000309: # DEN = 2 - ALFA (RTERM + RN) . LEQ +- 2 LCE
055275,000310:
055276,000311: # IF ALFA ZZ < 1.0 (FOR ALL CONICS EXCEPT ELLIPSES HAVING ABS(DEL ECC ANOM) G 90 DEG)
055277,000312:
055278,000313: # THEN X = ALFA Z Z
055279,000314: # AND TFF = (RTERM +RN -2 ZZ T(X) ) Z/SQRT(MU)
055280,000315:
055281,000316: # EXCEPT IF ALFA PNZ, AND IF TFF NEG,
055282,000317: # THEN TFF = 2 PI /(ALFA SQRT(ALFA)) + TFF
055283,000318:
055284,000319: # OR IF ALFA ZZ GEQ 1.0 (FOR ELLIPSES HAVING ABS(DEL ECC ANOM) GEQ 90 DEG)
055285,000320:
055286,000321: # THEN X = 1/ALFA Z Z
055287,000322: # AND TFF = (PI/SQRT(ALFA) -Q2 +Q1 +2(X T(X) -1) /ALFA Z) /ALFA SQRT(MU)
055288,000323:
055289,000324: # WHERE T(X) IS A POLYNOMIAL APPROXIMATION TO THE SERIES
055290,000325: # 2 3 2
055291,000326: # 1/3 -X/5 +X /7 -X /9 ... (X < 1.0)
055292,000327:
055293,000328: # CALLING SEQUENCE: TIME TO RTERM TIME TO PERIGEE
055294,000329: # CALL CALL
055295,000330: # CALCTFF CALCTPER
055296,000331: # C(MPAC) = TERMNL RAD M C(MPAC) = PERIGEE RAD M
055297,000332: # FOR EITHER, E: (-29) M: (-27)
055298,000333: # FOR EITHER, PUSHLOC = PDL+0, ARBITRARY IF LEQ 8D.
055299,000334:
Page 1265 |
055301,000336: # SUBROUTINES CALLED: T(X), VIA RTB
055302,000337: # NORMAL EXIT MODE: RVQ
055303,000338: # HOWEVER, PROGRAM EXITS WITH ONE OF THE FOLLOWING VALUES FOR TFF (-28) CS IN MPAC. USER MUST STORE.
055304,000339: # A. TFF= FLIGHT TIME. NORMAL CASE FOR POSITIVE FLIGHT TIME LESS THAN ONE ORBITAL PERIOD.
055305,000340: # B. (THIS OPTION IS NO LONGER USED.)
055306,000341: # C. TFF = POSMAX. THIS INDICATES THAT THE CONIC FROM THE PRESENT POSITION WILL NOT RETURN TO
055307,000342: # THE SPECIFIED ALTITUDE. ALSO INDICATES OUTBOUND PARABOLA OR HYPERBOLA.
055308,000343: # OUTPUT: C(MPAC) (-28) CS TIME OF FLIGHT, OR TIME TO PERIGEE
055309,000344: # TFFX (0) X, LEFT FOR ENTRY DISPLAY TFF ROUTINES
055310,000345: # NRTERM E: (-29+NR) M RTERM, WEIGHTED BY NR LEFT FOR ENTRY DISPLAY TFF ROUTINES
055311,000346: # M: (-27+NR)
055312,000347: # TFFTEM E: (-59+2NR) LCP Z Z SGN(SDELF) LEFT FOR ENTRY DISPLAY TFF ROUTINES
055313,000348: # M: (-55+2NR) LCP /ALFA SGN(SDELF) LEFT FOR ENTRY DISPLAY TFF ROUTINES
055314,000349: # NOTE: TFFTEM = PDL 36D AND WILL BE DESTROYED BY .:UNIT:.
055315,000350: # RMAG1 E:(-29) M:(-27) PDL 12 NOT TOUCHED.
055316,000351: # TFFQ1 E:(-16) M:(-15) PDL 14D
055317,000352: # TFFDELQ E:(-16) M:(-15) PDL 10D
055318,000353: # PUSHLOC AT PDL+0
055319,000354: # ERASABLE INITIALIZATION REQUIRED:
055320,000355: # RONE E:(-29) M:(-27) M STATE VECTOR LEFT BY USER
055321,000356: # VONE' E:(+10) M:(+9) VN/SQRT(MU) LEFT BY TFF/CONIC
055322,000357: # RMAG1 E:(-29) M:(-27) PRESENT RADIUS, M LEFT BY TFFCONIC
055323,000358: # C(MPAC)E:(-29) M:(-27) RTERM, TERMINAL RADIUS LENGTH, M LEFT BY USER
055324,000359:
055325,000360: # THE FOLLOWING ARE STORED IN THE PUSH LIST AREA.
055326,000361: # TFF/RTMU E:(17) M:(14) 1/SQRT(MU) LEFT BY TFFCONIC.
055327,000362: # NRMAG E: (-29+NR) M RMAG, NORMALIZED LEFT BY TFFCONIC
055328,000363: # M: (-27+NR)
055329,000364: # X1 -NR, NORM COUNT LEFT BY TFFCONIC
055330,000365: # TFFNP E: (-38+2NR) M LCP, SEMI LATUS RECTUM, WEIGHT NR LEFT BY TFFCONIC
055331,000366: # M: (-36+2NR)
055332,000367: # TFFALFA E: (26-NR) 1/M ALFA, WEIGHT NR LEFT BY TFFCONIC
055333,000368: # M: (24-NR)
055334,000369: # TFFRTALF E:(10+NA) SQRT(ALFA), NORMALIZED LEFT BY TFFCONIC
055335,000370: # M:(9+NA)
055336,000371: # X2 -NA, NORM COUNT LEFT BY TFFCONIC
055337,000372: # TFF1/ALF E: (-22-2NA) SIGNED SEMIMAJ AXIS, WEIGHTED BY NA LEFT BY TFFCONIC
055338,000373: # M: (-20-2NA)
055339,000374: # DEBRIS: QPRET, PDL+0 ... PDL+3
055340,000375: # RTERM E:(-29) M:(-27) RTERM, TERMINAL RADIUS LENGTH
055341,000376: # RAPO E:(-29) M:(-27) PDL 16D (=NRTERM)
055342,000377: # RPER E:(-29) M:(-27) PDL 14D (=TFFQ1)
055343,000378:
Page 1266 |
055345,000380: 27,3447 77614 CALCTPER SETGO # ENTER WITH RPER IN MPAC
055346,000381: 27,3450 03436 TFFSW
055347,000382: 27,3451 57454 +3
055348,000383: 27,3452 77614 CALCTFF CLEAR # ENTER WITH RTERM IN MPAC
055349,000384: 27,3453 03676 TFFSW
055350,000385: 27,3454 00023 +3 STORE RTERM # E: (-29) M: (-27)
055351,000386: 27,3455 77657 SL*
055352,000387: 27,3456 20201 0,1 # X1=-NR
055353,000388: 27,3457 00021 STORE NRTERM # RTERM E: (-29+NR) M: (-27+NR)
055354,000389: 27,3460 44205 DMP BDSU
055355,000390: 27,3461 00033 TFFALFA # ALFA E: (26-NR) M: (24-NR)
055356,000391: 27,3462 06510 TFF1/4
055357,000392: 27,3463 41206 PUSH DMP # (2-ALFA RTERM) (-3) TO PDL+0
055358,000393: 27,3464 00021 NRTERM # E: (-29+NR) M: (-27+NR)
055359,000394: 27,3465 53725 PDDL SR* # RTERM(2-ALFA RTERM) TO PDL+2
055360,000395: # E: (-32+NR) M: (-30+NR)
055361,000396: 27,3466 00035 TFFNP # LC P E:(-38+2NR) M:(-36+2NR)
055362,000397: 27,3467 20573 0 -6,1 # X1 = -NR
055363,000398: 27,3470 43276 DCOMP DAD # DUE TO SHIFTS, KEEP PRECISION FOR SQRT
055364,000399: # RTERM(2-ALFA RTERM) FROM PDL+2
055365,000400: # E: (-32+NR) M: (-30+NR)
055366,000401: 27,3471 77657 SR* # LEAVE E: (-32) M: (-30)
055367,000402: 27,3472 20601 0,1 # X1 = -NR
055368,000403: 27,3473 71214 BOFF DLOAD # CHECK TFF / TPER SWITCH
055369,000404: 27,3474 03756 TFFSW
055370,000405: 27,3475 57477 +2 # IF TFF, CONTINUE
055371,000406: 27,3476 06520 TFFZEROS # IF TPER, SET Q2 = 0
055372,000407: 27,3477 75440 +2 BMN SQRT # E: (-16) M: (-15)
055373,000408:
055374,000409: 27,3500 57632 MAXTFF1 # NO FREE FALL CONIC TO RTERM FROM HERE
055375,000410: # RESET PDL, SET TFF=POSMAX, AND EXIT.
055376,000411:
055377,000412: 27,3501 41076 DCOMP BOVB # RT IS ON INBOUND SIDE. ASSURE OVFIND=0
055378,000413: 27,3502 57735 TCDANZIG # ANY PORT IN A STORM.
055379,000414: 27,3503 24045 STOVL TFFTEM # Q2 E: (-16) M: (-15)
055380,000415: 27,3504 02161 VONE' # VN/SQRT(MU) E: (10) M: (9)
055381,000416: 27,3505 52441 DOT SL3
055382,000417: 27,3506 02200 RONE # SAVED RN. E: (-29) M: (-27)
055383,000418: 27,3507 00017 STORE TFFQ1 # Q1, SAVE FOR GONEPAST TEST.
055384,000419: # E: (-16) M: (-15)
055385,000420: 27,3510 44240 BMN BDSU
055386,000421: 27,3511 57532 INBOUND # USE ALTERNATE Z
055387,000422: 27,3512 00045 TFFTEM # Q2 E: (-16) M: (-15)
055388,000423:
055389,000424: # OUTBOUND Z CALC CONTINUES HERE
055390,000425:
055391,000426: 27,3513 14043 STODL TFFX # NUM=Q2-Q1 E: (-16) M: (-15)
055392,000427: 27,3514 00033 TFFALFA # ALFA E: (26-NR) M: (24-NR)
055393,000428: 27,3515 44205 DMP BDSU
Page 1267 |
055395,000430: 27,3516 00041 NRMAG # RMAG E: (-29+NR) M: (-27+NR)
055396,000431: # (2-RTERM ALFA) (-3) FROM PDL+0
055397,000432: 27,3517 51406 SAVEDEN PUSH ABS # DEN TO PDL+0 E: (-3) OR (-16)
055398,000433: # M: (-3) OR (-15)
055399,000434: 27,3520 40015 DAD BOV # INDETERMINANCY TEST
055400,000435: 27,3521 17741 LIM(-22) # =1.0-B(-22)
055401,000436: 27,3522 57543 TFFXTEST # GO IF DEN >/= B(-22)
055402,000437: 27,3523 65345 DLOAD PDDL # SET DEN=0 OTHERWISE
055403,000438: 27,3524 06520 TFFZEROS
055404,000439: # XCH ZERO WITH PDL+0
055405,000440: 27,3525 57545 DLOAD DCOMP
055406,000441: 27,3526 00033 TFFALFA # ALFA E: (26-NR) M: (24-NR)
055407,000442: 27,3527 71240 BMN DLOAD # FOR TPER: Z INDET AT DELE/2=0 AND 90.
055408,000443: 27,3530 57637 TFFEL1 # ASSUME 90, AND LEAVE 0 IN PDL: 1/Z=D/N
055409,000444:
055410,000445: # Z INDET. AT PERIGEE FOR PARAB OR HYPERB.
055411,000446: 27,3531 77616 DUMPTFF1 RVQ # RETURN TFF =0
055412,000447:
055413,000448: # INBOUND Z CALC CONTINUES HERE
055414,000449: 27,3532 77745 INBOUND DLOAD # RESET PDL+0
055415,000450: 27,3533 45345 DLOAD DSU # ALTERNATE Z CALC
055416,000451: 27,3534 00023 RTERM # E: (-29) M: (-27)
055417,000452: 27,3535 00015 RMAG1 # E: (-29) M: (-27)
055418,000453: 27,3536 14043 STODL TFFX # NUM=RTERM-RN E: (-29) M: (-27)
055419,000454: 27,3537 00045 TFFTEM # Q2 E: (-16) M: (-15)
055420,000455: 27,3540 52015 DAD GOTO
055421,000456: 27,3541 00017 TFFQ1 # Q1 E: (-16) M: (-15)
055422,000457: 27,3542 57517 SAVEDEN # DEN = Q2+Q1 E: (-16) M: (-15)
055423,000458:
055424,000459: 27,3543 65215 TFFXTEST DAD PDDL # (ABS(DEN) TO PDL+2)) E: (-3) OR (-16)
055425,000460: # M: (-3) OR (-15)
055426,000461: 27,3544 17743 DP(-22) # RESTORE ABS(DEN) TO MPAC
055427,000462: 27,3545 00043 TFFX # NUM E:(-16) OR (-29) M:(-15) OR (-27)
055428,000463: 27,3546 53605 DMP SR*
055429,000464: 27,3547 00031 TFFRTALF # SQRT(ALFA) E: (10+NA) M: (9+NA)
055430,000465: 27,3550 57201 0 -3,2 # X2=-NA
055431,000466: 27,3551 77671 DDV # C(MPAC) =NUM SQRT(ALFA) E:(-3) OR (-16)
055432,000467: # M:(-3) OR (-15)
055433,000468: # ABS(DEN) FROM PDL+2 E:(-3) OR (-16)
055434,000469: # M:(-3) OR (-15)
055435,000470: 27,3552 40145 DLOAD BOV # (THE DLOAD IS SHARED WITH TFFELL)
055436,000471: 27,3553 00043 TFFX # NUM E: (-16) OR (-29) M:(-15) OR (-27)
055437,000472: 27,3554 57635 TFFELL # USE EQN FOR DELE GEQ 90, LEQ -90
055438,000473:
055439,000474: # OTHERWISE, CONTINUE FOR GENERAL CONIC FOR TFF EQN
055440,000475:
055441,000476: 27,3555 45471 DDV STADR
055442,000477: # DEN FROM PDL+0 E: (-3) OR (-16)
055443,000478: # M: (-3) OR (-15)
055444,000479: 27,3556 77732 STORE TFFTEM # Z SAVE FOR SIGN OF SDELF.
Page 1268 |
055446,000481: # E: (-13) M: (-12)
055447,000482: 27,3557 63406 PUSH DSQ # Z TO PDL+0
055448,000483: 27,3560 41206 PUSH DMP # Z SQ TO PDL+2 E: (-26) M: (-24)
055449,000484: 27,3561 00035 TFFNP # LC P E: (-38+2NR) M: (-36+2NR)
055450,000485: 27,3562 75261 SL SIGN
055451,000486: 27,3563 20206 5
055452,000487: 27,3564 00045 TFFTEM # AFFIX SIGN FOR SDELF (ENTRY DISPLAY)
055453,000488: 27,3565 14045 STODL TFFTEM # P ZSQ E: (-59+2NR) M: (-55+2NR)
055454,000489: # (ARG IS USED IN TFF/TRIG)
055455,000490: # ZSQ FROM PDL+2 E: (-26) M: (-24)
055456,000491: 27,3566 41206 PUSH DMP # RESTORE PUSH LOC
055457,000492: 27,3567 00033 TFFALFA # ALFA E: (26-NR) M: (24-NR)
055458,000493: 27,3570 77657 SL*
055459,000494: 27,3571 20201 0,1 # X1=-NR
055460,000495: 27,3572 00043 STORE TFFX # X
055461,000496: 27,3573 41234 RTB DMP
055462,000497: 27,3574 57717 T(X) # POLY
055463,000498: # ZSQ FROM PDL+2 E: (-26) M: (-24)
055464,000499: 27,3575 44302 SR2 BDSU # 2 ZSQ T(X) E: (-29) M: (-27)
055465,000500: 27,3576 00023 RTERM # RTERM E: (-29) M: (-27)
055466,000501: 27,3577 41215 DAD DMP
055467,000502: 27,3600 00015 RMAG1 # E: (-29) M: (-27)
055468,000503: # Z FROM PDL+0 E: (-13) M: (-12)
055469,000504: 27,3601 51042 SR3 BPL # TFF SQRT(MU) E: (-45) M: (-42)
055470,000505: 27,3602 57623 ENDTFF # (NO PUSH UP)
055471,000506: 27,3603 75206 PUSH SIGN # TFF SQRT(MU) TO PDL+0
055472,000507: 27,3604 00017 TFFQ1 # Q1 FOR GONEPAST TEST
055473,000508: 27,3605 71244 BPL DLOAD # GONE PAST ?
055474,000509: 27,3606 57627 NEGTFF # YES. TFF < 0 .
055475,000510: 27,3607 00027 TFF1/ALF # 1/ALFA E: (-22-2NA) M: (-20-2NA)
055476,000511: 27,3610 51076 DCOMP BPL # ALFA > 0 ?
055477,000512: 27,3611 57627 NEGTFF # NO. TFF IS NEGATIVE.
055478,000513:
055479,000514: # CORRECT FOR ORBITAL PERIOD.
055480,000515:
055481,000516: 27,3612 77676 DCOMP # YES. CORRECT FOR ORB PERIOD.
055482,000517: 27,3613 56205 DMP DDV
055483,000518: 27,3614 17737 PI/16 # 2 PI (-5)
055484,000519: 27,3615 00031 TFFRTALF # SQRT(ALFA) E: (10+NA) M: (9+NA)
055485,000520: 27,3616 53657 SL* SL*
055486,000521: 27,3617 57602 0 -4,2 # X2=-NA
055487,000522: 27,3620 57602 0 -4,2
055488,000523: 27,3621 43257 SL* DAD
055489,000524: 27,3622 57576 0,2
055490,000525: # TFF SQRT(MU) FROM PDL+0 E:(-45) M:(-42)
055491,000526: 27,3623 40005 ENDTFF DMP BOV # TFF SQRT(MU) IN MPAC E:(-45) M:(-42)
055492,000527: 27,3624 00037 TFF/RTMU # E: (17) M: (14)
055493,000528: 27,3625 57633 MAXTFF # SET POSMAX IF OVFL.
055494,000529:
055495,000530: 27,3626 77616 DUMPTFF2 RVQ # RETURN TFF (-28) CS IN MPAC.
055496,000531:
Page 1269 |
055498,000533: 27,3627 77745 NEGTFF DLOAD
055499,000534: # TFF SQRT(MU) FROM PDL+0, NEGATIVE.
055500,000535: 27,3630 77650 GOTO
055501,000536: 27,3631 57623 ENDTFF
055502,000537:
055503,000538: 27,3632 77745 MAXTFF1 DLOAD # RESET PDL
055504,000539: 27,3633 43545 MAXTFF DLOAD RVQ
055505,000540: 27,3634 17753 NEARONE
055506,000541:
055507,000542: # TIME OF FLIGHT ELLIPSE WHEN DEL (ECCENTRIC ANOM) GEQ 90 AND LEQ -90.
055508,000543:
055509,000544: # NUM FROM TFFX. E: (-16) OR (-29)
055510,000545: # M: (-15) OR (-27)
055511,000546: 27,3635 77712 TFFELL SL2 # NUM E:(-14) OR (-27) M:(-13) OR (-25)
055512,000547: 27,3636 41465 BDDV PUSH # TEMP SAVE D/N IN PDL+0
055513,000548: # DEN FROM PDL+0 E:(-3)/( 16) M:(-3)/(-15)
055514,000549: # N/D TO PDL+0 E: (11) M: (10)
055515,000550: 27,3637 45345 TFFEL1 DLOAD DSU # (ENTER WITH D/N=0 IN PDL+0)
055516,000551: 27,3640 00045 TFFTEM # Q2 E: (-16) M: (-15)
055517,000552: 27,3641 00017 TFFQ1 # Q1 E: (-16) M: (-15)
055518,000553: 27,3642 14013 STODL TFFDELQ # Q2-Q1 E: (-16) M: (-15)
055519,000554: # D/N FROM PDL+0
055520,000555: 27,3643 77626 STADR
055521,000556: 27,3644 77732 STORE TFFTEM # D/N E: (11) M: (10)
055522,000557: 27,3645 53605 DMP SL*
055523,000558: 27,3646 00027 TFF1/ALF # 1/ALFA E: (-22-2NA) M: (-20-2NA)
055524,000559: 27,3647 57576 0,2 # 1/ALFA Z E: (-11-NA) M: (-10-NA)
055525,000560: 27,3650 41206 PUSH DMP # TO PDL+0
055526,000561: 27,3651 00045 TFFTEM # 1/Z E: (11) M: (10)
055527,000562: 27,3652 41057 SL* BOVB
055528,000563: 27,3653 57576 0,2 # X2= -NA
055529,000564: 27,3654 21674 SIGNMPAC # IN CASE X= 1.0, CONTINUE
055530,000565: 27,3655 00043 STORE TFFX # X=1/ALFA ZSQ
055531,000566: 27,3656 41234 RTB DMP
055532,000567: 27,3657 57717 T(X) # POLY
055533,000568: 27,3660 00043 TFFX
055534,000569: 27,3661 45242 SR3 DSU
055535,000570: 27,3662 17745 DP2(-3)
055536,000571: 27,3663 41405 DMP PUSH # 2(X T(X)-1) /Z ALFA E: (-15-NA)
055537,000572: # M: (-14-NA)
055538,000573: # 1/ALFA Z FROM PDL+0 E: (-11-NA)
055539,000574: # M: (-10-NA)
055540,000575: 27,3664 41345 DLOAD DMP # GET SIGN FOR SDELF
055541,000576: 27,3665 00045 TFFTEM # 1/Z E: (11) M: (10)
055542,000577: 27,3666 00015 RMAG1 # E: (-29) M: (-27)
055543,000578: 27,3667 43312 SL2 DAD
055544,000579: 27,3670 00017 TFFQ1 # Q1 E: (-16) M: (-15)
055545,000580: 27,3671 14045 STODL TFFTEM # (Q1+R 1/Z) =SGN OF SDELF E:(-16) M:(-15
055546,000581: 27,3672 00035 TFFNP # LC P E: (-38+2NR) M: (-36+2NR)
055547,000582: 27,3673 53605 DMP SL* # CALC FOR ARG FOR TFF/TRIG.
Page 1270 |
055549,000584: 27,3674 00027 TFF1/ALF # 1/ALFA E:(-22-2NA) M:(-20-2NA)
055550,000585: 27,3675 57575 1,2 # X2=-NA
055551,000586: 27,3676 53765 SIGN SL*
055552,000587: 27,3677 00045 TFFTEM # AFFIX SIGN FOR SDELF
055553,000588: 27,3700 57576 0,2
055554,000589: 27,3701 14045 STODL TFFTEM # P/ALFA E:(-59+2NR) M:(-55+2NR)
055555,000590: # (ARG FOR USE IN TFF/TRIG)
055556,000591: 27,3702 00027 TFF1/ALF # 1/ALFA E:(-22-2NA) M:(-20-2NA)
055557,000592: 27,3703 41366 SQRT DMP
055558,000593: 27,3704 17737 PI/16 # PI (-4)
055559,000594: 27,3705 77615 DAD
055560,000595: # 2(XT(X)-1)/Z ALFA FROM PDL E:(-15-NA)
055561,000596: # M:(-14-NA)
055562,000597: 27,3706 45257 SL* DSU
055563,000598: 27,3707 57577 0 -1,2
055564,000599: 27,3710 00013 TFFDELQ # Q2-Q1 E: (-16) M: (-15)
055565,000600: 27,3711 53605 DMP SL*
055566,000601: 27,3712 00027 TFF1/ALF # 1/ALFA E:(-22-2NA) M:(-20-2NA)
055567,000602: 27,3713 57601 0 -3,2
055568,000603: 27,3714 52057 SL* GOTO
055569,000604: 27,3715 57602 0 -4,2
055570,000605: 27,3716 57623 ENDTFF # TFF SQRT(MU) IN MPAC E:(-45) M:(-42)
055571,000606:
Page 1271 |
055573,000608: # PROGRAM NAME: T(X) DATE: 01.17.67
055574,000609: # MOD NO: 0 LOG SECTION: TIME OF FREE FALL
055575,000610: # MOD BY: RR BAIRNSFATHER
055576,000611: # FUNCTIONAL DESCRIPTION: THE POLYNOMIAL T(X) IS USED BY TIME OF FLIGHT SUBROUTINES CALCTFF AND
055577,000612: # CALCTPER TO APPROXIMATE THE SERIES
055578,000613: # 2 3
055579,000614: # 1/3 -X/5 +X /7 -X /9 ...
055580,000615:
055581,000616: # WHERE X = ALFA Z Z IF ALFA Z Z LEQ 1
055582,000617: # X = 1/(ALFA Z Z ) IF ALFA Z Z G 1
055583,000618:
055584,000619: # ALSO X IS NEG FOR HYPERBOLIC ORBITS
055585,000620: # X = 0 FOR PARABOLIC ORBITS
055586,000621: # X IS POSITIVE FOR ELLIPTIC ORBITS
055587,000622: # FOR FLIGHT 278, THE POLYNOMIAL T(X) IS FITTED OVER THE RANGE (0,+1) AND HAS A MAXIMUM
055588,000623: # DEVIATION FROM THE SERIES OF 2 E-5 (T(X) IS A CHEBYCHEV TYPE FIT AND WAS OBTAINED USING
055589,000624: # MAC PROGRAM AUTCURFIT294RRB AND IS VALID TO THE SAME TOLERANCE OVER THE RANGE (-.08,+1). )
055590,000625: # CALLING SEQUENCE: RTB
055591,000626: # T(X)
055592,000627: # C(MPAC) = X
055593,000628:
055594,000629: # SUBROUTINES CALLED: NONE
055595,000630: # NORMAL EXIT MODE: TC DANZIG
055596,000631: # ALARMS: NONE
055597,000632: # OUTPUT: C(MPAC) = T(X)
055598,000633: # ERASABLE INITIALIZATION REQUIRED:
055599,000634: # C(MPAC) = X
055600,000635: # DEBRIS: NONE
055601,000636:
055602,000637: 27,3717 07234 T(X) TC POLY
055603,000638: 27,3720 00004 DEC 4 B-14 # N-1
055604,000639: 27,3721 12525 12525 2DEC 3.333333333 E-1
055605,000640:
055606,000641: 27,3723 71463 57703 2DEC* -1.999819135 E-1*
055607,000642:
055608,000643: 27,3725 04423 17645 2DEC* 1.418148467 E-1*
055609,000644:
055610,000645: 27,3727 74604 43667 2DEC* -1.01310997 E-1*
055611,000646:
055612,000647: 27,3731 01626 37256 2DEC* 5.609004986 E-2*
055613,000648:
055614,000649: 27,3733 77404 52071 2DEC* -1.536156925 E-2*
055615,000650:
055616,000651: 27,3735 06073 ENDT(X) TC DANZIG
055617,000652:
055618,000653: 27,3736 27,3735 TCDANZIG = ENDT(X)
055619,000654:
Page 1272 |
055621,000656: # TFF CONSTANTS
055622,000657:
055623,000658: 32,3733 BANK 32
055624,000659:
055625,000660: 27,2000 SETLOC TOF-FF1
055626,000661: 27,2000 BANK
055627,000662:
055628,000663: # NOTE _ NOTE _ ADJUSTED MUE FOR NEAR EARTH TRAJ.
055629,000664:
055630,000665: # MUE = 3.990 815 471 E10 M CUBE/CS SQ
055631,000666: # RTMUE = 1.997702549 E5 B-18* MODIFIED EARTH MU
055632,000667:
055633,000668: # NOTE _ NOTE _ ADJUSTED MUE FOR NEAR EARTH TRAJ.
055634,000669:
055635,000670: # MUM = 4.902 778 E8 M CUBE /CS SQ
055636,000671:
055637,000672: # RTMUM 2DEC* 2.21422176 E4 B-18*
055638,000673: 27,3736 06220 37553 PI/16 2DEC 3.141592653 B-4
055639,000674:
055640,000675: 27,3740 37777 37700 LIM(-22) 2OCT 3777737700 # 1.0 -B(-22)
055641,000676:
055642,000677: 27,3742 00000 00100 DP(-22) 2OCT 0000000100 # B(-22)
055643,000678:
055644,000679: 27,3744 04000 00000 DP2(-3) 2DEC 1 B-3
055645,000680:
055646,000681: 27,3746 02000 00000 DP2(-4) 2DEC 1 B-4 # 1/16
055647,000682:
055648,000683: # RPAD1 2DEC 6373338 B-29 M (-29) =20 909 901.57 FT
055649,000684:
055650,000685: 27,3750 23,2335 RPAD1 = RPAD
055651,000686:
055652,000687: 27,3750 00305 11205 R300K 2DEC 6464778 B-29 # (-29) M
055653,000688:
055654,000689: 27,3752 37777 37777 NEARONE 2DEC .999999999
055655,000690:
055656,000691: 27,3754 23,2517 TFFZEROS EQUALS HI6ZEROS
055657,000692: 27,3754 23,2507 TFF1/4 EQUALS HIDP1/4
055658,000693:
End of include-file TIME_OF_FREE_FALL.agc. Parent file is MAIN.agc