Next Article in Journal
Numerical Simulation Data-Aided Domain-Adaptive Generalization Method for Fault Diagnosis
Previous Article in Journal
A Review of Gait Analysis Using Gyroscopes and Inertial Measurement Units
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Uncertainty Quantification of First Fix in a Time-Differenced Carrier Phase Observation Model

1
Fédération ENAC ISAE-SUPAERO ONERA, Université de Toulouse, 7, Avenue Edouard Belin, 31400 Toulouse, France
2
Institut de Robòtica i Informàtica Industrial (IRII), CSIC-Universitat Politècnica de Catalunya, 08028 Barcelona, Spain
*
Author to whom correspondence should be addressed.
Sensors 2025, 25(11), 3480; https://doi.org/10.3390/s25113480
Submission received: 16 April 2025 / Revised: 16 May 2025 / Accepted: 30 May 2025 / Published: 31 May 2025
(This article belongs to the Section Navigation and Positioning)

Abstract

This paper presents an uncertainty quantification analysis of the first fix in a time-differenced carrier phase (TDCP) observation model. TDCP is a widely used method in GNSS-based odometry for precise positioning and displacement estimation. A key point in the TDCP modeling is the assumption that the GNSS receiver’s initial position is perfectly known, which is never exactly the case in real-world applications. This study assesses the impact of initial position errors on estimated displacement by formulating a correct TDCP model and a misspecified one, where the first position is not correct. Theoretical derivations provide a generic framework of estimation under the misspecified model and its associated mean squared error (MSE), as well as estimation performance bounds through the misspecified Cramer Rao bound (MCRB) for the considered case. These theoretical considerations are then used to build an estimator of the receiver’s displacement, with comparisons to the MCRB for performance evaluation. Extensive simulations using realistic GNSS geometry assess the influence of a first-fix error under various conditions, including different time intervals, first-fix error norms, and first-fix error direction. As an example, it is shown that for the considered geometry, if a TDCP of t 2 t 1 = 1 s is built with an initial first fix error norm Δ r 1 = 10   m , then it introduces an estimation of the displacement, with an error of norm equal to 1.3   m m , at most. The results indicate that the displacement estimation error is linearly related to the initial position error and the time interval between observations, highlighting the importance of accurate first-fix estimation for reliable TDCP-based odometry. The findings contribute to highlighting the order of magnitude of errors on solutions as a function of the error on parameters.

1. Introduction

Odometry is a fundamental technique used in robotics, autonomous vehicles, and geospatial applications for estimating the change in position of a moving system. It relies on sensors or data from systems like wheel encoders, inertial measurement units, vision sensors, lasers, or global navigation satellite systems (GNSS) to measure the motion of a vehicle or object. GNSS-based odometry has become an essential tool for achieving precise and reliable positioning and displacement estimation over long distances.
In GNSS-based odometry, the system estimates its positions and/or displacements by processing satellite observations. One of the most precise observations is the carrier phase observation. The carrier phase refers to the phase of the carrier wave used by satellites to transmit signals. This carrier phase observation is particularly valuable because it provides much higher accuracy (on the order of millimeters) compared to standard pseudorange measurements (with meter-level accuracy), making it ideal for precise positioning and odometry. However, this observation is ambiguous, the ambiguity being the integer number of wavelengths traveled by the signal. One way to get rid of this ambiguity, if constant over time, is to use the subtraction of two consecutive carrier phase observations and form what is known as the time-differenced carrier phase (TDCP) observation. This method is widely used in GNSS-based odometry to estimate the change in position over time. In TDCP, it is assumed that the integer ambiguities present in both carrier phase observations cancel out when the subtraction is built, allowing for highly accurate displacement estimation.
Uncertainty quantification refers to the process of quantifying the uncertainties in a quantity of interest by propagating the uncertainties in the input of a system. Uncertainty in GNSS measurements arises from various factors, such as observation noise or an approximate assumed position that is used when building observation models. Reviews about sources of error and their impact within GNSS systems are available in [1].
This paper proposes to focus on the TDCP model: when constructing the TDCP equations as a function of the receiver displacement, the receiver’s position must be known at one of the two epochs. This knowledge on position is never perfect and can affect the estimated displacement. To account for this, uncertainty quantification is used to assess the impact of this inaccuracy on the displacement estimate. By quantifying the uncertainty in the receiver’s position, one can evaluate how this error propagates through the TDCP equations and influences the displacement estimation. This helps in understanding the potential error margins and ensuring that the odometry results remain reliable, even when position uncertainties are present, thus improving the reliability of GNSS-based odometry in real-world applications.

2. Related Work

2.1. TDCP Models

Using a GNSS receiver, a system could estimate its speed vector at a given instant by means of Doppler observations. Once integrated, these speeds provide an estimation of the system’s displacement. It is known that the Doppler observations, when integrated, are noisier than carrier phase observations, though not sensitive to cycle slip [2]. For this reason, it is interesting to estimate a receiver displacement between two instants by means of TDCP.
In [3], the authors assume a perfectly known receiver position at the first epoch and use this information to run a Kalman filter with TDCP and substracted TDCP observations between satellites, along with a cycle slip detector. The source of the first position is not specified in the experiments. Also, the receiver-to-satellite unit vectors at the two epochs are known. To assess potential cycle slips, the cycle slip detector first generates a set of valid solutions (from a previous estimate, integrated IMU measurements and IMU specifications), and checks if the TDCP solution is within that set.
In [3,4], the authors build substracted TDCPs, i.e., the subtraction of TDCPs between two different satellites, in order to remove the receiver clock bias difference. The subtraction is done with the satellite with the highest elevation, as the receiver most likely receives a direct signal from this one. Still, to estimate the receiver displacement with these subtracted TDCPs, the authors assume known receiver-to-satellite vectors and receiver position at the first epoch of substracted TDCPs.
Some authors go further in the approximations of the TDCP model. In [5,6], the receiver-to-satellite unit vectors are assumed constant at the two TDCP epochs, leading to a unique receiver-to-satellite vector. It should be noted that this approximation requires the knowledge of the receiver position. Then, the receiver and satellite displacement vectors are projected onto this vector thanks to a scalar product. This makes the TDCP a linear model of the receiver displacement.
The same approximation is made in [2,7], where the author explains that the TDCP model is linearized around the estimated position at the previous epoch. Also, the authors build the single difference of carrier phase observations between satellites and between epochs.
In [8], a similar TDCP model is built, with a time between the two epochs ranging from 1   s to 60   s . Regarding the geometric part, the model includes two terms, the first one being a change of range between the satellite and the receiver, which requires the receiver position, and a second term where the estimated receiver displacement vector is projected onto the unit line-of-sight vector at the second epoch, which also requires the receiver position to be known. Also, a single line-of-sight vector is considered, even if the time of interval is 60   s . This TDCP model is used to build a TDCP factor inside a factor graph optimization problem. At the first epoch, a first position is set from a prior factor, and for other epochs, the first position is set from previous nodes. It should be noted that cycle slip factors are used to handle cycle slips.
In [9], the geometric part of the TDCP model is split into three terms, the first one due to the satellite motion along the line-of-sight, a second term that contains the receiver position at the first epoch, and the last term is a linear term of the receiver displacement and of the line-of-sight vector at the second epoch. All these terms require the knowledge of the receiver coordinates at the two epochs.
In [10], the authors leave the TDCP model as a function of the two receiver positions. The TDCPs are used in a factor graph optimization problem, where relative displacement factors from preintegrated inertial measurements are used. In the experimental part of their work, their proposed method outperforms two filtering methods that also use TDCP observations. This is likely due to a prior factor that sets the receiver position at the first epoch, although no details are given regarding this assumption.
Overall, within the GNSS community, many approximations of the TDCP model are provided, which all assume the known receiver coordinates in order to estimate a displacement.

