This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Numerical Error in Interplanetary Orbit Determination Software

Marco Zannoni111Ph.D. student, Department of Mechanical and Aerospace Engineering, via Fontanelle 40, m.zannoni@unibo.it. and Paolo Tortora222Associate Professor, Department of Mechanical and Aerospace Engineering, via Fontanelle 40, paolo.tortora@unibo.it, AIAA Senior Member University of Bologna, 47121 Forlì, Italy
Abstract

The core of every orbit determination process is the comparison between the measured observables and their predicted values, computed using the adopted mathematical models, and the minimization, in a least square sense, of their differences, known as residuals. In interplanetary orbit determination, Doppler observables, obtained by measuring the average frequency shift of the received carrier signal over a certain count time, are compared against their predicted values, usually computed by differencing two round-trip light-times. This formulation is known to be sensitive to round-off errors, caused by the use of finite arithmetic in the computation, giving rise to an additional noise in the residuals, called numerical noise, that degrades the accuracy of the orbit determination solution. This paper presents a mathematical model for the expected numerical errors in two-way and three-way Doppler observables, computed using the differenced light-time formulation. The model was validated by comparing its prediction to the actual noise in the computed observables, obtained by NASA/Jet Propulsion Laboratory’s Orbit Determination Program. The model proved to be accurate within 3×103mm/s3\times 10^{-3}\,\text{mm/s} at 60s60\,\text{s} integration time. Then it was applied to the case studies of Cassini’s and Juno’s nominal trajectories, proving that numerical errors can assume values up to 6×102mm/s6\times 10^{-2}\,\text{mm/s} at 60s60\,\text{s} integration time, and consequently that they are an important noise source in the Doppler-based orbit determination processes. Three alternative strategies are proposed and discussed in the paper to mitigate the effects of numerical noise.

Nomenclature

bib_{i} = digits of the binary floating point representation of ff
cc = speed of light in vacuum (km/s)
ff = absolute value of fractional part of the mantissa in the binary floating point representation
fTf_{T} = transmitting frequency at the transmitting ground station (Hz)
F2F_{2} = two-way Doppler observable (Hz)
F3F_{3} = three-way Doppler observable (Hz)
M2M_{2} = spacecraft transponder turnaround ratio, which is the ratio of the transmitted frequency to the received frequency at the spacecraft
pp = exponent (base 2) of the most significant digit in the binary floating point representation
qq = maximum value represented by the least significant bit in the binary floating point representation
𝐫𝟏\mathbf{r_{1}} = position vector of the transmitting ground station at t1t_{1}, with respect to the Solar System barycenter (km)
𝐫𝟐\mathbf{r_{2}} = position vector of the spacecraft at t2t_{2}, with respect to the Solar System barycenter (km)
𝐫𝟑\mathbf{r_{3}} = position vector of the receiving ground station at t3t_{3}, with respect to the Solar System barycenter (km)
r12r_{12} = Newtonian distance between the transmitting ground station at t1t_{1}, and the spacecraft at t2t_{2} (km)
r23r_{23} = Newtonian distance between the spacecraft at t2t_{2}, and the receiving ground station at t3t_{3} (km)
r˙12\dot{r}_{12} = Newtonian range-rate between the transmitting ground station, at the transmission time, and the spacecraft, at the reflection time (km/s)
r˙23\dot{r}_{23} = Newtonian range-rate between the spacecraft, at the reflection time, and the receiving ground station, at the reception time (km/s)
𝐫𝐣𝐢\mathbf{r^{i}_{j}} = position vector of the body jj with respect to the body ii (km)
𝐫˙𝐣𝐢\mathbf{\dot{r}^{i}_{j}} = relative velocity vector of the body ii with respect to the body jj (km)
rsr_{s} = distance of the ground station from the Earth spin axis (km)
RΔx¯(τ)R_{\Delta\overline{x}}(\tau) = autocorrelation function of Δx¯\Delta\overline{x}, with lag τ\tau
RΔx¯(t,τ)R_{\Delta\overline{x}}(t,\tau) = autocorrelation function of Δx¯\Delta\overline{x}, at time tt and with lag τ\tau
ss = exponent that defines the sign in the binary floating point representation
tt = number of binary digits used to represent ff
t1t_{1} = transmission time at the transmitting ground station, in Ephemeris Time (s)
t2t_{2} = reflection time at the spacecraft, in Ephemeris Time (s)
t3t_{3} = reception time at the receiving ground station, in Ephemeris Time (s)
t1(ST)Tt_{1}(ST)_{T} = transmission time at the transmitting electronics, in Station Time (s)
t3(ST)Rt_{3}(ST)_{R} = reception time at the receiving electronics, in Station Time (s)
tpt_{p} = time elapsed since the start of the current tracking pass (s)
TcT_{c} = count time interval of the Doppler observables (s)
TTTT = time-tag of a Doppler observable (s)
x0x_{0} = exact value to be encoded using the binary floating point representation
xx = binary floating point representation of x0x_{0}
α\alpha = spacecraft right ascension (rad)
α0\alpha_{0} = right ascension of the prime meridian at the adopted epoch (rad)
δ\delta = spacecraft declination (rad)
Δx¯\Delta\overline{x} = absolute rounding error in the binary floating point representation of x0x_{0}
Δx~\Delta\tilde{x} = relative rounding error in the binary floating point representation of x0x_{0}
Δx¯max\Delta\overline{x}_{\text{max}} = maximum absolute value of Δx¯\Delta\overline{x}
ε\varepsilon = maximum absolute value of Δx¯\Delta\overline{x}, also called machine epsilon
λs\lambda_{s} = longitude of the ground station (rad)
μi\mu_{i} = gravitational parameter of the body ii (km3/s2)
ρ\rho = precision round-trip light-time
σy(τ)\sigma_{y}(\tau) = Allan standard deviation with integration time τ\tau
σΔx¯\sigma_{\Delta\overline{x}} = standard deviation of Δx¯\Delta\overline{x}
σΔx¯2\sigma^{2}_{\Delta\overline{x}} = variance of Δx¯\Delta\overline{x}
ωe\omega_{e} = Earth mean rotation rate (rad/s)

I Introduction

The aim of the orbit determination (OD) process is the estimation of a set of parameters that unambiguously defines the trajectory of a spacecraft. The core of the process is the comparison between measured observables (observed observables) and the corresponding computed values (computed observables), obtained by an OD program using the adopted mathematical models. The output of the OD is the values of the parameters (solve-for parameters) that minimize, usually in a least-square sense, the global difference between the observed observables and the computed observables. For the tracking of deep space probes the use of Earth-based radiometric techniques, especially based on Doppler measurements, is of fundamental importance.

Disturbances in either the observed or computed observables cause errors in the OD process. The different sources of noise in the Doppler observed observables were the subject of several detailed studies in the past Armstrong:2003 ; Asmar:2005 ; Armstrong:2006 ; Armstrong:2008 . In Asmar:2005 a detailed noise budget for Doppler tracking of deep space probes was presented; however recent tracking data acquired from the NASA/ESA/ASI Cassini-Hyugens mission to the Saturn system showed imperfect quantitative agreement between the measured residual noise Iess:2012 and the predictions presented in Asmar:2005 , thus suggesting that there could be additional effects not considered so far, like errors in the computed Doppler observables.

Errors in the computed radiometric observables are caused by incomplete mathematical models implemented in the OD program and by numerical errors that arise from the use of finite-precision arithmetic. Concerning the model errors, the basis of the two most important interplanetary orbit determination programs, NASA/Jet Propulsion Laboratory’s (JPL) Orbit Determination Program (ODP) and ESA/ESOC’s Advanced Modular Facility for Interplanetary Navigation (AMFIN), is Moyer’s formulation, described in detail in Moyer:2000 . This formulation is considered sufficiently accurate, compared to the present level of noise in the radiometric measurements.

Numerical errors are introduced in every real number and computation step because, within a computer, the representation of numbers and the computations have to be performed using a finite number of digits. The resulting errors in the computed observables depend upon the hardware and software representation of numbers, the mathematical formulation of the observables and its implementation in the software. According to Moyer’s formulation the two-way (or three-way) Doppler observable is computed as the difference of two round-trip light times between the spacecraft and the tracking station(s), thus it is called differenced-range Doppler (DRD) formulation Moyer:1969 ; Moyer:1971 . AMFIN implements also an older formulation, based upon a truncated Taylor series, called the integrated Doppler (ID) formulation, formerly implemented in the ODP and described in Moyer:1971 . Moreover, both the ODP and AMFIN are compiled to use double-precision floating point arithmetic Moyer:2000 ; AMFIN:ALG .

An order-of-magnitude estimation of numerical errors in DRD double-precision computed observables is provided in Moyer:1971 and Moyer:1969 , where it is recommended to use at least 60 bits to represent the significand, also called mantissa, in order to keep a two-way accuracy of 2×102mm/s2\times 10^{-2}\,\text{mm/s} at all integration times. This results in an Allan Standard Deviation (ASDEV) of about 6.7×1014s/s6.7\times 10^{-14}\,\text{s/s}. However, the target accuracy has been gradually and continuously improving with time. For example, the current most precise two-way Doppler observations were achieved between the NASA Deep Space Network (DSN) and the Cassini spacecraft, reaching a fractional frequency stability, expressed in terms of ASDEV, of about 3×10153\times 10^{-15} at 1000s1000\,\text{s} integration time Armstrong:2003 . Future interplanetary missions, such as ESA’s BepiColombo mission to Mercury and NASA’s Juno mission to Jupiter, carry radio science instrumentation which, used in conjunction with highly performing ground antennas, is required to reach a two-way fractional frequency stability of 1.0×10141.0\times 10^{-14} and 8.2×10158.2\times 10^{-15} at 1000s1000\,\text{s} integration time, respectively Iess:2009 ; Anderson:2004 , during most of their operational life. On the other hand, almost all modern computers follow the IEEE-754 standard, which establishes the use of 64 bits for double-precision floating point binary representation, where 52 bits are used for the mantissa IEEE-754:2008 . For these reasons a more detailed study of the numerical noise is necessary to assess its actual impact on the precision of the computed observables.

This paper describes a model of numerical errors in two-way (and three-way) Doppler observables, computed by an OD program that implements Moyer’s DRD formulation. In Sec. II the basic concepts of the floating point representation and arithmetic are introduced, together with a statistical model used to evaluate the single contributions to the numerical error, their propagation and accumulation. An analytical model to predict numerical errors in two-way differenced-range Doppler observables is presented in Sec. III, while the validation of this model is described in Sec. IV. In Sec.V, the numerical error prediction model is used to analyze the expected numerical noise for Cassini’s and Juno’s Doppler tracking data. Then, three different strategies to reduce the numerical noise in the Doppler link are presented in Sec. VI. Finally, Sec. VII summarizes the results and presents the conclusions of this work.

II Round-Off Errors

II.1 Floating Point Representation

The most used method for representing real numbers in modern computers is the binary floating point representation, based upon the normalized scientific notation in base 22. Using this representation an exact value x0x_{0} is encoded using a finite number of bits, as:

x=(1)s(1.b1b2bt1bt)×2px=(-1)^{s}(1.b_{1}b_{2}\ldots b_{t-1}b_{t})\times 2^{p} (1)

where s=0s=0 for positive values, s=1s=1 for negative ones. pp can be computed from x0x_{0} using the following relation:

