Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Asm/Apollo-11/Luminary099/     Datei vom 11.9.2026 mit Größe 31 kB image not shown  

SSL LUNAR_LANDING_GUIDANCE_EQUATIONS.agc   Sprache: Apollo

 

# Copyright: Public domain.
# Filename: LUNAR_LANDING_GUIDANCE_EQUATIONS.agc
# Purpose:  Part of the source code for Luminary 1A build 099.
# It is part of the source code for the Lunar Module's (LM)
# Apollo Guidance Computer (AGC), for Apollo 11.
# Assembler: yaYUL
# Contact: HARTMUTH GUTSCHE <hgutsche@xplornet.com>.
# Website: www.ibiblio.org/apollo.
# Pages: 798-828
# Mod history: 2009-05-23 HG Transcribed from page images.
# 2009-06-05 RSB Fixed a goofy thing that was apparently
# legal in GAP but not in yaYUL.  Eliminated
# a couple of lines of code that shouldn't
# have survived from Luminary 131 to here.
# 2009-06-07 RSB Fixed a typo.
#
# This source code has been transcribed or otherwise adapted from
# digitized images of a hardcopy from the MIT Museum.  The digitization
# was performed by Paul Fjeld, and arranged for by Deborah Douglas of
# the Museum.  Many thanks to both.  The images (with suitable reduction
# in storage size and consequent reduction in image quality as well) are
# available online at www.ibiblio.org/apollo.  If for some reason you
# find that the images are illegible, contact me at info@sandroid.org
# about getting access to the (much) higher-quality images which Paul
# actually created.
#
# Notations on the hardcopy document read, in part:
#
# Assemble revision 001 of AGC program LMY99 by NASA 2021112-061
# 16:27 JULY 14, 1969

# Page 798
  EBANK= E2DPS
  COUNT* $$/F2DPS

# ********************************************************
# LUNAR LANDING FLIGHT SEQUENCE TABLES
# ********************************************************

# FLIGHT SEQUENCE TABLES ARE ARRANGED BY FUNCTION.  THEY ARE REFERENCED USING AS AN INDEX THE REGISTER WCHPHASE:
# WCHPHASE = -1 ---> IGNALG
# WCHPHASE =  0 ---> BRAKQUAD
# WCHPHASE =  1 ---> APPRQUAD
# WCHPHASE =  2 ---> VERTICAL

#*********************************************************

# ROUTINES FOR STARTING NEW GUIDANCE PHASES:

  TCF TTFINCR  # IGNALG
NEWPHASE TCF TTFINCR  # BRAKQUAD
  TCF STARTP64 # APPRQUAD
  TCF P65START # VERTICAL

# PRE-GUIDANCE COMPUTATIONS:

  TCF CALCRGVG # IGNALG
PREGUIDE TCF RGVGCALC # BRAKQUAD
  TCF REDESIG  # APPRQUAD
  TCF RGVGCALC # VERTICAL

# GUIDANCE EQUATIONS:

  TCF TTF/8CL  # IGNALG
WHATGUID TCF TTF/8CL  # BRAKQUAD
  TCF TTF/8CL  # APPRQUAD
  TCF VERTGUID # VERTICAL

# POST GUIDANCE EQUATION COMPUTATIONS:

  TCF CGCALC  # IGNALG
AFTRGUID TCF CGCALC  # BRAKQUAD
  TCF CGCALC  # APPRQUAD
  TCF STEER?  # VERTICAL

# Page 799
# WINDOW VECTOR COMPUTATIONS:

  TCF EXGSUB  # IGNALG
WHATEXIT TCF EXBRAK  # BRAKQUAD
  TCF EXNORM  # APPRQUAD

# DISPLAY ROUTINES:

WHATDISP TCF P63DISPS # BRAKQUAD
  TCF P64DISPS # APPRQUAD
  TCF VERTDISP # VERTICAL

# ALARM ROUTINE FOR TTF COMPUTATION:

  TCF 1406P00  # IGNALG
WHATALM  TCF 1406ALM  # BRAKQUAD
  TCF 1406ALM  # APPRQUAD

# INDICES FOR REFERENCING TARGET PARAMETERS

  OCT 0  # IGNALG
TARGTDEX OCT 0  # BRAKQUAD
  OCT 34  # APPRQUAD

#************************************************************************
# ENTRY POINTS:  ?GUIDSUB FOR THE IGNITION ALGORITHM, LUNLAND FOR SERVOUT
#************************************************************************

# IGNITION ALGORITHM ENTRY:  DELIVERS N PASSES OF QUADRATIC GUIDANCE

?GUIDSUB EXIT
  CAF TWO  # N = 3
  TS NGUIDSUB
  TCF GUILDRET +2

GUIDSUB  TS NGUIDSUB # ON SUCCEEDING PASSES SKIP TTFINCR
  TCF CALCRGVG

# NORMAL ENTRY:  CONTROL COMES HERE FROM SERVOUT

LUNLAND  TC PHASCHNG
  OCT 00035  # GROUP 5:  RETAIN ONLY PIPA TASK
  TC PHASCHNG
  OCT 05023  # GROUP 3:  PROTECT GUIDANCE WITH PRIO 21
  OCT 21000  # JUST HIGHER THAN SERVICER'S PRIORITY

# Page 800
#*******************************************************************
# GUILDENSTERN:  AUTO-MODES MONITOR (R13)
#*******************************************************************

  COUNT* $$/R13

# HERE IS THE PHILOSOPHY OF GUILDENSTERN: ON EVERY APPEARANCE OR DISAPPEARANCE OF THE MANUAL THROTTLE
# DISCRETE TO SELECT P67 OR P66 RESPECTIVELY:   ON EVERY APPEARANCE OF THE ATTITUDE-HOLD DISCRETE TO SELECT P66
# UNLESS THE CURRENT PROGRAM IS P67 IN WHICH CASE THERE IS NO CHANGE

GUILDEN  EXTEND   # IS UN-AUTO-THROTTLE DISCRETE PRESENT?
# STERN # RSB 2009: Not originally a comment.
   READ CHAN30
  MASK BIT5
   CCS A
   TCF STARTP67 # YES
P67NOW?  TC CHECKMM  # NO:  ARE WE IN P67 NOW?
  DEC 67
  TCF STABL?  # NO
