Package org.orekit.signal
Class FieldAdjustableEmitterSignalTimer<T extends CalculusFieldElement<T>>
java.lang.Object
org.orekit.signal.FieldAdjustableEmitterSignalTimer<T>
Class for computing signal time of travel with an adjustable emitter and a fixed receiver'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
ConstructorsConstructorDescriptionFieldAdjustableEmitterSignalTimer(FieldPVCoordinatesProvider<T> adjustableEmitterPVProvider) Constructor with default iteration settings.FieldAdjustableEmitterSignalTimer(FieldPVCoordinatesProvider<T> adjustableEmitterPVProvider, 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(FieldSignalReceptionCondition<T> receptionCondition) Compute propagation delay on a link leg (typically downlink or uplink) without custom guess.computeDelay(FieldSignalReceptionCondition<T> receptionCondition, FieldAbsoluteDate<T> approxEmissionDate) Compute propagation delay on a link leg (typically downlink or uplink).computeEmissionCondition(FieldSignalReceptionCondition<T> receptionCondition, FieldAbsoluteDate<T> approxEmissionDate) Compute the signal emission 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
-
FieldAdjustableEmitterSignalTimer
Constructor with default iteration settings.- Parameters:
adjustableEmitterPVProvider- adjustable emitter
-
FieldAdjustableEmitterSignalTimer
public FieldAdjustableEmitterSignalTimer(FieldPVCoordinatesProvider<T> adjustableEmitterPVProvider, ConvergenceChecker<T> convergenceChecker) Constructor.- Parameters:
adjustableEmitterPVProvider- adjustable emitterconvergenceChecker- convergence checker for fixed-point algorithm
-
-
Method Details
-
computeEmissionCondition
public FieldSignalEmissionCondition<T> computeEmissionCondition(FieldSignalReceptionCondition<T> receptionCondition, FieldAbsoluteDate<T> approxEmissionDate) Compute the signal emission condition on a link leg (typically downlink or uplink).- Parameters:
receptionCondition- signal reception conditionapproxEmissionDate- approximate emission date- Returns:
- emission condition
-
computeDelay
Compute propagation delay on a link leg (typically downlink or uplink) without custom guess.- Parameters:
receptionCondition- signal reception condition- Returns:
- positive delay between signal emission and signal reception dates
-
computeDelay
public T computeDelay(FieldSignalReceptionCondition<T> receptionCondition, FieldAbsoluteDate<T> approxEmissionDate) Compute propagation delay on a link leg (typically downlink or uplink).- Parameters:
receptionCondition- signal reception conditionapproxEmissionDate- approximate emission 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
-