Class MSACRobustKnownFrameAccelerometerCalibratorTest

java.lang.Object
com.irurueta.navigation.inertial.calibration.accelerometer.MSACRobustKnownFrameAccelerometerCalibratorTest
All Implemented Interfaces:
RobustKnownFrameAccelerometerCalibratorListener

class MSACRobustKnownFrameAccelerometerCalibratorTest extends Object implements RobustKnownFrameAccelerometerCalibratorListener
  • 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:
    • MEASUREMENT_NUMBER

      private static final int MEASUREMENT_NUMBER
      See Also:
    • LARGE_MEASUREMENT_NUMBER

      private static final int LARGE_MEASUREMENT_NUMBER
      See Also:
    • OUTLIER_PERCENTAGE

      private static final int OUTLIER_PERCENTAGE
      See Also:
    • THRESHOLD

      private static final double THRESHOLD
      See Also:
    • LARGE_THRESHOLD

      private static final double LARGE_THRESHOLD
      See Also:
    • ABSOLUTE_ERROR

      private static final double ABSOLUTE_ERROR
      See Also:
    • LARGE_ABSOLUTE_ERROR

      private static final double LARGE_ABSOLUTE_ERROR
      See Also:
    • OUTLIER_ERROR_FACTOR

      private static final double OUTLIER_ERROR_FACTOR
      See Also:
    • TIMES

      private static final int TIMES
      See Also:
    • calibrateStart

      private int calibrateStart
    • calibrateEnd

      private int calibrateEnd
    • calibrateNextIteration

      private int calibrateNextIteration
    • calibrateProgressChange

      private int calibrateProgressChange
  • Constructor Details

    • MSACRobustKnownFrameAccelerometerCalibratorTest

      MSACRobustKnownFrameAccelerometerCalibratorTest()
  • Method Details

    • testConstructor

      @Test void testConstructor() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testGetSetThreshold

      @Test void testGetSetThreshold() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasX

      @Test void testGetSetInitialBiasX() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasY

      @Test void testGetSetInitialBiasY() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasZ

      @Test void testGetSetInitialBiasZ() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasXAsAcceleration

      @Test void testGetSetInitialBiasXAsAcceleration() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasYAsAcceleration

      @Test void testGetSetInitialBiasYAsAcceleration() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasZAsAcceleration

      @Test void testGetSetInitialBiasZAsAcceleration() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testSetInitialBias1

      @Test void testSetInitialBias1() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testSetInitialBias2

      @Test void testSetInitialBias2() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasAsTriad

      @Test void testGetSetInitialBiasAsTriad()
    • testGetSetInitialSx

      @Test void testGetSetInitialSx() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialSy

      @Test void testGetSetInitialSy() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialSz

      @Test void testGetSetInitialSz() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialMxy

      @Test void testGetSetInitialMxy() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialMxz

      @Test void testGetSetInitialMxz() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialMyx

      @Test void testGetSetInitialMyx() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialMyz

      @Test void testGetSetInitialMyz() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialMzx

      @Test void testGetSetInitialMzx() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialMzy

      @Test void testGetSetInitialMzy() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialScalingFactors

      @Test void testGetSetInitialScalingFactors() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialCrossCouplingErrors

      @Test void testGetSetInitialCrossCouplingErrors() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testSetInitialScalingFactorsAndCrossCouplingErrors

      @Test void testSetInitialScalingFactorsAndCrossCouplingErrors() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetInitialBias

      @Test void testGetSetInitialBias() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetInitialBiasAsMatrix

      @Test void testGetSetInitialBiasAsMatrix() throws com.irurueta.navigation.LockedException, com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.navigation.LockedException
      com.irurueta.algebra.WrongSizeException
    • testGetSetInitialMa

      @Test void testGetSetInitialMa() throws com.irurueta.algebra.WrongSizeException, com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.algebra.WrongSizeException
      com.irurueta.navigation.LockedException
    • testGetSetMeasurements

      @Test void testGetSetMeasurements() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testIsSetCommonAxisUsed

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

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

      @Test void testIsSetLinearCalibratorUsed() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testIsSetPreliminarySolutionRefined

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

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

      @Test void testGetSetConfidence() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetMaxIterations

      @Test void testGetSetMaxIterations() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testIsSetResultRefined

      @Test void testIsSetResultRefined() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testIsSetCovarianceKept

      @Test void testIsSetCovarianceKept() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetQualityScores

      @Test void testGetSetQualityScores() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetPreliminarySubsetSize

      @Test void testGetSetPreliminarySubsetSize() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testCalibrateGeneralNoNoiseInlier

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

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

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

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

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

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

      public void onCalibrateStart(RobustKnownFrameAccelerometerCalibrator calibrator)
      Specified by:
      onCalibrateStart in interface RobustKnownFrameAccelerometerCalibratorListener
    • onCalibrateEnd

      public void onCalibrateEnd(RobustKnownFrameAccelerometerCalibrator calibrator)
      Specified by:
      onCalibrateEnd in interface RobustKnownFrameAccelerometerCalibratorListener
    • onCalibrateNextIteration

      public void onCalibrateNextIteration(RobustKnownFrameAccelerometerCalibrator calibrator, int iteration)
      Specified by:
      onCalibrateNextIteration in interface RobustKnownFrameAccelerometerCalibratorListener
    • onCalibrateProgressChange

      public void onCalibrateProgressChange(RobustKnownFrameAccelerometerCalibrator calibrator, float progress)
      Specified by:
      onCalibrateProgressChange in interface RobustKnownFrameAccelerometerCalibratorListener
    • reset

      private void reset()
    • checkLocked

      private void checkLocked(MSACRobustKnownFrameAccelerometerCalibrator calibrator)
    • assertEstimatedResult

      private static void assertEstimatedResult(com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, MSACRobustKnownFrameAccelerometerCalibrator calibrator, boolean checkCovariance) throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • assertCovariance

      private static void assertCovariance(MSACRobustKnownFrameAccelerometerCalibrator calibrator)
    • checkCommonAxisCovariance

      private static void checkCommonAxisCovariance(com.irurueta.algebra.Matrix covariance)
    • checkGeneralCovariance

      private static void checkGeneralCovariance(com.irurueta.algebra.Matrix covariance)
    • 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
    • generateMaCommonAxis

      private static com.irurueta.algebra.Matrix generateMaCommonAxis() 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()