STARTP66 TC FASTCHNG # YES
  TC NEWMODEX
DEC66  DEC 66
  EXTEND
  DCA HDOTDISP # SET DESIRED ALTITUDE RATE = CURRENT
  DXCH VDGVERT  #  ALTITUDE RATE.
STRTP66A TC INTPRET
  SLOAD PUSH
   PBIASZ
  SLOAD PUSH
   PBIASY
  SLOAD VDEF
   PBIASX
  VXSC SET
   BIASFACT
   RODFLAG
  STOVL VBIAS
   TEMX
  VCOMP
  STOVL OLDPIPAX
   ZEROVECS
  STODL DELVROD
   RODSCALE
  STODL RODSCAL1
   PIPTIME
  STORE LASTTPIP
  EXIT
  CAF ZERO
  TS FCOLD
  TS FWEIGHT
  TS FWEIGHT +1
VRTSTART TS WCHVERT
# Page 801
  CAF TWO  # WCHPHASE = 2 ---> VERTICAL: P65,P66,P67
  TS WCHPHOLD
  TS WCHPHASE
  TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE
  CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE
  TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
  ADRES XOVINFLG
  TC DOWNFLAG
  ADRES REDFLAG
  TCF VERTGUID

STARTP67 TC NEWMODEX # NO HARM IN "STARTING" P67 OVER AND OVER
  DEC 67  # SO NO NEED FOR A FASTCHNG AND NO NEED
  CAF ZERO  # TO SEE IF ALREADY IN P67.
  TS RODCOUNT
  CAF TEN
  TCF VRTSTART

STABL?  CAF BIT13  # IS UN-ATTITUDE-HOLD DISCRETE PRESENT?
  EXTEND
  RAND CHAN31
  CCS A
  TCF GUILDRET # YES ALL'S WELL

P66NOW?  CS MODREG
  AD DEC66
  EXTEND
  BZF RESTART?

  CA RODCOUNT # NO. HAS THE ROD SWITCH BEEN "CLICKED"?
  EXTEND
  BZF GUILDRET # NO. CONTINUE WITH AUTOMATIC LANDING
  TCF STARTP66 # YES. SWITCH INTO THE ROD MODE.

RESTART? CA FLAGWRD1 # HAS THERE BEEN A RESTART?
  MASK RODFLBIT
  EXTEND
  BZF STRTP66A # YES.  REINITIALIZE BUT LEAVE VDGVERT AS
     # IS.

  TCF VERTGUID # NO: CONTINUE WITH R.O.D.

# *******************************************************************************
# INITIALIZATION FOR THIS PASS
# *******************************************************************************

  COUNT* $$/F2DPS

GUILDRET CAF ZERO
  TS RODCOUNT

# Page 802
 +2  EXTEND
   DCA TPIP
  DXCH TPIPOLD

  TC FASTCHNG

  EXTEND
  DCA PIPTIME1
  DXCH TPIP

  EXTEND
  DCA TTF/8
  DXCH TTF/8TMP

  CCS FLPASS0
  TCF TTFINCR

BRSPOT1  INDEX WCHPHASE
  TCF NEWPHASE

# ******************************************************************
# ROUTINES TO START NEW PHASES
# ******************************************************************

P65START TC NEWMODEX
  DEC 65
  CS TWO
  TS WCHVERT
  TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
  ADRES XOVINFLG
  TCF TTFINCR

STARTP64 TC NEWMODEX
  DEC 64
  CA DELTTFAP # AUGMENT TTF/8
  ADS TTF/8TMP
  CA BIT12  # ENABLE RUPT10
  EXTEND
  WOR CHAN13
  TC DOWNFLAG # INITIALIZE REDESIGNATION FLAG
  ADRES REDFLAG


# (CONTINUE TO TTFINCR)

# *********************************************************************************
# INCREMENT TTF/8, UPDATE LAND FOR LUNAR ROTATION, DO OTHER USEFUL THINGS
# *********************************************************************************
#
# TTFINCR COMPUTATIONS ARE AS FOLLOWS --
# Page 803
# TTF/8 UPDATED FOR TIME SINCE LAST PASS:
# TTF/8 = TTF/8 + (TPIP - TPIPOLD)/8
# LANDING SITE VECTOR UPDATED FOR LUNAR ROTATION:
# ____               ____   ____                   __
# LAND = /LAND/ UNIT(LAND - LAND(TPIP - TPIPOLD) * WM)
# SLANT RANGE TO LANDING SITE, FOR DISPLAY:
#                  ____   _
# RANGEDSP = ABVAL(LAND - R)

TTFINCR  TC INTPRET
  DLOAD DSU
   TPIP
   TPIPOLD
  SLR PUSH  # SHIFT SCALES DELTA TIME TO 2(17) CSECS
   11D
  VXSC VXV
   LAND
   WM
  BVSU RTB
   LAND
   NORMUNIT
  VXSC VSL1
   /LAND/
  STODL LANDTEMP
  EXIT

  DXCH MPAC
  DAS TTF/8TMP # NOW HAVE INCREMENTED TTF/8 IN TTF/8TMP

  TC FASTCHNG

  EXTEND
  DCA TTF/8TMP
  DXCH TTF/8

  EXTEND
  DCA LANDTEMP
  DXCH LAND
  EXTEND
  DCA LANDTEMP +2
  DXCH LAND     +2
  EXTEND
  DCA LANDTEMP +4
  DXCH LAND  +4

# Page 804
  TC TDISPSET
  TC FASTCHNG # SINCE REDESIG MAY CHANGE LANDTEMP

BRSPOT2  INDEX WCHPHASE
  TCF PREGUIDE

# *********************************************************************
# LANDING SITE PERTURBATION EQUATIONS
# *********************************************************************

