Source Code

These source code files have been transcribed or otherwise adapted from digitized images of a hardcopy from the private collection of Don Eyles. The digitization was performed by archive.org, and transcription was performed by a team of volunteers. Note that the page images presented online are of reduced quality, and that the original high-quality images are available at archive.org. Report any conversion errors or legibility problems in page images to info@sandroid.org. Notations on the program listing read, in part:

    473423A YUL SYSTEM FOR BLK2: REVISION 12 of PROGRAM AURORA BY DAP GROUP   NOV 10, 1966
Note that the date is the date of the printout, not the date of the program revision.

025822,000002:                                                                                                  ## Copyright:    Public domain.
025823,000003:                                                                                                  ## Filename:     KALMAN_FILTER_FOR_LEM_DAP.agc
025824,000004:                                                                                                  ## Purpose:      Part of the source code for Aurora (revision 12).
025825,000005:                                                                                                  ## Assembler:    yaYUL
025826,000006:                                                                                                  ## Contact:      Ron Burkey <info@sandroid.org>.
025827,000007:                                                                                                  ## Website:      https://www.ibiblio.org/apollo.
025828,000008:                                                                                                  ## Pages:        0604-0614
025829,000009:                                                                                                  ## Mod history:  2016-09-20 JL   Created.
025830,000010:                                                                                                  ##               2016-09-26 OH  Initial Transcription
025831,000011:                                                                                                  ##               2016-10-04 HG   Add missed statements on page 607, added missing ## coments for page numbers
025832,000012:                                                                                                  ##                               M520F->MS20F, READ +4 -> READ 4
025833,000013:                                                                                                  ##               2016-10-15 HG   Fix operand   D2CDU2FL -> D2CDUZFL  
025834,000014:                                                                                                  ##                                             FLTAXIS  -> FLTYAXIS      
025835,000015:                                                                                                  ##                                             MS2OF    -> MS20F  
025836,000016:                                                                                                  ##                               fix label     FILTSTART -> FILSTART
025837,000017:                                                                                                  ## 
025838,000018:                                                                                                  ##               2016-12-08 RSB  Proofed comments with octopus/ProoferComments
025839,000019:                                                                                                  ##                               and fixed the errors found.
025840,000020: 
025841,000021:                                                                                                  ## This source code has been transcribed or otherwise adapted from
025842,000022:                                                                                                  ## digitized images of a hardcopy from the private collection of
025843,000023:                                                                                                  ## Don Eyles.  The digitization was performed by archive.org.
025844,000024: 
025845,000025:                                                                                                  ## Notations on the hardcopy document read, in part:
025846,000026: 
025847,000027:                                                                                                  ##       473423A YUL SYSTEM FOR BLK2: REVISION 12 of PROGRAM AURORA BY DAP GROUP
025848,000028:                                                                                                  ##       NOV 10, 1966
025849,000029: 
025850,000030:                                                                                                  ##       [Note that this is the date the hardcopy was made, not the
025851,000031:                                                                                                  ##       date of the program revision or the assembly.]
025852,000032: 
025853,000033:                                                                                                  ## The scan images (with suitable reduction in storage size and consequent
025854,000034:                                                                                                  ## reduction in image quality) are available online at
025855,000035:                                                                                                  ##       https://www.ibiblio.org/apollo.
025856,000036:                                                                                                  ## The original high-quality digital images are available at archive.org:
025857,000037:                                                                                                  ##       https://archive.org/details/aurora00dapg
025858,000038: 

Page 0604

025860,000040: 
025861,000041:                                                                                                  #  THE FOLLOWING T5RUPT ENTRY BEGINS THE PROGRAM WHICH INITIALIZES THE KALMAN FILTER AND SETS UP A P-AXIS RUPT TO
025862,000042:                                                                                                  #  OCCUR 20 MS FROM ITS BEGINNING.
025863,000043: 
025864,000044: 26,2000                                           BANK     26                                    
025865,000045: 
025866,000046: 26,2000           32372        FILTINIT           CAF      MS20F                                 #  RESET TIMER IMMEDIATELY: DT = 20 MS
025867,000047: 26,2001           54030                           TS       TIME5                                 
025868,000048: 
025869,000049: 26,2002           22016                           LXCH     BANKRUPT                              #  INTERRUPT LEAD IN (CONTINUED)
025870,000050: 26,2003           00006                           EXTEND                                         
025871,000051: 26,2004           22012                           QXCH     QRUPT                                 
025872,000052: 
025873,000053: 26,2005           00006                           EXTEND                                         #  SET UP FOR P-AXIS RUPT
025874,000054: 26,2006           32071                           DCA      PAX/FILT                              
025875,000055: 26,2007           52346                           DXCH     T5ADR                                 
025876,000056: 
025877,000057: 26,2010           32013                           CAF      FIRSTADR                              #  SET UP TO AVOID DT CALCULATION DURING
025878,000058: 26,2011           55553                           TS       STEERADR                              #  KALMAN FILTER INITIALIZATION PASS
025879,000059: 
025880,000060: 
025881,000061: 26,2012           12032                           TCF      FILSTART                              
025882,000062: 
025883,000063: 26,2013           02315        FIRSTADR           GENADR   FILFIRST                              
025884,000064: 
025885,000065:                                                                                                  #  THE FOLLOWING T5RUPT ENTRY BEGINS THE KALMAN FILTER PROGRAM.  THIS SECTION ALSO SETS UP A T5RUPT TO OCCUR 20 MS
025886,000066:                                                                                                  #  FROM ITS BEGINNING AND SETS IT TO GO TO THE LOCATION AT THE TOP OF THE POST FILTER RUPT LIST.
025887,000067: 
025888,000068: 26,2014           02051        MOSTPASS           GENADR   DTCALC                                #  WORD IN FILTPASS FOR THESE PASSES
025889,000069: 
025890,000070: 26,2015           32372        FILTER             CAF      MS20F                                 #  RESET TIMER IMMEDIATELY: DT = 20 MS
025891,000071: 26,2016           54030                           TS       TIME5                                 
025892,000072: 
025893,000073: 26,2017           22016                           LXCH     BANKRUPT                              #  INTERRUPT LEAD IN (CONTINUED)
025894,000074: 26,2020           00006                           EXTEND                                         
025895,000075: 26,2021           22012                           QXCH     QRUPT                                 
025896,000076: 
025897,000077: 26,2022           00006                           EXTEND                                         #  SET RUPT ADDRESS TO TOP OF
025898,000078: 26,2023           31604                           DCA      PFRPTLST                              #  POST FILTER RUPT LIST
025899,000079: 26,2024           52346                           DXCH     T5ADR                                 
025900,000080: 
025901,000081: 26,2025           53604                           DXCH     PFRPTLST                              #  ROTATE 2CADR'S IN POST FILTER RUPT LIST
025902,000082: 26,2026           53612                           DXCH     PFRPTLST   +6                         
025903,000083: 26,2027           53610                           DXCH     PFRPTLST   +4                         
025904,000084: 26,2030           53606                           DXCH     PFRPTLST   +2                         
025905,000085: 26,2031           53604                           DXCH     PFRPTLST                              
025906,000086: 
025907,000087:                                                                                                  #  BEGIN THE KALMAN FILTER BY READING CDU ANGLES AND TIME.
025908,000088: 
025909,000089: 26,2032           04177        FILSTART           TC       T6JOBCHK                              #  CHECK T6 CLOCK FOR P-AXIS ACTIVITY
025910,000090: 

