Class BracketedAccelerometerIntervalDetectorThresholdFactorOptimizerTest

java.lang.Object
com.irurueta.navigation.inertial.calibration.intervals.thresholdfactor.BracketedAccelerometerIntervalDetectorThresholdFactorOptimizerTest
All Implemented Interfaces:
IntervalDetectorThresholdFactorOptimizerListener<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource>

class BracketedAccelerometerIntervalDetectorThresholdFactorOptimizerTest extends Object implements IntervalDetectorThresholdFactorOptimizerListener<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource>
  • Field Details

  • Constructor Details

    • BracketedAccelerometerIntervalDetectorThresholdFactorOptimizerTest

      BracketedAccelerometerIntervalDetectorThresholdFactorOptimizerTest()
  • Method Details

    • testConstructor1

      @Test void testConstructor1()
    • testConstructor2

      @Test void testConstructor2()
    • testConstructor3

      @Test void testConstructor3()
    • testConstructor4

      @Test void testConstructor4()
    • testConstructor5

      @Test void testConstructor5()
    • testConstructor6

      @Test void testConstructor6()
    • testConstructor7

      @Test void testConstructor7()
    • testConstructor8

      @Test void testConstructor8()
    • testGetSetMseOptimizer

      @Test void testGetSetMseOptimizer() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testIsReady

      @Test void testIsReady() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetCalibrator

      @Test void testGetSetCalibrator() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetQualityScoreMapper

      @Test void testGetSetQualityScoreMapper() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetThresholdFactorRange

      @Test void testGetSetThresholdFactorRange() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetDataSource

      @Test void testGetSetDataSource() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetTimeInterval

      @Test void testGetSetTimeInterval() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetTimeIntervalAsTime

      @Test void testGetSetTimeIntervalAsTime() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetMinStaticSamples

      @Test void testGetSetMinStaticSamples() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetMaxDynamicSamples

      @Test void testGetSetMaxDynamicSamples() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • 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
    • 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
    • testGetSetProgressDelta

      @Test void testGetSetProgressDelta() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testOptimizeGeneralWithNoise

      @Test void testOptimizeGeneralWithNoise() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, IntervalDetectorThresholdFactorOptimizerException, CalibrationException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      IntervalDetectorThresholdFactorOptimizerException
      CalibrationException
    • testOptimizeCommonAxisSmallNoiseOnlyRotation

      @Test void testOptimizeCommonAxisSmallNoiseOnlyRotation() throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, IntervalDetectorThresholdFactorOptimizerException, CalibrationException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      IntervalDetectorThresholdFactorOptimizerException
      CalibrationException
    • testOptimizeCommonAxisSmallNoiseWithRotationAndPositionChange

      @Test void testOptimizeCommonAxisSmallNoiseWithRotationAndPositionChange() throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, IntervalDetectorThresholdFactorOptimizerException, CalibrationException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      IntervalDetectorThresholdFactorOptimizerException
      CalibrationException
    • testOptimizeRobustCalibrator

      @Test void testOptimizeRobustCalibrator() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, IntervalDetectorThresholdFactorOptimizerException, CalibrationException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      IntervalDetectorThresholdFactorOptimizerException
      CalibrationException
    • onOptimizeStart

      public void onOptimizeStart(IntervalDetectorThresholdFactorOptimizer<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource> optimizer)
      Specified by:
      onOptimizeStart in interface IntervalDetectorThresholdFactorOptimizerListener<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource>
    • onOptimizeEnd

      public void onOptimizeEnd(IntervalDetectorThresholdFactorOptimizer<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource> optimizer)
      Specified by:
      onOptimizeEnd in interface IntervalDetectorThresholdFactorOptimizerListener<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource>
    • onOptimizeProgressChange

      public void onOptimizeProgressChange(IntervalDetectorThresholdFactorOptimizer<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource> optimizer, float progress)
      Specified by:
      onOptimizeProgressChange in interface IntervalDetectorThresholdFactorOptimizerListener<com.irurueta.navigation.inertial.BodyKinematics,AccelerometerIntervalDetectorThresholdFactorOptimizerDataSource>
    • checkLocked

      private static void checkLocked(BracketedAccelerometerIntervalDetectorThresholdFactorOptimizer optimizer)
    • generateBodyKinematics

      private boolean generateBodyKinematics(com.irurueta.navigation.frames.NEDFrame nedFrame, com.irurueta.navigation.frames.ECEFFrame ecefFrame, boolean changePosition, com.irurueta.algebra.Matrix ma, double accelNoiseRootPSD, double gyroNoiseRootPSD, int numMeasurements) 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
    • generateFrame

      private static com.irurueta.navigation.frames.NEDFrame generateFrame() throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
    • generateBa

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

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

      private static com.irurueta.algebra.Matrix generateMaCommonAxis() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • 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()
    • generateStaticSamples

      private void generateStaticSamples(com.irurueta.navigation.inertial.calibration.generators.AccelerometerMeasurementsGenerator generator, int numSamples, com.irurueta.navigation.inertial.BodyKinematics trueKinematics, IMUErrors errors, Random random) throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • generateDynamicSamples

      private void generateDynamicSamples(com.irurueta.navigation.inertial.calibration.generators.AccelerometerMeasurementsGenerator generator, int numSamples, com.irurueta.navigation.inertial.BodyKinematics trueKinematics, com.irurueta.statistics.UniformRandomizer randomizer, com.irurueta.navigation.frames.ECEFFrame ecefFrame, com.irurueta.navigation.frames.NEDFrame nedFrame, IMUErrors errors, Random random, boolean changePosition) throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
    • reset

      private void reset()