2.2. Uncertainty Quantification

Uncertainty quantification can be defined as the process of assessing (and if possible, reducing) the impact of an uncertainty within a system on its output. It is a very general topic that applies to any engineering problem. In the case of a deterministic system, the uncertainty can either come from a lack of knowledge or from a probabilistic modeling of it. Indeed, when the system is probabilistic, the uncertainty directly comes from it. Regarding the quantification, multiple methods exist, depending on where the uncertainty comes from.
In [11], the authors deliver a Python library for uncertainty quantification, for very general cases, ranging from physics to applied mathematics, and with many algorithms.
Within the GNSS community, uncertainty quantification has already been applied. For example, in [12], the authors consider multiple sources of uncertainty, which propagates in GNSS reflectometry observations to estimate sea level. The quantification is made using the RMSE metric. In [13], the authors estimate a GNSS receiver position using noisy observations. The uncertainty is modeled by an Ornstein–Uhlenbeck random process, a Brownian random process, with learned parameters. The observations are run in a Kalman filter, and they find out that all these methods outperform, in terms of uncertainty, the direct approach which consists of running the Kalman Filter in a traditional way. In [14], from confidence volumes of Gaussian distributions, the authors provide analytical extensions of these volumes into zonotopes that take into account uncertainties of an observation model containing potential biases and/or random errors.

2.3. Overview of Proposed Method

In the estimation community, work on estimators built with misspecified models exist [15,16,17]. On the other hand, in the GNSS community, to the best of the author’s knowledge, the impact of a misspecified first position in a TDCP model has never been studied. Therefore, a correct TDCP model, as well as a misspecified one, is going to be built. The misspecified one will be different from the correct one by the fact that the true receiver position at the first epoch is never known perfectly. The receiver displacement will be estimated, and the receiver position at the second epoch will be deduced from the receiver position at the first epoch and the estimated displacement. No approximations will be made in these models. They will contain the subtraction of ranges, but these ranges will not be projected onto a line-of-sight vector, as has been done by previously mentioned authors. These two models will be compared experimentally, with multiple values around the true receiver position at the first epoch, in order to assess the importance of the receiver position at the first epoch in a TDCP model to properly estimate a receiver displacement.

3. Carrier Phase Observation Model and TDCP

3.1. Carrier Phase Observation Model

A GNSS receiver at epoch t of coordinates r t R 3 with a clock bias with respect to GPS time d t t r is tracking a satellite of coordinates s t R 3 with a clock bias with respect to GPS time d t t s .
The carrier phase observation is modeled as follows:
λ Φ t = s t r t + c · ( d t t r d t t s ) + λ N t I t + T t + m t + ε t Φ
where the subscript t is used to indicate that the parameters are expressed at epoch t, Φ t is the carrier phase raw measurement, λ is the wavelength of the considered frequency band, c is the speed of light, I t is the ionospheric delay, T t is the tropospheric delay, m t is the multipath error, N t Z is the integer ambiguity, ε t Φ is a centered Gaussian noise with standard deviation σ ϕ , and the norm of a vector v R 3 is defined as v = v T v .
In this model, the satellite coordinates s t and clock bias d t t s are known from the ephemeride information. In a precise point positioning (PPP) framework, the unknown quantities that are estimated are the receiver coordinates r t , the clock bias d t t r , the integer ambiguity N t , and possible other atmospheric states.

3.2. TDCP Observation Model and Corrections

Considering two carrier phase observations as in Equation (1) at epochs t 1 and t 2 from the same satellite, the TDCP model is built:
λ ( Φ 2 Φ 1 ) = s 2 r 2 s 1 r 1 + c · ( d t 2 r d t 2 s ) c · ( d t 1 r d t 1 s ) + λ · ( N 2 N 1 ) I 2 + I 1 + T 2 T 1 + m 2 m 1 + ε 2 Φ ε 1 Φ .
Correcting all the atmospheric terms [18,19] and satellite clock biases, assuming the difference between the two multipath terms is an additive centered Gaussian noise, and assuming no cycle slip ( N 2 N 1 = 0 ), the model (2) becomes:
λ ( Φ ˜ 2 Φ ˜ 1 ) = s 2 r 2 s 1 r 1 + c · ( d t 2 r d t 1 r ) + ε
where Φ ˜ t corresponds to the corrected carrier phase observation, ε is the contribution of the two independent errors ε 2 Φ ε 1 Φ , as well as all other mutually independent Gaussian centered residual errors after correction. Therefore, ε is a centered Gaussian noise with standard deviation σ TDCP > 2 σ ϕ . The assumption of constant ambiguity requires the use of a properly working cycle slip detector [20].
Written this way, the model in Equation (3) is a function of the receiver coordinates r 1 and r 2 and receiver clock biases d t 1 r and d t 2 r . While the use of multiple observations from other satellites (at least 4 for each epoch) with this model would still permit one to estimate all of these quantities, depending on the time elapsed between epochs t 1 and t 2 , the obtained result would be highly sensitive to noise, and the mean error of an optimal unbiased estimator would be very large. This is due to the fact that between two epochs, the receiver-to-satellite unit vectors would not change much, hence a linear approximation that is badly conditioned. This point discourages a user from estimating all these quantities directly using TDCP observations unless considering a very large time interval between the two considered epochs.
Regarding the ephemerides, in [9], the authors compared the use of final products (i.e., high-precision satellite coordinates in post-processing conditions) versus real-time navigation data and figured out that the use of final products would not improve the solution with respect to the use of navigation data, as between the two epochs, if the same set of ephemerides is used, the satellites positions errors are approximately constant. On the other hand, they figured out that when the set of ephemeride parameters is updated, a gap appears in the satellite positions, which adds an important error in a TDCP model if this update happens between the two epochs. To cancel this phenomenon, it is therefore important to use the same set of ephemerides in a TDCP model.

3.3. TDCP Model with True Receiver Position and Receiver Displacement