Page 0605

025912,000092: 26,2033           00006                           EXTEND                                         
025913,000093: 26,2034           30034                           DCA      CDUY                                  #  STORE CDUY AND CDUZ AT PI AND IN 2.5 COM
025914,000094: 26,2035           53550                           DXCH     STORCDUY                              
025915,000095: 26,2036           00006                           EXTEND                                         #  BEGIN READING THE CLOCK TO GET TIME
025916,000096: 26,2037           00004                           READ     4                                     #    INCREMENT.
025917,000097: 26,2040           54001                           TS       L                                     
025918,000098: 26,2041           00006                           EXTEND                                         
025919,000099: 26,2042           06004                           RXOR     4                                     #  CHECK TO SEE IF CH 4 WAS IN TRANSITION
025920,000100: 26,2043           00006                           EXTEND                                         #    WHEN IT WAS FIRST READ.
025921,000101: 26,2044           12050                           BZF      +4                                    #  BRANCH IF TIME WAS THE SAME IN 2 READS.
025922,000102: 26,2045           00006                           EXTEND                                         
025923,000103: 26,2046           00004                           READ     4                                     
025924,000104: 26,2047           54001                           TS       L                                     #  THIS TIME READ ALWAYS GIVES GOOD NO.
025925,000105: 26,2050           01553                           TC       STEERADR                              #  SKIP DTCALC DURING INITIAL PASS
025926,000106: 
025927,000107: 26,2051           40001        DTCALC             CS       L                                     
025928,000108: 26,2052           61552                           AD       DAPTIME                               #  A CONTAINS THE TIME DIFFERENCE (DT)
025929,000109: 26,2053           23552                           LXCH     DAPTIME                               #    SINCE THE LAST FILTER.
025930,000110: 26,2054           00006                           EXTEND                                         
025931,000111: 26,2055           62060                           BZMF     +3                                    
025932,000112: 26,2056           67640                           AD       NEG1/2                                #  THIS IS ADDING -1.0 TO -DT AND ACCOUNTS
025933,000113: 26,2057           67640                           AD       NEG1/2                                #  FOR AN OVERFLOW INTO CHANNEL 5
025934,000114: 
025935,000115:                                                                                                  #   SCALING OF DELTA T FOR KALMAN FILTER IS 1/8 SECOND.
025936,000116: 26,2060           00006                           EXTEND                                         #  TIME NOW SCALED AT 5.12 SECONDS
025937,000117: 26,2061           77651                           MP       BIT7                                  #  FIRST RESCALE TO 5.12/64
025938,000118: 26,2062           42367                           CS       .64                                   
025939,000119: 26,2063           00006                           EXTEND                                         #  THEN RESCALE TO 5.12/(64*.64) OR
025940,000120: 26,2064           70001                           MP       L                                     #  5.12/40.96 WHICH IS THE SAME AS
025941,000121: 26,2065           55551                           TS       DT                                    #  DT SCALED AT 1/8
025942,000122: 
025943,000123:                                                                                                  #  SET UP FILTER WEIGHTING VECTOR FOR THIS FILTER PASS.
025944,000124: 
025945,000125: 26,2066           11556                           CCS      WPOINTER                              #  TEST FOR WEIGHTING VECTOR STEADY-STATE
025946,000126: 26,2067           12073                           TCF      MOVEWGTS                              #  POINTER NOT YET ZERO (MULTIPLE OF THREE)
025947,000127: 26,2070           02055 46006  PAX/FILT           2CADR    PAXIS                                 #  (ROOM FOR 2CADR IN CCS HOLES)
025948,000128: 
025949,000129: 26,2072           12104                           TCF      FLTZAXIS                              #  STEADY-STATE ALREADY, NO UPDATING AGAIN
025950,000130: 
025951,000131: 26,2073           46165        MOVEWGTS           CS       THREE                                 #  SET UP POINTER FOR THIS PASS
025952,000132: 26,2074           27556                           ADS      WPOINTER                              #  (NEVER GETS BELOW ZERO HERE)
025953,000133: 
025954,000134: 26,2075           00006                           EXTEND                                         #  WPOINTER IS INDEX = 87 FIRST TIME HERE
025955,000135: 26,2076           51556                           INDEX    WPOINTER                              #  AND IS DECREASED BY 3 EVERY FILTER PASS
025956,000136: 26,2077           32404                           DCA      WVECTOR                               #  UNTIL THE STEADY-STATE IS REACHED.
025957,000137: 26,2100           53560                           DXCH     W0                                    #  MOVE IN NEW W0,W1
025958,000138: 26,2101           51556                           INDEX    WPOINTER                              
025959,000139: 26,2102           32405                           CAF      WVECTOR    +2                         
025960,000140: 26,2103           55561                           TS       W2                                    #  MOVE IN NEW W2
025961,000141: 