REDESIG  CA FLAGWRD6 # IS REDFLAG SET?
  MASK REDFLBIT
  EXTEND
  BZF RGVGCALC # NO:  SKIP REDESIGNATION LOGIC

  CA TREDES  # YES:  HAS TREDES REACHED ZERO?
  EXTEND
  BZF RGVGCALC # YES:  SKIP REDESIGNATION LOGIC

  INHINT
  CA ELINCR1
  TS ELINCR
  CA AZINCR1
  TS AZINCR
  TC FASTCHNG

  CA ZERO
  TS ELINCR1
  TS AZINCR1
  TS ELINCR +1
  TS AZINCR  +1

  CA FIXLOC  # SET PD TO 0
  TS PUSHLOC

  TC INTPRET
  VLOAD VSU
   LAND
   R  #                 ____   _
  RTB PUSH  # PUSH DOWN UNIT (LAND - R)
   NORMUNIT
  VXV VSL1
   YNBPIP  #                    ___        ____   _
  VXSC PDDL  # PUSH DOWN - ELINCR(YNB * UNIT(LAND - R))
   ELINCR
   AZINCR
  VXSC VSU
   YNBPIP
  VAD PUSH  # RESULTING VECTOR IS 1/2 REAL SIZE

# Page 805

  DLOAD DSU  # MAKE SURE REDESIGNATION IS NOT
   0  #  TOO CLOSE TO THE HORIZON.
   DEPRCRIT
  BMN DLOAD
   REDES1
   DEPRCRIT
  STORE 0
REDES1  DLOAD DSU
   LAND
   R
  DDV VXSC
   0
  VAD UNIT
   R
  VXSC VSL1
   /LAND/
  STORE LANDTEMP
  EXIT   # LOOKANGL WILL BE COMPUTED AT RGVGCALC

  TC FASTCHNG

  EXTEND
  DCA LANDTEMP
  DXCH LAND
  EXTEND
  DCA LANDTEMP +2
  DXCH LAND +2
  EXTEND
  DCA LANDTEMP +4
  DXCH LAND +4

  TCF RGVGCALC

# *********************************************************************
# COMPUTE STATE IN GUIDANCE COORDINATES
# *********************************************************************
#
# RGVGCALC COMPUTATIONS ARE AS FOLLOWS:--
# VELOCITY RELATIVE TO THE SURFACE:
# _______   _   _   __
# ANGTERM = V + R * WM
# STATE IN GUIDANCE COORDINATES:
# ___   *   _   ____
# RGU = CG (R - LAND)
# ___   *   _   __   _
# VGU = CG (V - WM * R)
# Page 806 actually starts one line earlier but that would separate the markers from their variables
#
# HORIZONTAL VELOCITY FOR DISPLAY
#
# VHORIZ = 8 ABVAL (0, VG , VG )
#                        2    1
#  DEPRESSION ANGLE FOR DISPLAY:
#                        _   ____  ______
# LOOKANGL = ARCSIN(UNIT(R - LAND).XMBPIP)

CALCRGVG TC INTPRET  # IN IGNALG, COMPUTE V FROM INTEGRATION
  VLOAD MXV  # OUTPUT AND TRIM CORRECTION TERM
   VATT1  # COMPUTED LAST PASS AND LEFT IN UNFC/2
   REFSMMAT
  VSR1 VAD
   UNFC/2
  STORE V
  EXIT

RGVGCALC TC INTPRET  # ENTER HERE TO RECOMPUTE RG AND VG
  VLOAD VXV
   R
   WM
  VAD VSR2  # RESCALE TO UNITS OF 2(9) M/CS
   V
  STORE ANGTERM
  MXV
   CG  # NO SHIFT SINCE ANGTERM IS DOUBLE SIZED
  STORE VGU
  PDDL VDEF  # FORM (0,VG ,VG ) IN UNITS OF 2(10) M/CS
   ZEROVECS #           2   1
  ABVAL SL3
  STOVL VHORIZ  # VHORIZ FOR DISPLAY DURING P65.
   R  #           _   ____
  VSU PUSH  # PUSH DOWN R - LAND
   LAND
  MXV VSL1
   CG
  STORE RGU
  ABVAL
  STOVL RANGEDSP
  RTB DOT  # NOW IN MPAC IS SINE(LOOKANGL)/4
   NORMUNIT
   XNBPIP
  EXIT

  CA FIXLOC  # RESET PUSH DOWN POINTER
  TS PUSHLOC

# Page 807
  CA MPAC  # COMPUTE LOOKANGLE ITSELF
  DOUBLE
  TC BANKCALL
  CADR SPARCSIN -1
  AD 1/2DEG
  EXTEND
  MP 180DEGS
  TS LOOKANGL # LOOKANGL FOR DISPLAY DURING P64

BRSPOT3  INDEX WCHPHASE
  TCF WHATGUID

# **************************************************************************
# TTF/8 COMPUTATION
# **************************************************************************

TTF/8CL  TC INTPRETX
  DLOAD*
   JDG2TTF,1
  STODL* TABLTTF +6 # A(3) = 8 JDG  TO TABLTTF
   ADG2TTF,1 #             2
  STODL TABLTTF +4 # A(2) = 6 ADG  TO TABLTTF
   VGU  +4 #             2
  DMP DAD*
   3/4DP
   VDG2TTF,1
  STODL* TABLTTF +2 # A(1) = (6 VGU  + 18 VDG )/8 TO TABLTTF
   RDG +4,1 #              2         2
  DSU DMP
   RGU +4
   3/8DP
  STORE TABLTTF  # A(0) = -24 (RGU  - RDG )/64 TO TABLTTF
  EXIT   #                2      2

  CA BIT8
  TS TABLTTF +10 # FRACTIONAL PRECISION FOR TTF TO TABLE

  EXTEND
  DCA TTF/8
  DXCH MPAC  # LOADS TTF/8 (INITIAL GUESS) INTO MPAC
  CAF TWO  # DEGREE - ONE
  TS L
  CAF TABLTTFL
  TC ROOTPSRS # YIELDS TTF/8 IN MPAC
  INDEX WCHPHASE
  TCF WHATALM

  EXTEND   # GOOD RETURN
  DCA MPAC  # FETCH TTF/8 KEEPING IT IN MPAC
  DXCH TTF/8  # CORRECTED TTF/8

# Page 808
  TC TDISPSET

#  (CONTINUE TO QUADGUID)

# *********************************************************************************
# MAIN GUIDANCE EQUATION
# *********************************************************************************
#
# AS PUBLISHED --
#               ___   __       ___   __
# ___   ___   6(VDG + VG)   12(RDG - RG)
# ACG = ADG + ----------- + ------------
#                 TTF        (TTF)(TTF)
# AS HERE PROGRAMMED --
#              ___   __
#       3 (1/4(RDG - RG)   ___   __)
#       - (------------- + VDG + VG)
# ___   4 (    TTF/8               )   ___
# ACG = ---------------------------- + ADG
#                   TTF/8