p(x0)={log2|x0|,if x000,if x0=0p(x_{0})=\begin{cases}\lfloor\log_{2}{|x_{0}|}\rfloor,&\text{if $\quad x_{0}\neq 0$}\\ 0,&\text{if $\quad x_{0}=0$}\end{cases} (2)

where a\lfloor a\rfloor is the floor function of aa.

btb_{t} is the last represented digit of xx and is called Least-Significant Bit (LSBLSB). In the representation of x0x_{0} the maximum value represented by the LSBLSB is:

q(x0)=2p(x0)tq(x_{0})=2^{p(x_{0})-t} (3)

There are several rounding algorithms that define how to choose btb_{t}. The mostly used algorithm is “round toward nearest, ties to even”, because it minimizes the rounding error for a given tt and does not introduce a systematic drift Goldberg:1991 . In what follows, only this algorithm will be considered.

The use of a finite number of digits to represent the mantissa introduces an error. The absolute and relative rounding errors are defined as:

Δx¯(x0)xx0\displaystyle\Delta\overline{x}(x_{0})\triangleq x-x_{0} (4)
Δx~(x0)(xx0)/x0\displaystyle\Delta\tilde{x}(x_{0})\triangleq(x-x_{0})/x_{0} (5)

The maximum absolute value of the absolute error in the representation of a variable x0x_{0} is:

Δx¯max(x0)max|Δx¯(x0)|=q(x0)/2=2p(x0)t1\Delta\overline{x}_{\text{max}}(x_{0})\triangleq\max{|\Delta\overline{x}(x_{0})|}=q(x_{0})/2=2^{p(x_{0})-t-1} (6)

Hence, the maximum absolute error depends upon the number of digits available for the fractional part of the mantissa tt and the order of magnitude pp of the binary number. Given tt, the maximum error is the same for all values in the range [2p,2p+1)[2^{p},2^{p+1}).

Given two proportional values x1x_{1} and x2=kx1x_{2}=k\,x_{1}, in general Δx¯max(x2)\Delta\overline{x}_{\text{max}}(x_{2}) and Δx¯max(x1)\Delta\overline{x}_{\text{max}}(x_{1}) do not satisfy the same relation of proportionality, because of the presence of the floor function in the definition of pp (Eq. 2). If and only if the absolute value of the scale factor kk is an integer power of the basis of representation (|k|=2nk|k|=2^{n_{k}}, nkn_{k}\in\mathbb{Z}) the maximum absolute errors are proportional, with scale factor |k||k|:

p(x2)=log2|kx1|=log2|k|+log2|x1|=nk+log2|x1|=nk+log2|x1|=nk+p(x1)p(x_{2})=\lfloor\log_{2}{|kx_{1}|}\rfloor=\lfloor\log_{2}{|k|}+\log_{2}|x_{1}|\rfloor=\lfloor n_{k}+\log_{2}|x_{1}|\rfloor=n_{k}+\lfloor\log_{2}|x_{1}|\rfloor=n_{k}+p(x_{1}) (7)
Δx¯max(x2)=2p(x2)t1=2nk+p(x1)t1=2nk 2p(x1)t1=|k|Δx¯max(x1)\Delta\overline{x}_{\text{max}}(x_{2})=2^{p(x_{2})-t-1}=2^{n_{k}+p(x_{1})-t-1}=2^{n_{k}}\,2^{p(x_{1})-t-1}=|k|\,\Delta\overline{x}_{\text{max}}(x_{1}) (8)

However, it can be shown that for a generic scale factor kk the ratio Δx¯max(x2)/Δx¯max(x1)\Delta\overline{x}_{\text{max}}(x_{2})/\Delta\overline{x}_{\text{max}}(x_{1}) is still |k||k|, when averaged on a large enough interval.

As an immediate consequence, the maximum absolute error in the floating point representation of a specific physical quantity depends upon the adopted unit. For example:

LSB(1km)2.22×1016km=2.22×1013m\displaystyle\text{LSB}(1\,\text{km})\simeq 2.22\times 10^{-16}\,\text{km}=2.22\times 10^{-13}\,\text{m} (9)
LSB(1000m)1.14×1013m\displaystyle\text{LSB}(1000\,\text{m})\simeq 1.14\times 10^{-13}\,\text{m} (10)

However, averaging on a large enough interval of values, the two maximum absolute errors are equal, so they can be considered equivalent.

The maximum absolute value of the relative error, also called machine epsilon or ε\varepsilon, is:

εmax|Δx~(x0)|=Δx¯max/|xmin|=2t1\varepsilon\triangleq\max{\left|\Delta\tilde{x}(x_{0})\right|}=\Delta\overline{x}_{\text{max}}/|x_{\text{min}}|=2^{-t-1} (11)

ε\varepsilon does not depend upon the order of magnitude of the value x0x_{0}, but only upon the number of digits of the fractional part of the mantissa tt.

The IEEE-754 standard defines several basic floating-point binary formats that differ by the number of bits used to encode the sign, the exponent and the fractional part of the mantissa. The most important formats are Binary32 (also called single precision), Binary64 (also called double-precision), and Binary128 (also called quadruple-precision). Their characteristics are described in Table 1 IEEE-754:2008 .

Table 1: Characteristics of the most important binary formats defined by IEEE-754
Number of bits
IEEE format Total ss ff pp ε\varepsilon
Binary32 (Single-Precision) 32 1 23 8 5.96×1085.96\times 10^{-8}
Binary64 (Double-precision) 64 1 52 11 1.11×10161.11\times 10^{-16}
Binary128 (Quadruple-Precision) 128 1 112 15 9.63×10359.63\times 10^{-35}

II.2 Statistical Model

The rounding error is a form of quantization error, with the LSB as the quantization step. Hence, it is possible to adopt a statistical model, usually applied to quantization errors, known as uniform quantization error model, or Widrow’s model Widrow:1961 . Using this description, the round-off error Δx¯(t)\Delta\overline{x}(t) in the numerical representation of an exact time function x0(t)x_{0}(t) is modeled as a white stochastic process, wide-sense stationary, uncorrelated with the represented function x0(t)x_{0}(t), and with a Probability Density Function (PDF) uniform between the extreme values q(x0)/2-q(x_{0})/2 and q(x0)/2q(x_{0})/2.

With this model, it is possible to compute the statistical characteristics of the numerical error:

  1. 1)

    Mean value: E[Δx¯(t)]=0\operatorname{E}[\Delta\overline{x}(t)]=0

  2. 2)

    Maximum absolute value: Δx¯max=q/2\Delta\overline{x}_{\text{max}}=q/2

  3. 3)

    Variance: σΔx¯2=q2/12\sigma_{\Delta\overline{x}}^{2}=q^{2}/12

The model is valid if the PDF and the Characteristic Function (CF) (the Fourier transform of the PDF) of the input signal x0(t)x_{0}(t) satisfy the conditions of the Quantization Theorem (QT), stated in Widrow:1961 . In Sripad:1977 weaker necessary and sufficient conditions for the QT are provided but, in practice, for real-world input signals, the conditions are very restrictive. For example, a sinusoidal signal does not satisfy the QT, but Widrow’s model can still be applied with sufficient accuracy if the amplitude of the signal is several times larger than the quantization step Mariano:2006 .

In this work the statistical model was assumed to be valid and this assumption was verified through a detailed analysis of the rounding errors, described in Sec. III.3.

II.3 Operation Errors

When performing an exact operation f(x0,y0)f(x_{0},y_{0}) using floating point arithmetic, the result is affected by two kind of errors with respect to the theoretical value z0z_{0}:

  1. 1)

    Propagation error of the rounding errors in the inputs:

    x=x0+Δx¯,y=y0+Δy¯x=x_{0}+\Delta\overline{x},\qquad y=y_{0}+\Delta\overline{y} (12)

    If the errors are small enough:

    z~0=f(x,y)f(x0,y0)+fx(x0,y0)Δx¯+fy(x0,y0)Δy¯\tilde{z}_{0}=f(x,y)\simeq f(x_{0},y_{0})+\frac{\partial f}{\partial x}(x_{0},y_{0})\Delta\overline{x}+\frac{\partial f}{\partial y}(x_{0},y_{0})\Delta\overline{y} (13)
  2. 2)

    Additional rounding error: even if the errors in the inputs are zero, the output could be affected by a rounding error. IEEE Standard 754 requires that the result of the basic operations (addition, subtraction, multiplication, division and square root) must be exactly rounded IEEE-754:2008 , i.e. the operation shall be performed as if it first produced an intermediate result correct to infinite precision, and then that result was rounded to the finite number of digits in use. The rounding on the result z~0\tilde{z}_{0} is represented by the addition of the random variable Δz¯\Delta\overline{z}:

    z=z~0+Δz¯=f(x,y)+Δz¯z=\tilde{z}_{0}+\Delta\overline{z}=f(x,y)+\Delta\overline{z} (14)

    In practice, to obtain an exactly rounded result, it is necessary to perform the basic operations using at least 3 additional binary digits Goldberg:1991 . For non-basic operations, the error on the results could be larger and depends on how the operations are implemented. The additional rounding error may be zero if the intermediate result of the operation does not need rounding.

The total error in the result is the sum of the propagation error and the additional rounding error:

Δz=fx(x0,y0)Δx¯+fy(x0,y0)Δy¯+Δz¯\Delta z=\frac{\partial f}{\partial x}(x_{0},y_{0})\Delta\overline{x}+\frac{\partial f}{\partial y}(x_{0},y_{0})\Delta\overline{y}+\Delta\overline{z} (15)

Using Widrow’s model for numerical errors Δx¯\Delta\overline{x}, Δy¯\Delta\overline{y}, and Δz¯\Delta\overline{z}, the total error Δz\Delta z is the sum of three random variables and its statistical characteristics derive from the characteristics of each round-off error.

III Numerical Error Model

III.1 Differenced-Range Doppler Formulation

According to Moyer’s DRD formulation, the unramped two-way or three-way Doppler observable is proportional to the mean time variation of the round-trip light-time (i.e. the mean range-rate divided by cc), during the count time interval centered in the observable’s time-tag Moyer:2000 :

F2,3(TT)=M2fT[ρ(TT+Tc/2)ρ(TTTc/2)]/TcF_{2,3}(TT)=M_{2}f_{T}\left[\rho(TT+T_{c}/2)-\rho(TT-T_{c}/2)\right]/T_{c} (16)

where M2M_{2} is the spacecraft transponder turnaround ratio, which is the ratio of the transmitted frequency to the received frequency at the spacecraft. ρ\rho is the time interval between the reception time, referred to the electronics of the receiving ground station and expressed in Station Time333Station Time is a realization of the proper time at the Earth ground station. (ST), and the corresponding transmission time, at the electronics of the transmitting ground station, in ST:

ρ(t3(ST)R)=t3(ST)Rt1(ST)T\rho(t_{3}(\text{ST})_{R})=t_{3}(\text{ST})_{R}-t_{1}(\text{ST})_{T} (17)

Neglecting second order terms, such as relativistic light-time delays, time scale transformations, electronic delays, and transmission media delays, the round-trip light-time can be written as:

