Class SignalTravelTimeAdjustableReceiver
- java.lang.Object
-
- org.orekit.estimation.measurements.signal.SignalTravelTimeAdjustableReceiver
-
public class SignalTravelTimeAdjustableReceiver extends Object
Class for computing signal time of travel with an adjustable receiver and fixed emitter's position. The delay is calculated via a fixed-point algorithm with customizable settings (even enabling instantaneous transmission).- Since:
- 14.0
- Author:
- Romain Serra
-
-
Field Summary
Fields Modifier and Type Field Description protected static doubleC_RECIPROCALReciprocal for light speed.protected static intDEFAULT_MAX_ITERMaximum number of iterations.
-
Constructor Summary
Constructors Constructor Description SignalTravelTimeAdjustableReceiver(PVCoordinatesProvider adjustableReceiverPVProvider)Constructor.SignalTravelTimeAdjustableReceiver(PVCoordinatesProvider adjustableReceiverPVProvider, ConvergenceChecker<Double> checker)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected doublecompute(PVCoordinatesProvider pvCoordinatesProvider, double initialOffset, Vector3D fixedPosition, AbsoluteDate guessDate, Frame frame)Compute propagation delay on a link leg (typically downlink or uplink).doublecomputeDelay(Vector3D emitterPosition, AbsoluteDate emissionDate, Frame frame)Compute propagation delay on a link leg (typically downlink or uplink) without custom guess.doublecomputeDelay(Vector3D emitterPosition, AbsoluteDate emissionDate, AbsoluteDate approxReceptionDate, Frame frame)Compute propagation delay on a link leg (typically downlink or uplink).protected doublecomputeShift(double offset, double delay)Computes the time shift.ConvergenceChecker<Double>getConvergenceChecker()Getter for the convergence checker.static SignalTravelTimeAdjustableReceiverof(SpacecraftState state)Build instance from spacecraft state.
-
-
-
Field Detail
-
C_RECIPROCAL
protected static final double C_RECIPROCAL
Reciprocal for light speed.- See Also:
- Constant Field Values
-
DEFAULT_MAX_ITER
protected static final int DEFAULT_MAX_ITER
Maximum number of iterations.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SignalTravelTimeAdjustableReceiver
public SignalTravelTimeAdjustableReceiver(PVCoordinatesProvider adjustableReceiverPVProvider)
Constructor.- Parameters:
adjustableReceiverPVProvider- adjustable receiver
-
SignalTravelTimeAdjustableReceiver
public SignalTravelTimeAdjustableReceiver(PVCoordinatesProvider adjustableReceiverPVProvider, ConvergenceChecker<Double> checker)
Constructor.- Parameters:
adjustableReceiverPVProvider- adjustable receiverchecker- convergence checker for fixed-point algorithm
-
-
Method Detail
-
of
public static SignalTravelTimeAdjustableReceiver of(SpacecraftState state)
Build instance from spacecraft state.- Parameters:
state- spacecraft state- Returns:
- signal time computer
-
computeDelay
public double computeDelay(Vector3D emitterPosition, AbsoluteDate emissionDate, Frame frame)
Compute propagation delay on a link leg (typically downlink or uplink) without custom guess.- Parameters:
emitterPosition- fixed position of emitteremissionDate- emission dateframe- inertial frame in which emitter is defined- Returns:
- positive delay between signal emission and signal reception dates
-
computeDelay
public double computeDelay(Vector3D emitterPosition, AbsoluteDate emissionDate, AbsoluteDate approxReceptionDate, Frame frame)
Compute propagation delay on a link leg (typically downlink or uplink).- Parameters:
emitterPosition- fixed position of emitteremissionDate- emission dateapproxReceptionDate- approximate reception dateframe- inertial frame in which emitter is defined- Returns:
- positive delay between signal emission and signal reception dates
-
computeShift
protected double computeShift(double offset, double delay)Computes the time shift.- Parameters:
offset- time offsetdelay- time delay- Returns:
- time shift to use in computation
-
getConvergenceChecker
public ConvergenceChecker<Double> getConvergenceChecker()
Getter for the convergence checker.- Returns:
- checker
-
compute
protected double compute(PVCoordinatesProvider pvCoordinatesProvider, double initialOffset, Vector3D fixedPosition, AbsoluteDate guessDate, Frame frame)
Compute propagation delay on a link leg (typically downlink or uplink). The max. iteration number and convergence checker can be tweaked to emulate no-delay a.k.a. instantaneous transmission.- Parameters:
pvCoordinatesProvider- adjustable emitter/receiverinitialOffset- guess for the time off setfixedPosition- fixed receiver/emitter positionguessDate- guess for emission/reception dateframe- Inertial frame in which receiver/emitter is defined.- Returns:
- positive delay between signal emission and signal reception dates
-
-