QUADGUID CS TTF/8
  AD LEADTIME # LEADTIME IS A NEGATIVE NUMBER
  AD POSMAX  # SAFEGUARD THE COMPUTATIONS THAT FOLLOW
  TS L  # BY FORCING -TTF*LEADTIME > OR = ZERO
  CS L
  AD L
  ZL
  EXTEND
  DV TTF/8
  TS BUF  # - RATIO OF LAG-DIMINISHED TTF TO TTF
  EXTEND
  SQUARE
  TS BUF +1
  AD BUF
  XCH BUF +1  # RATIO SQUARED - RATIO
  AD BUF +1
  TS MPAC  # COEFFICIENT FOR VGU TERM
  AD BUF +1
  INDEX FIXLOC
  TS 26D  # COEFFICIENT FOR RDG-RGU TERM
  AD BUF +1
  INDEX FIXLOC
  TS 28D  # COEFFICIENT FOR VDG TERM
  AD BUF
  AD POSMAX
# Page 809
  AD BUF +1
  AD BUF +1
  INDEX FIXLOC
  TS 30D  # COEFFICIENT FOR ADG TERM

  CAF ZERO
  TS MODE

  TC INTPRETX
  VXSC PDDL
   VGU
   28D
  VXSC* PDVL*
   VDG,1
   RDG,1
  VSU V/SC
   RGU
   TTF/8
  VSR2 VXSC
   26D
  VAD VAD
  V/SC VXSC
   TTF/8
   3/4DP
  PDDL VXSC*
   30D
   ADG,1
  VAD
AFCCALC1 VXM VSL1  # VERGUID COMES HERE
   CG
  PDVL V/SC
   GDT/2
   GSCALE
  BVSU STADR
  STORE UNFC/2  # UNFC/2 NEED NOT BE UNITIZED
  ABVAL
AFCCALC2 STODL /AFC/  # MAGNITUDE OF AFC FOR THROTTLE
   UNFC/2  # VERTICAL COMPONENT
  DSQ PDDL
   UNFC/2 +2 # OUT-OF-PLANE
  DSQ PDDL
   HIGHESTF
  DDV DSQ
   MASS  #                        2    2    2
  DSU DSU  # AMAXHORIZ = SQRT(ATOTAL - A  - A  )
  BPL DLOAD  #                            1    0
   AFCCALC3
   ZEROVECS
AFCCALC3 SQRT DAD
   UNFC/2 +4
# Page 810
  BPL BDSU
   AFCCLEND
   UNFC/2 +4
  STORE UNFC/2 +4
AFCCLEND EXIT
  TC FASTCHNG

  CA WCHPHASE # PREPARE FOR PHASE SWITCHING LOGIC
  TS WCHPHOLD
  INCR FLPASS0  # INCREMENT PASS COUNTER

BRSPOT4  INDEX WCHPHASE
  TCF AFTRGUID

# ***********************************************************************
# ERECT GUIDANCE-STABLE MEMBER TRANSFORMATION MATRIX
# ***********************************************************************

CGCALC  CAF EBANK5
  TS EBANK
  EBANK= TCGIBRAK
  EXTEND
  INDEX WCHPHASE
  INDEX TARGTDEX
  DCA TCGFBRAK
  INCR BBANK
  INCR BBANK
  EBANK= TTF/8
  AD TTF/8
  XCH L
  AD TTF/8
  CCS A
  CCS L
  TCF EXTLOGIC
  TCF EXTLOGIC
  NOOP

  TC INTPRETX
  VLOAD UNIT
   LAND
  STODL CG
   TTF/8
  DMP* VXSC
   GAINBRAK,1 # NUMERO MYSTERIOSO
   ANGTERM
  VAD
   LAND
  VSU RTB
   R
   NORMUNIT
# Page 811
  VXV RTB
   LAND
   NORMUNIT
  STOVL CG +6  # SECOND ROW
   CG
  VXV VSL1
   CG +6
  STORE CG +14
  EXIT

# (CONTINUE TO EXTLOGIC)
#
# ***********************************************************************
# PREPARE TO EXIT
# ***********************************************************************
#
# DECIDE (1) HOW TO EXIT, AND (2) WHETHER TO SWITCH PHASES
#
EXTLOGIC INDEX WCHPHASE # WCHPHASE = 1   APPRQUAD
  CA TENDBRAK # WCHPHASE = 0   BRAKQUAD
  AD TTF/8

EXSPOT1  EXTEND
  INDEX WCHPHASE
  BZMF WHATEXIT

  TC FASTCHNG

  CA WCHPHOLD
  AD ONE
  TS WCHPHASE
  CA ZERO
  TS FLPASS0  # RESET FLPASS0

  INDEX WCHPHOLD
  TCF WHATEXIT

# ***********************************************************************
# ROUTINES FOR EXITING FROM LANDING GUIDANCE
# ***********************************************************************
#
# 1. EXGSUB IS THE RETURN WHEN GUIDSUB IS CALLED BY THE IGNITION ALGORITHM.
# 2. EXBRAK IN THE EXIT USED DURING THE BRAKING PHASE.  IN THIS CASE UNIT(R) IS THE WINDOW POINTING VECTOR.
# 3. EXNORM IS THE EXIT USED AT OTHER TIMES DURING THE BURN.
# (EXOVFLOW IS A SUBROUTINE OF EXBRAK AND EXNORM CALLED WHEN OVERFLOW OCCURRED ANYWHERE IN GUIDANCE.)

EXGSUB  TC INTPRET  # COMPUTE TRIM VELOCITY CORRECTION TERM.
# Page 812
  VLOAD RTB
   UNFC/2
   NORMUNIT
  VXSC VXSC
   ZOOMTIME
   TRIMACCL
  STORE UNFC/2
  EXIT

  CCS NGUIDSUB
  TCF GUIDSUB
  CCS NIGNLOOP
  TCF +3
  TC ALARM
  OCT 01412

 +3  TC POSTJUMP
   CADR DDUMCALC

EXBRAK  TC INTPRET
  VLOAD
   UNIT/R/
  STORE UNWC/2
  EXIT
  TCF STEER?

