Class AngularSpeedTriadStaticIntervalDetector
java.lang.Object
com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed,AngularSpeedTriad,AngularSpeedTriadStaticIntervalDetector,AngularSpeedTriadStaticIntervalDetectorListener>
com.irurueta.navigation.inertial.calibration.intervals.AngularSpeedTriadStaticIntervalDetector
- All Implemented Interfaces:
GyroscopeNoiseRootPsdSource
public class AngularSpeedTriadStaticIntervalDetector
extends TriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed,AngularSpeedTriad,AngularSpeedTriadStaticIntervalDetector,AngularSpeedTriadStaticIntervalDetectorListener>
implements GyroscopeNoiseRootPsdSource
This detector is in charge of determining when a static period of
angular speed measurements starts and finishes.
Static periods are periods of time where the device is considered
to remain static (no movement applied to it).
-
Nested Class Summary
Nested classes/interfaces inherited from class com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector
TriadStaticIntervalDetector.ErrorReason, TriadStaticIntervalDetector.Status
-
Field Summary
Fields inherited from class com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector
DEFAULT_BASE_NOISE_LEVEL_ABSOLUTE_THRESHOLD, DEFAULT_INITIAL_STATIC_SAMPLES, DEFAULT_INSTANTANEOUS_NOISE_LEVEL_FACTOR, DEFAULT_THRESHOLD_FACTOR, DEFAULT_WINDOW_SIZE, MINIMUM_INITIAL_STATIC_SAMPLES
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor.Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected double
convertMeasurement
(double value, com.irurueta.units.AngularSpeedUnit unit) Converts provided angular speed value expressed in provided unit to radians per second (rad/s).protected com.irurueta.units.AngularSpeed
createMeasurement
(double value, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed instance using provided value and unit.protected AngularSpeedTriad
createTriad
(double valueX, double valueY, double valueZ, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed triad.protected com.irurueta.units.AngularSpeedUnit
Gets default unit for angular speed, which is radians per second (rad/s).double
Gets gyroscope base noise level root PSD (Power Spectral Density) expressed in (rad * s^-0.5)Methods inherited from class com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector
convertMeasurement, getAccumulatedAvgTriad, getAccumulatedAvgTriad, getAccumulatedAvgX, getAccumulatedAvgXAsMeasurement, getAccumulatedAvgXAsMeasurement, getAccumulatedAvgY, getAccumulatedAvgYAsMeasurement, getAccumulatedAvgYAsMeasurement, getAccumulatedAvgZ, getAccumulatedAvgZAsMeasurement, getAccumulatedAvgZAsMeasurement, getAccumulatedStdTriad, getAccumulatedStdTriad, getAccumulatedStdX, getAccumulatedStdXAsMeasurement, getAccumulatedStdXAsMeasurement, getAccumulatedStdY, getAccumulatedStdYAsMeasurement, getAccumulatedStdYAsMeasurement, getAccumulatedStdZ, getAccumulatedStdZAsMeasurement, getAccumulatedStdZAsMeasurement, getBaseNoiseLevel, getBaseNoiseLevelAbsoluteThreshold, getBaseNoiseLevelAbsoluteThresholdAsMeasurement, getBaseNoiseLevelAbsoluteThresholdAsMeasurement, getBaseNoiseLevelAsMeasurement, getBaseNoiseLevelAsMeasurement, getBaseNoiseLevelPsd, getBaseNoiseLevelRootPsd, getInitialStaticSamples, getInstantaneousAvgTriad, getInstantaneousAvgTriad, getInstantaneousAvgX, getInstantaneousAvgXAsMeasurement, getInstantaneousAvgXAsMeasurement, getInstantaneousAvgY, getInstantaneousAvgYAsMeasurement, getInstantaneousAvgYAsMeasurement, getInstantaneousAvgZ, getInstantaneousAvgZAsMeasurement, getInstantaneousAvgZAsMeasurement, getInstantaneousNoiseLevelFactor, getInstantaneousStdTriad, getInstantaneousStdTriad, getInstantaneousStdX, getInstantaneousStdXAsMeasurement, getInstantaneousStdXAsMeasurement, getInstantaneousStdY, getInstantaneousStdYAsMeasurement, getInstantaneousStdYAsMeasurement, getInstantaneousStdZ, getInstantaneousStdZAsMeasurement, getInstantaneousStdZAsMeasurement, getListener, getProcessedSamples, getStatus, getThreshold, getThresholdAsMeasurement, getThresholdAsMeasurement, getThresholdFactor, getTimeInterval, getTimeIntervalAsTime, getTimeIntervalAsTime, getWindowSize, isRunning, process, process, process, reset, setBaseNoiseLevelAbsoluteThreshold, setBaseNoiseLevelAbsoluteThreshold, setInitialStaticSamples, setInstantaneousNoiseLevelFactor, setListener, setThresholdFactor, setTimeInterval, setTimeInterval, setWindowSize
-
Constructor Details
-
AngularSpeedTriadStaticIntervalDetector
public AngularSpeedTriadStaticIntervalDetector()Constructor.
-
-
Method Details
-
convertMeasurement
protected double convertMeasurement(double value, com.irurueta.units.AngularSpeedUnit unit) Converts provided angular speed value expressed in provided unit to radians per second (rad/s).- Specified by:
convertMeasurement
in classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,
com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Parameters:
value
- value to be converted.unit
- unit of value to be converted.- Returns:
- converted value.
-
createMeasurement
protected com.irurueta.units.AngularSpeed createMeasurement(double value, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed instance using provided value and unit.- Specified by:
createMeasurement
in classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,
com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Parameters:
value
- value of measurement.unit
- unit of value.- Returns:
- created angular speed.
-
getDefaultUnit
protected com.irurueta.units.AngularSpeedUnit getDefaultUnit()Gets default unit for angular speed, which is radians per second (rad/s).- Specified by:
getDefaultUnit
in classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,
com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Returns:
- default unit for angular speed
-
createTriad
protected AngularSpeedTriad createTriad(double valueX, double valueY, double valueZ, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed triad.- Specified by:
createTriad
in classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,
com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Parameters:
valueX
- x-coordinate value.valueY
- y-coordinate value.valueZ
- z-coordinate value.unit
- unit of values.- Returns:
- created triad.
-
getGyroscopeBaseNoiseLevelRootPsd
public double getGyroscopeBaseNoiseLevelRootPsd()Gets gyroscope base noise level root PSD (Power Spectral Density) expressed in (rad * s^-0.5)- Specified by:
getGyroscopeBaseNoiseLevelRootPsd
in interfaceGyroscopeNoiseRootPsdSource
- Returns:
- gyroscope base noise level root PSD.
-