ρ(t3(ST)R)r23/c+r12/c=1/c[(𝐫𝟑𝐫𝟐)(𝐫𝟑𝐫𝟐)]1/2+1/c[(𝐫𝟐𝐫𝟏)(𝐫𝟐𝐫𝟏)]1/2\rho(t_{3}(\text{ST})_{R})\simeq r_{23}/c+r_{12}/c=1/c\cdot\left[\left(\mathbf{r_{3}}-\mathbf{r_{2}}\right)\cdot\left(\mathbf{r_{3}}-\mathbf{r_{2}}\right)\right]^{1/2}+1/c\cdot\left[\left(\mathbf{r_{2}}-\mathbf{r_{1}}\right)\cdot\left(\mathbf{r_{2}}-\mathbf{r_{1}}\right)\right]^{1/2} (18)

where all state vectors are expressed in the Solar System barycentric space-time Frame Of Reference (FOR).

In Eq. 18 the position vectors 𝐫𝟑\mathbf{r_{3}} and 𝐫𝟏\mathbf{r_{1}} are computed from the planetary and lunar ephemeris and from the Earth-centered position of the ground station antenna:

𝐫𝟑=𝐫𝐀𝟑𝐂(t3)=𝐫𝐁𝐂(t3)𝐫𝐌𝐄(t3)/(1+μE/μM)+𝐫𝐀𝟑𝐄(t3)\displaystyle\mathbf{r_{3}}=\mathbf{r^{C}_{A3}}(t_{3})=\mathbf{r^{C}_{B}}(t_{3})-\mathbf{r^{E}_{M}}(t_{3})/(1+\mu_{E}/\mu_{M})+\mathbf{r^{E}_{A3}}(t_{3}) (19)
𝐫𝟏=𝐫𝐀𝟏𝐂(t1)=𝐫𝐁𝐂(t1)𝐫𝐌𝐄(t1)/(1+μE/μM)+𝐫𝐀𝟏𝐄(t1)\displaystyle\mathbf{r_{1}}=\mathbf{r^{C}_{A1}}(t_{1})=\mathbf{r^{C}_{B}}(t_{1})-\mathbf{r^{E}_{M}}(t_{1})/(1+\mu_{E}/\mu_{M})+\mathbf{r^{E}_{A1}}(t_{1}) (20)

Superscripts and subscripts designating location are explained in Table 2.

Table 2: Abbreviations for all bodies participating in the light-time problem.
Superscript/Subscript Body
C Solar System Barycenter
S Sun
B Earth-Moon system barycenter
M Moon
E Earth
A1 Transmitting ground station’s antenna
A3 Receiving ground station’s antenna
P Probe
O Center Of Integration of the spacecraft trajectory

𝐫𝟐\mathbf{r_{2}} is computed from the spacecraft ephemeris, obtained by integrating the equations of motion with respect to the Center Of Integration (COI), and from the planetary ephemeris:

𝐫𝟐=𝐫𝐏𝐂(t2)=𝐫𝐎𝐂(t2)+𝐫𝐏𝐎(t2)\mathbf{r_{2}}=\mathbf{r^{C}_{P}}(t_{2})=\mathbf{r^{C}_{O}}(t_{2})+\mathbf{r^{O}_{P}}(t_{2}) (21)

The reception time in Ephemeris Time444Ephemeris Time is the coordinate time of the Solar System barycentric space-time frame of reference used in the adopted celestial ephemeris. (TephT_{eph}Standish:1998 , t3t_{3}, is computed from the reception time in ST, t3(ST)t_{3}(\text{ST}), through different time transformations while t2t_{2} and t1t_{1} are computed from t3t_{3} solving for the down-link and the up-link light-time problems, respectively.

III.2 Numerical Error Preliminary Model

Using the DRD formulation, the Doppler observable is computed as the difference of two round-trip light-times (Eq. 16). Qualitatively, this formulation has a high sensitivity to round-off errors because, as it is well known, the difference between two large and nearly equal values substantially increases the relative error, causing a loss of significance. Hence, errors in the round-trip light-time have a large influence on the Doppler observables.

At first approximation, the errors Δρ\Delta\rho in the round-trip light-time at the start and at the end of the count time can be considered independent. From Eq. 16, an order of magnitude estimation of the corresponding effect in the Doppler observable is:

ΔF2,3M2fT2Δρ/Tc\Delta F_{2,3}\simeq M_{2}f_{T}\sqrt{2}\Delta\rho/T_{c} (22)

The main sources of numerical errors in the round-trip light-time are:

  1. 1)

    Representation of times: the rounding errors in time epochs t3t_{3}, t2t_{2}, and t1t_{1} propagate only indirectly into the round-trip light-time. An error Δtk\Delta t_{k} in time epoch tkt_{k} affects the computation of a position vector 𝐫𝐣𝐢(tk)\mathbf{r^{i}_{j}}(t_{k}), through the corresponding velocity vector 𝐫˙𝐣𝐢\mathbf{\dot{r}^{i}_{j}}:

    Δ𝐫𝐣𝐢=𝐫˙𝐣𝐢Δtk\Delta\mathbf{r^{i}_{j}}=\mathbf{\dot{r}^{i}_{j}}\,\Delta t_{k} (23)

    At first approximation, the total effect on ρ\rho is:

    Δρ(r˙12+r˙23)Δtk/c\Delta\rho\simeq(\dot{r}_{12}+\dot{r}_{23})\Delta t_{k}/c (24)

    Where r˙ij\dot{r}_{ij} is the range-rate, i.e. the time variation of the range, between ii and jj.

    Currently both the ODP and AMFIN express the time variable tkt_{k} as a single double-precision value of the time elapsed since a reference epoch. In the ODP, time is measured in seconds past J2000 (January 1st 2000, 12:00) Moyer:2000 , while in AMFIN, time is measured in days past January 1st 2000, 00:00 AMFIN:ALG . Fig. 1 shows the maximum absolute round-off error in time variables, for both the double-precision time representations adopted in the ODP and AMFIN. When the time variable increases relative to the reference epoch, the maximum rounding error increases with a piecewise trend, because it doubles when the binary order of magnitude p(t)p(t) increases by one.

    Refer to caption
    Figure 1: Maximum absolute round-off errors in time variable for the two double-precision time representation adopted in the ODP (seconds past J2000) and AMFIN (days past January 1st 2000, 00:00).

    The difference of 12 hours in the reference epochs of the two programs is negligible. Hence, as discussed in Sec. II, because of the different measurement units, the time round-off errors in these two OD codes are not exactly the same, but they have the same average magnitude, on a large enough time interval. For the ODP-like time representation, between July 2008 and January 2017, the maximum round-off error is about 30ns30\,\text{ns}. From Eq. 24, considering a range-rate of 30km/s30\,\text{km/s}, the effect of the time error on the two-way range has an order of magnitude of 2mm2\,\text{mm}. From Eq. 22, the approximate effect on the two-way range-rate is about 4×102mm/s4\times 10^{-2}\,\text{mm/s}, for a count time of 60s60\,\text{s}.

  2. 2)

    Representation of distances: the rounding errors in each component of the position vectors propagate into the precision round-trip light-time directly, because the position vectors are used in the computation of the Newtonian distances r12r_{12} and r23r_{23}, but also indirectly, because the position vectors are used also in the computation of t2t_{2} and t1t_{1}. However, the indirect effects are much smaller than the direct ones and can be neglected. Both the ODP and AMFIN express distances in km, so at 1AU1\,\text{AU} the maximum round-off error in the two-way range is about 0.03mm0.03\,\text{mm} and at 10AU10\,\text{AU} it is about 0.24mm0.24\,\text{mm}. From Eq. 22, the approximate effect on the two-way range-rate is about 7×104mm/s7\times 10^{-4}\,\text{mm/s} at 1AU1\,\text{AU} and 6×103mm/s6\times 10^{-3}\,\text{mm/s} at 10AU10\,\text{AU}, for a count time of 60s60\,\text{s}.

  3. 3)

    Additional rounding errors: the rounding errors in the result of each operation propagate into the round-trip light-time. In the computation of the round-trip light-time ρ\rho, the following computational steps were considered:

    𝐫𝐁𝐄(ti)=𝐫𝐌𝐄(ti)/(1+μE/μM),i=1,3\displaystyle\mathbf{r^{E}_{B}}(t_{i})=\mathbf{r^{E}_{M}}(t_{i})/(1+\mu_{E}/\mu_{M}),\qquad i=1,3 (25)
    𝐫𝐄𝐂(ti)=𝐫𝐁𝐂(ti)𝐫𝐁𝐄(ti),i=1,3\displaystyle\mathbf{r^{C}_{E}}(t_{i})=\mathbf{r^{C}_{B}}(t_{i})-\mathbf{r^{E}_{B}}(t_{i}),\qquad i=1,3 (26)
    𝐫𝐢=𝐫𝐀𝐢𝐂(ti)=𝐫𝐄𝐂(ti)+𝐫𝐀𝐢𝐄(ti),i=1,3\displaystyle\mathbf{r_{i}}=\mathbf{r^{C}_{Ai}}(t_{i})=\mathbf{r^{C}_{E}}(t_{i})+\mathbf{r^{E}_{Ai}}(t_{i}),\qquad i=1,3 (27)
    𝐫𝟐=𝐫𝐏𝐂(t2)=𝐫𝐎𝐂(t2)+𝐫𝐏𝐎(t2)\displaystyle\mathbf{r_{2}}=\mathbf{r^{C}_{P}}(t_{2})=\mathbf{r^{C}_{O}}(t_{2})+\mathbf{r^{O}_{P}}(t_{2}) (28)
    𝐫𝐢𝐣=𝐫𝐣𝐫𝐢=[xijyijzij]T,(i,j)=(1,2),(2,3)\displaystyle\mathbf{r_{ij}}=\mathbf{r_{j}}-\mathbf{r_{i}}=\left[x_{ij}\quad y_{ij}\quad z_{ij}\right]^{\text{T}},\qquad(i,j)=(1,2),(2,3) (29)
    xxij=xij2,yyij=yij2,zzij=zij2,(i,j)=(1,2),(2,3)\displaystyle xx_{ij}=x_{ij}^{2},\quad yy_{ij}=y_{ij}^{2},\quad zz_{ij}=z_{ij}^{2},\qquad(i,j)=(1,2),(2,3) (30)
    xyij=xxij+yyij,(i,j)=(1,2),(2,3)\displaystyle xy_{ij}=xx_{ij}+yy_{ij},\qquad(i,j)=(1,2),(2,3) (31)
    rrij=xyij+zzij,(i,j)=(1,2),(2,3)\displaystyle rr_{ij}=xy_{ij}+zz_{ij},\qquad(i,j)=(1,2),(2,3) (32)
    rij=rrij,(i,j)=(1,2),(2,3)\displaystyle r_{ij}=\sqrt{rr_{ij}},\qquad(i,j)=(1,2),(2,3) (33)
    tij=rij/c,(i,j)=(1,2),(2,3)\displaystyle t_{ij}=r_{ij}/c,\qquad(i,j)=(1,2),(2,3) (34)
    ρ=t12+t23\displaystyle\rho=t_{12}+t_{23} (35)

    Moreover, the position vectors 𝐫𝐣𝐢\mathbf{r^{i}_{j}} used in Eqs. 25, 26, 27, and 28 are computed using the astronomical ephemeris (given as an input to the program), the integration of the equations of motion and the Earth-fixed location of the ground station antenna. For simplicity, the numerical errors introduced in these computational steps are neglected. This assumption was verified a posteriori through the validation of the numerical errors model.