EXNORM  TC INTPRET
  VLOAD VSU
   LAND
   R
  RTB
   NORMUNIT
  STORE UNWC/2  # UNIT(LAND - R) IS TENTATIVE CHOICE
  VXV DOT
   XNBPIP
   CG +6
  EXIT   # WITH PROJ IN MPAC 1/8 REAL SIZE

  CS MPAC  # GET COEFFICIENT FOR CG +14
  AD PROJMAX
  AD POSMAX
  TS BUF
  CS BUF
  ADS BUF  # RESULT IS 0 IF PROJMAX - PROJ NEGATIVE

  CS PROJMIN  # GET COEFFICIENT FOR UNIT(LAND - R)
  AD MPAC
  AD POSMAX
  TS BUF +1
  CS BUF +1
# Page 813
  ADS BUF +1  # RESULT IS 0 IF PROJ - PROJMIN NEGATIVE

  CAF FOUR
UNWCLOOP MASK SIX
  TS Q
  CA EBANK5
  TS EBANK
  EBANK= CG
  CA BUF
  EXTEND
  INDEX Q
  MP CG +14
  INCR BBANK
  EBANK= UNWC/2
  INDEX Q
  DXCH UNWC/2
  EXTEND
  MP BUF +1
  INDEX Q
  DAS UNWC/2
  CCS Q
  TCF UNWCLOOP

  INCR BBANK
  EBANK= PIF

STEER?  CA FLAGWRD2 # IF STEERSW DOWN NO OUTPUTS
  MASK STEERBIT
  EXTEND
  BZF RATESTOP

EXVERT  CA OVFIND  # IF OVERFLOW ANYWHERE IN GUIDANCE
  EXTEND   # DON'T CALL THROTTLE OR FINDCDUW
  BZF +13

EXOVFLOW TC ALARM  # SOUND THE ALARM NON-ABORTIVELY
  OCT 01410

RATESTOP CAF BIT13  # ARE WE IN ATTITUDE-HOLD?
  EXTEND
  RAND CHAN31
  EXTEND
  BZF DISPEXIT # YES

  TC BANKCALL # NO:  DO A STOPRATE
  CADR STOPRATE

  TCF DISPEXIT

GDUMP1  TC THROTTLE
# Page 814
  TC INTPRET
  CALL
   FINDCDUW -2
  EXIT

#  (CONTINUE TO DISPEXIT)

# ***********************************************************************
# GUIDANCE LOOP DISPLAYS
# ***********************************************************************

DISPEXIT EXTEND   # KILL GROUP 3:  DISPLAYS WILL BE
  DCA NEG0  # RESTORED BY NEXT GUIDANCE CYCLE.
  DXCH -PHASE3

 +3  CS FLAGWRD8 # IF FLUNDISP IS SET, NO DISPLAY THIS PASS
   MASK FLUNDBIT
  EXTEND
  BZF ENDLLJOB # TO PICK UP THE TAG

  INDEX WCHPHOLD
  TCF WHATDISP

-2  TC PHASCHNG # KILL GROUP 5
  OCT 00035

P63DISPS CAF V06N63
DISPCOMN TC BANKCALL
  CADR REGODSPR

ENDLLJOB TCF ENDOFJOB

P64DISPS CA TREDES  # HAS TREDES REACHED ZERO?
  EXTEND
  BZF RED-OVER # YES: CLEAR REDESIGNATION FLAG

  CS FLAGWRD6 # NO:  IS REDFLAG SET?
  MASK REDFLBIT
  EXTEND
  BZF REDES-OK # YES:  DO STATIC DISPLAY

  CAF V06N64  # OTHERWISE USE FLASHING DISPLAY
  TC BANKCALL
  CADR REFLASHR
  TCF GOTOPOOH # TERMINATE
  TCF P64CEED  # PROCEED PERMIT REDESIGNATIONS
  TCF P64DISPS # RECYCLE
# Page 815
  TCF ENDLLJOB

P64CEED  CAF ZERO
  TS ELINCR1
  TS AZINCR1

  TC UPFLAG  # ENABLE REDESIGNATION LOGIC
  ADRES REDFLAG

  TCF ENDOFJOB

RED-OVER TC DOWNFLAG
  ADRES REDFLAG
REDES-OK CAF V06N64
  TCF DISPCOMN


VERTDISP CAF V06N60
  TCF DISPCOMN


# **************************************************************************
# GUIDANCE FOR P65
# **************************************************************************

VERTGUID CCS WCHVERT
  TCF P67VERT  # POSITIVE NON-ZERO ---> P67
  TCF P66VERT  # +0
#
#  THE P65 GUIDANCE EQUATION IS AS FOLLOWS --
#       ____   ___
#       V2FG - VGU
# ACG = ----------
#         TAUVERT

P65VERT  TC INTPRET
  VLOAD VSU
   V2FG
   VGU
  V/SC GOTO
   TAUVERT
   AFCCALC1
# Page 816
# **********************************************************
# GUIDANCE FOR P66
# **********************************************************

P66VERT  TC POSTJUMP
  CADR P66VERTA

P67VERT  TC PHASCHNG # TERMINATE GROUP 3.
  OCT 00003

  TC INTPRET
  VLOAD GOTO
   V
   VHORCOMP

  SETLOC P66LOC
  BANK
  COUNT* $$/F2DPS

RODTASK  CAF PRIO22
  TC FINDVAC
  EBANK= DVCNTR
  2CADR RODCOMP

  TCF TASKOVER

P66VERTA TC PHASCHNG # TERMINATE GROUP 3.
  OCT 00003

  CAF 1SEC
  TC TWIDDLE
  ADRES RODTASK

RODCOMP  INHINT
  CAF ZERO
  XCH RODCOUNT
  EXTEND
  MP RODSCAL1
  DAS VDGVERT  # UPDATE DESIRED ALTITUDE RATE.

  EXTEND   # SET OLDPIPAX,Y,Z = PIPAX,Y,Z
  DCA PIPAX
  DXCH OLDPIPAX
  DXCH RUPTREG1 # SET RUPTREG1,2,3 = OLDPIPAX,Y,Z
  CA PIPAZ
  XCH OLDPIPAZ
  XCH RUPTREG3

  EXTEND   # SNAPSHOT TIME OF PIPA READING.
  DCA TIME2