The model in Equation (3) can be expressed in terms of receiver displacement and clock bias difference. The receiver displacement vector between epochs t 1 and t 2 is defined as r 1 , 2 r 2 r 1 , and the receiver clock bias difference between epochs t 1 and t 2 is defined as d t 1 , 2 r d t t 2 r d t t 1 r . With these notations, the model in Equation (3) is written as:
λ ( Φ ˜ 2 Φ ˜ 1 ) = f r 1 ( r 1 , 2 , d t 1 , 2 r ) + ε .
where
f r 1 : R 3 × R R ( x 1 , x 2 ) s 2 ( r 1 + x 1 ) s 1 r 1 + c · x 2 .
The index indicates that this function is not a function of the receiver coordinates but of its displacement, with the position at epoch t 1 set to r 1 , and not of a receiver clock bias, but of its clock bias difference. Given a set of visible satellites, this observation model and TDCP observations can be built for each satellite. The set of models and observations can then be used to estimate the receiver displacement vector and clock bias difference by solving the maximum likelihood problem. In practice, the receiver position r 1 is not perfectly known. Therefore, in the next subsection, an error term will be introduced, leading to a different model.

3.4. TDCP Model with Assumed Receiver Position and Receiver Displacement

The previous model f r 1 in Equation (5) assumed perfect knowledge of the true receiver coordinates r 1 . In practice, these coordinates can be inaccurate. A first fix denotes an estimated initial position r ^ 1 of the true initial position r 1 . Therefore, the error between the true coordinates and the assumed ones are defined as Δ r 1 r ^ 1 r 1 . From these notations, the true model is the one in Equation (5) while the assumed one is:
f r ^ 1 : R 3 × R R ( x 1 , x 2 ) s 2 ( r ^ 1 + x 1 ) s 1 r ^ 1 + c . x 2 .
One can notice that r ^ 1 = r 1 f r ^ 1 = f r 1 .
In order to quantify the difference between the two models as a function of Δ r 1 , one defines the difference between the assumed model Equation (6) and the true model Equation (5), expressed as a function of the error Δ r 1 , for the true receiver displacement and the true receiver clock bias difference:
Δ f : R 3 R Δ r 1 f r 1 + Δ r 1 ( r 1 , 2 , d t 1 , 2 r ) f r 1 ( r 1 , 2 , d t 1 , 2 r ) .
It can be noted that this application cancels all the clock biases terms, and only the difference in the geometric ranges remains:
Δ f ( Δ r 1 ) = s 2 r 1 + Δ r 1 + r 1 , 2 s 1 r 1 + Δ r 1 s 2 r 1 + r 1 , 2 + s 1 r 1 .
Therefore, the first fix r ^ 1 may have an impact on the estimated receiver displacement and clock bias difference.
In general, the use of a misspecified model to estimate parameters has an impact on the estimation. The objective of the following sections is to experimentally assess the estimation error due to a fix error Δ r 1 .

3.5. Estimation of a Receiver Displacement and Clock Bias Difference from TDCP Observations

Now that a misspecified TDCP model has been written in Equation (6), one can estimate a receiver displacement and clock bias difference from a set of m visible satellites at the two epochs t 1 and t 2 and from the set of TDCP observations at these epochs. A receiver’s displacement estimator is going to be defined and is denoted r 1 , 2 ^ . The second epoch receiver’s position estimator is denoted r ^ 2 r ^ 1 + r 1 , 2 ^ . A 2D representation of the TDCP model, for a single satellite, is visible in Figure 1.
To assess the degradation of the displacement estimation due to a misspecified first fix, one can explicitly write this estimator, compute its statistical properties, and assess the impact of Δ r 1 on it. In the next section, theoretical elements are provided to achieve these objectives.

4. Estimation: Computation of Mean Squared Error and Its Lower Bound

This section uses a more general framework than the one used so far in this article and provides the theoretical elements to build an estimator of a vector of parameters living in a Euclidean space from a multivariate Gaussian random variable. In the considered framework, the mean value of the Gaussian random variable is misspecified. This uncertainty is going to impact the estimator’s performances, and one proposes to quantify this impact. Additionally, this section provides a theory to compute the statistical properties of this estimator. Finally, the link with the original problem (the estimation of a GNSS receiver’s displacement and clock bias difference, from a set of TDCP observations) is made.

4.1. Estimator of a Real Vector

Given an unknown vector θ R n and a function g : R n R m differentiable at θ , one obtains a vector of observations:
y = g ( θ ) + ε , ε N ( 0 , R ) .
where N μ , Σ denotes the multivariate Gaussian distribution with mean vector μ and covariance matrix Σ . In this study, the function g is unknown, i.e., the construction of an estimator of θ will be based on a function h : R n R m .
Since y N ( g ( θ ) , R ) , but g is unknown, one defines the misspecified likelihood function:
q y : R n R x 1 ( 2 π ) m 2 | R | exp 1 2 y h ( x ) R 2
where v R 2 v T R 1 v . The mismatched maximum likelihood estimator (MMLE) is defined as:
θ ^ arg max x R n q y ( x ) = arg min x R n y h ( x ) R 2
as long as the above equation is a measurable function of y . θ ^ is Gaussian if and only if h is a linear or affine function. In general, computing its distribution or statistical properties is not straightforward. Instead, an approximation of θ ^ is defined: assuming that the function h is differentiable on a set S R n , then one can choose a vector θ 0 S , and the function can be written:
x R n , h ( x ) = h ( θ 0 ) + H θ 0 ( x θ 0 ) + o ( x θ 0 )
where H θ 0 represents the Jacobian matrix of h at θ 0 . This way, the function h is replaced by its first order development at θ 0 in the misspecified likelihood Equation (10), leading to:
θ ^ arg min x R n y h ( θ 0 ) + H θ 0 x θ 0 R 2 .
The vector θ 0 can be obtained by running the Gauss–Newton algorithm with a sample of y and an arbitrary initial estimate. Under certain conditions on the function h and on the step size [21], the Gauss–Newton algorithm is guaranteed to converge to a local minima and give an estimate (denoted θ 0 ). The proposed approach assumes that the function h is not too nonlinear (in particular, that from the definition of an operator norm, H θ 0 H θ 0 ).
If H θ 0 represents an injective application, one defines the matrix:
S H θ 0 T R 1 H θ 0 1 H θ 0 T R 1 .
The solution of the optimization problem Equation (13) is given by:
θ ^ S y h ( θ 0 ) + θ 0 .
In this case, θ ^ is approximated by a Gaussian random vector.

4.2. Properties of the Estimator

Now that an estimator Equation (15) is available, some of its statistical properties are provided. One determines that:
  • Since y N ( g ( θ ) , R ) , the estimators’s mean vector is E θ ^ = S g ( θ ) h ( θ 0 ) + θ 0 ;
  • The estimator’s bias is b θ ^ = S g ( θ ) h ( θ 0 ) + θ 0 θ ;
  • Since θ ^ E θ ^ = S ε , the estimator’s covariance matrix is V θ ^ = S R S T = H θ 0 T R 1 H θ 0 1 .
Defining the mean squared error operator MSE θ ^ E ( θ ^ θ ) ( θ ^ θ ) T , it can be shown that:
MSE θ ^ = V θ ^ + b θ ^ b θ ^ T .

4.3. Lower Bound of the Mean Squared Error of a Biased Estimator

