Class KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorTest

java.lang.Object
com.irurueta.navigation.inertial.calibration.magnetometer.KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorTest
All Implemented Interfaces:
KnownHardIronAndFrameMagnetometerCalibratorListener<KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibrator>, KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorListener

class KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorTest extends Object implements KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorListener
  • Field Details

    • MIN_HARD_IRON

      private static final double MIN_HARD_IRON
      See Also:
    • MAX_HARD_IRON

      private static final double MAX_HARD_IRON
      See Also:
    • MIN_SOFT_IRON

      private static final double MIN_SOFT_IRON
      See Also:
    • MAX_SOFT_IRON

      private static final double MAX_SOFT_IRON
      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_METERS

      private static final double MIN_HEIGHT_METERS
      See Also:
    • MAX_HEIGHT_METERS

      private static final double MAX_HEIGHT_METERS
      See Also:
    • SMALL_MEASUREMENT_NUMBER

      private static final int SMALL_MEASUREMENT_NUMBER
      See Also:
    • LARGE_MEASUREMENT_NUMBER

      private static final int LARGE_MEASUREMENT_NUMBER
      See Also:
    • MAGNETOMETER_NOISE_STD

      private static final double MAGNETOMETER_NOISE_STD
      See Also:
    • ABSOLUTE_ERROR

      private static final double ABSOLUTE_ERROR
      See Also:
    • VERY_LARGE_ABSOLUTE_ERROR

      private static final double VERY_LARGE_ABSOLUTE_ERROR
      See Also:
    • TIMES

      private static final int TIMES
      See Also:
    • START_CALENDAR

      private static final Calendar START_CALENDAR
    • END_CALENDAR

      private static final Calendar END_CALENDAR
    • START_TIMESTAMP_MILLIS

      private static final long START_TIMESTAMP_MILLIS
    • END_TIMESTAMP_MILLIS

      private static final long END_TIMESTAMP_MILLIS
    • calibrateStart

      private int calibrateStart
    • calibrateEnd

      private int calibrateEnd
  • Constructor Details

    • KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorTest

      KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibratorTest()
  • Method Details

    • testConstructor1

      @Test void testConstructor1() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor2

      @Test void testConstructor2() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor3

      @Test void testConstructor3() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor4

      @Test void testConstructor4() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor5

      @Test void testConstructor5() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor6

      @Test void testConstructor6() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor7

      @Test void testConstructor7() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor8

      @Test void testConstructor8() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor9

      @Test void testConstructor9() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor10

      @Test void testConstructor10() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor11

      @Test void testConstructor11() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor12

      @Test void testConstructor12() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor13

      @Test void testConstructor13() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor14

      @Test void testConstructor14() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor15

      @Test void testConstructor15() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor16

      @Test void testConstructor16() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor17

      @Test void testConstructor17() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor18

      @Test void testConstructor18() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor19

      @Test void testConstructor19() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor20

      @Test void testConstructor20() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor21

      @Test void testConstructor21() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor22

      @Test void testConstructor22() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor23

      @Test void testConstructor23() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor24

      @Test void testConstructor24() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor25

      @Test void testConstructor25() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor26

      @Test void testConstructor26() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor27

      @Test void testConstructor27() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor28

      @Test void testConstructor28() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor29

      @Test void testConstructor29() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor30

      @Test void testConstructor30() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor31

      @Test void testConstructor31() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor32

      @Test void testConstructor32() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor33

      @Test void testConstructor33() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor34

      @Test void testConstructor34() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor35

      @Test void testConstructor35() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor36

      @Test void testConstructor36() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor37

      @Test void testConstructor37() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor38

      @Test void testConstructor38() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor39

      @Test void testConstructor39() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor40

      @Test void testConstructor40() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor41

      @Test void testConstructor41() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor42

      @Test void testConstructor42() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor43

      @Test void testConstructor43() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor44

      @Test void testConstructor44() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor45

      @Test void testConstructor45() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor46

      @Test void testConstructor46() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor47

      @Test void testConstructor47() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor48

      @Test void testConstructor48() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor49

      @Test void testConstructor49() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor50

      @Test void testConstructor50() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor51

      @Test void testConstructor51() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor52

      @Test void testConstructor52() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor53

      @Test void testConstructor53() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor54

      @Test void testConstructor54() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor55

      @Test void testConstructor55() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor56

      @Test void testConstructor56() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor57

      @Test void testConstructor57() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor58

      @Test void testConstructor58() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor59

      @Test void testConstructor59() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor60

      @Test void testConstructor60() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor61

      @Test void testConstructor61() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor62

      @Test void testConstructor62() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor63

      @Test void testConstructor63() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testConstructor64

      @Test void testConstructor64() throws com.irurueta.algebra.WrongSizeException
      Throws:
      com.irurueta.algebra.WrongSizeException
    • testGetSetHardIronX

      @Test void testGetSetHardIronX() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronY

      @Test void testGetSetHardIronY() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronZ

      @Test void testGetSetHardIronZ() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronXAsMagneticFluxDensity

      @Test void testGetSetHardIronXAsMagneticFluxDensity() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronYAsMagneticFluxDensity

      @Test void testGetSetHardIronYAsMagneticFluxDensity() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronZAsMagneticFluxDensity

      @Test void testGetSetHardIronZAsMagneticFluxDensity() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testSetHardIronCoordinates1

      @Test void testSetHardIronCoordinates1() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testSetHardIronCoordinates2

      @Test void testSetHardIronCoordinates2() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronAsTriad

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

      @Test void testGetSetMagneticModel() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIron

      @Test void testGetSetHardIron() throws com.irurueta.navigation.LockedException
      Throws:
      com.irurueta.navigation.LockedException
    • testGetSetHardIronMatrix

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

      @Test void testCalibrateMultipleOrientationsForGeneralCaseWithMinimumMeasuresNoNoiseAndNoMagneticModel() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForGeneralCaseWithMinimumMeasuresNoNoiseAndMagneticModel

      @Test void testCalibrateMultipleOrientationsForGeneralCaseWithMinimumMeasuresNoNoiseAndMagneticModel() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForGeneralCaseWithNoiseLargeNumberOfMeasurements

      @Test void testCalibrateMultipleOrientationsForGeneralCaseWithNoiseLargeNumberOfMeasurements() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForGeneralCaseWithNoiseSmallNumberOfMeasurements

      @Test void testCalibrateMultipleOrientationsForGeneralCaseWithNoiseSmallNumberOfMeasurements() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultiplePositionsForGeneralCaseWithMinimumMeasuresAndNoNoise

      @Test void testCalibrateMultiplePositionsForGeneralCaseWithMinimumMeasuresAndNoNoise() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForCommonAxisCaseWithMinimumMeasuresNoNoiseAndNoMagneticModel

      @Test void testCalibrateMultipleOrientationsForCommonAxisCaseWithMinimumMeasuresNoNoiseAndNoMagneticModel() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForCommonAxisCaseWithMinimumMeasuresNoNoiseAndMagneticModel

      @Test void testCalibrateMultipleOrientationsForCommonAxisCaseWithMinimumMeasuresNoNoiseAndMagneticModel() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForCommonAxisCaseWithNoiseLargeNumberOfMeasurements

      @Test void testCalibrateMultipleOrientationsForCommonAxisCaseWithNoiseLargeNumberOfMeasurements() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultipleOrientationsForCommonAxisCaseWithNoiseSmallNumberOfMeasurements

      @Test void testCalibrateMultipleOrientationsForCommonAxisCaseWithNoiseSmallNumberOfMeasurements() throws IOException, com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException, com.irurueta.navigation.LockedException, com.irurueta.navigation.NotReadyException, CalibrationException
      Throws:
      IOException
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      com.irurueta.navigation.LockedException
      com.irurueta.navigation.NotReadyException
      CalibrationException
    • testCalibrateMultiplePositionsForCommonAxisCaseWithMinimumMeasuresAndNoNoise

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

      public void onCalibrateStart(KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibrator calibrator)
      Specified by:
      onCalibrateStart in interface KnownHardIronAndFrameMagnetometerCalibratorListener<KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibrator>
    • onCalibrateEnd

      public void onCalibrateEnd(KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibrator calibrator)
      Specified by:
      onCalibrateEnd in interface KnownHardIronAndFrameMagnetometerCalibratorListener<KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibrator>
    • reset

      private void reset()
    • checkLocked

    • assertEstimatedResult

      private static void assertEstimatedResult(com.irurueta.algebra.Matrix mm, KnownHardIronAndFrameMagnetometerLinearLeastSquaresCalibrator calibrator)
    • generateMeasurementsMultipleOrientationsWithSamePosition

      private static List<FrameBodyMagneticFluxDensity> generateMeasurementsMultipleOrientationsWithSamePosition(double[] hardIron, com.irurueta.algebra.Matrix softIron, int numberOfMeasurements, WMMEarthMagneticFluxDensityEstimator wmmEstimator, com.irurueta.statistics.UniformRandomizer randomizer, com.irurueta.statistics.GaussianRandomizer noiseRandomizer) throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
    • generateMeasurementsMultiplePositionsWithSameOrientation

      private static List<FrameBodyMagneticFluxDensity> generateMeasurementsMultiplePositionsWithSameOrientation(double[] hardIron, com.irurueta.algebra.Matrix softIron, WMMEarthMagneticFluxDensityEstimator wmmEstimator, com.irurueta.statistics.UniformRandomizer randomizer) throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
    • generateMeasureAtOrientation

      private static FrameBodyMagneticFluxDensity generateMeasureAtOrientation(double[] hardIron, com.irurueta.algebra.Matrix softIron, WMMEarthMagneticFluxDensityEstimator wmmEstimator, com.irurueta.statistics.UniformRandomizer randomizer, com.irurueta.navigation.frames.CoordinateTransformation cnb) throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
    • generateMeasureAtPosition

      private static FrameBodyMagneticFluxDensity generateMeasureAtPosition(double[] hardIron, com.irurueta.algebra.Matrix softIron, WMMEarthMagneticFluxDensityEstimator wmmEstimator, com.irurueta.statistics.UniformRandomizer randomizer, com.irurueta.statistics.GaussianRandomizer noiseRandomizer, com.irurueta.navigation.frames.NEDPosition position) throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
    • generateMeasure

      private static FrameBodyMagneticFluxDensity generateMeasure(double[] hardIron, com.irurueta.algebra.Matrix softIron, WMMEarthMagneticFluxDensityEstimator wmmEstimator, com.irurueta.statistics.UniformRandomizer randomizer, com.irurueta.statistics.GaussianRandomizer noiseRandomizer, com.irurueta.navigation.frames.NEDPosition position, com.irurueta.navigation.frames.CoordinateTransformation cnb) throws com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
      Throws:
      com.irurueta.navigation.frames.InvalidSourceAndDestinationFrameTypeException
    • generateBodyC

      private static com.irurueta.navigation.frames.CoordinateTransformation generateBodyC(com.irurueta.statistics.UniformRandomizer randomizer)
    • generateMeasuredMagneticFluxDensity

      private static BodyMagneticFluxDensity generateMeasuredMagneticFluxDensity(BodyMagneticFluxDensity input, double[] hardIron, com.irurueta.algebra.Matrix softIron)
    • generateHardIron

      private static double[] generateHardIron(com.irurueta.statistics.UniformRandomizer randomizer)
    • generateSoftIronGeneral

      private static com.irurueta.algebra.Matrix generateSoftIronGeneral()
    • generateSoftIronCommonAxis

      private static com.irurueta.algebra.Matrix generateSoftIronCommonAxis()
    • createPosition

      private static com.irurueta.navigation.frames.NEDPosition createPosition(com.irurueta.statistics.UniformRandomizer randomizer)
    • createTimestamp

      private static long createTimestamp(com.irurueta.statistics.UniformRandomizer randomizer)