Page 0606

025963,000143: 
025964,000144: 26,2104           37656        FLTZAXIS           CAF      TWO                                   #  SET UP INDEXER FOR D.P. PICKUP AND TO
025965,000145: 26,2105           54073                           TS       QRCNTR                                #  INDICATE Z-AXIS FILTER PASS
025966,000146: 
025967,000147: 26,2106           12112                           TCF      FLTYAXIS                              
025968,000148: 
025969,000149: 26,2107           37665        GOYFILTR           CAF      ZERO                                  #  SET INDEXER FOR Y-AXIS
025970,000150: 26,2110           54073                           TS       QRCNTR                                
025971,000151: 
025972,000152: 26,2111           04177                           TC       T6JOBCHK                              #  CHECK T6 CLOCK FOR P-AXIS ACTIVITY
025973,000153: 
025974,000154: 26,2112           50073        FLTYAXIS           INDEX    QRCNTR                                
025975,000155: 26,2113           53563                           DXCH     CDUYFIL                               #  THETA IS D.P. SCALED AT 2 PI RADIANS
025976,000156: 26,2114           52077                           DXCH     CDU                                   
025977,000157: 26,2115           50073                           INDEX    QRCNTR                                #    .
025978,000158: 26,2116           53567                           DXCH     DCDUYFIL                              #  THETA IS D.P. SCALED AT PI/4 RAD/SEC
025979,000159: 26,2117           52066                           DXCH     CDUDOT                                
025980,000160: 26,2120           50073                           INDEX    QRCNTR                                #   ..                                 2
025981,000161: 26,2121           53573                           DXCH     D2CDUYFL                              #  THETA IS D.P. SCALED AT PI/8 RAD/SEC
025982,000162: 26,2122           52071                           DXCH     CDU2DOT                               
025983,000163: 26,2123           50073                           INDEX    QRCNTR                                #   ...                        7       3
025984,000164: 26,2124           31576                           CAE      Y3DOT                                 #  THETA IS S.P. SCALED AT PI/2 RAD/SEC
025985,000165: 26,2125           57577                           XCH      CDU3DOT                               
025986,000166: 
025987,000167:                                                                                                  #  NOTE THAT THE FILTERED VARIABLES ARE READ DESTRUCTIVELY FOR SPEED AND EFFICIENCY AND THAT Y3DOT IS NOT UPDATED.
025988,000168:                                                                                                  #  SO IT MUST BE READ NON-DESTRUCTIVELY BUT NEED NOT BE RESTORED AFTER EACH KALMAN FILTER PASS.
025989,000169: 

Page 0607

025991,000171:                                                                                                  #  INTEGRATION EXTRAPOLATION EQUATIONS:
025992,000172: 
025993,000173: 26,2126           30070        KLMNFLTR           CAE      CDU2DOT                               #  A SCALED AT PI/8 (USE S.P.)
025994,000174: 26,2127           00006                           EXTEND                                         
025995,000175: 26,2130           71551                           MP       DT                                    #  ADT SCALED AT PI/64 OR .5ADT AT PI/128
025996,000176: 26,2131           00006                           EXTEND                                         
025997,000177: 26,2132           77646                           MP       BIT10                                 #  RESCALE BY RIGHT SHIFT 5
025998,000178: 26,2133           60065                           AD       CDUDOT                                #  W + .5ADT SCALED AT PI/4
025999,000179: 26,2134           00006                           EXTEND                                         
026000,000180: 26,2135           71551                           MP       DT                                    #  (W + .5ADT)DT SCALED AT PI/32
026001,000181: 26,2136           00006                           EXTEND                                         
026002,000182: 26,2137           77647                           MP       BIT9                                  #  RESCALE BY RIGHT SHIFT 6 (KEEP D.P.)
026003,000183: 26,2140           20077                           DAS      CDU                                   #  CDU = CDU + (W + .5ADT)DT SCALED AT 2PI
026004,000184: 
026005,000185: 26,2141           31577                           CAE      CDU3DOT                               #  ADOT SCALED AT PI/2(7)
026006,000186: 26,2142           00006                           EXTEND                                         
026007,000187: 26,2143           71551                           MP       DT                                    #  .5ADOTDT SCALED AT PI/2(11)
026008,000188: 26,2144           54072                           TS       ITEMP5                                #  (SAVE FOR ALPHA INTEGRATION)
026009,000189: 26,2145           00006                           EXTEND                                         
026010,000190: 26,2146           77651                           MP       BIT7                                  #  RESCALE BY RIGHT SHIFT 8
026011,000191: 26,2147           60070                           AD       CDU2DOT                               #  A + .5ADOTDT SCALED AT PI/8
026012,000192: 26,2150           00006                           EXTEND                                         
026013,000193: 26,2151           71551                           MP       DT                                    #  *A + .5ADOTDT)DT SCALED AT PI/64
026014,000194: 26,2152           00006                           EXTEND                                         
026015,000195: 26,2153           77645                           MP       BIT11                                 #  RESCALE BY RIGHT SHIFT 4 (KEEP D.P.)
026016,000196: 26,2154           20066                           DAS      CDUDOT                                #  W = W + (A + .5ADOTDT)DT SCALED AT PI/4
026017,000197: 
026018,000198: 26,2155           30072                           CAE      ITEMP5                                #  ADOTDT SCALED AT PI/2(10) (FROM ABOVE)
026019,000199: 26,2156           00006                           EXTEND                                         
026020,000200: 26,2157           77650                           MP       BIT8                                  #  RESCALE BY RIGHT SHIFT 7 (KEEP D.P.)
026021,000201: 26,2160           20071                           DAS      CDU2DOT                               #  A = A + ADOTDT SCALED AT PI/8
026022,000202: 

Page 0608

