Class RobustKnownMagneticFluxDensityNormMagnetometerCalibrator.PreliminaryResult
java.lang.Object
com.irurueta.navigation.inertial.calibration.magnetometer.RobustKnownMagneticFluxDensityNormMagnetometerCalibrator.PreliminaryResult
- Enclosing class:
RobustKnownMagneticFluxDensityNormMagnetometerCalibrator
protected static class RobustKnownMagneticFluxDensityNormMagnetometerCalibrator.PreliminaryResult
extends Object
Internal class containing estimated preliminary result.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate com.irurueta.algebra.MatrixCovariance matrix.private doubleEstimated chi square value.private intEstimated degrees of freedom of chi square value.private double[]Estimated magnetometer hard-iron biases for each magnetometer axis expressed in Teslas (T).private com.irurueta.algebra.MatrixEstimated magnetometer soft-iron matrix containing scale factors and cross coupling errors.private doubleEstimated Mean Squared Error (MSE).private doubleEstimated probability of finding a smaller chi square value expressed as a value between 0.0 and 1.0.private doubleEstimated measure of quality of estimated fit as a value between 0.0 and 1.0.private doubleEstimated reduced chi square value. -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
estimatedHardIron
private double[] estimatedHardIronEstimated magnetometer hard-iron biases for each magnetometer axis expressed in Teslas (T). -
estimatedMm
private com.irurueta.algebra.Matrix estimatedMmEstimated magnetometer soft-iron matrix containing scale factors and cross coupling errors. This is the product of matrix Tm containing cross coupling errors and Km containing scaling factors. So tat:Mm = [sx mxy mxz] = Tm*Km [myx sy myz] [mzx mzy sz ]Where:Km = [sx 0 0 ] [0 sy 0 ] [0 0 sz]andTm = [1 -alphaXy alphaXz ] [alphaYx 1 -alphaYz] [-alphaZx alphaZy 1 ]Hence:Mm = [sx mxy mxz] = Tm*Km = [sx -sy * alphaXy sz * alphaXz ] [myx sy myz] [sx * alphaYx sy -sz * alphaYz] [mzx mzy sz ] [-sx * alphaZx sy * alphaZy sz ]This instance allows any 3x3 matrix however, typically alphaYx, alphaZx and alphaZy are considered to be zero if the accelerometer z-axis is assumed to be the same as the body z-axis. When this is assumed, myx = mzx = mzy = 0 and the Mm matrix becomes upper diagonal:Mm = [sx mxy mxz] [0 sy myz] [0 0 sz ]Values of this matrix are unit-less. -
covariance
private com.irurueta.algebra.Matrix covarianceCovariance matrix. -
estimatedMse
private double estimatedMseEstimated Mean Squared Error (MSE). -
estimatedChiSq
private double estimatedChiSqEstimated chi square value. -
estimatedChiSqDegreesOfFreedom
private int estimatedChiSqDegreesOfFreedomEstimated degrees of freedom of chi square value. Degrees of freedom is equal to the number of sampled data minus the number of estimated parameters. -
estimatedReducedChiSq
private double estimatedReducedChiSqEstimated reduced chi square value. This is equal to estimated chi square value divided by its degrees of freedom. Ideally this value should be close to 1.0. -
estimatedP
private double estimatedPEstimated probability of finding a smaller chi square value expressed as a value between 0.0 and 1.0. The smaller the found chi square value is, the better the fit of the estimated parameters to the actual parameter. Thus, the smaller the chance of finding a smaller chi square value, then the better the estimated fit is. -
estimatedQ
private double estimatedQEstimated measure of quality of estimated fit as a value between 0.0 and 1.0. The larger the quality value is, the better the fit that has been estimated.
-
-
Constructor Details
-
PreliminaryResult
protected PreliminaryResult()
-