As discussed in Sec. II.3, a numerical error Δx¯\Delta\overline{x} in a generic variable xx propagates into the output variable zz through the partial derivative z/x\partial z/\partial x. Hence, the numerical noise in the round-trip light-time ρ\rho at reception time t3t_{3} can be computed through the partial derivative of ρ\rho with respect to each considered error source. Neglecting second order terms, the resulting expression for the total numerical error on ρ\rho is:

Δρ(t3)=(r˙12+r˙23)Δt3¯/c+(r˙12p˙23)Δt2¯/cp˙12Δt1¯/c+(𝐫^𝟏𝟐𝐫^𝟐𝟑)/c[Δ𝐫𝐏𝐎¯(t2)+Δ𝐫𝐎𝐂¯(t2)+Δ𝐫𝐏𝐂¯(t2)]+𝐫^𝟐𝟑c[Δ𝐫𝐀𝟑𝐄¯(t3)+Δ𝐫𝐁𝐂¯(t3)Δ𝐫𝐌𝐄¯(t3)1+μE/μM+Δ𝐫𝐀𝟑𝐂¯(t3)+Δ𝐫𝐄𝐂¯(t3)Δ𝐫𝐁𝐄¯(t3)+Δ𝐫𝟐𝟑¯]𝐫^𝟏𝟐c[Δ𝐫𝐀𝟑𝐄¯(t1)+Δ𝐫𝐁𝐂¯(t1)Δ𝐫𝐌𝐄¯(t1)1+μE/μM+Δ𝐫𝐀𝟏𝐂¯(t1)+Δ𝐫𝐄𝐂¯(t1)Δ𝐫𝐁𝐄¯(t1)Δ𝐫𝟏𝟐¯]+Δxx12¯+Δyy12¯+Δzz12¯+Δxy12¯+Δrr12¯2cr12+Δxx23¯+Δyy23¯+Δzz23¯+Δxy23¯+Δrr23¯2cr23+(Δr12¯+Δr23¯)/c+Δt12¯+Δt23¯+Δρ¯\Delta\rho(t_{3})=(\dot{r}_{12}+\dot{r}_{23})\Delta\overline{t_{3}}/c+(\dot{r}_{12}-\dot{p}_{23})\Delta\overline{t_{2}}/c-\dot{p}_{12}\Delta\overline{t_{1}}/c\\ +(\mathbf{\hat{r}_{12}}-\mathbf{\hat{r}_{23}})/c\cdot\left[\Delta\overline{\mathbf{r^{O}_{P}}}(t_{2})+\Delta\overline{\mathbf{r^{C}_{O}}}(t_{2})+\Delta\overline{\mathbf{r^{C}_{P}}}(t_{2})\right]\\ +\frac{\mathbf{\hat{r}_{23}}}{c}\cdot\left[\Delta\overline{\mathbf{r^{E}_{A3}}}(t_{3})+\Delta\overline{\mathbf{r^{C}_{B}}}(t_{3})-\frac{\Delta\overline{\mathbf{r^{E}_{M}}}(t_{3})}{1+\mu_{E}/\mu_{M}}+\Delta\overline{\mathbf{r^{C}_{A3}}}(t_{3})+\Delta\overline{\mathbf{r^{C}_{E}}}(t_{3})-\Delta\overline{\mathbf{r^{E}_{B}}}(t_{3})+\Delta\overline{\mathbf{r_{23}}}\right]\\ -\frac{\mathbf{\hat{r}_{12}}}{c}\cdot\left[\Delta\overline{\mathbf{r^{E}_{A3}}}(t_{1})+\Delta\overline{\mathbf{r^{C}_{B}}}(t_{1})-\frac{\Delta\overline{\mathbf{r^{E}_{M}}}(t_{1})}{1+\mu_{E}/\mu_{M}}+\Delta\overline{\mathbf{r^{C}_{A1}}}(t_{1})+\Delta\overline{\mathbf{r^{C}_{E}}}(t_{1})-\Delta\overline{\mathbf{r^{E}_{B}}}(t_{1})-\Delta\overline{\mathbf{r_{12}}}\right]\\ +\frac{\Delta\overline{xx_{12}}+\Delta\overline{yy_{12}}+\Delta\overline{zz_{12}}+\Delta\overline{xy_{12}}+\Delta\overline{rr_{12}}}{2\,c\,r_{12}}+\frac{\Delta\overline{xx_{23}}+\Delta\overline{yy_{23}}+\Delta\overline{zz_{23}}+\Delta\overline{xy_{23}}+\Delta\overline{rr_{23}}}{2\,c\,r_{23}}\\ +\left(\Delta\overline{r_{12}}+\Delta\overline{r_{23}}\right)/c+\Delta\overline{t_{12}}+\Delta\overline{t_{23}}+\Delta\overline{\rho} (36)

where p˙ij\dot{p}_{ij} is defined as:

p˙ij𝐫˙𝐢𝐫^𝐢𝐣(i,j)=(1,2),(2,3)\dot{p}_{ij}\triangleq\mathbf{\dot{r}_{i}}\cdot\mathbf{\hat{r}_{ij}}\qquad(i,j)=(1,2),(2,3)\\ (37)

The numerical error in two- or three-way Doppler observables with time-tag TTTT can be expressed as:

ΔF2,3(TT)=M2fT[Δρ(TT+Tc/2)Δρ(TTTc/2)]/Tc\Delta F_{2,3}(TT)=M_{2}f_{T}\left[\Delta\rho(TT+T_{c}/2)-\Delta\rho(TT-T_{c}/2)\right]/T_{c} (38)

Adopting the statistical model for each numerical error in Eq. 36, it is possible to evaluate the statistical properties of the total numerical error in the round-trip light-time ρ\rho and Doppler observable F2,3F_{2,3}. It follows that Δρ(t3)\Delta\rho(t_{3}) is a stochastic process with the following characteristics:

  1. 1)

    White.

  2. 2)

    Non stationary, because the coefficients multiplying every single numerical error are a function of time. However their time variation is typically very slow and, for a typical duration of a tracking pass, the process can be considered stationary.

  3. 3)

    Gaussian-like distribution/PDF: from the central limit theorem the sum of NN independent and identically distributed random variables converges to a normally distributed random variable as NN approaches infinity. Because the different numerical errors are a finite number and not identically distributed, the expected PDF is only qualitatively bell-shaped.

  4. 4)

    Zero mean.

  5. 5)

    Variance: the total variance is the sum of each term’s variance:

    σΔρ2(t3)=(r˙12+r˙23c)2σΔt3¯2+(r˙12p˙23c)2σΔt2¯2+(p˙12c)2σΔt1¯2+(x12/r12x23/r23c)2[σΔxPO¯2(t2)+σΔxOC¯2(t2)+σΔxPC¯2(t2)]+(y12/r12y23/r23c)2[σΔyPO¯2(t2)+σΔyOC¯2(t2)+σΔyPC¯2(t2)]+(z12/r12z23/r23c)2[σΔzPO¯2(t2)+σΔzOC¯2(t2)+σΔzPC¯2(t2)]+(x23cr23)2[σΔxA3E¯2(t3)+σΔxBC¯2(t3)+σΔxME¯2(t3)(1+μE/μM)2+σΔxA3C¯2(t3)+σΔxEC¯2(t3)+σΔxBE¯2(t3)+σΔx23¯2]+(y23cr23)2[σΔyA3E¯2(t3)+σΔyBC¯2(t3)+σΔyME¯2(t3)(1+μE/μM)2+σΔyA3C¯2(t3)+σΔyEC¯2(t3)+σΔyBE¯2(t3)+σΔy23¯2]+(z23cr23)2[σΔzA3E¯2(t3)+σΔzBC¯2(t3)+σΔzME¯2(t3)(1+μE/μM)2+σΔzA3C¯2(t3)+σΔzEC¯2(t3)+σΔzBE¯2(t3)+σΔz23¯2]+(x12cr12)2[σΔxA3E¯2(t1)+σΔxBC¯2(t1)+σΔxME¯2(t1)(1+μE/μM)2+σΔxA1C¯2(t1)+σΔxEC¯2(t1)+σΔxBE¯2(t1)+σΔx12¯2]+(y12cr12)2[σΔyA3E¯2(t1)+σΔyBC¯2(t1)+σΔyME¯2(t1)(1+μE/μM)2+σΔyA1C¯2(t1)+σΔyEC¯2(t1)+σΔyBE¯2(t1)+σΔy12¯2]+(z12cr12)2[σΔzA3E¯2(t1)+σΔzBC¯2(t1)+σΔzME¯2(t1)(1+μE/μM)2+σΔzA1C¯2(t1)+σΔzEC¯2(t1)+σΔzBE¯2(t1)+σΔz12¯2]+σΔxx12¯2+σΔyy12¯2+σΔzz12¯2+σΔxy12¯2+σΔrr12¯2(2cr12)2+σΔxx23¯2+σΔyy23¯2+σΔzz23¯2+σΔxy23¯2+σΔrr23¯2(2cr23)2+(σΔr12¯2+σΔr23¯2)/c2+σΔt12¯2+σΔt23¯2+σΔρ¯2\sigma^{2}_{\Delta\rho}(t_{3})=\left(\frac{\dot{r}_{12}+\dot{r}_{23}}{c}\right)^{2}\sigma^{2}_{\Delta\overline{t_{3}}}+\left(\frac{\dot{r}_{12}-\dot{p}_{23}}{c}\right)^{2}\sigma^{2}_{\Delta\overline{t_{2}}}+\left(\frac{\dot{p}_{12}}{c}\right)^{2}\sigma^{2}_{\Delta\overline{t_{1}}}\\ +\left(\frac{x_{12}/r_{12}-x_{23}/r_{23}}{c}\right)^{2}\left[\sigma^{2}_{\Delta\overline{x^{O}_{P}}}(t_{2})+\sigma^{2}_{\Delta\overline{x^{C}_{O}}}(t_{2})+\sigma^{2}_{\Delta\overline{x^{C}_{P}}}(t_{2})\right]\\ +\left(\frac{y_{12}/r_{12}-y_{23}/r_{23}}{c}\right)^{2}\left[\sigma^{2}_{\Delta\overline{y^{O}_{P}}}(t_{2})+\sigma^{2}_{\Delta\overline{y^{C}_{O}}}(t_{2})+\sigma^{2}_{\Delta\overline{y^{C}_{P}}}(t_{2})\right]\\ +\left(\frac{z_{12}/r_{12}-z_{23}/r_{23}}{c}\right)^{2}\left[\sigma^{2}_{\Delta\overline{z^{O}_{P}}}(t_{2})+\sigma^{2}_{\Delta\overline{z^{C}_{O}}}(t_{2})+\sigma^{2}_{\Delta\overline{z^{C}_{P}}}(t_{2})\right]\\ +\left(\frac{x_{23}}{c\,r_{23}}\right)^{2}\left[\sigma^{2}_{\Delta\overline{x^{E}_{A3}}}(t_{3})+\sigma^{2}_{\Delta\overline{x^{C}_{B}}}(t_{3})+\frac{\sigma^{2}_{\Delta\overline{x^{E}_{M}}}(t_{3})}{(1+\mu_{E}/\mu_{M})^{2}}+\sigma^{2}_{\Delta\overline{x^{C}_{A3}}}(t_{3})+\sigma^{2}_{\Delta\overline{x^{C}_{E}}}(t_{3})+\sigma^{2}_{\Delta\overline{x^{E}_{B}}}(t_{3})+\sigma^{2}_{\Delta\overline{x_{23}}}\right]\\ +\left(\frac{y_{23}}{c\,r_{23}}\right)^{2}\left[\sigma^{2}_{\Delta\overline{y^{E}_{A3}}}(t_{3})+\sigma^{2}_{\Delta\overline{y^{C}_{B}}}(t_{3})+\frac{\sigma^{2}_{\Delta\overline{y^{E}_{M}}}(t_{3})}{(1+\mu_{E}/\mu_{M})^{2}}+\sigma^{2}_{\Delta\overline{y^{C}_{A3}}}(t_{3})+\sigma^{2}_{\Delta\overline{y^{C}_{E}}}(t_{3})+\sigma^{2}_{\Delta\overline{y^{E}_{B}}}(t_{3})+\sigma^{2}_{\Delta\overline{y_{23}}}\right]\\ +\left(\frac{z_{23}}{c\,r_{23}}\right)^{2}\left[\sigma^{2}_{\Delta\overline{z^{E}_{A3}}}(t_{3})+\sigma^{2}_{\Delta\overline{z^{C}_{B}}}(t_{3})+\frac{\sigma^{2}_{\Delta\overline{z^{E}_{M}}}(t_{3})}{(1+\mu_{E}/\mu_{M})^{2}}+\sigma^{2}_{\Delta\overline{z^{C}_{A3}}}(t_{3})+\sigma^{2}_{\Delta\overline{z^{C}_{E}}}(t_{3})+\sigma^{2}_{\Delta\overline{z^{E}_{B}}}(t_{3})+\sigma^{2}_{\Delta\overline{z_{23}}}\right]\\ +\left(\frac{x_{12}}{c\,r_{12}}\right)^{2}\left[\sigma^{2}_{\Delta\overline{x^{E}_{A3}}}(t_{1})+\sigma^{2}_{\Delta\overline{x^{C}_{B}}}(t_{1})+\frac{\sigma^{2}_{\Delta\overline{x^{E}_{M}}}(t_{1})}{(1+\mu_{E}/\mu_{M})^{2}}+\sigma^{2}_{\Delta\overline{x^{C}_{A1}}}(t_{1})+\sigma^{2}_{\Delta\overline{x^{C}_{E}}}(t_{1})+\sigma^{2}_{\Delta\overline{x^{E}_{B}}}(t_{1})+\sigma^{2}_{\Delta\overline{x_{12}}}\right]\\ +\left(\frac{y_{12}}{c\,r_{12}}\right)^{2}\left[\sigma^{2}_{\Delta\overline{y^{E}_{A3}}}(t_{1})+\sigma^{2}_{\Delta\overline{y^{C}_{B}}}(t_{1})+\frac{\sigma^{2}_{\Delta\overline{y^{E}_{M}}}(t_{1})}{(1+\mu_{E}/\mu_{M})^{2}}+\sigma^{2}_{\Delta\overline{y^{C}_{A1}}}(t_{1})+\sigma^{2}_{\Delta\overline{y^{C}_{E}}}(t_{1})+\sigma^{2}_{\Delta\overline{y^{E}_{B}}}(t_{1})+\sigma^{2}_{\Delta\overline{y_{12}}}\right]\\ +\left(\frac{z_{12}}{c\,r_{12}}\right)^{2}\left[\sigma^{2}_{\Delta\overline{z^{E}_{A3}}}(t_{1})+\sigma^{2}_{\Delta\overline{z^{C}_{B}}}(t_{1})+\frac{\sigma^{2}_{\Delta\overline{z^{E}_{M}}}(t_{1})}{(1+\mu_{E}/\mu_{M})^{2}}+\sigma^{2}_{\Delta\overline{z^{C}_{A1}}}(t_{1})+\sigma^{2}_{\Delta\overline{z^{C}_{E}}}(t_{1})+\sigma^{2}_{\Delta\overline{z^{E}_{B}}}(t_{1})+\sigma^{2}_{\Delta\overline{z_{12}}}\right]\\ +\frac{\sigma^{2}_{\Delta\overline{xx_{12}}}+\sigma^{2}_{\Delta\overline{yy_{12}}}+\sigma^{2}_{\Delta\overline{zz_{12}}}+\sigma^{2}_{\Delta\overline{xy_{12}}}+\sigma^{2}_{\Delta\overline{rr_{12}}}}{(2\,c\,r_{12})^{2}}+\frac{\sigma^{2}_{\Delta\overline{xx_{23}}}+\sigma^{2}_{\Delta\overline{yy_{23}}}+\sigma^{2}_{\Delta\overline{zz_{23}}}+\sigma^{2}_{\Delta\overline{xy_{23}}}+\sigma^{2}_{\Delta\overline{rr_{23}}}}{(2\,c\,r_{23})^{2}}\\ +\left(\sigma^{2}_{\Delta\overline{r_{12}}}+\sigma^{2}_{\Delta\overline{r_{23}}}\right)/c^{2}+\sigma^{2}_{\Delta\overline{t_{12}}}+\sigma^{2}_{\Delta\overline{t_{23}}}+\sigma^{2}_{\Delta\overline{\rho}} (39)

    Where the variance of each numerical error can be computed using the formulation presented in Sec. II.2.

