Class AccumulatedMagneticFluxDensityMeasurementNoiseEstimator
java.lang.Object
com.irurueta.navigation.inertial.calibration.noise.AccumulatedMeasurementNoiseEstimator<com.irurueta.units.MagneticFluxDensityUnit,com.irurueta.units.MagneticFluxDensity,AccumulatedMagneticFluxDensityMeasurementNoiseEstimator,AccumulatedMagneticFluxDensityMeasurementNoiseEstimatorListener>
com.irurueta.navigation.inertial.calibration.noise.AccumulatedMagneticFluxDensityMeasurementNoiseEstimator
public class AccumulatedMagneticFluxDensityMeasurementNoiseEstimator
extends AccumulatedMeasurementNoiseEstimator<com.irurueta.units.MagneticFluxDensityUnit,com.irurueta.units.MagneticFluxDensity,AccumulatedMagneticFluxDensityMeasurementNoiseEstimator,AccumulatedMagneticFluxDensityMeasurementNoiseEstimatorListener>
Estimates accumulated magnetometer noise variances and PSD's (Power Spectral Densities)
along with their average values.
Norms of magnetic flux density triads can be used to estimate noise levels.
This estimator must be used when the body where the magnetometer is attached
remains static on the same position and orientation with zero velocity while
capturing data.
To compute PSD's, this estimator assumes that measurement samples are obtained
at a constant provided rate equal to
AccumulatedMeasurementNoiseEstimator.getTimeInterval()
seconds.
If not available, gyroscope sampling rate average can be estimated using
TimeIntervalEstimator
.
This estimator does NOT require the knowledge of current location and body
orientation.
This implementation of noise estimator will use the following units:
- Teslas (T) for magnetic flux density, average or standard deviation values.
- squared Teslas (T^2) for magnetic flux density variances.
- (T^2 * s) for magnetometer PSD (Power Spectral Density).
- (T * s^0.5) for magnetometer root PSD (Power Spectral Density).-
Field Summary
Fields inherited from class com.irurueta.navigation.inertial.calibration.noise.AccumulatedMeasurementNoiseEstimator
DEFAULT_TIME_INTERVAL_SECONDS
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor.AccumulatedMagneticFluxDensityMeasurementNoiseEstimator
(AccumulatedMagneticFluxDensityMeasurementNoiseEstimatorListener listener) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected double
convertToDefaultUnit
(com.irurueta.units.MagneticFluxDensity value) Converts provided measurement into default unit.protected com.irurueta.units.MagneticFluxDensity
createMeasurement
(double value, com.irurueta.units.MagneticFluxDensityUnit unit) Creates a measurement with provided value and unit.protected com.irurueta.units.MagneticFluxDensityUnit
Gets default unit for a measurement.Methods inherited from class com.irurueta.navigation.inertial.calibration.noise.AccumulatedMeasurementNoiseEstimator
addMeasurement, addMeasurement, getAvg, getAvgAsMeasurement, getAvgAsMeasurement, getLastMeasurement, getLastMeasurement, getListener, getNumberOfProcessedSamples, getPsd, getRootPsd, getStandardDeviation, getStandardDeviationAsMeasurement, getStandardDeviationAsMeasurement, getTimeInterval, getTimeIntervalAsTime, getTimeIntervalAsTime, getVariance, isRunning, reset, setListener, setTimeInterval, setTimeInterval
-
Constructor Details
-
AccumulatedMagneticFluxDensityMeasurementNoiseEstimator
public AccumulatedMagneticFluxDensityMeasurementNoiseEstimator()Constructor.
-
-
Method Details
-
getDefaultUnit
protected com.irurueta.units.MagneticFluxDensityUnit getDefaultUnit()Gets default unit for a measurement.- Specified by:
getDefaultUnit
in classAccumulatedMeasurementNoiseEstimator<com.irurueta.units.MagneticFluxDensityUnit,
com.irurueta.units.MagneticFluxDensity, AccumulatedMagneticFluxDensityMeasurementNoiseEstimator, AccumulatedMagneticFluxDensityMeasurementNoiseEstimatorListener> - Returns:
- default unit for a measurement.
-
createMeasurement
protected com.irurueta.units.MagneticFluxDensity createMeasurement(double value, com.irurueta.units.MagneticFluxDensityUnit unit) Creates a measurement with provided value and unit.- Specified by:
createMeasurement
in classAccumulatedMeasurementNoiseEstimator<com.irurueta.units.MagneticFluxDensityUnit,
com.irurueta.units.MagneticFluxDensity, AccumulatedMagneticFluxDensityMeasurementNoiseEstimator, AccumulatedMagneticFluxDensityMeasurementNoiseEstimatorListener> - Parameters:
value
- value to be set.unit
- unit to be set.- Returns:
- created measurement.
-
convertToDefaultUnit
protected double convertToDefaultUnit(com.irurueta.units.MagneticFluxDensity value) Converts provided measurement into default unit.- Specified by:
convertToDefaultUnit
in classAccumulatedMeasurementNoiseEstimator<com.irurueta.units.MagneticFluxDensityUnit,
com.irurueta.units.MagneticFluxDensity, AccumulatedMagneticFluxDensityMeasurementNoiseEstimator, AccumulatedMagneticFluxDensityMeasurementNoiseEstimatorListener> - Parameters:
value
- measurement to be converted.- Returns:
- converted value.
-