# Page 817
  DXCH THISTPIP

  CA OLDPIPAX
  AD PIPATMPX
  TS MPAC  # MPAC(X) = PIPAX + PIPATMPX
  CA OLDPIPAY
  AD PIPATMPY
  TS MPAC +3  # MPAC(Y) = PIPAY + PIPATMPY
  CA OLDPIPAZ
  AD PIPATMPZ
  TS MPAC +5  # MPAC(Z) = PIPAZ + PIPATMPZ

  CS OLDPIPAX
  AD TEMX
  AD RUPTREG1
  TS DELVROD
  CS OLDPIPAY
  AD TEMY
  AD RUPTREG2
  TS DELVROD +2
  CS OLDPIPAZ
  AD TEMZ
  AD RUPTREG3
  TS DELVROD +4

  CAF ZERO
  TS MPAC +1  # ZERO LO-ORDER MPAC COMPONENTS
  TS MPAC +4
  TS MPAC +6
  TS TEMX  # ZERO TEMX, TEMY, AND TEMZ SO WE WILL
  TS TEMY  # KNOW WHEN READACCS CHANGES THEM.
  TS TEMZ
  CS ONE
  TS MODE
  TC INTPRET
ITRPNT1  VXSC PDDL  # SCALE MPAC TO M/CS *2(-7) AND PUSH  (6)
   KPIP1
   THISTPIP
  DSU
   PIPTIME
  STORE 30D  # 30-31D CONTAINS TIME IN CS SINCE PIPTIME
  DDV PDVL  # (8)
   4SEC(28)
   GDT/2
  VSU VXSC  # (6)
   VBIAS
  VSL2 VAD
   V
  VAD STADR  # (0)
  STOVL 24D  # STORE UPDATED VELOCITY IN 24-29D
# Page 818
   R
  UNIT
  STORE 14D
  DOT SL1
   24D
  STODL HDOTDISP # UPDATE HDOTDISP RATE FOR NOUN 63.
   30D
  SL DMP
   11D
   HDOTDISP
  DAD DSU
   36D
   /LAND/
  STODL HCALC1  # UPDATE HCALC1 FOR NOUN 63.
   HDOTDISP
  BDSU DDV
   VDGVERT
   TAUROD
  PDVL ABVAL  # (2)
   GDT/2
  DDV SR2
   GSCALE
  STORE 20D
  DAD   # (0)
  PDVL CALL  # (2)
   UNITX
   CDU*NBSM
  DOT
   14D
  STORE 22D
  BDDV STADR  # (0)
  STOVL /AFC/
   DELVROD
  VXSC VAD
   KPIP1
   VBIAS
  ABVAL PDDL  # (2)
   THISTPIP
  DSU PDDL  # (4)
   LASTTPIP
   THISTPIP
  STODL LASTTPIP # (2)
  DDV BDDV  # (0)
   SHFTFACT
  PDDL DMP  # (2)
   FWEIGHT
   BIT1H
  DDV DDV
   MASS
   SCALEFAC
# Page 819
  DAD PDDL  # (4)
   0D
   20D
  DDV DSU  # (2)
   22D
  DMP DAD
   LAG/TAU
   /AFC/
  PDDL DDV  # (4)
   MAXFORCE
   MASS
  PDDL DDV  # (6)
   MINFORCE
   MASS
  PUSH BDSU  # (8)
   2D
  BMN DLOAD  # (6)
   AFCSPOT
  DLOAD PUSH  # (6)
  BDSU BPL
   2D
   AFCSPOT
  DLOAD   # (4)
AFCSPOT  DLOAD   # (2), (4), OR (6)
  SETPD   # (2)
   2D
  STODL /AFC/  # (0)
ITRPNT2  EXIT
  DXCH MPAC  # MPAC = MEASURED ACCELERATION.
  TC BANKCALL
  CADR THROTTLE +3
  TC INTPRET
  VLOAD   # PICK UP UPDATED VELOCITY VECTOR.
   24D
VHORCOMP VSL2 VAD
   DELVS
  VSR2 PDVL
   R
  UNIT VXSC
   HDOTDISP
  VSL1 BVSU
  ABVAL
  STORE VHORIZ
  EXIT
  TC BANKCALL # PUT UP V06N60 DISPLAY BUT AVOID PHASCHNG
  CADR DISPEXIT +3

BIT1H  OCT 00001
SHFTFACT 2DEC 1 B-17
# Page 820
BIASFACT 2DEC 655.36 B-28

# *********************************************************************************
# REDESIGNATOR TRAP
# *********************************************************************************

  BANK 11
  SETLOC F2DPS*11
  BANK

  COUNT* $$/F2DPS

PITFALL  XCH BANKRUPT
  EXTEND
  QXCH QRUPT

  TC CHECKMM  # IF NOT IN P64, NO REASON TO CONTINUE
  DEC 64
  TCF RESUME

  EXTEND
  READ CHAN31
  COM
  MASK ALL4BITS
  TS ELVIRA
  CAF TWO
  TS ZERLINA
  CAF FIVE
  TC TWIDDLE
  ADRES REDESMON
  TCF RESUME

# REDESIGNATOR MONITOR (INITIATED BY PITFALL)

PREMON1  TS ZERLINA
PREMON2  CAF SEVEN
  TC VARDELAY
REDESMON EXTEND
  READ 31
  COM
  MASK ALL4BITS
  XCH ELVIRA
  TS L
  CCS ELVIRA  # DO ANY BITS APPEAR THIS PASS?
  TCF PREMON2  # Y: CONTINUE MONITOR

  CCS L  # N: ANY LAST PASS?
  TCF COUNT'EM # Y:  COUNT 'EM, RESET RUPT, TERMINATE
# Page 821
  CCS ZERLINA  # N:  HAS ZERLINA REACHED ZERO YET?
  TCF PREMON1  # N: DIMINISH ZERLINA, CONTINUE
RESETRPT CAF BIT12  # Y: RESET RUPT. TERMINATE
  EXTEND
  WOR CHAN13
  TCF TASKOVER

COUNT'EM CAF BIT13  # ARE WE IN ATTITUDE-HOLD?
  EXTEND
  RAND CHAN31
  EXTEND
  BZF RESETRPT # YES: SKIP REDESIGNATION LOGIC.

  CA L  # NO.
  MASK  -AZBIT
  CCS A