Formally, an estimator is a measurable function that takes as input a random variable (often called observations), and with an output space that contains the vector of parameters to estimate. In the estimation theory, it is known that among all estimators, with the same input random variable and the same output space, there exists a lower bound for the mean squared error [22]. Therefore, it is interesting to construct it and compare it with the mean squared error of the considered estimator.
The misspecified Cramer–Rao Bound (MCRB) is defined as [23]:
MCRB I n + Ψ θ I θ 1 I n + Ψ θ T + b θ ^ b θ ^ T
where I n represents the identity matrix of size n.
The term Ψ θ represents the Jacobian matrix of the estimator’s bias, denoted b θ ^ , at the vector θ , when it is seen as a function of the true vector of parameters θ . The previous section has shown that, in general, the considered estimator θ ^ is biased. Therefore, one defines this bias function as:
ψ : R n R n x S g ( x ) h ( θ 0 ) + θ 0 x .
The Jacobian matrix of ψ at θ is given by:
Ψ θ = S G θ I n
where G θ indicates the Jacobian matrix of g at θ .
The term I θ denotes the Fisher Information matrix [23]. Since y N ( g ( θ ) , R ) , the likelihood function is given by:
l y : R n R x 1 ( 2 π ) m 2 R exp 1 2 y g ( x ) R 2 .
Under some regularity conditions [22], the Fisher Information matrix is defined as:
I θ E d θ 2 ( log l y )
where d θ 2 f corresponds to the Hessian matrix of a function f at θ . In the considered case, one can show that:
I θ = G θ T R 1 G θ .
Finally, assuming that G θ represents an injective application, then the Fisher Information matrix invert is well defined.
Finally, a theorem states that [23]:
MSE θ ^ MCRB
where the inequality symbol ≥ represents the Loewner partial order.

4.4. Application to the Problem

Now that a theoretical framework has been written, it can be used to estimate a GNSS receiver displacement and clock bias difference from a misspecified TDCP observation model and quantify the impact of this misspecified model on the estimated displacement. The link between the different quantities introduced in the previous sections is summarized in Table 1. In the next section, the receiver displacement and clock bias difference will be estimated from a set of TDCP observations of m satellites.

5. Experiments

In this experiment, the set of all visible GPS satellites in Toulouse, France, on the first of January 2024, 12:00 UTC are considered. A skyplot is provided in Figure 2. A synthetic GNSS receiver is constructed, with known coordinates r 1 . Its displacement vector is a sample of a random zero-mean Gaussian random variable with a covariance matrix proportional to the time interval between successive epochs, i.e., r 1 , 2 is a sample of the random variable N 0 3 , t 2 t 1 I 3 , as this stochastic model captures small random movements of the receiver between epochs while maintaining a realistic representation of a pedestrian receiver over short timescales [24,25]. The receiver clock bias difference d t 1 , 2 r is a sample of the law N 0 , t 2 t 1 .
The satellite positions are derived from precise orbit data provided in the Standard Product 3 (SP3) format. These SP3 files offer highly accurate satellite ephemerides, providing the real positions of GPS satellites. This ensures that the data reflect actual satellite orbits, further enhancing the realism of the simulation.

5.1. Experimental Uncertainty Quantification of TDCP Model

The first experiment characterizes the TDCP model Equation (7), for a single satellite. A satellite is chosen (G17). For each value of Δ r 1 , a value for Δ f Equation (7) is obtained, indicating the discrepancy between the two TDCP models.
In Figure 3 and Figure 4, the set of values taken by Δ r 1 is set to the unit sphere in order to study the importance of its direction. The time between the two epochs is set to t 2 t 1 = 1   s , which is a common value in standard receivers. The figures indicate that the discrepancy between the two models is maximum and minimum on two antipodal points, is null on the equator defined by these two antipodal points, and is continuous, as there is no rapid change of value.
In Appendix A, one shows that the maximum and minimum errors are along the direction given by the vector s 2 s 1 r 1 , 2 , which approximately corresponds to the satellite displacement, and the error is null for orthogonal vectors to this direction.
Overall, the error is low compared to the norm of the first position error, with a maximum error that is approximately 10 4 lower than Δ r 1 .
The same experiment is conducted with a much higher first fix error (i.e., a larger sphere). The results are visible in Figure 5 and Figure 6. Again, the worst direction is given by the vector s 2 s 1 r 1 , 2 , and one observes a ratio between Δ r 1 and Δ f approximately equal to 10 4 in the worst cases.
The study of the worst case direction is further extended, this time by observing the values taken by Δ f on the set Δ r 1 s 2 s 1 r 1 , 2 , for multiple time intervals t 2 t 1 . The results are visible in Figure 7. For convenience, a log-log plot is used. For all the considered time intervals t 2 t 1 , the plots indicate a linear relation between the model mismatch Δ f and the norm of the first-fix error Δ r 1 since the slope of all the curves is equal to 1 and from Equation (8), Δ f ( 0 ) = 0 . For each value of the time interval, the linear coefficient can be read at Δ r 1 = 1   m . For example, in the case of t 2 t 1 = 1   s , this coefficient is equal to 1.2 × 10 4 . See Appendix B for a computation of these values. It is visible that the linear coefficient depends on the time interval: the greater the time interval, the greater the coefficient. One can conclude that for a given value of Δ r 1 , the greater the time interval, the greater the model mismatch.
Finally, the largest value taken by Δ f is computed, for the product of a set of values of Δ r 1 and of a set of time intervals between the two observation epochs. This is done in order to explore how the movement of satellites over time would affect the model mismatch. By extending the time between successive observations, the GNSS satellites in the sky change their positions more significantly due to their dynamics. The purpose of this application is to capture a wider range of applications, which can influence the accuracy and reliability of the positioning solutions. These values are visible in Table 2. Omitting rounding errors, the values taken show a bilinear relation with Δ r 1 and t 2 t 1 . This result is hard to predict, as Δ f is not a linear function of Δ r 1 , and is even harder to predict for t 2 t 1 , as the time interval does not explicitly appear in Δ f .
Now that the model mismatch has been characterized for a single satellite, multiple satellites are going to be used to estimate the receiver’s displacement and clock bias difference.

5.2. Experimental Uncertainty Quantification of Estimated Displacement with Noiseless Measurements