026024,000204: 
026025,000205:                                                                                                  #  WEIGHTING VECTOR ADJUSTMENT EQUATIONS:
026026,000206: 26,2161           00006                           EXTEND                                         #  CONVERT CDU INTEGRATED VALUE FROM DOUBLE
026027,000207: 26,2162           30077                           DCA      CDU                                   #  PRECISION SCALED AT 2PI IN ONES COMPLE-
026028,000208: 26,2163           02302                           TC       ONETOTWO                              #  MENT TO SINGLE PRECISION SCALED AT PI
026029,000209: 26,2164           31550                           CAE      STORCDUZ                              #  IN TWOS COMPLEMENT, THEN DIFFERENCE WITH
026030,000210: 26,2165           00006                           EXTEND                                         #  STORED CDU REGISTER READING TO GET A
026031,000211: 26,2166           20072                           MSU      ITEMP5                                #  SINGLE PRECISION ONES COMPLEMENT RESULT
026032,000212: 26,2167           55554                           TS       DPDIFF                                #  SCALED AT PI RADIANS (UPPER HALF)
026033,000213: 
026034,000214: 26,2170           40077                           CS       CDU        +1                         #  CREATE LOW ORDER WORD OF D.P. DIFFERENCE
026035,000215: 26,2171           60000                           DOUBLE                                         #  ONES COMPLEMENT SCALED AT PI RADIANS AND
026036,000216: 26,2172           57555                           XCH      DPDIFF     +1                         #  USE S.P. RESULT ABOVE AS HIGH ORDER WORD
026037,000217: 
026038,000218: 26,2173           00006                           EXTEND                                         #  RESCALE DPDIFF TO PI
026039,000219: 26,2174           31555                           DCA      DPDIFF                                
026040,000220: 26,2175           20001                           DDOUBL                                         
026041,000221: 26,2176           22072                           LXCH     ITEMP5                                #  SAVE LOW ORDER WORD FOR D.P. MULTIPLY
026042,000222: 26,2177           00006                           EXTEND                                         
026043,000223: 26,2200           71557                           MP       W0                                    #  CDU = CDU + DPDIFF (D.P.) * W0 (S.P.)
026044,000224: 26,2201           20077                           DAS      CDU                                   
026045,000225: 26,2202           30072                           CAE      ITEMP5                                #  W0 IS SCALED AT 2
026046,000226: 26,2203           00006                           EXTEND                                         #  DPDIFF IS RESCALED TO PI
026047,000227: 26,2204           71557                           MP       W0                                    #  W0*DPDIFF IS SCALED AT 2PI (AS CDU)
026048,000228: 26,2205           26077                           ADS      CDU        +          1               
026049,000229: 26,2206           54001                           TS       L                                     
026050,000230: 26,2207           12211                           TCF      +2                                    
026051,000231: 26,2210           26076                           ADS      CDU                                   
026052,000232: 
026053,000233: 26,2211           31554                           CAE      DPDIFF                                #  RESCALE DPDIFF TO PI/128
026054,000234: 26,2212           00006                           EXTEND                                         
026055,000235: 26,2213           77647                           MP       BIT9                                  #  DPDIFF (D.P.) * 256
026056,000236: 26,2214           22072                           LXCH     ITEMP5                                
026057,000237: 26,2215           31555                           CAE      DPDIFF     +1                         
026058,000238: 26,2216           00006                           EXTEND                                         
026059,000239: 26,2217           77647                           MP       BIT9                                  
026060,000240: 26,2220           60072                           AD       ITEMP5                                
026061,000241: 26,2221           22072                           LXCH     ITEMP5                                
026062,000242: 
026063,000243: 26,2222           00006                           EXTEND                                         #   .     .
026064,000244: 26,2223           71560                           MP       W1                                    #  CDU = CDU + DPDIFF (D.P.) * W1 (S.P.)
026065,000245: 26,2224           20066                           DAS      CDUDOT                                
026066,000246: 26,2225           30072                           CAE      ITEMP5                                #  W1 IS SCALED AT 32
026067,000247: 26,2226           00006                           EXTEND                                         #  DPDIFF IS RESCALED TO PI/128
026068,000248: 26,2227           71560                           MP       W1                                    #  W1*DPDIFF IS SCALED AT PI/4 (AS CDUDOT)
026069,000249: 26,2230           26066                           ADS      CDUDOT     +1                         
026070,000250: 26,2231           54001                           TS       L                                     
026071,000251: 26,2232           12234                           TCF      +2                                    
026072,000252: 26,2233           26065                           ADS      CDUDOT                                
026073,000253: 

Page 0609