-AZ  CS AZEACH
  ADS AZINCR1
  CA L
  MASK +AZBIT
  CCS A
+AZ  CA AZEACH
  ADS AZINCR1
  CA L
  MASK -ELBIT
  CCS A
-EL  CS ELEACH
  ADS ELINCR1
  CA L
  MASK +ELBIT
  CCS A
+EL  CA ELEACH
  ADS ELINCR1
  TCF RESETRPT

# THESE EQUIVALENCES ARE BASED ON GSOP CHAPTER 4, REVISION 16 OF P64LM

+ELBIT  = BIT2  # -PITCH
-ELBIT  = BIT1  # +PITCH
+AZBIT  = BIT5
-AZBIT  = BIT6

# Page 822
ALL4BITS OCT 00063
AZEACH  DEC .03491  # 2 DEGREES
ELEACH  DEC .00873  # 1/2 DEGREE

# ****************************************************************
# R.O.D. TRAP
# ****************************************************************

  BANK 20
  SETLOC RODTRAP
  BANK
  COUNT* $$/F2DPS # ************************

DESCBITS MASK BIT7  # COME HERE FROM MARKRUPT CODING WITH BIT
  CCS A  # 7 OR 6 OF CHANNEL 16 IN A; BIT 7 MEANS
  CS TWO  # - RATE INCREMENT, BIT 6 + INCREMENT.
  AD ONE
  ADS RODCOUNT
  TCF RESUME  # TRAP IS RESET WHEN SWITCH IS RELEASED

  BANK 31
  SETLOC F2DPS*31
  BANK

  COUNT* $$/F2DPS

# ***********************************************************************************
# DOUBLE PRECISION ROOT FINDER SUBROUTINE (BY ALLAN KLUMPP)
# ***********************************************************************************
#
#                                                N        N-1
# ROOTPSRS FINDS ONE ROOT OF THE POWER SERIES A X  + A   X    + ... + A X + A
#                                              N      N-1              1     0
# USING NEWTON'S METHOD STARTING WITH AN INITIAL GUESS FOR THE ROOT.  THE ENTERING DATA MUST BE AS FOLLOWS:
# A SP LOC-3 ADRES FOR REFERENCING PWR COF TABL
# L SP N-1 N IS THE DEGREE OF THE POWER SERIES
# MPAC DP X INITIAL GUESS FOR ROOT
#
# LOC-2N DP A(0)
# ...
# LOC DP A(N)
# LOC+2 SP PRECROOT  PREC RQD OF ROOT (AS FRACT OF 1ST GUESS)
#
# Page 823
# THE DP RESULT IS LEFT IN MPAC UPON EXIT, AND A SP COUNT OF THE ITERATIONS TO CONVERGENCE IS LEFT IN MPAC+2.
# RETURN IS NORMALLY TO LOC(TC ROOTPSRS)+3.  IF ROOTPSRS FAILS TO CONVERGE TO IN 8 PASSES, RETURN IS TO LOC+1 AND
# OUTPUTS ARE NOT TO BE TRUSTED.
#
# PRECAUTION:  ROOTPSRS MAKES NO CHECKS FOR OVERFLOW OR FOR IMPROPER USAGE.  IMPROPER USAGE COULD
# PRECLUDE CONVERGENCE OR REQUIRE EXCESSIVE ITERATIONS.  AS A SPECIFIC EXAMPLE, ROOTPSRS FORMS A DERIVATIVE
# COEFFICIENT TABLE BY MULTIPLYING EACH A(I) BY I, WHERE I RANGES FROM 1 TO N.  IF AN ELEMENT OF THE DERIVATIVE
# COEFFICIENT TABLE = 1 OR >1 IN MAGNITUDE, ONLY THE EXCESS IS RETAINED.  ROOTPSRS MAY CONVERGE ON THE CORRECT
# ROOT NONETHELESS, BUT IT MAY TAKE AN EXCESSIVE NUMBER OF ITERATIONS.  THEREFORE THE USER SHOULD RECOGNIZE:
# 1.  USER'S RESPONSIBILITY TO ASSUR THAT I X A(I) < 1 IN MAGNITUDE FOR ALL I.
# 2.  USER'S RESPONSIBILITY TO ASSURE OVERFLOW WILL NOT OCCUR IN EVALUATING EITHER THE RESIDUAL OR THE DERIVATIVE
#     POWER SERIES.  THIS OVERFLOW WOULD BE PRODUCED BY SUBROUTINE POWRSERS, CALLED BY ROOTPSRS, AND MIGHT NOT
#     PRECLUDE EVENTUAL CONVERGENCE.
# 3.  AT PRESENT, ERASABLE LOCATIONS ARE RESERVED ONLY FOR N UP TO 5.  AN N IN EXCESS OF 5 WILL PRODUCE CHAOS.
#     ALL ERASABLES USED BY ROOTPSRS ARE UNSWITCHED LOCATED IN THE REGION FROM MPAC-33 OCT TO MPAC+7.
# 4.  THE ITERATION COUNT RETURNED IN MPAC+2 MAY BE USED TO DETECT ABNORMAL PERFORMANCE.

     # STORE ENTERING DATA, INITIALIZE ERASABLES
ROOTPSRS EXTEND
  QXCH RETROOT  # RETURN ADRES
  TS PWRPTR  # PWR TABLE POINTER
  DXCH MPAC +3  # PWR TABLE ADRES, N-1
  CA DERTABLL
  TS DERPTR  # DER TABL POINTER
  TS MPAC +5  # DER TABL ADRES
  CCS MPAC +4  # NO POWER SERIES DEGREE 1 OR LESS
  TS MPAC +6  # N-2
  CA ZERO  # MODE USED AS ITERATION COUNTER.  MODE
  TS MODE  # MUST BE POS SO ABS WON'T COMP MPAC+3 ETC.

     # COMPUTE CRITERION TO STOP ITERATING
  EXTEND
  DCA MPAC  # FETCH ROOT GUESS, KEEPING IT IN MPAC
  DXCH ROOTPS  # AND IN ROOTPS
  INDEX MPAC +3  # PWR TABLE ADRES
  CA 5  # PRECROOT TO A
  TC SHORTMP  # YIELDS DP PRODUCT IN MPAC
  TC USPRCADR
  CADR ABS  # YIELDS ABVAL OF CRITERION ON DX IN MPAC
  DXCH MPAC
  DXCH DXCRIT  # CRITERION

     # SET UP DER COF TABL
