Class AccelerationTriadStaticIntervalDetectorTest

java.lang.Object
com.irurueta.navigation.inertial.calibration.intervals.AccelerationTriadStaticIntervalDetectorTest
All Implemented Interfaces:
AccelerationTriadStaticIntervalDetectorListener, TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>

class AccelerationTriadStaticIntervalDetectorTest extends Object implements AccelerationTriadStaticIntervalDetectorListener
  • Field Details

    • TIME_INTERVAL_SECONDS

      private static final double TIME_INTERVAL_SECONDS
      See Also:
    • MICRO_G_TO_METERS_PER_SECOND_SQUARED

      private static final double MICRO_G_TO_METERS_PER_SECOND_SQUARED
      See Also:
    • DEG_TO_RAD

      private static final double DEG_TO_RAD
      See Also:
    • MIN_ANGLE_DEGREES

      private static final double MIN_ANGLE_DEGREES
      See Also:
    • MAX_ANGLE_DEGREES

      private static final double MAX_ANGLE_DEGREES
      See Also:
    • MIN_LATITUDE_DEGREES

      private static final double MIN_LATITUDE_DEGREES
      See Also:
    • MAX_LATITUDE_DEGREES

      private static final double MAX_LATITUDE_DEGREES
      See Also:
    • MIN_LONGITUDE_DEGREES

      private static final double MIN_LONGITUDE_DEGREES
      See Also:
    • MAX_LONGITUDE_DEGREES

      private static final double MAX_LONGITUDE_DEGREES
      See Also:
    • MIN_HEIGHT

      private static final double MIN_HEIGHT
      See Also:
    • MAX_HEIGHT

      private static final double MAX_HEIGHT
      See Also:
    • MIN_DELTA_POS_METERS

      private static final double MIN_DELTA_POS_METERS
      See Also:
    • MAX_DELTA_POS_METERS

      private static final double MAX_DELTA_POS_METERS
      See Also:
    • MIN_DELTA_ANGLE_DEGREES

      private static final double MIN_DELTA_ANGLE_DEGREES
      See Also:
    • MAX_DELTA_ANGLE_DEGREES

      private static final double MAX_DELTA_ANGLE_DEGREES
      See Also:
    • ABSOLUTE_ERROR

      private static final double ABSOLUTE_ERROR
      See Also:
    • SMALL_ABSOLUTE_ERROR

      private static final double SMALL_ABSOLUTE_ERROR
      See Also:
    • VERY_SMALL_ABSOLUTE_ERROR

      private static final double VERY_SMALL_ABSOLUTE_ERROR
      See Also:
    • initializationStarted

      private int initializationStarted
    • initializationCompleted

      private int initializationCompleted
    • error

      private int error
    • staticIntervalDetected

      private int staticIntervalDetected
    • dynamicIntervalDetected

      private int dynamicIntervalDetected
    • reset

      private int reset
    • errorAccumulatedNoiseLevel

      private double errorAccumulatedNoiseLevel
    • errorInstantaneousNoiseLevel

      private double errorInstantaneousNoiseLevel
    • errorReason

  • Constructor Details

    • AccelerationTriadStaticIntervalDetectorTest

      AccelerationTriadStaticIntervalDetectorTest()
  • Method Details

    • testConstructor1

      @Test void testConstructor1()
    • testConstructor2

      @Test void testConstructor2()
    • testGetSetWindowSize

      @Test void testGetSetWindowSize() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialStaticSamples

      @Test void testGetSetInitialStaticSamples() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetThresholdFactor

      @Test void testGetSetThresholdFactor() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInstantaneousNoiseLevelFactor

      @Test void testGetSetInstantaneousNoiseLevelFactor() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetBaseNoiseLevelAbsoluteThreshold

      @Test void testGetSetBaseNoiseLevelAbsoluteThreshold() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetBaseNoiseLevelAbsoluteThresholdAsMeasurement

      @Test void testGetSetBaseNoiseLevelAbsoluteThresholdAsMeasurement() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetListener

      @Test void testGetSetListener() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetTimeInterval1

      @Test void testGetSetTimeInterval1() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetTimeInterval2

      @Test void testGetSetTimeInterval2() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testProcessWithSuccessfulInitializationStaticAndDynamicPeriodAndReset1

      @Test void testProcessWithSuccessfulInitializationStaticAndDynamicPeriodAndReset1() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
    • testProcessWithSuccessfulInitializationStaticAndDynamicPeriodAndReset2

      @Test void testProcessWithSuccessfulInitializationStaticAndDynamicPeriodAndReset2() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
    • testProcessWithSuccessfulInitializationStaticAndDynamicPeriodAndReset3

      @Test void testProcessWithSuccessfulInitializationStaticAndDynamicPeriodAndReset3() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
    • testProcessWithExcessiveOverallNoiseDuringInitialization

      @Test void testProcessWithExcessiveOverallNoiseDuringInitialization() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
    • testProcessWithSuddenMotionDuringInitialization

      @Test void testProcessWithSuddenMotionDuringInitialization() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
    • onInitializationStarted

      public void onInitializationStarted(AccelerationTriadStaticIntervalDetector detector)
      Specified by:
      onInitializationStarted in interface TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>
    • onInitializationCompleted

      public void onInitializationCompleted(AccelerationTriadStaticIntervalDetector detector, double baseNoiseLevel)
      Specified by:
      onInitializationCompleted in interface TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>
    • onError

      public void onError(AccelerationTriadStaticIntervalDetector detector, double accumulatedNoiseLevel, double instantaneousNoiseLevel, TriadStaticIntervalDetector.ErrorReason reason)
      Specified by:
      onError in interface TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>
    • onStaticIntervalDetected

      public void onStaticIntervalDetected(AccelerationTriadStaticIntervalDetector detector, double instantaneousAvgX, double instantaneousAvgY, double instantaneousAvgZ, double instantaneousStdX, double instantaneousStdY, double instantaneousStdZ)
      Specified by:
      onStaticIntervalDetected in interface TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>
    • onDynamicIntervalDetected

      public void onDynamicIntervalDetected(AccelerationTriadStaticIntervalDetector detector, double instantaneousAvgX, double instantaneousAvgY, double instantaneousAvgZ, double instantaneousStdX, double instantaneousStdY, double instantaneousStdZ, double accumulatedAvgX, double accumulatedAvgY, double accumulatedAvgZ, double accumulatedStdX, double accumulatedStdY, double accumulatedStdZ)
      Specified by:
      onDynamicIntervalDetected in interface TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>
    • onReset

      public void onReset(AccelerationTriadStaticIntervalDetector detector)
      Specified by:
      onReset in interface TriadStaticIntervalDetectorListener<com.irurueta.units.AccelerationUnit,com.irurueta.units.Acceleration,AccelerationTriad,AccelerationTriadStaticIntervalDetector>
    • reset

      private void reset()
    • checkLocked

      private void checkLocked(AccelerationTriadStaticIntervalDetector detector)
    • generateBa

      private static com.irurueta.algebra.Matrix generateBa()
    • generateBg

      private static com.irurueta.algebra.Matrix generateBg()
    • generateMaGeneral

      private static com.irurueta.algebra.Matrix generateMaGeneral() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • generateMg

      private static com.irurueta.algebra.Matrix generateMg() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • generateGg

      private static com.irurueta.algebra.Matrix generateGg() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • getAccelNoiseRootPSD

      private static double getAccelNoiseRootPSD()
    • getGyroNoiseRootPSD

      private static double getGyroNoiseRootPSD()