Package org.orekit.signal
Class FieldAdjustableReceiverSignalTimer<T extends CalculusFieldElement<T>>
java.lang.Object
org.orekit.signal.FieldAdjustableReceiverSignalTimer<T>
Class for computing signal time of travel with an adjustable receiver and a fixed emitter's position and date.
The delay is calculated via a fixed-point algorithm with customizable settings (even enabling instantaneous transmission).
Note that a couple of iterations are usually enough for Earth orbits.
- Since:
- 14.0
- Author:
- Romain Serra
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final doubleReciprocal for light speed. -
Constructor Summary
ConstructorsConstructorDescriptionFieldAdjustableReceiverSignalTimer(FieldPVCoordinatesProvider<T> adjustableReceiverPVProvider) Constructor with default iteration settings.FieldAdjustableReceiverSignalTimer(FieldPVCoordinatesProvider<T> adjustableReceiverPVProvider, ConvergenceChecker<T> convergenceChecker) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected Tcompute(FieldPVCoordinatesProvider<T> pvCoordinatesProvider, T initialOffset, FieldVector3D<T> fixedPosition, FieldAbsoluteDate<T> guessDate, Frame frame) Compute propagation delay on a link leg (typically downlink or uplink).computeDelay(FieldSignalEmissionCondition<T> emissionCondition) Compute propagation delay on a link leg (typically downlink or uplink) without custom guess.computeDelay(FieldSignalEmissionCondition<T> emissionCondition, FieldAbsoluteDate<T> approxReceptionDate) Compute propagation delay on a link leg (typically downlink or uplink).computeReceptionCondition(FieldSignalEmissionCondition<T> emissionCondition, FieldAbsoluteDate<T> approxReceptionDate) Compute signal reception condition on a link leg (typically downlink or uplink).protected TcomputeShift(T offset, T delay) Computes the time shift.Getter for the convergence checker.
-
Field Details
-
C_RECIPROCAL
protected static final double C_RECIPROCALReciprocal for light speed.- See Also:
-
-
Constructor Details
-
FieldAdjustableReceiverSignalTimer
public FieldAdjustableReceiverSignalTimer(FieldPVCoordinatesProvider<T> adjustableReceiverPVProvider) Constructor with default iteration settings.- Parameters:
adjustableReceiverPVProvider- adjustable receiver
-
FieldAdjustableReceiverSignalTimer
public FieldAdjustableReceiverSignalTimer(FieldPVCoordinatesProvider<T> adjustableReceiverPVProvider, ConvergenceChecker<T> convergenceChecker) Constructor.- Parameters:
adjustableReceiverPVProvider- adjustable receiverconvergenceChecker- convergence checker for fixed-point algorithm
-
-
Method Details
-
computeReceptionCondition
public FieldSignalReceptionCondition<T> computeReceptionCondition(FieldSignalEmissionCondition<T> emissionCondition, FieldAbsoluteDate<T> approxReceptionDate) Compute signal reception condition on a link leg (typically downlink or uplink).- Parameters:
emissionCondition- signal emission conditionsapproxReceptionDate- approximate reception date- Returns:
- reception condition
-
computeDelay
Compute propagation delay on a link leg (typically downlink or uplink) without custom guess.- Parameters:
emissionCondition- signal emission condition- Returns:
- positive delay between signal emission and signal reception dates
-
computeDelay
public T computeDelay(FieldSignalEmissionCondition<T> emissionCondition, FieldAbsoluteDate<T> approxReceptionDate) Compute propagation delay on a link leg (typically downlink or uplink).- Parameters:
emissionCondition- signal emission conditionapproxReceptionDate- approximate reception date- Returns:
- positive delay between signal emission and signal reception dates
-
computeShift
Computes the time shift.- Parameters:
offset- time offsetdelay- time delay- Returns:
- time shift to use in computation
-
getConvergenceChecker
Getter for the convergence checker.- Returns:
- checker
-
compute
protected T compute(FieldPVCoordinatesProvider<T> pvCoordinatesProvider, T initialOffset, FieldVector3D<T> fixedPosition, FieldAbsoluteDate<T> 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
-