# Page 824
  EXTEND
  INDEX PWRPTR
  DCA 3
  DXCH MPAC  # A(N) TO MPAC

  CA MPAC +4  # N-1 TO A

DERCLOOP TS PWRCNT  # LOOP COUNTER
  AD ONE
  TC DMPNSUB  # YIELDS DERCOF = I X A(I) IN MPAC
  EXTEND
  INDEX PWRPTR
  DCA 1
  DXCH MPAC  # (I-1) TO MPAC, FETCHING DERCOF
  INDEX DERPTR
  DXCH 3  # DERCOF TO DER TABLE
  CS TWO
  ADS PWRPTR  # DECREMENT PWR POINTER
  CS TWO
  ADS DERPTR  # DECREMENT DER POINTER
  CCS PWRCNT
  TCF DERCLOOP

     # CONVERGE ON ROOT
ROOTLOOP EXTEND
  DCA ROOTPS  # FETCH CURRENT ROOT
  DXCH MPAC  # LEAVE IN MPAC
  EXTEND
  DCA MPAC +5  # LOAD A, L WITH DER TABL ADRES, N-2
  TC POWRSERS # YIELDS DERIVATIVE IN MPAC

  EXTEND
  DCA ROOTPS
  DXCH MPAC  # CURRENT ROOT TO MPAC, FETCHING DERIVATIVE
  DXCH BUF  # LEAVE DERIVATIVE IN BUF AS DIVISOR
  EXTEND
  DCA MPAC +3  # LOAD A, L WITH PWR TABL ADRES, N-1
  TC POWRSERS # YIELDS RESIDUAL IN MPAC

  TC USPRCADR
  CADR DDV/BDDV # YIELDS -DX IN MPAC

  EXTEND
  DCS MPAC  # FETCH DX, LEAVING -DX IN MPAC
  DAS ROOTPS  # CORRECTED ROOT NOW IN ROOTPS

  TC USPRCADR
  CADR ABS  # YIELDS ABS(DX) IN MPAC
  EXTEND
# Page 825
  DCS DXCRIT
  DAS MPAC  # ABS(DX)-ABS(DXCRIT) IN MPAC

  CA MODE
  MASK BIT4  # KLUMPP SAYS GIVE UP AFTER EIGHT PASSES
  CCS A
BADROOT  TC RETROOT

  INCR MODE  # INCREMENT ITERATION COUNTER
  CCS MPAC  # TEST HI ORDER DX
  TCF ROOTLOOP
  TCF TESTLODX
  TCF ROOTSTOR
TESTLODX CCS MPAC +1  # TEST LO ORDER DX
  TCF ROOTLOOP
  TCF ROOTSTOR
  TCF ROOTSTOR
ROOTSTOR DXCH ROOTPS
  DXCH MPAC
  CA MODE
  TS MPAC +2  # STORE SP ITERATION COUNT IN MPAC+2
  INDEX RETROOT
  TCF 2

DERTABLL ADRES DERCOFN -3

# ****************************************************************************
# TRASHY LITTLE SUBROUTINES
# ****************************************************************************

INTPRETX INDEX WCHPHASE # SET X1 ON THE WAY TO THE INTERPRETER
  CS TARGTDEX
  INDEX FIXLOC
  TS X1
  TCF INTPRET

TDISPSET CA TTF/8
  EXTEND
  MP TSCALINV
  DXCH TTFDISP

  CA EBANK5  # TREDES BECOMES ZERO TWO PASSES
  TS EBANK  # BEFORE TCGFAPPR IS REACHED
  EBANK= TCGFAPPR
  CA TCGFAPPR
  INCR BBANK
  INCR BBANK
  EBANK= TTF/8
# Page 826
  AD TTF/8
  EXTEND
  MP TREDESCL
  AD -DEC103
  AD NEGMAX
  TS L
  CS L
  AD L
  AD +DEC99
  AD POSMAX
  TS TREDES
  CS TREDES
  ADS TREDES
  TC Q

1406P00  TC POODOO
  OCT 01406
1406ALM  TC ALARM
  OCT 01406
  TCF RATESTOP

# *********************************************************************
# SPECIALIZED "PHASCHNG" SUBROUTINE
# *********************************************************************

  EBANK= PHSNAME2
FASTCHNG CA EBANK3  # SPECIALIZED 'PHASCHNG' ROUTINE
  XCH EBANK
  DXCH L
  TS PHSNAME3
  LXCH EBANK
  EBANK= E2DPS
  TC A

# *************************************************************************************
# PARAMETER TABLE INDIRECT ADDRESSES
# *************************************************************************************

RDG  = RBRFG
VDG  = VBRFG
ADG  = ABRFG
VDG2TTF  = VBRFG*
ADG2TTF  = ABRFG*
JDG2TTF  = JBRFG*

# *************************************************************************************
# LUNAR LANDING CONSTANTS
# *************************************************************************************

# Page 827
TABLTTFL ADRES TABLTTF +3 # ADDRESS FOR REFERENCING TTF TABLE
TTFSCALE = BIT12
TSCALINV = BIT4
-DEC103  DEC -103
+DEC99  DEC +99
TREDESCL DEC -.08
180DEGS  DEC +180
1/2DEG  DEC +.00278
PROJMAX  DEC .42262 B-3 # SIN(25')/8 TO COMPARE WITH PROJ
PROJMIN  DEC .25882 B-3 # SIN(15')/8 TO COMPARE WITH PROJ
V06N63  VN 0663  # P63
V06N64  VN 0664  # P64
V06N60  VN 0660  # P65, P66, P67

  BANK 22
  SETLOC LANDCNST
  BANK
  COUNT* $$/F2DPS

HIGHESTF 2DEC 4.34546769 B-12
GSCALE  2DEC 100 B-11
3/8DP  2DEC .375
3/4DP  2DEC .750
DEPRCRIT 2DEC -.02 B-1

# Page 828
# **************************************************************************
# **************************************************************************

Messung V0.5 in Prozent
C=65 H=100 G=84

¤ Dauer der Verarbeitung: 0.20 Sekunden  (vorverarbeitet am  2026-10-12) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.