In this experiment, the receiver’s true positions r 1 and r 2 are set as previously explained, and the receiver’s clock bias difference follows a zero-mean Gaussian random variable, with a variance proportional to the time interval t 2 t 1 . The set of all visible GPS satellites at the two epochs is used to generate noiseless synthetic TDCP measurements, as in Equation (3), with σ TDCP = 0 . They are used to estimate the receiver displacement and clock bias difference between the two epochs, following Equation (6). The choice regarding noiseless measurements is made in order to have an error of displacement estimation due to a first-fix error only.
For the metric, since the interest is in the estimation of the receiver displacement vector r 1 , 2 ^ , the mean squared error matrix is expressed in a basis such that the submatrix corresponding to the geometrical part is extracted and is denoted MSE , and the square root of the trace of this matrix is computed, i.e., Tr MSE . This choice is made in order to plot the mean Euclidean distance error. Also, denoting PDOP the position dilution of precision, this metric is equal to σ TDCP × PDOP , in the case of independent and identically distributed noise [26].
In Figure 8 and Figure 9, the set of values taken by Δ r 1 corresponds to two spheres with different radii, i.e., for two values of Δ r 1 . The time interval is set to t 2 t 1 = 1   s . These two plots have the same shape: two modes on the sphere, whose maximum values are close to antipodal and no direction where the estimation error is null. Although these figures look similar, they differ by the magnitude of the values. The local Up and North directions are displayed, but they do not show any link with the errors. More generally, experiments lead to the conclusion that for any value of Δ r 1 , the obtained plot has a shape similar to the ones in Figure 8 and Figure 9, and that the set of values taken by Tr MSE is linear with respect to Δ r 1 .
In order to show these conclusions, the estimation error is studied in a given direction, which is defined by the angles θ = π 2 and ϕ = π 2 in the ECEF frame. The reason why this direction is chosen is that it corresponds approximately to the direction where Tr MSE is maximum for a given value of Δ r 1 .
First, in Figure 10, the estimation error is displayed as a function of Δ r 1 for multiple time intervals. It shows a linear relation between the estimation error and the norm of the first-fix error for all the time intervals, as the slopes of the curves are all equal to 1. The linear coefficient between Tr MSE and Δ r 1 can be read for Δ r 1 = 1   m : the greater the time interval, the greater the coefficient. Again, the linearity is hard to predict, as writing the value of Tr MSE as a linear function of Δ r 1 , when restricted to a specific direction, is not straightforward.
In Figure 11, the estimation error is displayed as a function of t 2 t 1 , for multiple values of Δ r 1 . Again, it shows a linear relation between the estimation error Tr MSE and the time interval t 2 t 1 , for all the values of Δ r 1 . The linear coefficient between Tr MSE and t 2 t 1 can be read for t 2 t 1 = 1   s : the greater is Δ r 1 , the greater is the coefficient. This result is hard to predict, as Tr MSE is not an explicit function of t 2 t 1 .
Finally, Table 3 and Table 4 present visible minimum and maximum values of Tr MSE , respectively, for multiple values of t 2 t 1 and for multiple values of Δ r 1 . Decomposing Tr MSE in its horizontal and vertical components, in Table 5 and Table 6 are the maximum value of Tr MSE in the horizontal plane and vertical line, respectively, for multiple values of t 2 t 1 and for multiple values of Δ r 1 . Omitting rounding errors and cases where both Δ r 1 and t 2 t 1 are very large, both the minimum and maximum values are linear with respect to Δ r 1 , but not linear with respect to t 2 t 1 . The non-linearity with respect to time is due to the disappearance of G 14 after a few minutes, meaning it is not considered in the solution for t 2 t 1 = 30 min . Again, the linearity is hard to predict, as writing the maximum or minimum values of Tr MSE on a sphere, as a linear function of Δ r 1 is not straightforward. From these tables, conclusions can be made regarding the validity of the first-fix approximation. For example, if one has to estimate a receiver displacement such that r 1 , 2 ^ r 1 , 2 1.3   m m , for a time interval of 1   s , for an initial error of the worst amplitude Δ r 1 = 10   m , then the approximation r 1 r ^ 1 is not acceptable, without considering any other source of perturbation.
Overall, it is experimentally shown that the greater Δ r 1 , the greater Tr MSE , with a linear factor between these two quantities that depends on the time interval t 2 t 1 .

5.3. Experimental Uncertainty Quantification of Estimated Displacement with Noisy Measurements

In the same scenario as the previous section, noisy measurements are generated following Equation (3), with σ TDCP = 2 σ ϕ and σ ϕ = λ L 1 × 10 1   m , with λ L 1 denoting the wavelength of the L 1 frequency band. The time interval is set to t 2 t 1 = 1   s . Note that alternative noise models could also be considered in order to reflect more realistic weighting schemes. For instance, by incorporating satellite elevation-dependent variances.
As explained previously, since the interest is in the estimation of the receiver displacement vector r 1 , 2 ^ , the quantity Tr MSE is computed by extracting the geometrical part of the MSE matrix. The same process is applied to the MCRB matrix, and the square root of the trace is computed. This choice is justified by the fact that the Loewner partial order has the following property: for all pairs of real symmetric positive semi-definite matrices A and B , A B Tr A Tr B (in particular, Tr A 0 ).
Figure 12 shows Tr MSE for Δ r 1   = 1   m . On the same set, the difference between Tr MSE and its lower bound Tr MCRB is visible in Figure 13. The results indicate that, as was the case in the absence of noise, the error is characterized by two modes on the sphere. Also, the estimator’s error is close to the lowest value that it can reach, with no particular direction appearing.
Figure 14 and Figure 15 depict the same experiment, with Δ r 1   = 1   k m . Again, the results indicate that the estimator’s error is close to the lowest value that it can reach.
Finally, as done previously, the estimation error is studied along an axis defined by the angles θ = π 2 and ϕ = π 2 in the ECEF frame. Figure 16 shows the error and its lower bound. At Δ r 1 = 0 , the estimation error is due to the variance of the additive noise within the observations. This noise term adds up to the bias as Δ r 1 increases, which produces the curve that is observed. For large values of Δ r 1 , the error is mainly due to the misspecified model. Also, the results indicate that the estimator’s error has reached the lowest value possible.
In the last experiment, Figure 17 depicts the maximum value of Tr MSE as a function of Δ r 1 .
To conclude this section, one can say that all the estimators built in these experiments are close to the MCRB. The mean error depends on the amount of noise in the observations, and on the misspecification of the model used.

6. Conclusions and Future Work

The TDCP model is expressed as a function of a GNSS receiver displacement and clock bias difference. The impact on the estimated displacement of the uncertainty regarding the receiver coordinates at the first epoch has been quantified for a given geometry at a given location. A similar study can be run in real-time by any user anywhere in the world, as the proposed method does not rely on final products, and real-time ephemerides would provide similar results. Considering the displacement estimation error due to a misspecified first fix only from a set of TDCP observations and given criteria on the precision of the estimated displacement, the provided tables are an indicator of the validity of the first fix. It is experimentally shown that for long time intervals, the impact is important. This is due to the fact that for long time intervals, the satellite coordinates change more, and lead to different receiver-to-satellite unit vectors. This effect would be more prominent when the considered satellites are at a low altitude. Therefore, when considering Low Earth Orbit satellites, whose displacements are much faster than GNSS satellites in Medium Earth Orbits, the impact would be greater. One might also notice that the same experiment could be transposed to an RTK framework: at a given epoch, the station coordinates are known, the baseline vector corresponds to the receiver displacement, and the single difference between receivers would correspond to TDCPs.

Author Contributions

Conceptualization: all authors; methodology: all authors; software: H.C.; validation: J.L., J.S. and P.T.; formal analysis: all authors; investigation: all authors; resources: all authors; data curation: all authors; writing—original draft preparation: H.C.; writing—review and editing: J.L., J.S. and P.T.; visualization: all authors; supervision: all authors; project administration: all authors; funding acquisition: J.S. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the EBCON Project under Grant PID2020119244GB-I00, and in part by the Consolidated Research Group RAIG under Grant 2021 SGR 00510 of the Departament de Recerca i Universitats de la Generalitat de Catalunya.

