Class PV
- java.lang.Object
-
- org.orekit.estimation.measurements.AbstractMeasurement<PV>
-
- org.orekit.estimation.measurements.PV
-
- All Implemented Interfaces:
Comparable<ComparableMeasurement>
,ComparableMeasurement
,ObservedMeasurement<PV>
,TimeStamped
,ParameterDriversProvider
public class PV extends AbstractMeasurement<PV>
Class modeling a position-velocity measurement.For position-only measurement see
Position
.- Since:
- 8.0
- Author:
- Luc Maisonobe
- See Also:
Position
-
-
Field Summary
Fields Modifier and Type Field Description static String
MEASUREMENT_TYPE
Type of the measurement.
-
Constructor Summary
Constructors Constructor Description PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[][] positionCovarianceMatrix, double[][] velocityCovarianceMatrix, double baseWeight, ObservableSatellite satellite)
Constructor with 2 smaller covariance matrices.PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[][] covarianceMatrix, double baseWeight, ObservableSatellite satellite)
Constructor with full covariance matrix and all inputs.PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[] sigmaPosition, double[] sigmaVelocity, double baseWeight, ObservableSatellite satellite)
Constructor with two vectors for the standard deviations.PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[] sigmaPV, double baseWeight, ObservableSatellite satellite)
Constructor with one vector for the standard deviations.PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double sigmaPosition, double sigmaVelocity, double baseWeight, ObservableSatellite satellite)
Constructor with two double for the standard deviations.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double[][]
getCorrelationCoefficientsMatrix()
Get the correlation coefficients matrix.double[][]
getCovarianceMatrix()
Get the covariance matrix.Vector3D
getPosition()
Get the position.Vector3D
getVelocity()
Get the velocity.protected EstimatedMeasurement<PV>
theoreticalEvaluation(int iteration, int evaluation, SpacecraftState[] states)
Estimate the theoretical value.protected EstimatedMeasurementBase<PV>
theoreticalEvaluationWithoutDerivatives(int iteration, int evaluation, SpacecraftState[] states)
Estimate the theoretical value without derivatives.-
Methods inherited from class org.orekit.estimation.measurements.AbstractMeasurement
addModifier, addParameterDriver, estimate, estimateWithoutDerivatives, getBaseWeight, getCoordinates, getDate, getDimension, getModifiers, getObservedValue, getParametersDrivers, getSatellites, getTheoreticalStandardDeviation, isEnabled, setEnabled, setObservedValue, signalTimeOfFlightAdjustableEmitter, signalTimeOfFlightAdjustableEmitter, signalTimeOfFlightAdjustableEmitter, signalTimeOfFlightAdjustableEmitter, signalTimeOfFlightAdjustableReceiver, signalTimeOfFlightAdjustableReceiver, signalTimeOfFlightAdjustableReceiver, signalTimeOfFlightAdjustableReceiver
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.estimation.measurements.ComparableMeasurement
compareTo
-
Methods inherited from interface org.orekit.estimation.measurements.ObservedMeasurement
estimateWithoutDerivatives, getMeasurementType
-
Methods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
Methods inherited from interface org.orekit.time.TimeStamped
durationFrom
-
-
-
-
Field Detail
-
MEASUREMENT_TYPE
public static final String MEASUREMENT_TYPE
Type of the measurement.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PV
public PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double sigmaPosition, double sigmaVelocity, double baseWeight, ObservableSatellite satellite)
Constructor with two double for the standard deviations.The first double is the position's standard deviation, common to the 3 position's components. The second double is the position's standard deviation, common to the 3 position's components.
The measurement must be in the orbit propagation frame.
- Parameters:
date
- date of the measurementposition
- positionvelocity
- velocitysigmaPosition
- theoretical standard deviation on position componentssigmaVelocity
- theoretical standard deviation on velocity componentsbaseWeight
- base weightsatellite
- satellite related to this measurement- Since:
- 9.3
-
PV
public PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[] sigmaPosition, double[] sigmaVelocity, double baseWeight, ObservableSatellite satellite)
Constructor with two vectors for the standard deviations.One 3-sized vectors for position standard deviations. One 3-sized vectors for velocity standard deviations. The 3-sized vectors are the square root of the diagonal elements of the covariance matrix.
The measurement must be in the orbit propagation frame.
- Parameters:
date
- date of the measurementposition
- positionvelocity
- velocitysigmaPosition
- 3-sized vector of the standard deviations of the positionsigmaVelocity
- 3-sized vector of the standard deviations of the velocitybaseWeight
- base weightsatellite
- satellite related to this measurement- Since:
- 9.3
-
PV
public PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[] sigmaPV, double baseWeight, ObservableSatellite satellite)
Constructor with one vector for the standard deviations.The 6-sized vector is the square root of the diagonal elements of the covariance matrix.
The measurement must be in the orbit propagation frame.
- Parameters:
date
- date of the measurementposition
- positionvelocity
- velocitysigmaPV
- 6-sized vector of the standard deviationsbaseWeight
- base weightsatellite
- satellite related to this measurement- Since:
- 9.3
-
PV
public PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[][] positionCovarianceMatrix, double[][] velocityCovarianceMatrix, double baseWeight, ObservableSatellite satellite)
Constructor with 2 smaller covariance matrices.One 3x3 covariance matrix for position and one 3x3 covariance matrix for velocity. The fact that the covariance matrices are symmetric and positive definite is not checked.
The measurement must be in the orbit propagation frame.
- Parameters:
date
- date of the measurementposition
- positionvelocity
- velocitypositionCovarianceMatrix
- 3x3 covariance matrix of the positionvelocityCovarianceMatrix
- 3x3 covariance matrix of the velocitybaseWeight
- base weightsatellite
- satellite related to this measurement- Since:
- 9.3
-
PV
public PV(AbsoluteDate date, Vector3D position, Vector3D velocity, double[][] covarianceMatrix, double baseWeight, ObservableSatellite satellite)
Constructor with full covariance matrix and all inputs.The fact that the covariance matrix is symmetric and positive definite is not checked.
The measurement must be in the orbit propagation frame.
- Parameters:
date
- date of the measurementposition
- positionvelocity
- velocitycovarianceMatrix
- 6x6 covariance matrix of the PV measurementbaseWeight
- base weightsatellite
- satellite related to this measurement- Since:
- 9.3
-
-
Method Detail
-
getPosition
public Vector3D getPosition()
Get the position.- Returns:
- position
-
getVelocity
public Vector3D getVelocity()
Get the velocity.- Returns:
- velocity
-
getCovarianceMatrix
public double[][] getCovarianceMatrix()
Get the covariance matrix.- Returns:
- the covariance matrix
-
getCorrelationCoefficientsMatrix
public double[][] getCorrelationCoefficientsMatrix()
Get the correlation coefficients matrix.This is the 6x6 matrix M such that:
Mij = Pij/(σi.σj)
Where:
- P is the covariance matrix
- σi is the i-th standard deviation (σi² = Pii)
- Returns:
- the correlation coefficient matrix (6x6)
-
theoreticalEvaluationWithoutDerivatives
protected EstimatedMeasurementBase<PV> theoreticalEvaluationWithoutDerivatives(int iteration, int evaluation, SpacecraftState[] states)
Estimate the theoretical value without derivatives. The default implementation uses the computation with derivatives and ought to be overwritten for performance.The theoretical value does not have any modifiers applied.
- Overrides:
theoreticalEvaluationWithoutDerivatives
in classAbstractMeasurement<PV>
- Parameters:
iteration
- iteration numberevaluation
- evaluation numberstates
- orbital states at measurement date- Returns:
- theoretical value
- See Also:
AbstractMeasurement.estimate(int, int, SpacecraftState[])
-
theoreticalEvaluation
protected EstimatedMeasurement<PV> theoreticalEvaluation(int iteration, int evaluation, SpacecraftState[] states)
Estimate the theoretical value.The theoretical value does not have any modifiers applied.
- Specified by:
theoreticalEvaluation
in classAbstractMeasurement<PV>
- Parameters:
iteration
- iteration numberevaluation
- evaluation numberstates
- orbital states at measurement date- Returns:
- theoretical value
- See Also:
AbstractMeasurement.estimate(int, int, SpacecraftState[])
-
-