Update TJET_LAW.agc

pull/822/head
Dhivya S 2021-10-02 00:24:09 +05:30
parent 343e5bcde5
commit 27375f5b48
1 changed files with 145 additions and 145 deletions

View File

@ -45,7 +45,7 @@
# #
# THE SIGN OF THE REQUIRED ROTATION IS CARRIED THROUGH TJETLAW AS ROTSENSE AND IS FINALLY APPLIED TO TJET JUST # THE SIGN OF THE REQUIRED ROTATION IS CARRIED THROUGH TJETLAW AS ROTSENSE AND IS FINALLY APPLIED TO TJET JUST
# PREVIOUS TO ITS STORAGE IN THE LOCATION CORRESPONDING TO THE AXIS (TJP, TJU, OR TJV). THE NUMBER OF JETS THAT # PREVIOUS TO ITS STORAGE IN THE LOCATION CORRESPONDING TO THE AXIS (TJP, TJU, OR TJV). THE NUMBER OF JETS THAT
# TJETLAW ASSUMES WILL BE USED AS INDICATED BY THE SETTING OF NUMBERT FOR THE U- OR V-AXIS. TWO JETS ARE ALWAYS # TJETLAW ASSUMES WILL BE USED IS INDICATED BY THE SETTING OF NUMBERT FOR THE U- OR V-AXIS. TWO JETS ARE ALWAYS
# ASSUMED FOR THE P-AXIS ALTHOUGH FOUR JETS WILL BE FIRED WHEN FIREFCT IS MORE NEGATIVE THAN -4.0 DEGREES # ASSUMED FOR THE P-AXIS ALTHOUGH FOUR JETS WILL BE FIRED WHEN FIREFCT IS MORE NEGATIVE THAN -4.0 DEGREES
# (FIREFCT IS THE DISTANCE TO A SWITCH CURVE IN THE PHASE PLANE) AND A LONG FIRING IS CALLED FOR. # (FIREFCT IS THE DISTANCE TO A SWITCH CURVE IN THE PHASE PLANE) AND A LONG FIRING IS CALLED FOR.
# #
@ -70,7 +70,7 @@
# TJP, -U OR -V, NUMBERT (DAPTEMP5), FIREFCT (DAPTEMP3). # TJP, -U OR -V, NUMBERT (DAPTEMP5), FIREFCT (DAPTEMP3).
# #
# DEBRIS: # DEBRIS:
# A, L, Q, E, EDOT, DAPTEMP1-6, DAPTEMP1-4. # A, L, Q, E, EDOT, DAPTEMP1-6, DAPTRBG-4.
# #
# ALARM: NONE # ALARM: NONE
@ -86,49 +86,49 @@ TJETLAW EXTEND # SAVE Q FOR RETURN.
# SET INDEXERS TO CORRESPOND TO THE AXIS AND TO THE SIGN OF EDOT # SET INDEXERS TO CORRESPOND TO THE AXIS AND TO THE SIGN OF EDOT
INDEX AXISCTR # AXISDIFF(-1)=NO OF LOCATIONS BET P AND U INDEX AXISCTR # AXISDIFF(-1)=NO OF LOCATIONS BET P AND U
CAF AXISDIFF # AXISDIFF(0)=0 CAF AXISDIFF # AXISDIFF(0)=0
TS ADRSDIF1 # AXISDIFF(+1)=NO OF LOCATIONS BET V AND U TS ADRSDIF1 # AXISDIFF(+1)=NO OF LOCATIONS BET V AND U
CAE EDOT # IF EDOT NEGATIVE, PICK UP SET OF VALUES CAE EDOT # IF EDOT NEGATIVE, PICK UP SET OF VALUES
EXTEND # THAT ALLOW USE OF SAME CODING AS FOR EXTEND # THAT ALLOW USE OF SAME CODING AS FOR
BZMF NEGEDOT # POSITIVE EDOT. BZMF NEGEDOT # POSITIVE EDOT.
CAE ADRSDIF1 # SET A SECOND INDEXER WHICH MAY BE CAE ADRSDIF1 # SET A SECOND INDEXER WHICH MAY BE
TS ADRSDIF2 # MODIFIED BY A DECISION FOR MAX JETS. TS ADRSDIF2 # MODIFIED BY A DECISION FOR MAX JETS.
CAF SENSOR # FOR POSITIVE EDOT, ROTSENSE IS CAF SENSOR # FOR POSITIVE EDOT, ROTSENSE IS
TCF SETSENSE # INITIALIZED POSITIVE. TCF SETSENSE # INITIALIZED POSITIVE.
NEGEDOT CS E # IN ORDER FOR NEG EDOT CASE TO USE CODING NEGEDOT CS E # IN ORDER FOR NEG EDOT CASE TO USE CODING
TS E # OF POS EDOT, MUST MODIFY AS FOLLOWS: TS E # OF POS EDOT, MUST MODIFY AS FOLLOWS:
CS EDOT # 1. COMPLEMENT E AND EDOT. CS EDOT # 1. COMPLEMENT E AND EDOT.
TS EDOT # 2. SET SENSE OF ROTATION TO NEGATIVE TS EDOT # 2. SET SENSE OF ROTATION TO NEGATIVE
CAF BIT1 # (REVERSED LATER IF NECESSARY). CAF BIT1 # (REVERSED LATER IF NECESSARY).
ADS ADRSDIF1 # 3. INCREMENT INDEXERS BY ONE SO THAT ADS ADRSDIF1 # 3. INCREMENT INDEXERS BY ONE SO THAT
TS ADRSDIF2 # THE PROPER PARAMETERS ARE ACCESSED. TS ADRSDIF2 # THE PROPER PARAMETERS ARE ACCESSED.
CS SENSOR CS SENSOR
SETSENSE TS ROTSENSE SETSENSE TS ROTSENSE
# TEST MAGNITUDE OF E (ATTITUDE ERROR, SINGLE-PRECISION, SCALED AT PI RADIANS): # TEST MAGNITUDE OF E (ATTITUDE ERROR, SINGLE-PRECISION, SCALED AT PI RADIANS):
# IF GREATER THAN (OR EQUAL TO) PI/16 RADIANS, GO TO THE SIMPLIFIED TJET ROUTINE. # IF GREATER THAN (OR EQUAL TO) PI/16 RADIANS, GO TO THE SIMPLIFIED TJET ROUTINE.
# IF LESS THAN PI/16 RADIANS, RESCALE TO PI/4 # IF LESS THAN PI/16 RADIANS, RESCALE TO PI/4.
CAE E # PICK UP ATTITUDE ERROR FOR THIS AXIS CAE E # PICK UP ATTITUDE ERROR FOR THIS AXIS
EXTEND EXTEND
MP BIT5 # SHIFT RIGHT TEN BITS: IF A-REGISTER IS MP BIT5 # SHIFT RIGHT TEN BITS: IF A-REGISTER IS
CCS A # ZERO, RESCALE AND TEST EDOT. CCS A # ZERO, RESCALE AND TEST EDOT.
TCF RUFLAW2 TCF RUFLAW2
TCF SCALEE TCF SCALEE
TCF RUFLAW1 TCF RUFLAW1
SCALEE CAF BIT13 # ERROR IS IN L SCALED AT PI/16. RESCALE SCALEE CAF BIT13 # ERROR IS IN L SCALED AT PI/16. RESCALE
EXTEND # IT TO PI/4 AND SAVE IT. EXTEND # IT TO PI/4 AND SAVE IT.
MP L MP L
TS E TS E
# TEST MAGNITUDE OF EDOT (ERROR RATE SCALED AT PI/4 RADIANS/SECOND) # TEST MAGNITUDE OF EDOT (ERROR RATE SCALED AT PI/4 RADIANS/SECOND)
# IF GREATER THAN (OR EQUAL TO) PI/32 RADIANS/SECOND, GO TO THE SIMPLIFIED TJET ROUTINE. # IF GREATER THAN (OR EQUAL TO) PI/32 RADIANS/SECOND, GO TO THE SIMPLIFIED TJET ROUTINE.
# IF LESS THAN PI/32 RADIANS/SECOND, THEN RESCALE TO PI/32 RADIANS/SECOND. # IF LESS THAN PI/32 RADIANS/SECOND, THEN RESCALE TO PI/32 RADIANS/SECOND.
CAE EDOT # PICK UP SINGLE-PRECISION ERROR-RATE CAE EDOT # PICK UP SINGLE-PRECISION ERROR-RATE
# Page 1462 # Page 1462
EXTEND # FOR THIS AXIS= EXTEND # FOR THIS AXIS=
MP BIT4 # SHIFT RIGHT ELEVEN BITS, IF THE A-REG IS MP BIT4 # SHIFT RIGHT ELEVEN BITS, IF THE A-REG IS
@ -138,13 +138,13 @@ SCALEE CAF BIT13 # ERROR IS IN L SCALED AT PI/16. RESCALE
# *** FINELAW STARTS HERE *** # *** FINELAW STARTS HERE ***
SCALEDOT LXCH EDOT # EDOT IS SCALED AT PI/32 RADIANS/SECOND. SCALEDOT LXCH EDOT # EDOT IS SCALED AT PI/32 RADIANS/SECOND.
CAE EDOT # COMPUTE (EDOT)(EDOT) CAE EDOT # COMPUTE (EDOT)(EDOT)
EXTEND EXTEND
SQUARE # PRODUCT SCALED AT PI(2)/2(10) RAD/SEC. SQUARE # PRODUCT SCALED AT PI(2)/2(10) RAD/SEC.
EXTEND EXTEND
MP BIT13 # SHIFT RIGHT TWO BITS TO RESCALE TO EDOTSQ MP BIT13 # SHIFT RIGHT TWO BITS TO RESCALE EDOTSQ
TS EDOTSQ # TO PI(2)/2(8) RAD(2)/SEC(2). TS EDOTSQ # TO PI(2)/2(8) RAD(2)/SEC(2).
ERRTEST CCS E # DOES BIG ERROR (THREE DEG BEYOND THE ERRTEST CCS E # DOES BIG ERROR (THREE DEG BEYOND THE
@ -152,107 +152,107 @@ ERRTEST CCS E # DOES BIG ERROR (THREE DEG BEYOND THE
TCF +2 TCF +2
AD -3DEG AD -3DEG
EXTEND EXTEND
INDEX ADRSDIF1 INDEX ADRSDIF1
SU FIREDB SU FIREDB
EXTEND EXTEND
BZMF SENSTEST # IF NOT: ARE UNBALANCED JETS PREFERRED? BZMF SENSTEST # IF NOT: ARE UNBALANCED JETS PREFERRED?
MAXJETS CAF TWO # IF YES: INCREMENT ADDRESS LOCATOR AND MAXJETS CAF TWO # IF YES: INCREMENT ADDRESS LOCATOR AND
ADS ADRSDIF2 # SET SWITCH FOR JET SELECT LOGIC TO 4. ADS ADRSDIF2 # SET SWITCH FOR JET SELECT LOGIC TO 4.
CAF FOUR # (ALWAYS DO THIS FOR P-AXIS) CAF FOUR # (ALWAYS DO THIS FOR P-AXIS)
TCF TJCALC TCF TJCALC
SENSTEST CCS SENSETYP # DOES TRANSLATION PREFER MIN JETS. SENSTEST CCS SENSETYP # DOES TRANSLATION PREFER MIN JETS.
TCF TJCALC # YES. USE MIN-JET PARAMETERS TCF TJCALC # YES. USE MIN-JET PARAMETERS
TCF MAXJETS # NO. GET THE MAX-JET PARAMETERS. TCF MAXJETS # NO. GET THE MAX-JET PARAMETERS.
TJCALC TS NUMBERT # SET TO +0,1,4 FOR (U,V-AXES) JET SELECT. TJCALC TS NUMBERT # SET TO +0,1,4 FOR (U,V-AXES) JET SELECT.
# BEGINNING OF TJET CALCULATIONS: # BEGINNING OF TJET CALCULATIONS:
CS EDOTSQ # SCALED AT PI(2)/2(8). CS EDOTSQ # SCALED AT PI(2)/2(8).
EXTEND EXTEND
INDEX ADRSDIF2 INDEX ADRSDIF2
MP 1/ANET1 # .5/ACC SCALED AT 2(6)/PI SEC(2)/RADIAN. MP 1/ANET1 # .5/ACC SCALED AT 2(6)/PI SEC(2)/RADIAN.
INDEX ADRSDIF1 INDEX ADRSDIF1
AD FIREDB # DEADBAND SCALED AT PI/4 RADIAN. AD FIREDB # DEADBAND SCALED AT PI/4 RADIAN.
EXTEND EXTEND
SU E # ATTITUDE ERROR SCALED AT PI/4 RADIAN. SU E # ATTITUDE ERROR SCALED AT PI/4 RADIAN.
TS FIREFCT # -E-.5(EDOTSQ)/ACC-DB AT PI/4 RADIAN. TS FIREFCT # -E-.5(EDOTSQ)/ACC-DB AT PI/4 RADIAN.
EXTEND EXTEND
BZMF ZON1,2,3 BZMF ZON1,2,3
ZONE4,5 INDEX ADRSDIF1 ZONE4,5 INDEX ADRSDIF1
CAE 1/ACOAST # .5/ACC SCALED AT 2(6)/PI WHERE CAE 1/ACOAST # .5/ACC SCALED AT 2(6)/PI WHERE
# Page 1463 # Page 1463
EXTEND # ACC = MAX(AMIN, AOS-). EXTEND # ACC = MAX(AMIN, AOS-).
MP EDOTSQ # SCALED AT PI/2(8). MP EDOTSQ # SCALED AT PI/2(8).
AD E # SCALED AT PI/4 AD E # SCALED AT PI/4
INDEX ADRSDIF1 INDEX ADRSDIF1
AD COASTDB # SCALED AT PI/4 POS. FOR NEG. INTERCEPT. AD COASTDB # SCALED AT PI/4 POS. FOR NEG. INTERCEPT.
EXTEND # TEST E+.5(EDOTSQ)/ACC+DB AT PI/4 RADIAN. EXTEND # TEST E+.5(EDOTSQ)/ACC+DB AT PI/4 RADIAN.
BZMF ZONE5 # IF FUNCTION NEGATIVE, FIND TJET. BZMF ZONE5 # IF FUNCTION NEGATIVE, FIND TJET.
# IF FUNCTION POSITIVE, IN ZONE 4. # IF FUNCTION POSITIVE, IN ZONE 4.
# ZONE 4 IS THE COAST REGION. HOWEVER, IF THE JETS ARE ON AND DRIVING TOWARD # ZONE 4 IS THE COAST REGION. HOWEVER, IF THE JETS ARE ON AND DRIVING TOWARD
# A. THE AXIS WITHIN + OR - (DB + FLAT) FOR DRIFTING FLIGHT, OR # A. THE AXIS WITHIN + OR - (DB + FLAT) FOR DRIFTING FLIGHT, OR
# B. THE USUAL TARGET PARABOLA FOR POWERED FLIGHT # B. THE USUAL TARGET PARABOLA FOR POWERED FLIGHT
# THEN THE THRUSTERS ARE KEPT ON. # THEN THE THRUSTERS ARE KEPT ON.
ZONE4 INDEX AXISCTR # IS THE CURRENT VALUE IN TJET NON-ZERO ZONE4 INDEX AXISCTR # IS THE CURRENT VALUE IN TJET NON-ZERO
CS TJETU # WITH SENSE OPPOSITE TO EDOT, CS TJETU # WITH SENSE OPPOSITE TO EDOT,
EXTEND # (I.E., ARE JETS ON AND FIRING TOWARD EXTEND # (I.E., ARE JETS ON AND FIRING TOWARD
MP ROTSENSE # THE DESIRABLE STATE). MP ROTSENSE # THE DESIRABLE STATE).
EXTEND EXTEND
BZMF COASTTJ # NO. COAST. BZMF COASTTJ # NO. COAST.
JETSON CCS FLAT # YES. IS THIS DRIFTING OR POWERED FLIGHT? JETSON CCS FLAT # YES. IS THIS DRIFTING OR POWERED FLIGHT?
TCF DRIFT/ON # DRIFTING. GO MAKE FURTHER TEST. TCF DRIFT/ON # DRIFTING. GO MAKE FURTHER TEST.
CS FIREFCT # POWERED (OR ULLAGE). CAN TARGET PARABOLA CS FIREFCT # POWERED (OR ULLAGE). CAN TARGET PARABOLA
INDEX ADRSDIF1 # BE REACHED FROM THIS POINT IN THE INDEX ADRSDIF1 # BE REACHED FROM THIS POINT IN THE
AD AXISDIST # PHASE PLANE? AD AXISDIST # PHASE PLANE?
EXTEND EXTEND
BZMF COASTTJ # NO. SET TJET = 0. BZMF COASTTJ # NO. SET TJET = 0.
TC Z123COMP # YES. CALCULATE TJET AS THOUGH IN ZONE 1 TC Z123COMP # YES. CALCULATE TJET AS THOUGH IN ZONE 1
CAE FIREFCT # AFTER COMPUTING THE REQUIRED CAE FIREFCT # AFTER COMPUTING THE REQUIRED
TCF ZONE1 # PARAMETERS. TCF ZONE1 # PARAMETERS.
DRIFT/ON INDEX ADRSDIF1 # CAN TARGET STRIP OF AXIS BE REACHED FROM DRIFT/ON INDEX ADRSDIF1 # CAN TARGET STRIP OF AXIS BE REACHED FROM
CS FIREDB # THIS POINT IN THE PHASE PLANE? CS FIREDB # THIS POINT IN THE PHASE PLANE?
DOUBLE DOUBLE
AD FIREFCT AD FIREFCT
EXTEND EXTEND
BZMF +3 BZMF +3
COASTTJ CAF ZERO # NO. SET TJET = 0. COASTTJ CAF ZERO # NO. SET TJET = 0.
TCF RETURNTJ TCF RETURNTJ
TC Z123COMP # YES. CALCULATE TJET AS THOUGH IN ZONE 2 TC Z123COMP # YES. CALCULATE TJET AS THOUGH IN ZONE 2
TCF ZONE2,3 # OR 3 AFTER COMPUTING REQUIRED VALUES. TCF ZONE2,3 # OR 3 AFTER COMPUTING REQUIRED VALUES.
ZONE5 TS L # TEMPORARILY STORE FUNCTION IN L. ZONE5 TS L # TEMPORARILY STORE FUNCTION IN L.
CCS ROTSENSE # MODIFY ADRSDIF2 FOR ACCESSING 1/ANET2 CCS ROTSENSE # MODIFY ADRSDIF2 FOR ACCESSING 1/ANET2
TCF +4 # AND ACCFCTZ5, WHICH MUST BE PICKED UP TCF +4 # AND ACCFCTZ5, WHICH MUST BE PICKED UP
TC CCSHOLE # FROM THE NEXT LOWER REGISTER IF THE TC CCSHOLE # FROM THE NEXT LOWER REGISTER IF THE
CS TWO # (ACTUAL) ERROR RATE IS NEGATIVE. CS TWO # (ACTUAL) ERROR RATE IS NEGATIVE.
# Page 1464 # Page 1464
ADS ADRSDIF2 ADS ADRSDIF2
+4 CAE L +4 CAE L
EXTEND EXTEND
INDEX ADRSDIF2 # TTOAXIS AND HH ARE THE PARAMETERS UPON INDEX ADRSDIF2 # TTOAXIS AND HH ARE THE PARAMETERS UPON
MP ACCFCTZ5 # WHICH THE APPROXIMATIONS TO TJET ARE MP ACCFCTZ5 # WHICH THE APPROXIMATIONS TO TJET ARE
DDOUBL # ABASED. DDOUBL # BASED.
DDOUBL DDOUBL
DXCH HH # DOUBLE PRECISION H SCALED AT 8 SEC(2). DXCH HH # DOUBLE PRECISION H SCALED AT 8 SEC(2).
INDEX ADRSDIF2 INDEX ADRSDIF2
CAE 1/ANET2 # SCALED AT 2(7)/PI SEC(2)/RAD. CAE 1/ANET2 # SCALED AT 2(7)/PI SEC(2)/RAD.
EXTEND EXTEND
MP EDOT # SCALED AT PI/2(5) MP EDOT # SCALED AT PI/2(5)
TS TTOAXIS # SCALED AT 4 SEC. TS TTOAXIS # SCALED AT 4 SEC.
# TEST WHETHER TJET GREATER THAN 50 MSEC. # TEST WHETHER TJET GREATER THAN 50 MSEC.
EXTEND EXTEND
MP -.05AT2 # H - .05 TTOAXIS - .00125 G.T. ZERO MP -.05AT2 # H - .05 TTOAXIS - .00125 G.T. ZERO
AD HH # (SCALED AT 8 SEC(2) ). AD HH # (SCALED AT 8 SEC(2) ).
AD NEG2 AD NEG2
EXTEND EXTEND
BZMF FORMULA1 BZMF FORMULA1
@ -262,55 +262,55 @@ ZONE5 TS L # TEMPORARILY STORE FUNCTION IN L.
CAE TTOAXIS CAE TTOAXIS
EXTEND EXTEND
MP -.15AT2 # H - .15 TTOAXIS - .01125 G.T. ZERO MP -.15AT2 # H - .15 TTOAXIS - .01125 G.T. ZERO
AD HH # (SCALED AT 8 SEC(2) ) AD HH # (SCALED AT 8 SEC(2) )
AD -.0112A8 AD -.0112A8
EXTEND EXTEND
BZMF FORMULA2 BZMF FORMULA2
# IF TJET GREATER THAN 150 MSEC, ASSIGN IT VALUE OF 250 MSEC, SINCE THIS # IF TJET GREATER THAN 150 MSEC, ASSIGN IT VALUE OF 250 MSEC, SINCE THIS
# IS ENOUGH TO ASSURE NO SKIP NEXT CSP (100 MSEC). # IS ENOUGH TO ASSURE NO SKIP NEXT CSP (100 MSEC).
FULLTIME CAF BIT11 # 250 MSEC SCALED AT 4 SEC. FULLTIME CAF BIT11 # 250 MSEC SCALED AT 4 SEC.
# RETURN TO CALLING PROGRAM WITH JET TIME SCALED AS TIME6 AND SIGNED. # RETURN TO CALLING PROGRAM WITH JET TIME SCALED AS TIME6 AND SIGNED.
RETURNTJ EXTEND # ALL BRANCHES TERMINATE HERE WITH TJET RETURNTJ EXTEND # ALL BRANCHES TERMINATE HERE WITH TJET
MP ROTSENSE # (SCALED AT 4 SEC) IN THE ACCUMULATOR. MP ROTSENSE # (SCALED AT 4 SEC) IN THE ACCUMULATOR.
INDEX AXISCTR # ROTSENSE APPLIES SIGN AND CHANGES SCALE. INDEX AXISCTR # ROTSENSE APPLIES SIGN AND CHANGES SCALE.
TS TJETU TS TJETU
EXTEND EXTEND
INDEX AXISCTR INDEX AXISCTR
MP ACCSWU # SET SWITCH FOR JET SELECT IF ROTATION IS MP ACCSWU # SET SWITCH FOR JET SELECT IF ROTATION IS
CAE L CAE L
EXTEND # IN A SENSE FOR WHICH 1/ACCS HAS FORCED EXTEND # IN A SENSE FOR WHICH 1/ACCS HAS FORCED
BZMF +3 # A MAX-JET CALCULATION. BZMF +3 # A MAX-JET CALCULATION.
CAF FOUR CAF FOUR
# Page 1465 # Page 1465
TS NUMBERT TS NUMBERT
TC HOLDQ # RETURN VIA SAVED Q. TC HOLDQ # RETURN VIA SAVED Q.
# TJET = H/(.025 + TTOAXIS) FOR TJET LESS THAN 50 MSEC. # TJET = H/(.025 + TTOAXIS) FOR TJET LESS THAN 50 MSEC.
FORMULA1 CS -.025AT4 # .025 SEC SCALED AT 4. FORMULA1 CS -.025AT4 # .025 SEC SCALED AT 4.
AD TTOAXIS # SCALED AT 4 SECONDS. AD TTOAXIS # SCALED AT 4 SECONDS.
DXCH HH # STORE DENOMINATOR IN FIRST WORD OF H, DXCH HH # STORE DENOMINATOR IN FIRST WORD OF H,
EXTEND # WHICH NEED NOT BE PRESERVED. PICK UP EXTEND # WHICH NEED NOT BE PRESERVED. PICK UP
DV HH # DP H AND DIVIDE BY DENOMINATOR. DV HH # DP H AND DIVIDE BY DENOMINATOR.
EXTEND EXTEND
MP BIT14 # RESCALE TJET FROM 2 TO USUAL 4 SEC. MP BIT14 # RESCALE TJET FROM 2 TO USUAL 4 SEC.
TCF CHKMINTJ # CHECK THAT TJET IS NOT LESS THAN MINIMUM TCF CHKMINTJ # CHECK THAT TJET IS NOT LESS THAN MINIMUM
# TJET = (H + .00375)/(0.1 + TTOAXIS) FOR TJET GREATER THAN 50 MSEC. # TJET = (H + .00375)/(0.1 + TTOAXIS) FOR TJET GREATER THAN 50 MSEC.
FORMULA2 EXTEND FORMULA2 EXTEND
DCA .00375A8 # .00375 SEC(2) SCALED AT 8. DCA .00375A8 # .00375 SEC(2) SCALED AT 8.
DAS HH # STORE NUMERATOR IN DP H, WHICH NEED NOT DAS HH # STORE NUMERATOR IN DP H, WHICH NEED NOT
# BE PRESERVED. # BE PRESERVED.
CAE TTOAXIS # SCALED AT 4 SEC. CAE TTOAXIS # SCALED AT 4 SEC.
AD .1AT4 # 0.1 SEC SCALED AT 4. AD .1AT4 # 0.1 SEC SCALED AT 4.
DXCH HH # STORE DENOMINATOR IN FIRST WORD OF H, DXCH HH # STORE DENOMINATOR IN FIRST WORD OF H,
EXTEND # WHICH NEED NOT BE PRESERVED. PICK UP EXTEND # WHICH NEED NOT BE PRESERVED. PICK UP
DV HH # DP NUMERATOR AND DIVIDE BY DENOMINATOR DV HH # DP NUMERATOR AND DIVIDE BY DENOMINATOR
EXTEND EXTEND
MP BIT14 # RESCALE TJET FROM 2 TO USUAL 4 SEC. MP BIT14 # RESCALE TJET FROM 2 TO USUAL 4 SEC.
TCF RETURNTJ # END SUBROUTINE. TCF RETURNTJ # END SUBROUTINE.
@ -318,20 +318,20 @@ FORMULA2 EXTEND
# SUBROUTINIZED COMPUTATIONS REQUIRED FOR ALL ENTRIES INTO CODING FOR ZONES 1, 2, AND 3. # SUBROUTINIZED COMPUTATIONS REQUIRED FOR ALL ENTRIES INTO CODING FOR ZONES 1, 2, AND 3.
# REACHED BY TC FROM 3 POINTS IN TJETLAW. # REACHED BY TC FROM 3 POINTS IN TJETLAW.
Z123COMP CS ROTSENSE # USED IN RETURNTJ SECTION TO RESCALE TJET Z123COMP CS ROTSENSE # USED IN RETURNTJ SECTION TO RESCALE TJET
TS ROTSENSE # AS TIME6 AND GIVE IT PROPER SIGN. TS ROTSENSE # AS TIME6 AND GIVE IT PROPER SIGN.
CAE EDOT # SCALED AT PI/2(5) RAD/SEC. CAE EDOT # SCALED AT PI/2(5) RAD/SEC.
EXTEND EXTEND
INDEX ADRSDIF2 INDEX ADRSDIF2
MP 1/ANET1 # SCALED AT 2(7)/PI SEC(2)/RAD. MP 1/ANET1 # SCALED AT 2(7)/PI SEC(2)/RAD.
TS TTOAXIS # STORE TIME-TO-AXIS SCALED AT 4 SECONDS. TS TTOAXIS # STORE TIME-TO-AXIS SCALED AT 4 SECONDS.
AD -TJMAX AD -TJMAX
EXTEND # IS TIME TO AXIS LESS THAN 150 MSEC. EXTEND # IS TIME TO AXIS LESS THAN 150 MSEC.
BZMF +2 BZMF +2
TCF FULLTIME # NO. FIRE JETS, DO NOT CALCULATE TJET. TCF FULLTIME # NO. FIRE JETS, DO NOT CALCULATE TJET.
RETURN # YES. GO ON TO FIND TJET RETURN # YES. GO ON TO FIND TJET
ZON1,2,3 TC Z123COMP # SUBROUTINIZED PREPARATION FOR ZONE1,2,3. ZON1,2,3 TC Z123COMP # SUBROUTINIZED PREPARATION FOR ZONE1,2,3.
# IF THE (NEG) DISTANCE BEYOND PARABOLA IS LESS THAN FLAT, USE SPECIAL # IF THE (NEG) DISTANCE BEYOND PARABOLA IS LESS THAN FLAT, USE SPECIAL
# LOGIC TO ACQUIRE MINIMUM IMPULSE LIMIT CYCLE. DURING POWERED FLIGHT # LOGIC TO ACQUIRE MINIMUM IMPULSE LIMIT CYCLE. DURING POWERED FLIGHT
@ -341,31 +341,31 @@ ZON1,2,3 TC Z123COMP # SUBROUTINIZED PREPARATION FOR ZONE1,2,3.
CAE FIREFCT # SCALED AT PI/4 RAD. CAE FIREFCT # SCALED AT PI/4 RAD.
AD FLAT AD FLAT
EXTEND EXTEND
BZMF ZONE1 # NOT IN SPECIAL ZONES. BZMF ZONE1 # NOT IN SPECIAL ZONES.
# FIRE FOR AXIS OR, IF CLOSE, FIRE MINIMUM IMPULSE. IF ON AXIS, COAST. # FIRE FOR AXIS OR, IF CLOSE, FIRE MINIMUM IMPULSE. IF ON AXIS, COAST.
ZONE2,3 CS ZONE3LIM # HEIGHT OF MIN-IMPULSE ZONE SET BY 1/ACCS ZONE2,3 CS ZONE3LIM # HEIGHT OF MIN-IMPULSE ZONE SET BY 1/ACCS
AD TTOAXIS # 35 MSEC IN DRIFTING FLIGHT AD TTOAXIS # 35 MSEC IN DRIFTING FLIGHT
EXTEND # ZERO WHEN TRYING TO ENTER GTS CONTROL. EXTEND # ZERO WHEN TRYING TO ENTER GTS CONTROL.
BZMF ZONE3 BZMF ZONE3
ZONE2 CAE TTOAXIS # FIRE TO AXIS. ZONE2 CAE TTOAXIS # FIRE TO AXIS.
TCF RETURNTJ TCF RETURNTJ
ZONE3 CCS EDOT # CHECK IF EDOT IS ZERO. ZONE3 CCS EDOT # CHECK IF EDOT IS ZERO.
CAF BIT6 # FIRE A ONE-JET MINIMUM IMPULSE. CAF BIT6 # FIRE A ONE-JET MINIMUM IMPULSE.
TCF RETURNTJ # TJET = +0. TCF RETURNTJ # TJET = +0.
TC CCSHOLE # CANNOT BE BECAUSE NEG EDOT COMPLEMENTED. TC CCSHOLE # CANNOT BE BECAUSE NEG EDOT COMPLEMENTED.
TCF RETURNTJ # TJET = +0. TCF RETURNTJ # TJET = +0.
ZONE1 EXTEND ZONE1 EXTEND
INDEX ADRSDIF1 INDEX ADRSDIF1
SU AXISDIST # SCALED AT PI/4 RAD. SU AXISDIST # SCALED AT PI/4 RAD.
EXTEND EXTEND
INDEX ADRSDIF2 INDEX ADRSDIF2
MP ACCFCTZ1 # SCALED AT 2(7)/PI SEC(2)/RAD. MP ACCFCTZ1 # SCALED AT 2(7)/PI SEC(2)/RAD.
DDOUBL DDOUBL
DDOUBL DDOUBL
DXCH HH # DOUBLE PRECISION H SCALED AT 8 SEC(2). DXCH HH # DOUBLE PRECISION H SCALED AT 8 SEC(2).
# TEST WHETHER TOTAL TIME REQUIRED GREATER THAN 150 MSEC: # TEST WHETHER TOTAL TIME REQUIRED GREATER THAN 150 MSEC:
# 2 2 # 2 2
@ -376,43 +376,43 @@ ZONE1 EXTEND
EXTEND EXTEND
SQUARE SQUARE
EXTEND EXTEND
SU HH # HIGH WORD OF H SCALED AT 8 SEC(2). SU HH # HIGH WORD OF H SCALED AT 8 SEC(2).
EXTEND EXTEND
BZMF FULLTIME # YES. NEED NOT CALCULATE TJET. BZMF FULLTIME # YES. NEED NOT CALCULATE TJET.
# TEST WHETHER TIME BEYOND AXIS GREATER THAN 50 MSEC TO DETERMINE WHICH APPROXIMATION TO USE. # TEST WHETHER TIME BEYOND AXIS GREATER THAN 50 MSEC TO DETERMINE WHICH APPROXIMATION TO USE.
CAE HH CAE HH
AD NEG2 AD NEG2
EXTEND EXTEND
BZMF FORMULA3 BZMF FORMULA3
# Page 1467 # Page 1467
# TJET = H/0.1 + TTOAXIS + .0375 FOR APPROXIMATION OVER MORE THAN 50 MSEC. # TJET = H/0.1 + TTOAXIS + .0375 FOR APPROXIMATION OVER MORE THAN 50 MSEC.
CAF .1AT2 # STORE .1 SEC SCALED AT 2 FOR DIVISION. CAF .1AT2 # STORE .1 SEC SCALED AT 2 FOR DIVISION.
DXCH HH # DP H SCALED AT 8 SEC(2) NEED NOT BE DXCH HH # DP H SCALED AT 8 SEC(2) NEED NOT BE
EXTEND # PRESERVED. EXTEND # PRESERVED.
DV HH # QUOTIENT SCALED AT 4 SECONDS. DV HH # QUOTIENT SCALED AT 4 SECONDS.
AD TTOAXIS # SCALED AT 4 SEC. AD TTOAXIS # SCALED AT 4 SEC.
AD .0375AT4 # .0375 SEC SCALED AT 4. AD .0375AT4 # .0375 SEC SCALED AT 4.
TCF RETURNTJ # END COMPUTATION. TCF RETURNTJ # END COMPUTATION.
# TJET - H/.O25 + TTOAXIS FOR APPROXIMATION OVER LESS THAN 50 MSEC. # TJET - H/.O25 + TTOAXIS FOR APPROXIMATION OVER LESS THAN 50 MSEC.
FORMULA3 CS -.025AT2 # STORE +.25 SEC SCALED AT 2 FOR DIVISION FORMULA3 CS -.025AT2 # STORE +.25 SEC SCALED AT 2 FOR DIVISION
DXCH HH # PICK UP DP H AT 8, WHICH NEED NOT BE DXCH HH # PICK UP DP H AT 8, WHICH NEED NOT BE
EXTEND # PRESERVED. EXTEND # PRESERVED.
DV HH # QUOTIENT SCALED AT 4 SECONDS. DV HH # QUOTIENT SCALED AT 4 SECONDS.
AD TTOAXIS # SCALED AT 4 SEC. AD TTOAXIS # SCALED AT 4 SEC.
# IF COMPUTED JET TIME IS LESS THAN TJMIN, TJET IS SET TO ZERO. # IF COMPUTED JET TIME IS LESS THAN TJMIN, TJET IS SET TO ZERO.
# MINIMUM IMPULSES REQUIRED IN ZONE 3 ARE NOT SUBJECT TO THIS CONSTRAINT, NATURALLY. # MINIMUM IMPULSES REQUIRED IN ZONE 3 ARE NOT SUBJECT TO THIS CONSTRAINT, NATURALLY.
CHKMINTJ AD -TJMIN # IS COMPUTED TIME LESS THAN THE MINIMUM. CHKMINTJ AD -TJMIN # IS COMPUTED TIME LESS THAN THE MINIMUM.
EXTEND EXTEND
BZMF COASTTJ # YES, SET TIME TO ZERO. BZMF COASTTJ # YES, SET TIME TO ZERO.
AD TJMIN # NO, RESTORE COMPUTED TIME. AD TJMIN # NO, RESTORE COMPUTED TIME.
TCF RETURNTJ # END COMPUTATION. TCF RETURNTJ # END COMPUTATION.
# Page 1468 # Page 1468
@ -428,50 +428,50 @@ CHKMINTJ AD -TJMIN # IS COMPUTED TIME LESS THAN THE MINIMUM.
# RUFLAW2: ERROR MORE POSITIVE THAN PI/16 RAD. FIRE TO AN OPPOSING RATE OF 6.5 DEG/SEC. # RUFLAW2: ERROR MORE POSITIVE THAN PI/16 RAD. FIRE TO AN OPPOSING RATE OF 6.5 DEG/SEC.
# RUFLAW3: ERROR RATE GREATER THAN PI/32 RAD/SEC AND ERROR WITHIN BOUNDS. COAST IF BELOW FIREFCT, FIRE IF ABOVE # RUFLAW3: ERROR RATE GREATER THAN PI/32 RAD/SEC AND ERROR WITHIN BOUNDS. COAST IF BELOW FIREFCT, FIRE IF ABOVE
RUFLAW1 CS RUFRATE # DECREMENT EDOT BY .1444 RAD/SEC AT PI/4 RUFLAW1 CS RUFRATE # DECREMENT EDOT BY .1444 RAD/SEC AT PI/4
ADS EDOT # WHICH IS THE TARGET RATE ADS EDOT # WHICH IS THE TARGET RATE
EXTEND EXTEND
BZMF SMALRATE # BRANCH IF RATE LESS THAN TARGET. BZMF SMALRATE # BRANCH IF RATE LESS THAN TARGET.
TC RUFSETUP # REVERSE ROTSENSE AND INDICATE MAX JETS. TC RUFSETUP # REVERSE ROTSENSE AND INDICATE MAX JETS.
CAE EDOT # PICK UP DESIRED RATE CHANGE. CAE EDOT # PICK UP DESIRED RATE CHANGE.
RUFLAW12 EXTEND # COMPUTE TJET RUFLAW12 EXTEND # COMPUTE TJET
INDEX ADRSDIF2 # = (DESIRED RATE CHANGE)/(2-JET ACCEL.) INDEX ADRSDIF2 # = (DESIRED RATE CHANGE)/(2-JET ACCEL.)
MP 1/ANET1 +2 MP 1/ANET1 +2
AD -1/8 # IF TJET, SCALED AT 32 SEC, EXCEEDS AD -1/8 # IF TJET, SCALED AT 32 SEC, EXCEEDS
EXTEND # 4 SECONDS, SET TJET TO TJMAX. EXTEND # 4 SECONDS, SET TJET TO TJMAX.
BZMF +2 BZMF +2
TCF FULLTIME TCF FULLTIME
EXTEND EXTEND
BZF FULLTIME BZF FULLTIME
AD BIT12 # RESTORE COMPUTED TJET TO ACCUMULATOR AD BIT12 # RESTORE COMPUTED TJET TO ACCUMULATOR
DAS A DAS A
DAS A DAS A
DAS A # RESCALED TJET AT 4 SECONDS. DAS A # RESCALED TJET AT 4 SECONDS.
TCF CHKMINTJ # RETURN AS FROM FINELAW. TCF CHKMINTJ # RETURN AS FROM FINELAW.
SMALRATE TC RUFSETUP +2 # SET NUMBERT AND FIREFCT FOR MAXIMUM JETS SMALRATE TC RUFSETUP +2 # SET NUMBERT AND FIREFCT FOR MAXIMUM JETS
CCS ROTSENSE CCS ROTSENSE
CAF ONE # MODIFY INDEXER TO POINT TO 1/ANET CAF ONE # MODIFY INDEXER TO POINT TO 1/ANET
TCF +2 # CORRESPONDING TO THE PROPER SENSE. TCF +2 # CORRESPONDING TO THE PROPER SENSE.
CAF NEGONE CAF NEGONE
ADS ADRSDIF2 ADS ADRSDIF2
CS EDOT # (.144 AT PI/4 - EDOT) = DESIRED RATE CHNG. CS EDOT # (.144 AT PI/4 - EDOT) = DESIRED RATE CHNG.
TCF RUFLAW12 TCF RUFLAW12
RUFLAW2 TC RUFSETUP # REVERSE ROTSENSE AND INDICATE MAX JETS. RUFLAW2 TC RUFSETUP # REVERSE ROTSENSE AND INDICATE MAX JETS.
CAF RUFRATE CAF RUFRATE
AD EDOT # (.144 AT PI/4 + EDOT) = DESIRED RATE CHNG. AD EDOT # (.144 AT PI/4 + EDOT) = DESIRED RATE CHNG.
TS A # IF OVERFLOW SKIP, FIRE FOR FULL TIME. TS A # IF OVERFLOW SKIP, FIRE FOR FULL TIME.
TCF RUFLAW12 # OTHERWISE, COMPUTE JET TIME. TCF RUFLAW12 # OTHERWISE, COMPUTE JET TIME.
TCF FULLTIME TCF FULLTIME
# Page 1469 # Page 1469
RUFLAW3 TC RUFSETUP # EXECUTE COMMON RUFLAW SUBROUTINE. RUFLAW3 TC RUFSETUP # EXECUTE COMMON RUFLAW SUBROUTINE.
INDEX ADRSDIF1 INDEX ADRSDIF1
CS FIREDB # CALCULATE DISTANCE FROM SWITCH CURVE CS FIREDB # CALCULATE DISTANCE FROM SWITCH CURVE
AD E # 1/ANET1*EDOT*EDOT +E - FIREDB = 0 AD E # 1/ANET1*EDOT*EDOT +E - FIREDB = 0
EXTEND # SCALED AT 4 PI RADIANS EXTEND # SCALED AT 4 PI RADIANS
MP BIT11 MP BIT11
XCH EDOT XCH EDOT
@ -482,12 +482,12 @@ RUFLAW3 TC RUFSETUP # EXECUTE COMMON RUFLAW SUBROUTINE.
MP 1/ANET1 +2 MP 1/ANET1 +2
AD EDOT AD EDOT
EXTEND EXTEND
BZMF COASTTJ # COAST IF BELOW IT. BZMF COASTTJ # COAST IF BELOW IT.
TCF FULLTIME # FIRE FOR FULL PERIOD IF ABOVE IT. TCF FULLTIME # FIRE FOR FULL PERIOD IF ABOVE IT.
# SUBROUTINE USED IN ALL ENTRIES TO ROUGHLAW. # SUBROUTINE USED IN ALL ENTRIES TO ROUGHLAW.
RUFSETUP CS ROTSENSE # REVERSE ROTSENSE WHEN ENTER HERE. RUFSETUP CS ROTSENSE # REVERSE ROTSENSE WHEN ENTER HERE.
TS ROTSENSE TS ROTSENSE
+2 CAF FOUR # REQUIRE MAXIMUM (2) JETS IN U,V-AXES. +2 CAF FOUR # REQUIRE MAXIMUM (2) JETS IN U,V-AXES.
TS NUMBERT TS NUMBERT
@ -497,23 +497,23 @@ RUFSETUP CS ROTSENSE # REVERSE ROTSENSE WHEN ENTER HERE.
# CONSTANTS FOR TJETLAW # CONSTANTS FOR TJETLAW
DEC -16 # AXISDIFF(INDEX) = NUMBER OF REGISTERS DEC -16 # AXISDIFF(INDEX) = NUMBER OF REGISTERS
AXISDIFF DEC +0 # BETWEEN STORED 1/ACCS PARAMETERS FOR AXISDIFF DEC +0 # BETWEEN STORED 1/ACCS PARAMETERS FOR
DEC 16 # THE INDEXED AXIS AND THE U-AXIS. DEC 16 # THE INDEXED AXIS AND THE U-AXIS.
SENSOR OCT 14400 # RATIO OF TJET SCALING WITHIN TJETLAW SENSOR OCT 14400 # RATIO OF TJET SCALING WITHIN TJETLAW
# (4 SEC) TO SCALING FOR T6 (10.24 SEC). # (4 SEC) TO SCALING FOR T6 (10.24 SEC).
-3DEG DEC -.06667 # -3.0 DEGREES SCALED AT 45. -3DEG DEC -.06667 # -3.0 DEGREES SCALED AT 45.
-.0112A8 DEC -.00141 # -.01125 SEC(2) SCALED AT 8. -.0112A8 DEC -.00141 # -.01125 SEC(2) SCALED AT 8.
.1AT4 DEC .025 # 0.1 SECOND SCALED AT 4. .1AT4 DEC .025 # 0.1 SECOND SCALED AT 4.
.1AT2 DEC .05 # .1 SEC SCALED AT 2. .1AT2 DEC .05 # .1 SEC SCALED AT 2.
.0375AT4 DEC .00938 # .0375 SEC SCALED AT 4. .0375AT4 DEC .00938 # .0375 SEC SCALED AT 4.
-.025AT2 DEC -.0125 # -.025 SEC SCALED AT 2. -.025AT2 DEC -.0125 # -.025 SEC SCALED AT 2.
-.025AT4 DEC -.00625 -.025AT4 DEC -.00625
-.05AT2 DEC -.025 -.05AT2 DEC -.025
-.15AT2 DEC -.075 -.15AT2 DEC -.075
.00375A8 2DEC .00375 B-3 .00375A8 2DEC .00375 B-3
-TJMAX DEC -.0375 # LARGEST CALCULATED TIME. .150 SEC AT 4. -TJMAX DEC -.0375 # LARGEST CALCULATED TIME. .150 SEC AT 4.
TJMIN DEC .005 # SMALLEST ALLOWABLE TIME. .020 SEC AT 4. TJMIN DEC .005 # SMALLEST ALLOWABLE TIME. .020 SEC AT 4.
-TJMIN DEC -.005 -TJMIN DEC -.005
RUFRATE DEC .1444 # CORRESPONDS TO TARGET RATE OF 6.5 DEG/S. RUFRATE DEC .1444 # CORRESPONDS TO TARGET RATE OF 6.5 DEG/S.