Institutional Review Board Statement

Not applicable.

Data Availability Statement

The original contributions presented in the study are included in the article, further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Appendix A. Direction of Null and Extremum Model Error

Recalling that Δ r 1 = r ^ 1 r 1 and that Equation (8) is the function Δ f that maps an error Δ r 1 to a model error:
Δ f ( Δ r 1 ) = s 2 r 1 r 1 , 2 Δ r 1 s 2 r 1 r 1 , 2 ( s 1 r 1 Δ r 1 s 1 r 1 )
where x = x , x and x , y = x T y is the dot product on R 3 . Defining a s 2 r 1 r 1 , 2 and b s 1 r 1 , one obtains
Δ f ( Δ r 1 ) = a Δ r 1 a ( b Δ r 1 b ) .
Given that Δ f ( 0 ) = 0 , one obtains
Δ f ( Δ r 1 ) = d ( Δ f ) 0 ( Δ r 1 ) + o ( Δ r 1 ) = a a b b , Δ r 1 + o ( Δ r 1 )
where d ( Δ f ) 0 ( Δ r 1 ) is the differential of Δ f at 0 , evaluated at Δ r 1 . If this term had to be expressed in the canonical bases of R 3 and R , it would be equal to the Jacobian matrix of Δ f at 0 multiplied by Δ r 1 . Therefore, in a neighborhood of 0 , the linear approximation of Δ f is given by:
Δ f ( Δ r 1 ) a a b b , Δ r 1 .
Now, one has to study the vector a a b b and give it a geometrical interpretation, other than being the difference between two very close unit vectors. One defines the function:
γ : R 3 R 3 , x a a a + x a + x ,
and defining v b a = s 2 s 1 r 1 , 2 , one obtains
a a b b = a a a + v a + v = γ ( v ) .
Now that the vector a a b b is expressed as a valuation of the function γ , a linear approximation of it is given: it can be shown that α R 3 { a } , x R 3 :
γ ( α + x ) = γ ( α ) + d γ α ( x ) + o ( x )
where d γ α ( x ) is the differential of γ at α , evaluated at x . If this term had to be expressed in the canonical basis of R 3 , it would be equal to the Jacobian matrix of γ at α multiplied by x .
One can show that:
d γ α ( x ) = 1 a + α x a + α a + α a + α a + α , x .
Since γ ( 0 ) = 0 , the linear approximation of the function γ around 0 is given by:
γ ( x ) 1 a x a a a a , x .
As the vector v is an infinitesimal and orthogonal vector, with respect to the vector a = s 2 r 2 , the scalar product term a a , v is neglected:
a a b b = γ ( v ) v a = a b a .
Finally, Δ f ( Δ r 1 ) 0 a b a , Δ r 1 0 , i.e., the model error is null for any error Δ r 1 orthogonal to a b = s 2 s 1 r 1 , 2 , and the directions of extremum error are given by the vector s 2 s 1 r 1 , 2 .

Appendix B. Model Error Along the Worst Direction

As a reminder, in Appendix A, the vectors a s 2 r 1 r 1 , 2 and b s 1 r 1 are defined, and the vector v = a b is shown to be the vector that defines the direction of extremum error. Here, the model error Δ f of Equation (7) is studied along a one-dimensional subspace: for any unit vector e , considering the application:
ϕ : R R λ Δ f λ e
with
Δ f λ e = a λ e a b λ e b ,
one finds out that the derivative of ϕ at λ is given by:
ϕ ( λ ) = a λ e , e a λ e + b λ e , e b λ e .
Finally, if e = v v and Δ r 1 = λ e , λ R , then Δ r 1 = λ and one has obtained the derivative of ϕ at Δ r 1 along the direction of v .