The numerical error ΔF2,3\Delta F_{2,3} has similar characteristics to Δρ\Delta\rho but it is not white, because two consecutive Doppler observables are a function of the round-trip light-time at their mid-time. In fact, the count times are consecutive, so the end of a count time is the start of the next count time:

TTk+Tc/2=TTk+1Tc/2TT_{k}+T_{c}/2=TT_{k+1}-T_{c}/2 (40)

Given Eq. 40, two consecutive Doppler observables can be written as:

F2,3(TTk)\displaystyle F_{2,3}(TT_{k}) =M2fT[ρ(TTk+Tc/2)ρ(TTkTc/2)]/Tc\displaystyle=M_{2}f_{T}\left[\rho(TT_{k}+T_{c}/2)-\rho(TT_{k}-T_{c}/2)\right]/T_{c}
=M2fT[ρ(TTk+1Tc/2)ρ(TTkTc/2)]/Tc\displaystyle=M_{2}f_{T}\left[\rho(TT_{k+1}-T_{c}/2)-\rho(TT_{k}-T_{c}/2)\right]/T_{c} (41)
F2,3(TTk+1)\displaystyle F_{2,3}(TT_{k+1}) =M2fT[ρ(TTk+1+Tc/2)ρ(TTk+1Tc/2)]/Tc\displaystyle=M_{2}f_{T}\left[\rho(TT_{k+1}+T_{c}/2)-\rho(TT_{k+1}-T_{c}/2)\right]/T_{c}
=M2fT[ρ(TTk+2Tc/2)ρ(TTk+1Tc/2)]/Tc\displaystyle=M_{2}f_{T}\left[\rho(TT_{k+2}-T_{c}/2)-\rho(TT_{k+1}-T_{c}/2)\right]/T_{c} (42)

Hence, the rounding error in ρ(TTk+1Tc/2)\rho(TT_{k+1}-T_{c}/2) affects both F2,3(TTk)F_{2,3}(TT_{k}) and F2,3(TTk+1)F_{2,3}(TT_{k+1}). The autocorrelation function of ΔF2,3\Delta F_{2,3} is:

RΔF(τ)E[(ΔF(t))(ΔF(t+τ))]σΔF(t)σΔF(t+τ)2RΔρ(τ)RΔρ(τTc)RΔρ(τ+Tc)2[1RΔρ(Tc)]={1,if τ=0,1/2,if |τ|=Tc,0,if |τ|>Tc.R_{\Delta F}(\tau)\triangleq\frac{\operatorname{E}\left[\left(\Delta F(t)\right)\left(\Delta F(t+\tau)\right)\right]}{\sigma_{\Delta F(t)}\sigma_{\Delta F(t+\tau)}}\\ \simeq\frac{2R_{\Delta\rho}(\tau)-R_{\Delta\rho}(\tau-T_{c})-R_{\Delta\rho}(\tau+T_{c})}{2\left[1-R_{\Delta\rho}(T_{c})\right]}=\begin{cases}1,&\text{if $\tau=0$,}\\ -1/2,&\text{if $|\tau|=T_{c}$,}\\ 0,&\text{if $|\tau|>T_{c}$}.\end{cases} (43)

The variance of ΔF2,3\Delta F_{2,3} is proportional to the variance of Δρ\Delta\rho:

σΔF2,32(TT)=(M2fT/Tc)2[σΔρ2(TT+Tc/2)+σΔρ2(TTTc/2)]2(M2fTσΔρ(TT)/Tc)2\sigma^{2}_{\Delta F_{2,3}}(TT)=\left(M_{2}f_{T}/T_{c}\right)^{2}\left[\sigma^{2}_{\Delta\rho}(TT+T_{c}/2)+\sigma^{2}_{\Delta\rho}(TT-T_{c}/2)\right]\simeq 2\left(M_{2}f_{T}\sigma_{\Delta\rho}(TT)/T_{c}\right)^{2} (44)

Thus, the standard deviation of ΔF2,3\Delta F_{2,3}, representing the numerical noise level in Doppler observables, depends on:

  1. 1)

    Floating point word’s length: the number of bits used for the fractional part of the mantissa defines the amplitude of all round-off errors. At present, almost all hardware and compilers implement the IEEE-754 standard.

  2. 2)

    Time: the time at which the OD problem is settled defines the order of magnitude of all time epochs, thus defining the quantization step and the amplitude of the round-off errors in each time variable.

  3. 3)

    Geometry: the state vectors of all participants to the OD problem define two critical factors: the order of magnitude of the three components of each position vector, from which the range and the additional round-off errors derive, and the velocities of the participants that define the influence of time round-off errors in the observables.

  4. 4)

    Count time: Δρ\Delta\rho does not depend upon TcT_{c}, hence ΔF2,3\Delta F_{2,3} (and its standard deviation) varies with Tc1T_{c}^{-1}. As a reference a typical white-phase reference noise varies with Tc1/2T_{c}^{-1/2}.

III.3 Numerical Error Complete Model

The most delicate assumption on which the numerical noise model is based is the statistical characterization of the round-off errors using Widrow’s model. In order to verify this assumption and to study in detail the numerical errors, a Radiometric Observables Generator (ROG) computer code was developed. The program computes the two-way Doppler observables on the basis of Moyer’s DRD formulation, with the following simplifications:

  1. 1)

    The planetary ephemeris and the space-fixed state of the ground station were computed using the SPICE kernels and toolkit Acton:1996 .

  2. 2)

    The spacecraft trajectory was computed using the ODP, considering only the gravitational accelerations.

  3. 3)

    In the solution of the light-time problems and in the computation of the precision light-times only the Newtonian terms were considered.

To study the numerical errors in a realistic scenario, the spacecraft trajectory was integrated from the real state vector of ESA’s Rosetta interplanetary spacecraft from January 1, 2008555The spacecraft state was retrieved retrieved from the latest Rosetta’s SPICE kernels, available at ftp://psa.esac.esa.int/pub/mirror/INTERNATIONAL-ROSETTA-MISSION/SPICE/ROS-E-M-A-C-SPICE-6-V1.0/DATA/SPK/ [last accessed October 21, 2011]., to December 31, 2010. To simplify the simulation only gravitational accelerations were considered, neglecting all non-gravitational effects. Hence the ODP did not reproduce the real Rosetta trajectory, and in the following this scenario will be referred to as the “Rosetta-like scenario”.

All steps in the computations were performed using both the quadruple and double-precision floating point representation. Because the quadruple-precision machine epsilon is about 101810^{18} times smaller than the double-precision one, the numerical error in the quadruple-precision values can be neglected and the computed quantities can be considered as infinitely precise reference values. Hence, a very good estimation of the “real numerical errors” in each double-precision quantity can be obtained as the difference between the double-precision values and the quadruple-precision ones.

The ROG program was used to study all elementary round-off errors appearing in Eq. 36. As a result of the analysis, Widrow’s model was proven to be a good description of all round-off errors but Δt3¯\Delta\overline{t_{3}}, which cannot be considered a white random process, because its autocorrelation RΔt3¯(t,Tc)R_{\Delta\overline{t_{3}}}(t,T_{c}) is not a Dirac delta function. An example of the autocorrelation of Δt3¯\Delta\overline{t_{3}}, computed at two different passes, is shown in Fig. 2. This error can still be described using an immediate extension of Widrow’s model, obtained neglecting the whiteness property: Δt3¯\Delta\overline{t_{3}} is modeled as a non-white, wide-sense stationary (on a single pass), uniformly distributed with zero mean, random process.

It can be shown that the numerical error in t3t_{3} is the rounding error of the quantity (TephTAI)t3(T_{eph}-\text{TAI})_{t_{3}} considering the quantization step of t3t_{3}:

Δt3¯=round[(TephTAI)t3/q(t3)]q(t3)(TephTAI)t3\Delta\overline{t_{3}}=\operatorname{round}\left[(T_{eph}-\text{TAI})_{t_{3}}/q(t_{3})\right]\cdot q(t_{3})-(T_{eph}-\text{TAI})_{t_{3}} (45)

where (TephTAI)t(T_{eph}-\text{TAI})_{t} is the difference between the timescales TephT_{eph} and International Atomic Time (TAI) Terrien:1971 ; Terrien:1975 at ephemeris time tt. It is given by a number of relativistic terms and it is mainly a function of the Earth’s orbital motion around the Sun. Hence, this time difference is approximately a sinusoid with mean value 32.184s32.184\,\text{s}, peak-to-peak amplitude of about 3.3ms3.3\,\text{ms} and period of nearly 11 year. Moreover, Δt3¯\Delta\overline{t_{3}} is also a function of the quantization step of t3t_{3}, q(t3)q(t_{3}), that is a piecewise constant function of time.

The autocorrelation RΔt3¯(t,τ)R_{\Delta\overline{t_{3}}}(t,\tau) can be computed using the real error Δt3¯\Delta\overline{t_{3}} obtained from Eq. 45. Fig. 3, representing RΔt3¯(t,Tc)R_{\Delta\overline{t_{3}}}(t,T_{c}) using Tc=60sT_{c}=60\,\text{s}, shows a periodicity of 1/21/2 year that derives from (TephTAI)t(T_{eph}-\text{TAI})_{t} and, at about the middle of 2008, a discontinuity caused by the sudden doubling of q(t3)q(t_{3}).

Refer to caption
Figure 2: Autocorrelation of Δt3¯\Delta\overline{t_{3}}, computed on different tracking passes.
Refer to caption
Figure 3: Time variation of the autocorrelation of Δt3¯\Delta\overline{t_{3}} after Tc=60sT_{c}=60\,\text{s}.

Dropping the whiteness property of Δt3¯\Delta\overline{t_{3}}, the expected statistical characteristics of Δρ\Delta\rho and ΔF2,3\Delta F_{2,3} change. Δρ\Delta\rho has the same properties described in Sec. III.2, except that it is a non-white random process, and its autocorrelation is a function of the autocorrelation of Δt3¯\Delta\overline{t_{3}}:

RΔρ(t,τ)=[(r˙12+r˙23)/c]2σΔt3¯2/σΔρ2RΔt3¯(t,τ)R_{\Delta\rho}(t,\tau)=\left[\left(\dot{r}_{12}+\dot{r}_{23}\right)/c\right]^{2}\cdot\sigma^{2}_{\Delta\overline{t_{3}}}/\sigma^{2}_{\Delta\rho}\cdot R_{\Delta\overline{t_{3}}}(t,\tau) (46)

ΔF2,3\Delta F_{2,3} is a random process with the following characteristics:

  1. 1)

    Non-white, with a non-stationary autocorrelation RΔF2,3(t,τ)R_{\Delta F_{2,3}}(t,\tau).

  2. 2)

    Distribution: because of the autocorrelation of Δt3¯\Delta\overline{t_{3}}, the distribution may be very different from a bell-shaped curve. The expected probability density function of ΔF2,3\Delta F_{2,3} was not computed in this study, due its complexity and its very low practical utility.

  3. 3)

    Zero Mean.

  4. 4)

    ASDEV: the expected Allan standard deviation σy(τ)\sigma_{y}(\tau) is proportional to τ1\tau^{-1}.

  5. 5)

    Standard Deviation: Eq. 44 must be changed to account for the autocorrelation of Δt3¯\Delta\overline{t_{3}} after TcT_{c} seconds:

    σΔF2(TT)(M2fT/Tc)2[2σΔρ2(TT)2[r˙12(TT)+r˙23(TT)]2σΔt3¯2(TT)RΔt3¯(TT,Tc)/c2]\sigma_{\Delta F}^{2}(TT)\simeq\left(M_{2}f_{T}/T_{c}\right)^{2}\Biggl{[}2\,\sigma_{\Delta\rho}^{2}(TT)\\ -2\Bigl{[}\dot{r}_{12}(TT)+\dot{r}_{23}(TT)\Bigr{]}^{2}\cdot\sigma^{2}_{\Delta\overline{t_{3}}}(TT)\cdot R_{\Delta\overline{t_{3}}}(TT,T_{c})/c^{2}\Biggr{]} (47)

IV Model Validation

The complete numerical error model for Doppler observables described in Sec. III.3 was validated by analyzing the numerical noise in the Doppler observables computed by NASA/JPL’s ODP. The ODP is a state-of-the-art interplanetary OD program, developed since the 1960s at NASA’s JPL, and it has been used for navigation in almost all NASA missions controlled by JPL Tortora:2002 ; Tortora:2004 ; Bertotti:2008 .

For the purpose of this study, the ODP was used to replicate the “Rosetta-like scenario”, described in Sec. III.3, integrating the trajectory in the same cruise phase and computing the corresponding two-way Doppler observables with respect to an Earth ground station.

The numerical noise was extracted from the computed observables using the so-called “six-parameter fit”, a well known and simple method usually employed to estimate the noise content of Doppler observed observables Curkendall:1969 ; Bertotti:1995 . The fit is based upon a simplified formulation of the range-rate between the spacecraft and the Earth ground station:

r˙PAi(t)=r˙PE(t)+ωerscosδ(t)sin(ωet+α0+λsα(t)),i=1,3\dot{r}^{Ai}_{P}(t)=\dot{r}^{E}_{P}(t)+\omega_{e}r_{s}\cos{\delta(t)}\sin{\left(\omega_{e}t+\alpha_{0}+\lambda_{s}-\alpha(t)\right)},\qquad i=1,3 (48)

To take into account the Earth-spacecraft relative motion during the tracking pass, r˙PE(t)\dot{r}^{E}_{P}(t), δ(t)\delta(t), and α(t)\alpha(t) are expanded to a first-order Taylor time series centered at the start of the pass. Then, following Curkendall:1969 , from Eq. 48 the range-rate can be expressed as a linear combination of the following six functions:

1,tp,sinωetp,cosωetp,tpsinωetp,tpcosωetp1,\quad t_{p},\quad\sin{\omega_{e}t_{p}},\quad\cos{\omega_{e}t_{p}},\quad t_{p}\sin{\omega_{e}t_{p}},\quad t_{p}\cos{\omega_{e}t_{p}} (49)

From Eq. 16, the two-way and three-way Doppler observable is proportional to the mean range-rate during the count-time. Hence, during a single tracking pass, the six functions in Eq. 49 can be used to fit F2,3F_{2,3}, in a least-squares sense. The six estimated parameters, which define the fitting function, are related to the spacecraft geocentric state.

Due to the first-order approximation, the six-parameter fit can be successfully applied only in the cruise phase, when the spacecraft does not experience significant accelerations. Hence, during the numerical noise extraction, tracking passes corresponding to planetary fly-bys were neglected.

In the absence of artificial additive random quantities, the numerical noise is the only non-negligible noise in the computed observables. Hence, the analysis is based upon the assumption that the six-parameter fit is capable of approximating (in a least-squares sense) the theoretical, infinitely precise, computed Doppler observables, leaving only the numerical errors as the fit’s residuals.

For each tracking pass, the numerical noise extracted by the six-parameter fit from the two-way Doppler observables computed by the ODP, was compared to the model, in terms of the following statistical characteristics:

  1. 1)

    Mean: for all analyzed tracking passes the ratio of the residuals’ mean to their standard deviation remains bounded within 3×1083\times 10^{-8}, so it can be considered zero for practical purposes, as predicted by the model.

  2. 2)

    Standard Deviation: Fig. 4 shows that there is an optimal agreement between the model predictions and the real numerical error. The relative error is almost everywhere below 10%10\%, as shown in Fig. 5. The relative difference increases up to 20%20\% when the total numerical errors decrease to small values, so the absolute difference remains globally under 3×103mm/s3\times 10^{-3}\,\text{mm/s}, as represented in Fig. 6. The increase in the relative difference between the real values and the model is likely due to the approximations and simplifications introduced when developing the prediction model (e.g. the neglected rounding errors and the second order terms in the computation of the partial derivatives).

  3. 3)

    ASDEV: it follows very well the expected values and the expected τ1\tau^{-1} slope, as shown in Fig. 7.

Refer to caption
Figure 4: Six-parameter fit applied to the Doppler observables computed by the ODP: comparison between the standard deviation of the fit’s residuals, σODP\sigma_{ODP}, computed on each tracking pass, and the expected standard deviation of the numerical errors, σMOD\sigma_{MOD}, obtained from the final version of the model.
Refer to caption
Figure 5: Six-parameter fit applied to the Doppler observables computed by the ODP: ratio of the standard deviation of the fit’s residuals, σODP\sigma_{ODP}, to the expected standard deviation of the numerical errors, σMOD\sigma_{MOD}, obtained from the final version of the model. Each value is computed on a single tracking pass.
Refer to caption
Figure 6: Six-parameter fit applied to the Doppler observables computed by the ODP: difference between the standard deviation of the fit’s residuals, σODP\sigma_{ODP}, and the expected standard deviation of the numerical errors, σMOD\sigma_{MOD}, obtained from the final version of the model. Each value is computed on a single tracking pass.
Refer to caption
Figure 7: Six-parameter fit applied to the Doppler observables computed by the ODP: comparison between the Allan standard deviation of the fit’s residuals and the expected Allan standard deviation of the numerical errors, obtained from the final version of the model.

Summarizing, the developed model provides quantitative predictions of the different properties of the numerical noise in the Doppler observables. These predictions were compared to the actual characteristics of the numerical noise extracted from the ODP. The comparison results, displayed in Figs 4-7, highlight an optimal global agreement between the model and the experimental data. Moreover, as said in Sec. III, while developing the model many assumptions were made and different sources of numerical errors were neglected. Given the obtained results, these simplifications were proved not to affect significantly the accuracy of the model predictions. Hence, the numerical error model can be considered as fully validated at a level of accuracy adequate to a priori characterize the expected numerical noise in the radiometric observables of a real OD scenario.

V Analysis of Numerical Noise

V.1 Case study 1: the Cassini mission

The ODP is currently used for navigation and radio science in the Cassini mission to the Saturn system, recently extended to 2017. In particular, in November 2016 Cassini is planned to be inserted into low altitude orbits, characterized by a periapsis of about 1.11.1 Saturn radii, just inside the D ring. After about 42 orbits the spacecraft will impact the Saturn atmosphere in September, 2017 Smith:2009 . Due to the very low periapsis altitude, during this end of mission phase the expected scientific return of Gravity Radio Science Experiments is very relevant. As the ODP implements only the DRD formulation, the numerical error model described in this paper can be used to assess the expected numerical noise in Cassini’s computed Doppler observables.

Refer to caption
Figure 8: Numerical noise in Cassini’s two-way Doppler observables (TcT_{c}=60 s) during the cruise phase, from the beginning of 1998 to the middle of 2004.
Refer to caption
Figure 9: Numerical noise in Cassini’s two-way Doppler observables (TcT_{c}=60 s) during the Nominal Mission (from the middle of 2004 to the middle of 2008) and the Equinox Mission (from the middle of 2008 to the end of 2010).
Refer to caption
Figure 10: Numerical noise in Cassini’s two-way Doppler observables (TcT_{c}=60 s) during the Solstice Mission, from the end of 2010 to the end of 2017.

The expected numerical noise in Doppler data with a 60-second count time for the entire timespan of the Cassini mission is shown in Fig. 8, Fig. 9, and Fig. 10. The three plots represent the total numerical noise, plus the noise level due to each of the three error sources: representation of time (Time), position vectors (Range), and additional round-off errors (Additional). Note that the total noise curve is the square root of the sum of the three squared components. The following comments about Cassini’s numerical noise can be made:

  1. 1)

    The Range and Additional components have a similar trend and increase with Cassini’s distance from the Earth, reaching almost constant values with the arrival at Saturn’s orbit distance.

  2. 2)

    The time variation of the Time component is a function of the relative velocity between the ground station and the spacecraft, while the noise amplitude, and the mean level, are a function also of the time elapsed since J2000. Hence, the amplitude of the Time component decreases after launch, reaches the minimum value at J2000, and increases from J2000 becoming dominant until the end of mission. In Figs. 8-10 the instantaneous amplitude variation due to the time quantization step changes is clearly visible, for example at the beginning of 2002 and 2004, at the middle of 2008 and at the beginning of 2017. During the cruise phase of the Cassini mission, from the beginning of 1998 to the middle of 2004, the trend of the Time component of the numerical noise clearly shows an approximately half-year periodicity due to Earth’s orbital motion. After the Saturn Orbit Insertion (SOI), at the middle of 2004, the trend of the Time component is the superposition of the low-frequency Earth-Saturn relative motion and the higher frequency Cassini orbital motion around Saturn. As the figures were generated creating a single data point per day, the effect of the Earth’s rotation, which has a maximum value of about 4×105mm/s4\times 10^{-5}\,\text{mm/s}, is filtered out.

  3. 3)

    From the comparison of the three numerical error components, it can be stated that during the cruise phase, until the beginning of 2004, the three components had, on average, about the same order of magnitude. Since about the beginning of 2004, the Time component has increased and became dominant over the other sources, in almost the entire residual mission.

  4. 4)

    The current best accuracy in Cassini two-way Doppler tracking, with proper state-of-the-art calibrations and under favorable conditions, is about 9×104mm/s9\times 10^{-4}\,\text{mm/s} with a count time of 1000s1000\,\text{s}, and it was achieved during the Gravitational Wave Experiment (GWE), performed during the 2001-2002 solar opposition Armstrong:2003 . As another reference, during the Solar Conjunction Experiment (SCE) at the middle of 2002, a two-way fractional frequency stability of about 4.3×103mm/s4.3\times 10^{-3}\,\text{mm/s} was achieved, with a count time of 300s300\,\text{s} Bertotti:2003 . Assuming white phase noise, the corresponding noise level at 60s60\,\text{s} integration time is about 3.7×103mm/s3.7\times 10^{-3}\,\text{mm/s} for the GWE and about 9.5×103mm/s9.5\times 10^{-3}\,\text{mm/s} for the SCE. The expected numerical noise, with the same count time, has been of the same order of magnitude since about the beginning of 2001, and becomes up to 15 times larger at the beginning of 2017, near the end of mission. Note that this comparison does not reflect the numerical noise level experienced during these experiments, because they were performed using higher count times. White phase noise scales with Tc12T_{c}^{-\frac{1}{2}}, while the numerical noise scales with Tc1T_{c}^{-1}. For example, during GWE an accuracy of about 9×104mm/s9\times 10^{-4}\,\text{mm/s} was achieved, with a count time of 1000s1000\,\text{s}. At this count time the corresponding expected numerical noise is 4×10360/1000=2.4×104mm/s~4\times 10^{-3}\cdot 60/1000=2.4\times 10^{-4}\,\text{mm/s}.

Summarizing, the numerical noise is a very important source of error in Cassini’s OD carried out using the ODP, and will become a critical factor in 2017, during the proximal orbits phase.

V.2 Case study 2: the Juno mission

Juno is a NASA New Frontiers interplanetary mission to study the origin, interior structure, and evolution of the planet Jupiter Matousek:2007 . Juno was launched on August 15, 2011, and, after two Deep Space Maneuvers (DSM) and an Earth gravity assist, will reach Jupiter in July 2016. In August 2016, through the Jupiter Orbit Insertion (JOI) maneuver, it will be placed in a highly eccentric polar orbit around Jupiter. The nominal mission will end in September 2017, with an impact on Jupiter after a de-orbiting maneuver. The mission will consist of 31 science orbits, 25 of which will be dedicated to gravity radio science experiments. In fact, one of the main scientific objectives of the Juno mission is to map the Jupiter gravity field with unprecedented accuracy. During gravity orbits, a dual-frequency (at X- and Ka-band) two-way Doppler link will be established between the Goldstone Deep Space Network (DSN) complex666At present, only the Deep Space Station (DSS) 25 of the Goldstone site is capable of transmitting at Ka-band. and the spacecraft Juno, with a nominal observing interval of about 6 hours around perijove. This configuration, along with state-of-the-art troposphere calibration techniques, is expected to reach a two-way accuracy of 1.0×102mm/s1.0\times 10^{-2}\,\text{mm/s} at 60s60\,\text{s} integration time, during the entire mission Anderson:2004 .

As in the Cassini case study, the developed numerical error model can be used to assess the expected numerical noise in Juno’s computed two-way Doppler observables.

Refer to caption
Figure 11: Numerical noise in Juno’s two-way Doppler observables (TcT_{c}=60 s) during the cruise phase, from the end of 2011 to the end of 2016.
Refer to caption
Figure 12: Numerical noise in Juno’s two-way Doppler observables (TcT_{c}=60 s) during the Nominal Mission (from the end of 2016 to the end of 2017).

Fig. 11 and Fig. 12 show the expected numerical noise in two-way Doppler data with a count time of 60s60\,\text{s}, during the interplanetary cruise and nominal mission phases, respectively. As for the Cassini case study, the plots represent the total numerical noise and the three sources of numerical errors: representation of time (Time), position vectors (Range), and additional round-off errors (Additional).

For the Juno mission, considerations similar to those for the Cassini mission apply. In summary:

  1. 1)

    The numerical noise is dominated by the Time component during almost the entire mission duration. Comparing the Juno mission to the Cassini Solstice mission, the time variable assumes approximately the same values, but in the Juno mission the Range and Additional components have less influence on the total noise because of the shorter distance from the SSB (about 5.4AU5.4\,\text{AU} for SSB-Jupiter distance, about 10AU10\,\text{AU} for SSB-Saturn distance).

  2. 2)

    The Time component reflects the range-rate between the Earth and the spacecraft. In particular, during the nominal mission phase, the total range-rate is the superposition of the Earth-Jupiter relative motion, characterized by a period of about half a year, and the Jupiter-Juno orbital motion, characterized by a period of about 11days11\,\text{days}. As expected, at the beginning of 2017 the Time component instantaneously increases, and its value approximately doubles.

  3. 3)

    For a large portion of the mission, the total numerical noise is significantly larger than the expected two-way Doppler measurement accuracy of 1.0×102mm/s1.0\times 10^{-2}\,\text{mm/s} at 60s60\,\text{s} integration time. Hence, in order to fully exploit the capabilities of the high performance Juno Doppler link, it is necessary to reduce the numerical noise impact in the Doppler observables computed by the OD program.

VI Numerical Noise Reduction Strategies

On the basis of the developed model, three main strategies were identified to mitigate the numerical errors in the generation of the computed values of radiometric observables:

  1. 1)

    Compile the OD program using a higher precision floating point representation. Moving from the double-precision to quadruple-precision representation, all round-off errors decrease by about a factor of 101810^{18}, becoming completely negligible. As a side effect, the execution time of the OD process increases. However, because of the high complexity of the OD codes, the increase in the execution time cannot be evaluated a priori, but must be assessed through dedicated experimental tests. Several approaches to reduce the execution time can be applied, like parallelization or recompilation in quadruple-precision of a limited subset of procedures, with further effects of increasing the complexity of the source code.

  2. 2)

    Change the representation of time. As shown in Section V for the Cassini and Juno missions, the Time component of numerical noise represents the most important contribution in interplanetary OD problems. Hence, the numerical noise can be significantly reduced by changing only the time representation. Currently, both the ODP and AMFIN use a single double-precision variable to represent time. The accuracy in time representation could be increased using two variables in pairs, (n,tm)(n,t_{m}): an integer nn, representing the number of days elapsed since a reference epoch (such as J2000), and a double-precision value tmt_{m}, representing the time, in a defined measurement unit, elapsed since 00:00 of the current day. The next generation NASA/JPL’s OD program, “Mission-analysis, Operations, and Navigation Toolkit Environment” (MONTE), is also based upon the Moyer DRD formulation, but makes use of this new “extended-precision” time representation. As tm86400st_{m}\leq 86400\,\text{s}, the maximum time quantization step with MONTE will be about 1.5×1011s1.5\times 10^{-11}\,\text{s}, about 82008200 times smaller than the maximum quantization step of a double-precision time variable, measured in seconds past J2000, between 2017 and 2034. The corresponding effect in computed values of the radiometric observables is perfectly negligible. However, the round-off errors in the other numerical noise components (Additional and Range) remain unchanged, so they become the most important numerical error sources. The resulting numerical noise is roughly a function of the distance between the spacecraft and the tracking station. For example, for Cassini two-way Doppler data with Tc=60sT_{c}=60\,\text{s}, the maximum numerical noise will decrease from about 6×102mm/s6\times 10^{-2}\,\text{mm/s}, reached at end-of-mission, to about 6×103mm/s6\times 10^{-3}\,\text{mm/s}, nearly constant since Saturn Orbit Insertion at the middle of 2004. Similarly, for Juno two-way Doppler data with Tc=60sT_{c}=60\,\text{s}, the maximum numerical noise will decrease from about 6×102mm/s6\times 10^{-2}\,\text{mm/s}, computed at end of mission, to about 3.5×103mm/s3.5\times 10^{-3}\,\text{mm/s}, constant from the middle of 2015. In both cases the numerical noise will become smaller than the best expected Doppler measurement precision, still remaining a non-negligible error source. As a side effect, each operation explicitly involving time variables must be performed using custom functions, increasing the complexity of the source code. For example, the time interval between two epochs could not be computed as a simple difference, but must be performed through a dedicated function.

  3. 3)

    Use the Integrated Doppler formulation, which is much less influenced by numerical errors Moyer:1969 . According to this formulation, the Doppler observable is computed expanding the Doppler frequency shift in a Taylor time series. Averaging over the count time, terms proportional to the odd powers of TcT_{c} become zero. Hence, retaining only terms up to Tc2T_{c}^{2}, the intrinsic error of the ID formulation increases with Tc4T_{c}^{4}. The maximum allowable count time depends on the specific OD problem: for a desired accuracy of 102mm/s10^{-2}\,\text{mm/s}, the count time has to be less than 1-10 s if the spacecraft is close to a planet or a satellite, while in heliocentric cruise much longer count times can be used, up to 1000s1000\,\text{s} Moyer:1969 . On the contrary, the DRD formulation is theoretically exact, but is very sensitive to numerical errors, which increase as Tc1T_{c}^{-1} when reducing the count time. Hence, the numerical noise could be reduced using the ID formulation, but only at small count times. Moreover, the ID formulation can be only used with a constant uplink frequency. For most modern and future interplanetary missions, the uplink carrier frequency is varied in order to minimize the Doppler frequency shift observed by the spacecraft. The ID formulation is currently implemented only in AMFIN. It was implemented in older versions of the ODP, but it was then replaced by the DRD formulation.

VII Conclusions

In this paper a model of numerical errors in two-way and three-way Doppler observables computed using the Moyer differenced-range Doppler (DRD) formulation was described. The DRD formultation is currently implemented in the most important interplanetary orbit determination (OD) program: NASA/JPL’s “Orbit Determination Program” (ODP) and “Mission-analysis, Operations, and Navigation Toolkit Environment” (MONTE), and ESA’s “Advanced Modular Facility for Interplanetary Navigation” (AMFIN). The model was validated analyzing directly the numerical noise in Doppler observables computed by the ODP, extracted using a simplified fitting function, which was referred to as the “six-parameter fit”. In particular, the model showed an accuracy always better than 3×103mm/s3\times 10^{-3}\,\text{mm/s} in the estimation of the numerical noise standard deviation, at 60s60\,\text{s} integration time.

An accurate prediction of numerical noise can be used to compute a proper noise budget in Doppler tracking of interplanetary spacecraft. This represents a critical step for the design of future interplanetary missions, both for radio science experiments, requiring the highest level of accuracy, and spacecraft navigation. Moreover, the accurate prediction of numerical noise can also be used to identify enhancements in past radio science experiments, if an improved OD code, less affected by numerical errors, could be used to reprocess past archived data. On the basis of the numerical errors characterization, three different approaches to reduce the numerical noise were proposed.

As real-world scenario case studies, the expected numerical noise in the two-way Doppler link of the Cassini and Juno interplanetary missions was analyzed. As a result, the numerical noise proved to be, in general, not negligible. Furthermore, in some conditions, the numerical noise can be the dominant noise source in the OD process. Hence, the introduction of a reduced-numerical-noise OD program is considered mandatory, not only for future interplanetary missions to the outer planets, but also for the currently operational Cassini mission.

Acknowledgments

The authors would like to thank Frank Budnik from ESA/ESOC’s Flight Dynamics team, Marco Lanucara and Mattia Mercolino from ESA/ESOC’s Systems and Project Support Section, and Luciano Iess from “Sapienza” University of Rome, for the useful discussions on Doppler tracking error budgets. We are also grateful to John W. Armstrong and Frederic J. Pelletier from Jet Propulsion Laboratory, California Institute of Technology, for their careful revision of the manuscript. This work was funded in part by the Italian Space Agency (ASI) through Cassini-Huygens contract AMM-IAF-RM 02/2010.

References

References

  • (1) Armstrong, J. W., Iess, L., Tortora, P., and Bertotti, B., “Stochastic Gravitational Wave Background: Upper Limits in the 10610^{-6} to 10310^{-3} Hz Band,” The Astrophysical Journal, Vol. 599, No. 2, Dec. 2003, pp. 806-813. doi:10.1086/379505
  • (2) Asmar, S. W., Armstrong, J. W., Iess, L., and Tortora, P., “Spacecraft Doppler tracking: Noise budget and accuracy achievable in precision radio science observations,” Radio Science, Vol. 40, No. 2, 2005. doi:10.1029/2004RS003101
  • (3) Armstrong, J. W., “Low-frequency gravitational wave searches using spacecraft Doppler tracking,” Living Reviews in Relativity, Vol. 9, No. 1, 2006, http://www.livingreviews.org/lrr-2006-1 [retrieved 9 February 2012].
  • (4) Armstrong, J. W., Estabrook, F. B., Asmar, S. W., Iess, L., and Tortora, P., “Reducing antenna mechanical noise in precision spacecraft tracking,” Radio Science, Vol. 43, No. 3, June 2008. doi:10.1029/2007RS003766
  • (5) Iess et al., “ASTRA: Interdisciplinary Study on Enhancement of the End-To-End Accuracy for Spacecraft Tracking Techniques”, IAC-12.B2.1.10, 63rd International Astronautical Congress, 1-5 October 2012.
  • (6) Moyer, T. D., “Formulation for Observed and Computed Values of Deep Space Network Data Types for Navigation,” Jet Propulsion Laboratory Publication 00-7, Pasadena CA, 2000. doi:10.1002/0471728470
  • (7) Moyer, T. D., “Mathematical Formulation of the Double-Precision Orbit Determination Program (DPODP),” Jet Propulsion Laboratory Technical Report, TR 32-1527, Pasadena CA, 1971.
  • (8) Moyer, T. D., “Differenced-Range Doppler Versus Integrated Doppler,” The Deep Space Network, Space Programs Summary 37-60, Vol. II, Pasadena CA, 1969, pp. 125-136, http://hdl.handle.net/2060/19700013503 [retrieved 28 October 2012].
  • (9) “AMFIN mathematical description of algorithm,” ESOC Flight Dynamics Internal Technical Note, Apr. 2012.
  • (10) Iess, L., Asmar, S. W., and Tortora, P., “MORE: An advanced tracking experiment for the exploration of Mercury with the mission BepiColombo,” Acta Astronautica, Vol. 65, No. 5-6, Sep. 2009, pp. 666-675. doi:10.1016/j.actaastro.2009.01.049
  • (11) Anderson, J. D., Lau, E. L., Schubert, G., Palguta, J. L., “Gravity Inversion Considerations for Radio Doppler Data from the Juno Jupiter Polar Orbiter,” Bulletin of the American Astronomical Society, Vol. 36, American Astronomical Society, DPS Meeting 36, 2004, p. 1094.
  • (12) IEEE Std 754-2008, “IEEE Standard for Floating-Point Arithmetic,” IEEE Computer Society, Aug. 2008. doi:10.1109/IEEESTD.2008.4610935
  • (13) Goldberg, D., “What Every Computer Scientist Should Know about Floating-Point Arithmetic,” ACM Computing Surveys, Vol. 23, No. 1, 1991. doi:10.1145/103162.103163
  • (14) Widrow, B., “Statistical analysis of amplitude quantized sampled-data systems,” Trans. AIEE, Vol. 79, No. 2, Jan. 1961, pp. 555-567.
  • (15) Sripad, A., and Snyder, D., “A necessary and sufficient condition for quantization errors to be uniform and white,” IEEE Transactions on Acoustics, Speech, and Signal Processing, Vol. 25, No. 5, Oct. 1977, pp. 442-448. doi:10.1109/TASSP.1977.1162977
  • (16) Mariano, J., and Ramos, H., “Validity of Widrow’s model for sinusoidal signals,” Measurement, Vol. 39, No. 3, Apr. 2006, pp. 198-203. doi:10.1016/j.measurement.2005.11.009
  • (17) Standish, E. M., “Time scales in the JPL and CfA ephemerides,” Astronomy and Astrophysics, Vol. 336, 1998, pp. 381-384.
  • (18) Acton, C. H., “Ancillary data services of NASA’s Navigation and Ancillary Information Facility,” Planetary and Space Science, Vol. 44, No. 1, 1996, pp. 65-70. doi: 10.1016/0032-0633(95)00107-7
  • (19) Terrien, J., “News from the Bureau International des Poids et Mesures,” Metrologia, Vol. 8, No. 1, 1971, pp. 32-26. doi: 10.1088/0026-1394/7/1/008
  • (20) Terrien, J., “News from the Bureau International des Poids et Mesures,” Metrologia, Vol. 11, No. 4, 1975, pp. 179-183. doi: 10.1088/0026-1394/11/4/006
  • (21) Tortora, P., Iess, L., and Ekelund, J. E., “Accurate Navigation of Deep Space Probes using Multifrequency Links: the Cassini Breakthrough during Solar Conjunction Experiments,” IAF abstracts, Vol. 1, 34th COSPAR Scientific Assembly, 2002, p. 675.
  • (22) Tortora, P., Bordi, J. J., Ekelund, J. E., Iess, L., and Roth, D. C., “Precise Cassini Navigation During Solar Conjunctions Through Multifrequency Plasma Calibrations,” Journal of Guidance, Control, and Dynamics, Vol. 27, No. 2, Mar. 2004, pp. 251-257. doi: 10.2514/1.997
  • (23) Bertotti, B., Ashby, N., and Iess, L., “The effect of the motion of the Sun on the light-time in interplanetary relativity experiments,” Classical and Quantum Gravity, Vol. 25, No. 4, Feb. 2008. doi: 10.1088/0264-9381/25/4/045013
  • (24) Curkendall, D. W., and McReynolds, S. R., “A simplified approach for determining the information content of radio tracking data,” Journal of Spacecraft and Rockets, Vol. 6, No. 5, 1969, pp. 520-525. doi: 10.2514/3.29607
  • (25) Bertotti B., et al., “Search for gravitational wave trains with the spacecraft ULYSSES,” Astronomy and Astrophysics, Vol. 296, 1995, pp. 13-25.
  • (26) Smith, J., and Buffington, B., “Overview of the Cassini solstice mission trajectory,” Advances in the Astronautical Sciences, Vol. 135, No. 2, 2009, pp. 829-854.
  • (27) Bertotti, B., Iess, L., and Tortora, P., “A test of general relativity using radio links with the Cassini spacecraft,” Nature, Vol. 425, No. 6956, Sep. 2003, pp. 374-376. doi:10.1038/nature01997
  • (28) Matousek, S., “The Juno New Frontiers mission,” Acta Astronautica, Vol. 61, No. 10, Nov. 2007, pp. 932-939. doi: 10.1016/j.actaastro.2006.12.013