026075,000255: 26,2234           31554                           CAE      DPDIFF                                #  RESCALE DPDIFF TO PI/64
026076,000256: 26,2235           00006                           EXTEND                                         
026077,000257: 26,2236           77650                           MP       BIT8                                  #  DPDIFF (D.P.) * 128
026078,000258: 26,2237           22072                           LXCH     ITEMP5                                
026079,000259: 26,2240           31555                           CAE      DPDIFF     +1                         
026080,000260: 26,2241           00006                           EXTEND                                         
026081,000261: 26,2242           77650                           MP       BIT8                                  
026082,000262: 26,2243           60072                           AD       ITEMP5                                
026083,000263: 26,2244           22072                           LXCH     ITEMP5                                
026084,000264: 
026085,000265: 26,2245           00006                           EXTEND                                         #   ..    ..
026086,000266: 26,2246           71561                           MP       W2                                    #  CDU = CDU + DPDIFF (D.P.) * W2 (S.P.)
026087,000267: 26,2247           20071                           DAS      CDU2DOT                               
026088,000268: 26,2250           30072                           CAE      ITEMP5                                #  W2 IS SCALED AT 8
026089,000269: 26,2251           00006                           EXTEND                                         
026090,000270: 26,2252           71561                           MP       W2                                    #  W2*DPDIFF IS SCALED AT PI/8 (AS CDU2DOT)
026091,000271: 26,2253           26071                           ADS      CDU2DOT    +1                         
026092,000272: 26,2254           54001                           TS       L                                     
026093,000273: 26,2255           12257                           TCF      +2                                    
026094,000274: 26,2256           26070                           ADS      CDU2DOT                               
026095,000275: 
026096,000276:                                                                                                  #  RESTORE VARIABLES AND TEST FOR COMPLETION OR ADDITIONAL AXIS.
026097,000277: 
026098,000278: 26,2257           52077        FILTAXIS           DXCH     CDU                                   
026099,000279: 26,2260           50073                           INDEX    QRCNTR                                #  THETA IS D.P. SCALED AT 2 PI RADIANS
026100,000280: 26,2261           53563                           DXCH     CDUYFIL                               
026101,000281: 26,2262           52066                           DXCH     CDUDOT                                #    .
026102,000282: 26,2263           50073                           INDEX    QRCNTR                                #  THETA IS D.P. SCALED AT PI/4 RAD/SEC
026103,000283: 26,2264           53567                           DXCH     DCDUYFIL                              
026104,000284: 26,2265           52071                           DXCH     CDU2DOT                               #   ..                                 2
026105,000285: 26,2266           50073                           INDEX    QRCNTR                                #  THETA IS D.P. SCALED AT PI/8 RAD/SEC
026106,000286: 26,2267           53573                           DXCH     D2CDUYFL                              
026107,000287: 
026108,000288: 26,2270           57547                           XCH      STORCDUY                              #  INTERCHANGE CDU READINGS
026109,000289: 26,2271           57550                           XCH      STORCDUZ                              
026110,000290: 26,2272           57547                           XCH      STORCDUY                              
026111,000291: 
026112,000292: 26,2273           10073                           CCS      ITEMP6                                #  ITEMP6 IS AXIS INDEXER
026113,000293: 26,2274           12107                           TCF      GOYFILTR                              #  IF 2, Y-AXIS STILL TO GO
026114,000294: 
026115,000295: 26,2275           40345                           CS       T5ADR                                 #  IF THE TRIM GIMBAL CONTROL RUPT IS NEXT,
026116,000296: 26,2276           62377                           AD       GTS2CADR                              #  DO THE Q,R-AXIS STATE TRANSFORMATIONS
026117,000297: 26,2277           00006                           EXTEND                                         #  AND THE 20 MS STATE EXTRAPOLATION
026118,000298: 26,2300           12575                           BZF      GIMBAL                                
026119,000299: 26,2301           14606                           TCF      RESUME                                #  OTHERWISE, RESUME
026120,000300: 
026121,000301:                                                                                                  #  SUBROUTINE FOR FILTER WHICH TAKES 1 COMPLEMENT NUMBER INTO A 2 COMP.
026122,000302: 
026123,000303: 26,2302           20001        ONETOTWO           DDOUBL                                         #  SEE RTB OP CODES IN BANK 15 FOR NOTES ON
026124,000304: 26,2303           10000                           CCS      A                                     #    THIS COMPUTATION.
026125,000305: 

Page 0610

026127,000307: 
026128,000308: 26,2304           67657                           AD       ONE                                   
026129,000309: 26,2305           12307                           TCF      +2                                    
026130,000310: 26,2306           40000                           COM                                            
026131,000311: 26,2307           54072                           TS       ITEMP5                                
026132,000312: 26,2310           12314                           TCF      +4                                    
026133,000313: 26,2311           50000                           INDEX    A                                     
026134,000314: 26,2312           37640                           CAF      LIMITS                                
026135,000315: 26,2313           26072                           ADS      ITEMP5                                
026136,000316: 26,2314           00002                           TC       Q                                     #  RETURN
026137,000317: 
026138,000318:                                                                                                  #  THIS PROGRAM INITIALIZES THE KALMAN FILTER PROGRAM.
026139,000319: 
026140,000320: 26,2315           23552        FILFIRST           LXCH     DAPTIME                               #  INITIALIZE TIME.
026141,000321: 26,2316           32371                           CAF      POINT=90                              #  INITIALIZE THE WEIGHTING VECTOR POINTER
026142,000322: 26,2317           55556                           TS       WPOINTER                              
026143,000323: 26,2320           32014                           CAF      MOSTPASS                              #  SET UP FOR NEXT PASSES
026144,000324: 26,2321           55553                           TS       STEERADR                              
026145,000325: 26,2322           00006                           EXTEND                                         #  SET UP POST FILTER RUPT LIST
026146,000326: 26,2323           32375                           DCA      DGTSFADR                              
026147,000327: 26,2324           53604                           DXCH     PFRPTLST                              
026148,000328: 26,2325           00006                           EXTEND                                         
026149,000329: 26,2326           32071                           DCA      PAX/FILT                              
026150,000330: 26,2327           53606                           DXCH     PFRPTLST   +2                         
026151,000331: 26,2330           00006                           EXTEND                                         
026152,000332: 26,2331           32071                           DCA      PAX/FILT                              
026153,000333: 26,2332           53612                           DXCH     PFRPTLST   +6                         
026154,000334: 26,2333           00006                           EXTEND                                         
026155,000335: 26,2334           32400                           DCA      GTS2CADR                              
026156,000336: 26,2335           53610                           DXCH     PFRPTLST   +4                         
026157,000337: 26,2336           00006                           EXTEND                                         #  CHANGE POST P FILTER TO FILTER
026158,000338: 26,2337           32402                           DCA      POSTPFIL                              
026159,000339: 26,2340           53602                           DXCH     PFILTADR                              
026160,000340: 
026161,000341: 26,2341           31547                           CAE      STORCDUY                              
026162,000342: 26,2342           00006                           EXTEND                                         
026163,000343: 26,2343           77642                           MP       BIT14                                 
026164,000344: 26,2344           53563                           DXCH     CDUYFIL                               #  INITIALIZE THE STATE VECTOR TO CDU VALUE
026165,000345: 26,2345           31550                           CAE      STORCDUZ                              
026166,000346: 26,2346           00006                           EXTEND                                         
026167,000347: 26,2347           77642                           MP       BIT14                                 
026168,000348: 26,2350           53565                           DXCH     CDUZFIL                               
026169,000349: 26,2351           37665                           CA       ZERO                                  
026170,000350: 26,2352           55566                           TS       DCDUYFIL                              #  INITIALIZE THE DERIVATIVES OF THE STATE
026171,000351: 26,2353           55567                           TS       DCDUYFIL   +1                         
026172,000352: 26,2354           55570                           TS       DCDUZFIL                              
026173,000353: 26,2355           55571                           TS       DCDUZFIL   +1                         
026174,000354: 26,2356           55572                           TS       D2CDUYFL                              
026175,000355: 26,2357           55573                           TS       D2CDUYFL   +1                         
026176,000356: 26,2360           55574                           TS       D2CDUZFL                              
026177,000357: 26,2361           55575                           TS       D2CDUZFL   +1                         
026178,000358: 

Page 0611

026180,000360: 
026181,000361: 26,2362           55576                           TS       Y3DOT                                 
026182,000362: 26,2363           55600                           TS       Z3DOT                                 
026183,000363: 26,2364           55532                           TS       NEGUQ                                 
026184,000364: 26,2365           55534                           TS       NEGUR                                 
026185,000365: 26,2366           14606                           TCF      RESUME                                
026186,000366: 
026187,000367: 
026188,000368: 
026189,000369: 26,2367           24366        .64                DEC      0.64000                               
026190,000370: 26,2370           14000        BIT12-13           OCTAL    14000                                 
026191,000371: 26,2371           00132        POINT=90           DEC      90         B-14                       #  POINTER INITIALIZED ONE GROUP PAST END
026192,000372: 26,2372           37776        MS20F              OCTAL    37776                                 
026193,000373: 26,2373           37775        MS30F              OCTAL    37775                                 
026194,000374: 26,2374           02535 54006  DGTSFADR           2CADR    DGTS                                  
026195,000375: 
026196,000376: 26,2376           02055        PAXISADR           GENADR   PAXIS                                 
026197,000377: 26,2377           02564 54006  GTS2CADR           2CADR    GTS                                   
026198,000378: 
026199,000379: 26,2401           02015 54006  POSTPFIL           2CADR    FILTER                                
026200,000380: 

Page 0612

026202,000382: 
026203,000383:                                                                                                  #  THE KALMAN FILTER WEIGHTINF VECTORS ARE LISTED IN THE FOLLOWING TABLE ALONG WITH THE TIME FROM THE LAST FILTER
026204,000384:                                                                                                  #  INITIALIZATION FOR WHICH THEY ARE TO BE USED. (THE VECTORS ARE STORED IN ORDERED TRIPLES (W0,W1,W2) IN
026205,000385:                                                                                                  #  DESCENDING ORDER IN TIME WITH THE STEADY STATE VALUES AT THE TOP.)
026206,000386: 
026207,000387:                                                                                                  #  THE COMPONENTS ARE SCALED AS FOLLOWS:
026208,000388:                                                                                                  #             W0 : SCALED AT  2
026209,000389:                                                                                                  #             W1 : SCALED AT 32
026210,000390:                                                                                                  #             W2 : SCALED AT  8
026211,000391: 
026212,000392: 26,2403           05751        WVECTOR            DEC      0.18608                               #  W0 FROM RELATIVE TIME 1.5 SECS OR MORE
026213,000393: 26,2404           00672                           DEC      0.02696                               #  W1 FROM RELATIVE TIME 1.5 SECS OR MORE
026214,000394: 26,2405           05362                           DEC      0.17105                               #  W2 FROM RELATIVE TIME 1.5 SECS OR MORE
026215,000395: 26,2406           04460                           DEC      0.14358                               #  W0 AT RELATIVE TIME = 1.45 SECONDS
026216,000396: 26,2407           00731                           DEC      0.02890                               #  W1 AT RELATIVE TIME = 1.45 SECONDS
026217,000397: 26,2410           05530                           DEC      0.17727                               #  W2 AT RELATIVE TIME = 1.45 SECONDS
026218,000398: 26,2411           04522                           DEC      0.14565                               #  W0 AT RELATIVE TIME = 1.40 SECONDS
026219,000399: 26,2412           00745                           DEC      0.02959                               #  W1 AT RELATIVE TIME = 1.40 SECONDS
026220,000400: 26,2413           05632                           DEC      0.18129                               #  W2 AT RELATIVE TIME = 1.40 SECONDS
026221,000401: 26,2414           04572                           DEC      0.14809                               #  W0 AT RELATIVE TIME = 1.35 SECONDS
026222,000402: 26,2415           11602                           DEC      0.30479                               #  W1 AT RELATIVE TIME = 1.35 SECONDS
026223,000403: 26,2416           05764                           DEC      0.18678                               #  W2 AT RELATIVE TIME = 1.35 SECONDS
026224,000404: 26,2417           04650                           DEC      0.15090                               #  W0 AT RELATIVE TIME = 1.30 SECONDS
026225,000405: 26,2420           01005                           DEC      0.03154                               #  W1 AT RELATIVE TIME = 1.30 SECONDS
026226,000406: 26,2421           06153                           DEC      0.19403                               #  W2 AT RELATIVE TIME = 1.30 SECONDS
026227,000407: 26,2422           04735                           DEC      0.15409                               #  W0 AT RELATIVE TIME = 1.25 SECONDS
026228,000408: 26,2423           01032                           DEC      0.03283                               #  W1 AT RELATIVE TIME = 1.25 SECONDS
026229,000409: 26,2424           06405                           DEC      0.20340                               #  W2 AT RELATIVE TIME = 1.25 SECONDS
026230,000410: 26,2425           05027                           DEC      0.15767                               #  W0 AT RELATIVE TIME = 1.20 SECONDS
026231,000411: 26,2426           01063                           DEC      0.03437                               #  W1 AT RELATIVE TIME = 1.20 SECONDS
026232,000412: 26,2427           06707                           DEC      0.21525                               #  W2 AT RELATIVE TIME = 1.20 SECONDS
026233,000413: 26,2430           05130                           DEC      0.16163                               #  W0 AT RELATIVE TIME = 1.15 SECONDS
026234,000414: 26,2431           01120                           DEC      0.03616                               #  W1 AT RELATIVE TIME = 1.15 SECONDS
026235,000415: 26,2432           07270                           DEC      0.23000                               #  W2 AT RELATIVE TIME = 1.15 SECONDS
026236,000416: 26,2433           05237                           DEC      0.16595                               #  W0 AT RELATIVE TIME = 1.10 SECONDS
026237,000417: 26,2434           01163                           DEC      0.03824                               #  W1 AT RELATIVE TIME = 1.10 SECONDS
026238,000418: 26,2435           07742                           DEC      0.24814                               #  W2 AT RELATIVE TIME = 1.10 SECONDS
026239,000419: 26,2436           05354                           DEC      0.17063                               #  W0 AT RELATIVE TIME = 1.05 SECONDS
026240,000420: 26,2437           01232                           DEC      0.04062                               #  W1 AT RELATIVE TIME = 1.05 SECONDS
026241,000421: 26,2440           10513                           DEC      0.27018                               #  W2 AT RELATIVE TIME = 1.05 SECONDS
026242,000422: 26,2441           05475                           DEC      0.17560                               #  W0 AT RELATIVE TIME = 1.00 SECONDS
026243,000423: 26,2442           01306                           DEC      0.04332                               #  W1 AT RELATIVE TIME = 1.00 SECONDS
026244,000424: 26,2443           11375                           DEC      0.29668                               #  W2 AT RELATIVE TIME = 1.00 SECONDS
026245,000425: 26,2444           05622                           DEC      0.18080                               #  W0 AT RELATIVE TIME = 0.95 SECONDS
026246,000426: 26,2445           01367                           DEC      0.04634                               #  W1 AT RELATIVE TIME = 0.95 SECONDS
026247,000427: 26,2446           12402                           DEC      0.32824                               #  W2 AT RELATIVE TIME = 0.95 SECONDS
026248,000428: 26,2447           05752                           DEC      0.18614                               #  W0 AT RELATIVE TIME = 0.90 SECONDS
026249,000429: 26,2450           01456                           DEC      0.04968                               #  W1 AT RELATIVE TIME = 0.90 SECONDS
026250,000430: 26,2451           13541                           DEC      0.36531                               #  W2 AT RELATIVE TIME = 0.90 SECONDS
026251,000431: 26,2452           06101                           DEC      0.19147                               #  W0 AT RELATIVE TIME = 0.85 SECONDS
026252,000432: 26,2453           01551                           DEC      0.05328                               #  W1 AT RELATIVE TIME = 0.85 SECONDS
026253,000433: 

Page 0613

026255,000435: 
026256,000436: 26,2454           15040                           DEC      0.40821                               #  W2 AT RELATIVE TIME = 0.85 SECONDS
026257,000437: 26,2455           06225                           DEC      0.19659                               #  W0 AT RELATIVE TIME = 0.80 SECONDS
026258,000438: 26,2456           01647                           DEC      0.05707                               #  W1 AT RELATIVE TIME = 0.80 SECONDS
026259,000439: 26,2457           16503                           DEC      0.45721                               #  W2 AT RELATIVE TIME = 0.80 SECONDS
026260,000440: 26,2460           06341                           DEC      0.20122                               #  W0 AT RELATIVE TIME = 0.75 SECONDS
026261,000441: 26,2461           01746                           DEC      0.06089                               #  W1 AT RELATIVE TIME = 0.75 SECONDS
026262,000442: 26,2462           20244                           DEC      0.50999                               #  W2 AT RELATIVE TIME = 0.75 SECONDS
026263,000443: 26,2463           06440                           DEC      0.20505                               #  W0 AT RELATIVE TIME = 0.70 SECONDS
026264,000444: 26,2464           02041                           DEC      0.06451                               #  W1 AT RELATIVE TIME = 0.70 SECONDS
026265,000445: 26,2465           22055                           DEC      0.56522                               #  W2 AT RELATIVE TIME = 0.70 SECONDS
026266,000446: 26,2466           06514                           DEC      0.20775                               #  W0 AT RELATIVE TIME = 0.65 SECONDS
026267,000447: 26,2467           02123                           DEC      0.06759                               #  W1 AT RELATIVE TIME = 0.65 SECONDS
026268,000448: 26,2470           23610                           DEC      0.61768                               #  W2 AT RELATIVE TIME = 0.65 SECONDS
026269,000449: 26,2471           06542                           DEC      0.20912                               #  W0 AT RELATIVE TIME = 0.60 SECONDS
026270,000450: 26,2472           02166                           DEC      0.06972                               #  W1 AT RELATIVE TIME = 0.60 SECONDS
026271,000451: 26,2473           25072                           DEC      0.65979                               #  W2 AT RELATIVE TIME = 0.60 SECONDS
026272,000452: 26,2474           06546                           DEC      0.20934                               #  W0 AT RELATIVE TIME = 0.55 SECONDS
026273,000453: 26,2475           02205                           DEC      0.07062                               #  W1 AT RELATIVE TIME = 0.55 SECONDS
026274,000454: 26,2476           25640                           DEC      0.68165                               #  W2 AT RELATIVE TIME = 0.55 SECONDS
026275,000455: 26,2477           06543                           DEC      0.20919                               #  W0 AT RELATIVE TIME = 0.50 SECONDS
026276,000456: 26,2500           02177                           DEC      0.07028                               #  W1 AT RELATIVE TIME = 0.50 SECONDS
026277,000457: 26,2501           25427                           DEC      0.67330                               #  W2 AT RELATIVE TIME = 0.50 SECONDS
026278,000458: 26,2502           06564                           DEC      0.21020                               #  W0 AT RELATIVE TIME = 0.45 SECONDS
026279,000459: 26,2503           02160                           DEC      0.06931                               #  W1 AT RELATIVE TIME = 0.45 SECONDS
026280,000460: 26,2504           24077                           DEC      0.62883                               #  W2 AT RELATIVE TIME = 0.45 SECONDS
026281,000461: 26,2505           06671                           DEC      0.21441                               #  W0 AT RELATIVE TIME = 0.40 SECONDS
026282,000462: 26,2506           02154                           DEC      0.06908                               #  W1 AT RELATIVE TIME = 0.40 SECONDS
026283,000463: 26,2507           21470                           DEC      0.55030                               #  W2 AT RELATIVE TIME = 0.40 SECONDS
026284,000464: 26,2510           07125                           DEC      0.22391                               #  W0 AT RELATIVE TIME = 0.35 SECONDS
026285,000465: 26,2511           02225                           DEC      0.07162                               #  W1 AT RELATIVE TIME = 0.35 SECONDS
026286,000466: 26,2512           16256                           DEC      0.44810                               #  W2 AT RELATIVE TIME = 0.35 SECONDS
026287,000467: 26,2513           07544                           DEC      0.24049                               #  W0 AT RELATIVE TIME = 0.30 SECONDS
026288,000468: 26,2514           02430                           DEC      0.07956                               #  W1 AT RELATIVE TIME = 0.30 SECONDS
026289,000469: 26,2515           12624                           DEC      0.33713                               #  W2 AT RELATIVE TIME = 0.30 SECONDS
026290,000470: 26,2516           10401                           DEC      0.26566                               #  W0 AT RELATIVE TIME = 0.25 SECONDS
026291,000471: 26,2517           03054                           DEC      0.09646                               #  W1 AT RELATIVE TIME = 0.25 SECONDS
026292,000472: 26,2520           07317                           DEC      0.23140                               #  W2 AT RELATIVE TIME = 0.25 SECONDS
026293,000473: 26,2521           11507                           DEC      0.30123                               #  W0 AT RELATIVE TIME = 0.20 SECONDS
026294,000474: 26,2522           04070                           DEC      0.12841                               #  W1 AT RELATIVE TIME = 0.20 SECONDS
026295,000475: 26,2523           04404                           DEC      0.14087                               #  W2 AT RELATIVE TIME = 0.20 SECONDS
026296,000476: 26,2524           13146                           DEC      0.34996                               #  W0 AT RELATIVE TIME = 0.15 SECONDS
026297,000477: 26,2525           06020                           DEC      0.18850                               #  W1 AT RELATIVE TIME = 0.15 SECONDS
026298,000478: 26,2526           02213                           DEC      0.07101                               #  W2 AT RELATIVE TIME = 0.15 SECONDS
026299,000479: 26,2527           15230                           DEC      0.41554                               #  W0 AT RELATIVE TIME = 0.10 SECONDS
026300,000480: 26,2530           11756                           DEC      0.31141                               #  W1 AT RELATIVE TIME = 0.10 SECONDS
026301,000481: 26,2531           00613                           DEC      0.02408                               #  W2 AT RELATIVE TIME = 0.10 SECONDS
026302,000482: 26,2532           17670                           DEC      0.49561                               #  W0 AT RELATIVE TIME = 0.05 SECONDS
026303,000483: 26,2533           23514                           DEC      0.61404                               #  W1 AT RELATIVE TIME = 0.05 SECONDS
026304,000484: 26,2534           00001                           DEC      0.00006                               #  W2 AT RELATIVE TIME = 0.05 SECONDS
026305,000485: 

Page 0614

026307,000487: 
026308,000488:                                                                                                  #  DUMMY TRIM GIMBAL RUPT:
026309,000489: 26,2535           32373        DGTS               CAF      MS30F                                 #  RESET TIMER IMMEDIATELY: DT = 30 MS
026310,000490: 26,2536           54030                           TS       TIME5                                 
026311,000491: 
026312,000492: 26,2537           22016                           LXCH     BANKRUPT                              #  INTERRUPT LEAD IN (CONTINUED)
026313,000493: 
026314,000494: 26,2540           00006                           EXTEND                                         #  SET UP FILTER RUPT
026315,000495: 26,2541           32402                           DCA      POSTPFIL                              
026316,000496: 26,2542           52346                           DXCH     T5ADR                                 
026317,000497: 
026318,000498: 26,2543           14610                           TCF      NOQRSM                                
026319,000499: 
026320,000500:                                                                                                  #  DUMMY FILTER RUPT AFTER P-AXIS RUPT:
026321,000501: 
026322,000502: 26,2544           32372        DUMMYFIL           CAF      MS20F                                 #  RESET TIMER IMMEDIATELY: DT = 20 MS
026323,000503: 26,2545           54030                           TS       TIME5                                 
026324,000504: 26,2546           22016                           LXCH     BANKRUPT                              #  INTERRUPT LEAD IN (CONTINUED)
026325,000505: 
026326,000506: 26,2547           00006                           EXTEND                                         #  SET UP QRAXIS RUPT
026327,000507: 26,2550           32554                           DCA      DFQRAXIS                              
026328,000508: 26,2551           52346                           DXCH     T5ADR                                 
026329,000509: 26,2552           14610                           TCF      NOQRSM                                
026330,000510: 
026331,000511: 26,2553           02002 50006  DFQRAXIS           2CADR    QRAXIS                                
026332,000512: 
026333,000513:                                                                                                  #  DUMMY FILTER RUPT AFTER Q,R=AXES RUPT:
026334,000514: 
026335,000515: 26,2555           32372        FILDUMMY           CAF      MS20F                                 #  RESET TIMER IMMEDIATELY: DT = 20 MS
026336,000516: 26,2556           54030                           TS       TIME5                                 
026337,000517: 
026338,000518: 26,2557           22016                           LXCH     BANKRUPT                              #  INTERRUPT LEAD IN (CONTINUED)
026339,000519: 
026340,000520: 26,2560           00006                           EXTEND                                         #  SET UP PAXIS RUPT
026341,000521: 26,2561           32071                           DCA      PAX/FILT                              
026342,000522: 26,2562           52346                           DXCH     T5ADR                                 
026343,000523: 26,2563           14606                           TCF      RESUME                                

End of include-file KALMAN_FILTER_FOR_LEM_DAP.agc.  Parent file is MAIN.agc