References

  1. Rustamov, R.B.; Hashimov, A.M. Multifunctional Operation and Application of GPS; IntechOpen: Rijeka, Croatia, 2018. [Google Scholar]
  2. Congram, B.; Barfoot, T.D. Experimental Comparison of Visual and Single-Receiver GPS Odometry. arXiv 2021, arXiv:2106.02122. [Google Scholar]
  3. Kim, J.; Park, M.; Bae, Y.; Kim, O.J.; Kim, D.; Kim, B.; Kee, C. A Low-Cost, High-Precision Vehicle Navigation System for Deep Urban Multipath Environment Using TDCP Measurements. Sensors 2020, 20, 3254. [Google Scholar] [CrossRef] [PubMed]
  4. Chen, K.; Chang, G.; Chen, C.; Zhu, T. An improved TDCP-GNSS/INS integration scheme considering small cycle slip for low-cost land vehicular applications. Meas. Sci. Technol. 2021, 32, 055006. [Google Scholar] [CrossRef]
  5. Ji, L.; Sun, R.; Cheng, Q.; Wang, J. Evaluation of the performance of GNSS-based velocity estimation algorithms. Satell. Navig. 2022, 3, 18. [Google Scholar] [CrossRef]
  6. Sun, R.; Cheng, Q.; Wang, J. Precise vehicle dynamic heading and pitch angle estimation using time-differenced measurements from a single GNSS antenna. GPS Solut. 2020, 24, 84. [Google Scholar] [CrossRef]
  7. Li, Z.; Wang, D.; Dong, Y.; Wu, J. An enhanced tightly-coupled integrated navigation approach using phase-derived position increment (PDPI) measurement. Optik 2018, 156, 135–147. [Google Scholar] [CrossRef]
  8. Suzuki, T. GNSS Odometry: Precise Trajectory Estimation Based on Carrier Phase Cycle Slip Estimation. IEEE Robot. Autom. Lett. 2022, 7, 7319–7326. [Google Scholar] [CrossRef]
  9. Freda, P.; Angrisano, A.; Gaglione, S.; Troisi, S. Time-differenced carrier phases technique for precise GNSS velocity estimation. GPS Solut. 2015, 19, 335–341. [Google Scholar] [CrossRef]
  10. Lyu, P.; Bai, S.; Lai, J.; Wang, B.; Sun, X.; Huang, K. Optimal Time Difference-Based TDCP-GPS/IMU Navigation Using Graph Optimization. IEEE Trans. Instrum. Meas. 2021, 70, 1–10. [Google Scholar] [CrossRef]
  11. Olivier, A.; Giovanis, D.G.; Aakash, B.; Chauhan, M.; Vandanapu, L.; Shields, M.D. UQpy: A general purpose Python package and development environment for uncertainty quantification. J. Comput. Sci. 2020, 47, 101204. [Google Scholar] [CrossRef]
  12. Purnell, D.; Gomez, N.; Chan, N.H.; Strandberg, J.; Holland, D.M.; Hobiger, T. Quantifying the Uncertainty in Ground-Based GNSS-Reflectometry Sea Level Measurements. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2020, 13, 4419–4428. [Google Scholar] [CrossRef]
  13. Martin, A.; Soundy, A.; Panckhurst, B.; Brown, C.; Schumayer, D.; Molteno, T.; Parry, M. Real-time uncertainty quantification using correlated noise models for GNSS positioning. In Proceedings of the 2017 IEEE SENSORS, Glasgow, UK, 29 October–1 November 2017; pp. 1–3. [Google Scholar]
  14. Su, J.; Schön, S. Deterministic Approaches for Bounding GNSS Uncertainty: A Comparative Analysis. In Proceedings of the 10th Workshop on Satellite Navigation Technology (NAVITEC), Noordwijk, The Netherlands, 5–7 April 2022; pp. 1–8. [Google Scholar]
  15. Richmond, C.D.; Horowitz, L.L. Parameter Bounds on Estimation Accuracy Under Model Misspecification. IEEE Trans. Signal Process. 2015, 63, 2263–2278. [Google Scholar] [CrossRef]
  16. Mennad, A.; Fortunati, S.; El Korso, M.N.; Younsi, A.; Zoubir, A.M.; Renaux, A. Slepian-Bangs-type formulas and the related Misspecified Cramér-Rao Bounds for Complex Elliptically Symmetric distributions. Signal Process. 2018, 142, 320–329. [Google Scholar] [CrossRef]
  17. Fortunati, S.; Ortega, L. On the efficiency of misspecified Gaussian inference in nonlinear regression: Application to time-delay and Doppler estimation. Signal Process. 2024, 225, 109614. [Google Scholar] [CrossRef]
  18. Yang, C.; Guo, J.; Geng, T.; Zhao, Q.; Jiang, K.; Xie, X.; Lv, Y. Assessment and Comparison of Broadcast Ionospheric Models: NTCM-BC, BDGIM, and Klobuchar. Remote Sens. 2020, 12, 1215. [Google Scholar] [CrossRef]
  19. Schüler, T. The TropGrid2 standard tropospheric correction model. GPS Solut. 2014, 18, 123–131. [Google Scholar] [CrossRef]
  20. Stienne, G.; Reboul, S.; Choquel, J.; Benjelloun, M. Cycle slip detection and repair with a circular on-line change-point detector. Signal Process. 2014, 100, 51–63. [Google Scholar] [CrossRef]
  21. Nocedal, J.; Wright, S.J. Numerical Optimization; Springer Series in Operations Research and Financial Engineering; Springer: New York, NY, USA, 2006. [Google Scholar]
  22. Nielsen, F. Connected at Infinity II: A Selection of Mathematics by Indians; Chapter Cramér-Rao Lower Bound and Information Geometry; Hindustan Book Agency: Delhi, India, 2013; pp. 18–37. [Google Scholar]
  23. Eldar, Y. Minimum Variance in Biased Estimation: Bounds and Asymptotically Optimal Estimators. Trans. Sig. Proc. 2004, 52, 1915–1930. [Google Scholar] [CrossRef]
  24. Schöller, C.; Aravantinos, V.; Lay, F.; Knoll, A. What the Constant Velocity Model Can Teach Us About Pedestrian Motion Prediction. IEEE Robot. Autom. Lett. 2020, 5, 1696–1703. [Google Scholar] [CrossRef]
  25. Pellegrini, S.; Ess, A.; Van Gool, L. Visual Analysis of Humans: Looking at People; Chapter Predicting Pedestrian Trajectories; Springer: London, UK, 2011; pp. 473–491. [Google Scholar]
  26. Won, D.H.; Ahn, J.; Lee, S.W.; Lee, J.; Sung, S.; Park, H.W.; Park, J.P.; Lee, Y.J. Weighted DOP with Consideration on Elevation-Dependent Range Errors of GNSS Satellites. IEEE Trans. Instrum. Meas. 2012, 61, 3241–3250. [Google Scholar] [CrossRef]
Figure 1. Representation of the TDCP model in 2D. The blue disks represent the satellite positions at the two epochs, the green crosses represent the true receiver positions, the red ones represent the assumed receiver positions.
Figure 1. Representation of the TDCP model in 2D. The blue disks represent the satellite positions at the two epochs, the green crosses represent the true receiver positions, the red ones represent the assumed receiver positions.
Sensors 25 03480 g001
Figure 2. Skyplot of GPS satellites in Toulouse, France, on the first of January 2024, 12:00 UTC.
Figure 2. Skyplot of GPS satellites in Toulouse, France, on the first of January 2024, 12:00 UTC.
Sensors 25 03480 g002
Figure 3. Δ r 1   = 1   m , t 2 t 1 = 1   s . u x , u y , and u z indicate the x, y, and z components, in the ECEF frame, of Δ r 1 . The dot indicates the satellite displacement direction.
Figure 3. Δ r 1   = 1   m , t 2 t 1 = 1   s . u x , u y , and u z indicate the x, y, and z components, in the ECEF frame, of Δ r 1 . The dot indicates the satellite displacement direction.
Sensors 25 03480 g003
Figure 4. Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 . The cross indicates the satellite displacement direction.
Figure 4. Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 . The cross indicates the satellite displacement direction.
Sensors 25 03480 g004
Figure 5. Δ r 1   = 1   k m , t 2 t 1 = 1   s . u x , u y , and u z indicate the x, y, and z components, in the ECEF frame, of Δ r 1 Δ r 1 . The dot indicates the satellite displacement direction.
Figure 5. Δ r 1   = 1   k m , t 2 t 1 = 1   s . u x , u y , and u z indicate the x, y, and z components, in the ECEF frame, of Δ r 1 Δ r 1 . The dot indicates the satellite displacement direction.
Sensors 25 03480 g005
Figure 6. Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 . The cross indicates the satellite displacement direction.
Figure 6. Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 . The cross indicates the satellite displacement direction.
Sensors 25 03480 g006
Figure 7. Δ r 1 s 2 s 1 r 1 , 2 , which corresponds to the worst direction.
Figure 7. Δ r 1 s 2 s 1 r 1 , 2 , which corresponds to the worst direction.
Sensors 25 03480 g007
Figure 8. Tr MSE for noiseless measurements, with Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates, in the ECEF frame, of Δ r 1 .
Figure 8. Tr MSE for noiseless measurements, with Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates, in the ECEF frame, of Δ r 1 .
Sensors 25 03480 g008
Figure 9. Tr MSE for noiseless measurements, with Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates, in the ECEF frame, of Δ r 1 .
Figure 9. Tr MSE for noiseless measurements, with Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates, in the ECEF frame, of Δ r 1 .
Sensors 25 03480 g009
Figure 10. Tr MSE for noiseless measurements and for multiple values of t 2 t 1 as a function of Δ r 1 , with Δ r 1 in the direction given by the angles θ = π 2 and ϕ = π 2 in the ECEF frame.
Figure 10. Tr MSE for noiseless measurements and for multiple values of t 2 t 1 as a function of Δ r 1 , with Δ r 1 in the direction given by the angles θ = π 2 and ϕ = π 2 in the ECEF frame.
Sensors 25 03480 g010
Figure 11. Tr MSE for noiseless measurements and for multiple values of Δ r 1 , as a function of t 2 t 1 , with Δ r 1 in the direction given by the angles θ = π 2 and ϕ = π 2 in the ECEF frame.
Figure 11. Tr MSE for noiseless measurements and for multiple values of Δ r 1 , as a function of t 2 t 1 , with Δ r 1 in the direction given by the angles θ = π 2 and ϕ = π 2 in the ECEF frame.
Sensors 25 03480 g011
Figure 12. Tr MSE for noisy measurements, with Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 .
Figure 12. Tr MSE for noisy measurements, with Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 .
Sensors 25 03480 g012
Figure 13. Difference between Tr MSE and Tr MCRB for noisy measurements with Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 . The negative values exist due to numerical errors.
Figure 13. Difference between Tr MSE and Tr MCRB for noisy measurements with Δ r 1   = 1   m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 . The negative values exist due to numerical errors.
Sensors 25 03480 g013
Figure 14. Tr MSE for noisy measurements, with Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 .
Figure 14. Tr MSE for noisy measurements, with Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 .
Sensors 25 03480 g014
Figure 15. Difference between Tr MSE and Tr MCRB for noisy measurements with Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 .
Figure 15. Difference between Tr MSE and Tr MCRB for noisy measurements with Δ r 1   = 1   k m , t 2 t 1 = 1   s . θ and ϕ are the spherical coordinates in the ECEF frame of Δ r 1 .
Sensors 25 03480 g015
Figure 16. Tr MSE and Tr MCRB for noisy measurements as a function of Δ r 1 , with t 2 t 1 = 1   s and Δ r 1 in the direction given by the angles θ = π 2 and ϕ = π 2 in the ECEF frame.
Figure 16. Tr MSE and Tr MCRB for noisy measurements as a function of Δ r 1 , with t 2 t 1 = 1   s and Δ r 1 in the direction given by the angles θ = π 2 and ϕ = π 2 in the ECEF frame.
Sensors 25 03480 g016
Figure 17. Maximum value of Tr MSE and corresponding Tr MCRB for noisy measurements as a function of Δ r 1 with t 2 t 1 = 1   s .
Figure 17. Maximum value of Tr MSE and corresponding Tr MCRB for noisy measurements as a function of Δ r 1 with t 2 t 1 = 1   s .
Sensors 25 03480 g017
Table 1. Link between the terms introduced in Section 3 and Section 4.
Table 1. Link between the terms introduced in Section 3 and Section 4.
EstimationTDCP
θ as in Equation (9) r 1 , 2 T , d t 1 , 2 r T as in Equation (4)
y as in Equation (9) λ Φ ˜ 2 Φ ˜ 1 1 , , Φ ˜ 2 Φ ˜ 1 m T
with λ Φ ˜ 2 Φ ˜ 1 i as in Equation (3)
g as in Equation (9) f r 1 1 , , f r 1 m , with f r 1 i as in Equation (5)
h as in Equation (10) f r 1 ^ 1 , , f r 1 ^ m , with f r 1 ^ i as in Equation (6)
R as in Equation (9) diag σ TDCP 1 2 , , σ TDCP m 2
where σ TDCP i 2 is the variance of ε Equation (3)
Table 2. Maximum value of Δ f Equation (7) with respect to Δ r 1 and t 2 t 1 .
Table 2. Maximum value of Δ f Equation (7) with respect to Δ r 1 and t 2 t 1 .
t 2 t 1 1 s1 min30 min
Δ r 1
  1   m 1.2 × 10−4 m7.1 × 10−3 m2.1 × 10−1 m
