public class VacuumSignalPropagationModel extends Object
PVCoordinatesProvider
implementationsModifier and Type | Class and Description |
---|---|
static class |
VacuumSignalPropagationModel.ConvergenceAlgorithm
Convergence algorithm to compute the geometric signal propagation duration.
|
static class |
VacuumSignalPropagationModel.FixedDate
the fixed date of computation
|
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_ITER
Default max number of iterations for signal propagation computation.
|
static double |
DEFAULT_THRESHOLD
Default threshold (s) for signal propagation computation.
|
Constructor and Description |
---|
VacuumSignalPropagationModel(Frame frameIn)
Constructor of the signal propagation model.
|
VacuumSignalPropagationModel(Frame frameIn,
double thresholdIn)
Constructor of the signal propagation model.
|
VacuumSignalPropagationModel(Frame frameIn,
double thresholdIn,
int maxIterIn)
Constructor of the signal propagation model.
|
VacuumSignalPropagationModel(Frame frameIn,
double thresholdIn,
VacuumSignalPropagationModel.ConvergenceAlgorithm convAlgo)
Constructor of the signal propagation model.
|
VacuumSignalPropagationModel(Frame frameIn,
double thresholdIn,
VacuumSignalPropagationModel.ConvergenceAlgorithm convAlgo,
int maxIterIn)
Constructor of the signal propagation model.
|
VacuumSignalPropagationModel(Frame frameIn,
VacuumSignalPropagationModel.ConvergenceAlgorithm convAlgo)
Constructor of the signal propagation model.
|
Modifier and Type | Method and Description |
---|---|
VacuumSignalPropagation |
computeSignalPropagation(PVCoordinatesProvider emitter,
PVCoordinatesProvider receiver,
AbsoluteDate date,
VacuumSignalPropagationModel.FixedDate fixedDateType)
Computes the signal propagation object in the void at a particular date
|
static AbsoluteDate |
getSignalEmissionDate(PVCoordinatesProvider emitter,
PVCoordinatesProvider orbit,
AbsoluteDate date,
double epsilon,
AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType,
Frame inertialFrame)
Compute signal emission date which is the date at which the signal received by the spacecraft
(receiver) has been emitted by the emitter depending on
AbstractSignalPropagationDetector.PropagationDelayType . |
static AbsoluteDate |
getSignalEmissionDate(PVCoordinatesProvider emitter,
PVCoordinatesProvider orbit,
AbsoluteDate date,
double epsilon,
AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType,
Frame inertialFrame,
int maxIterSignalPropagation)
Compute signal emission date which is the date at which the signal received by the spacecraft
(receiver) has been emitted by the emitter depending on
AbstractSignalPropagationDetector.PropagationDelayType . |
static AbsoluteDate |
getSignalReceptionDate(PVCoordinatesProvider receiver,
PVCoordinatesProvider orbit,
AbsoluteDate date,
double epsilon,
AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType,
Frame inertialFrame)
Compute signal reception date which is the date at which the signal emitted by the spacecraft
(emitter) has been
received by the receiver depending on
AbstractSignalPropagationDetector.PropagationDelayType . |
static AbsoluteDate |
getSignalReceptionDate(PVCoordinatesProvider receiver,
PVCoordinatesProvider orbit,
AbsoluteDate date,
double epsilon,
AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType,
Frame inertialFrame,
int maxIterSignalPropagation)
Compute signal reception date which is the date at which the signal emitted by the spacecraft
(emitter) has been received by the receiver depending on
AbstractSignalPropagationDetector.PropagationDelayType . |
public static final int DEFAULT_MAX_ITER
public static final double DEFAULT_THRESHOLD
This value guarantees that the propagation time is computed with a light travel distance precision below 0.3 mm.
public VacuumSignalPropagationModel(Frame frameIn)
By default, this model will use the NEWTON
convergence algorithm.
frameIn
- the work frame : must be inertialIllegalArgumentException
- if the provided frame is not pseudo-inertialpublic VacuumSignalPropagationModel(Frame frameIn, double thresholdIn)
By default, this model will use the NEWTON
convergence algorithm.
frameIn
- the work frame : must be inertialthresholdIn
- the iterative computation algorithm convergence threshold: propagation time precision
requiredIllegalArgumentException
- if the provided frame is not pseudo-inertialpublic VacuumSignalPropagationModel(Frame frameIn, VacuumSignalPropagationModel.ConvergenceAlgorithm convAlgo)
frameIn
- the work frame : must be inertial and invariant over timeconvAlgo
- the convergence algorithmIllegalArgumentException
- if the provided frame is not pseudo-inertialpublic VacuumSignalPropagationModel(Frame frameIn, double thresholdIn, int maxIterIn)
By default, this model will use the NEWTON
convergence algorithm.
frameIn
- the work frame : must be inertialthresholdIn
- the iterative computation algorithm convergence threshold: propagation time precision
requiredmaxIterIn
- the maximum number of iterations for signal propagation computationIllegalArgumentException
- if the provided frame is not pseudo-inertialpublic VacuumSignalPropagationModel(Frame frameIn, double thresholdIn, VacuumSignalPropagationModel.ConvergenceAlgorithm convAlgo)
frameIn
- the work frame : must be inertial and invariant over timethresholdIn
- the iterative computation algorithm convergence threshold: propagation time precision
requiredconvAlgo
- the convergence algorithmIllegalArgumentException
- if the provided frame is not pseudo-inertialpublic VacuumSignalPropagationModel(Frame frameIn, double thresholdIn, VacuumSignalPropagationModel.ConvergenceAlgorithm convAlgo, int maxIterIn)
frameIn
- the work frame : must be inertial and invariant over timethresholdIn
- the iterative computation algorithm convergence threshold: propagation time precision
requiredconvAlgo
- the convergence algorithmmaxIterIn
- the maximum number of iterations for signal propagation computationIllegalArgumentException
- if the provided frame is not pseudo-inertialpublic final VacuumSignalPropagation computeSignalPropagation(PVCoordinatesProvider emitter, PVCoordinatesProvider receiver, AbsoluteDate date, VacuumSignalPropagationModel.FixedDate fixedDateType) throws PatriusException
emitter
- the PVCoordinatesProvider of the emitter objectreceiver
- the PVCoordinatesProvider of the receiver objectdate
- the emission or reception datefixedDateType
- type of the previous given date : emission or receptionPatriusException
- if a problem occurs during PVCoodinates providers manipulationspublic static AbsoluteDate getSignalEmissionDate(PVCoordinatesProvider emitter, PVCoordinatesProvider orbit, AbsoluteDate date, double epsilon, AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType, Frame inertialFrame) throws PatriusException
AbstractSignalPropagationDetector.PropagationDelayType
.emitter
- emitterorbit
- orbit of the spacecraft (receiver)date
- date at which the spacecraft orbit is definedepsilon
- absolute duration threshold used for convergence of signal propagation computation.
The
epsilon is a time absolute error (ex: 1E-14s, in this case, the signal distance
accuracy is
1E-14s x 3E8m/s = 3E-6m).propagationDelayType
- propagation delay typeinertialFrame
- inertial framePatriusException
- thrown if computation failedpublic static AbsoluteDate getSignalEmissionDate(PVCoordinatesProvider emitter, PVCoordinatesProvider orbit, AbsoluteDate date, double epsilon, AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType, Frame inertialFrame, int maxIterSignalPropagation) throws PatriusException
AbstractSignalPropagationDetector.PropagationDelayType
.emitter
- emitterorbit
- orbit of the spacecraft (receiver)date
- date at which the spacecraft orbit is definedepsilon
- absolute duration threshold used for convergence of signal propagation computation.
The
epsilon is a time absolute error (ex: 1E-14s, in this case, the signal distance
accuracy is
1E-14s x 3E8m/s = 3E-6m).propagationDelayType
- propagation delay typeinertialFrame
- inertial framemaxIterSignalPropagation
- maximum number of iterations for signal propagation computationPatriusException
- thrown if computation failedpublic static AbsoluteDate getSignalReceptionDate(PVCoordinatesProvider receiver, PVCoordinatesProvider orbit, AbsoluteDate date, double epsilon, AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType, Frame inertialFrame) throws PatriusException
AbstractSignalPropagationDetector.PropagationDelayType
.receiver
- receiverorbit
- orbit of the spacecraft (emitter)date
- date at which the spacecraft orbit is definedepsilon
- absolute duration threshold used for convergence of signal propagation
computation. The epsilon is
a time absolute error (ex: 1E-14s, in this case, the signal distance accuracy is
1E-14s x 3E8m/s = 3E-6m).propagationDelayType
- propagation delay typeinertialFrame
- inertial framePatriusException
- thrown if computation failedpublic static AbsoluteDate getSignalReceptionDate(PVCoordinatesProvider receiver, PVCoordinatesProvider orbit, AbsoluteDate date, double epsilon, AbstractSignalPropagationDetector.PropagationDelayType propagationDelayType, Frame inertialFrame, int maxIterSignalPropagation) throws PatriusException
AbstractSignalPropagationDetector.PropagationDelayType
.receiver
- receiverorbit
- orbit of the spacecraft (emitter)date
- date at which the spacecraft orbit is definedepsilon
- absolute duration threshold used for convergence of signal propagation
computation. The epsilon is
a time absolute error (ex: 1E-14s, in this case, the signal distance accuracy is
1E-14s x 3E8m/s = 3E-6m).propagationDelayType
- propagation delay typeinertialFrame
- inertial framemaxIterSignalPropagation
- maximum number of iterations for signal propagation computationPatriusException
- thrown if computation failedCopyright © 2023 CNES. All rights reserved.