10   m 1.2 × 10−3 m 7.1 × 10−2 m 2.1 m
1   k m 1.2 × 10−1 m 7.1 m 2.1 × 101 m
1000   k m 1.2 × 102 m 7.1 × 103 m 2.1 × 105 m
Table 3. Min values of Tr MSE with respect to Δ r 1 and t 2 t 1 .
Table 3. Min values of Tr MSE with respect to Δ r 1 and t 2 t 1 .
t 2 t 1 1 s1 min30 min
Δ r 1
  1   m 2.4 × 10−5 m1.3 × 10−3 m7.7 × 10−2 m
10   m 2.4 × 10−4 m 1.3 × 10−2 m 7.7 × 10−1 m
1   k m 2.4 × 10−2 m 1.3 m 7.7 × 101 m
1000   k m 2.4 × 101 m 1.3 × 103 m 7 × 104 m
Table 4. Max values of Tr MSE with respect to Δ r 1 and t 2 t 1 .
Table 4. Max values of Tr MSE with respect to Δ r 1 and t 2 t 1 .
t 2 t 1 1 s1 min30 min
Δ r 1
  1   m 1.3 × 10−4 m7.7 × 10−3 m3.8 × 10−1 m
10   m 1.3 × 10−3 m 7.7 × 10−2 m 3.8 m
1   k m 1.3 × 10−1 m 7.7 m 3.8 × 102 m
1000   k m 1.3 × 102 m 7.8 × 103 m 3.8 × 105 m
Table 5. Max values of Tr MSE in the receiver local horizontal plane with respect to Δ r 1 and t 2 t 1 .
Table 5. Max values of Tr MSE in the receiver local horizontal plane with respect to Δ r 1 and t 2 t 1 .
t 2 t 1 1 s1 min30 min
Δ r 1
  1   m 8.8 × 10−5 m5.3 × 10−3 m1.7 × 10−1 m
10   m 8.8 × 10−4 m 5.3 × 10−2 m 1.7 m
1   k m 8.8 × 10−2 m 5.3 m 1.7 × 102 m
1000   k m 8.9 × 101 m 5.3 × 103 m 1.7 × 105 m
Table 6. Max values of Tr MSE on the receiver local vertical line with respect to Δ r 1 and t 2 t 1 .
Table 6. Max values of Tr MSE on the receiver local vertical line with respect to Δ r 1 and t 2 t 1 .
t 2 t 1 1 s1 min30 min
Δ r 1
  1   m 1.1 × 10−4 m6.7 × 10−3 m3.2 × 10−1 m
10   m 1.1 × 10−3 m 6.7 × 10−2 m 3.2 m
1   k m 1.1 × 10−1 m 6.7 m 3.2 × 102 m
1000   k m 1.2 × 102 m 6.7 × 103 m 3.2 × 105 m
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Cherfi, H.; Lesouple, J.; Solà, J.; Thevenon, P. Uncertainty Quantification of First Fix in a Time-Differenced Carrier Phase Observation Model. Sensors 2025, 25, 3480. https://doi.org/10.3390/s25113480

AMA Style

Cherfi H, Lesouple J, Solà J, Thevenon P. Uncertainty Quantification of First Fix in a Time-Differenced Carrier Phase Observation Model. Sensors. 2025; 25(11):3480. https://doi.org/10.3390/s25113480

Chicago/Turabian Style

Cherfi, Hakim, Julien Lesouple, Joan Solà, and Paul Thevenon. 2025. "Uncertainty Quantification of First Fix in a Time-Differenced Carrier Phase Observation Model" Sensors 25, no. 11: 3480. https://doi.org/10.3390/s25113480

APA Style

Cherfi, H., Lesouple, J., Solà, J., & Thevenon, P. (2025). Uncertainty Quantification of First Fix in a Time-Differenced Carrier Phase Observation Model. Sensors, 25(11), 3480. https://doi.org/10.3390/s25113480

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop