Introduction

We introduce a new formulation of the GLONASS FDMA model and one that closely resembles that of CDMA-based systems. It is well known that the linearized double-differenced (DD) single-epoch, short-baseline model of any CDMA-based GNSS system can be formulated as (Teunissen and Montenbruck 2017)

$$\begin{aligned} {\mathsf{E}}\left[ \begin{array}{c} p \\ \phi \end{array} \right] = \left[ \begin{array}{cc} e \otimes G &{} 0 \\ e \otimes G &{} \;\;\varLambda \otimes I_{m-1} \end{array} \right] \left[ \begin{array}{c} b \\ a \end{array} \right] \end{aligned}$$
(1)

in which, in case of two frequencies and m satellites, \(p \in \mathbb{R}^{2(m-1)}\) and \(\phi \in \mathbb{R}^{2(m-1)}\) denote the DD code and phase observables, \(e=(1,1)^{T}\), \(\otimes \) denotes the Kronecker product, \(G \in \mathbb{R}^{(m-1) \times \nu }\) is the relative receiver-satellite geometry matrix, \(\varLambda =\mathrm{diag}(\lambda _{1}, \lambda _{2})\) the diagonal matrix of wavelengths; \(b \in \mathbb{R}^{\nu }\) the baseline vector (\(\nu =3\) in the absence of a Zenith Tropospheric Delay, otherwise \(\nu =4\)) and \(a \in \mathbb{Z}^{2(m-1)}\) the integer vector of DD ambiguities.

We will show that the with (1) corresponding GLONASS FDMA model can be formulated as

$$\begin{aligned} {\mathsf{E}}\left[ \begin{array}{c} p \\ \phi \end{array} \right] = \left[ \begin{array}{cc} e \otimes G &{} 0 \\ e \otimes G &{} \;\;\varLambda \otimes L \end{array} \right] \left[ \begin{array}{c} b \\ a \end{array} \right] \end{aligned}$$
(2)

in which \(L \in \mathbb{R}^{(m-1) \times (m-1)}\) is a full-rank lower triangular matrix, for which we will provide an easy-to-compute analytical form, and \(a \in \mathbb{Z}^{2(m-1)}\) is a new integer ambiguity vector that contains integer-estimable functions of the GLONASS undifferenced integer ambiguities. As we will show, our new formulation (2) is made possible because of two important findings: first, our defining new concept of integer-estimability and second, the analytical construction of a special integer matrix canonical decomposition. It is a consequence of these results that for the GLONASS ambiguities to be integer-estimable, the double-differenced GLONASS FDMA model must be of the above discovered form.

The close resemblance between our GLONASS model and the DD CDMA models (i.e., by setting \(L=I_{m-1}\), 2 reduces to 1) implies, next to its general applicability, that available CDMA-based GNSS software is easily modified and that existing methods of integer ambiguity resolution can be directly applied. Also, because of their similar structure, many of the available CDMA results with corresponding insights can be translated to the GLONASS case. For instance, with \(Q_{\hat{a}\hat{a}}^{\mathrm{CDMA}}\) being the DD CDMA-based ambiguity variance matrix, the corresponding GLONASS ambiguity variance matrix for a similar measurement situation reads then

$$\begin{aligned} Q_{\hat{a}\hat{a}}^{{\mathrm{GLONASS}}} = ( \varGamma \otimes L^{-1})Q_{\hat{a}\hat{a}}^{\mathrm{CDMA}} (\varGamma \otimes L^{-T}) \end{aligned}$$
(3)

with \(\varGamma \) the wavelength ratios between the two systems. Thus, through the analytically provided inverse of the lower triangular matrix L, one may already obtain clear insights into the ambiguity resolution capabilities of GLONASS and into its performance as compared to a CDMA-based GNSS. We make use of this property to analyze the characteristics of the GLONASS ambiguity dilution of precision (ADOP).

As integer-estimability of the ambiguities may change when extra parameters are added to the phase equations, we also provide a general method to recover the integer-estimability again. As one of the given examples, the method is applied and further worked out when, for the long-baseline case, the ionospheric delays need to be included, while the GLONASS code data cannot be relied on due to the presence of unknown inter-frequency code biases. It is shown how the integer-estimability for such GLONASS phase-only processing can be recovered thus enabling the applicability of standard methods of integer ambiguity resolution again.

This contribution is organized as follows. We first provide a brief review of the GLONASS observation equations. Then, we introduce our new concept of integer-estimability, from which we learn that the two conditions of estimability and integerness are not sufficient to guarantee integer-estimability. This has the important consequence that when estimable integer functions are used for ambiguity resolution that are not integer-estimable, one may in fact be fixing the undifferenced integer ambiguities to non-integer values, thereby thus constraining the model to physically inconsistent and wrong values. We provide the explicit conditions that ensure integer-estimability and use them to show how integer-estimable functions can be created and how a given design matrix can be expressed in them. Following this we provide an analytical integer matrix decomposition of a specially patterned matrix that, together with integer-estimability results, enables us to establish and formulate our GLONASS integer-estimable DD model in the form of (2). We hereby also give an explicit description of the model’s entries of \(a \in \mathbb{Z}^{2(m-1)}\), i.e., the integer-estimable functions of the GLONASS undifferenced integer ambiguities. This is then followed by an ADOP-based analysis of the model’s expected ambiguity resolution performance. Finally we show, when extra parameters are added to the phase equations, how to recover the integer-estimability again. Numerical examples are given to illustrate the workings of the model and underlying theory. We conclude with a summary and an outlook of exciting future applications of the model.

The following notation is used: \(\mathbb{R}^{m}\) denotes the m-dimensional space of real numbers and \(\mathbb{Z}^{n}\) the n-dimensional space of integers. The Kronecker product (Henderson et al. 1983) is denoted as \(\otimes \) and the weighted squared-norm as \(||\varvec{\cdot }||_{M}^{2}=(\varvec{\cdot })^{T}M^{-1}(\varvec{\cdot })\). Diagonal and blockdiagonal matrices are denoted as \(\mathrm{diag}( \ldots )\) and \(\mathrm{blockdiag}( \ldots )\), respectively, while admissible ambiguity transformations are denoted as \(\mathcal{Z}\); they are integer and have an integer inverse (Teunissen 1995). A basis matrix of a subspace \(\mathcal{V}\) is a matrix of which the column vectors form a basis of \(\mathcal{V}\). \({\mathsf{E}}(\varvec{\cdot })\) and \({\mathsf{D}}(\varvec{\cdot })\) are the expectation and dispersion operators, respectively, and \(Q_{pp}\) and \(Q_{\phi \phi }\) the zenith-referenced variance matrices of code and phase. Single differences (SD) are defined as \((\varvec{\cdot })_{1r,j}^{s}= (\varvec{\cdot })_{r,j}^{s}-(\varvec{\cdot })_{1,j}^{s}\) and double differences (DD) as \((\varvec{\cdot })_{1r,j}^{1s}= (\varvec{\cdot })_{1r,j}^{s}-(\varvec{\cdot })_{1r,j}^{1}=[(\varvec{\cdot })_{r,j}^{s}-(\varvec{\cdot })_{1,j}^{s}]-[(\varvec{\cdot })_{r,j}^{1}-(\varvec{\cdot })_{1,j}^{1}]\).

GLONASS observation equations

To distinguish the signals coming from different satellites, current GLONASS uses the frequency-division multiple access (FDMA) technique, whereby the broadcast signals in the L1 and L2 bands are transmitted on 14 different adjacent frequencies. Antipodal satellites share the same frequency, so as to realize a full constellation  (Leick et al. 2015; Teunissen and Montenbruck 2017). For the m GLONASS satellites, the L1 and L2 carrier frequencies are defined as (Reussner and Wanninger 2011),

$$\begin{aligned} f_{j}^{s}= f_{j}^{0}+\kappa ^{s} \Delta f_{j},\quad j=1, 2,\quad s=1, \ldots , m \end{aligned}$$
(4)

whereby the sub-bands are identified by the 14 satellite channel numbers \(\kappa ^{s} \in [-\,7,+\,6]\), the two channel frequency separations are \(\Delta f_{1}=9/16\) and \(\Delta f_{2}= 7/16\), and the L1 and L2 frequencies are given as \(f_{1}^{0}=1602\) MHz and \(f_{2}^{0}=1246\) Mhz. Note that \(\Delta f_{1}/f_{1}^{0}=\Delta f_{2}/f_{2}^{0}=1/2848\).

The single-differenced (SD) GLONASS code and phase observation equations of two receivers 1 and r, tracking satellite s, read for \(j=1,2\)  (Leick 1998; Leick et al. 2015; Teunissen and Montenbruck 2017)

$$\begin{aligned} {\mathsf{E}}(p_{1r,j}^{s})= & {} \rho _{1r}^{s}+dt_{1r,j}+\iota _{1r,j}^{s}+d_{1r,j}^{s} \\ {\mathsf{E}}(\phi _{1r,j}^{s})= & {} \rho _{1r}^{s}+\delta t_{1r,j} -\iota _{1r,j}^{s}+\lambda _j^{s}z_{1r,j}^{s} \end{aligned}$$
(5)

with \(p_{1r,j}^{s}\) and \(\phi _{1r,j}^{s}\) the code and phase observable, \(\rho _{1r}^{s}\) the sum of the non-dispersive range and tropospheric delay, \(dt_{1r,j}\) and \(\delta t_{1r,j}\) the receiver code and phase clock terms, \(\iota _{1r,j}^{s}\) the ionospheric delay, \(d_{1r,j}^{s}\) the inter-frequency (or inter-channel) code bias, and \(z_{1r,j}^{s}\) the between-receiver integer ambiguity of satellite s, having the wavelength \(\lambda _{j}^{s}=c/f_{j}^{s}\) as its coefficient.

Note that we omitted the inter-frequency phase bias \(\delta _{1r,j}^{s}\) from (5). This is permitted as this term is small enough to be neglected for all practical purposes (Sleewaegen et al. 2012). Also note, since we treat the GLONASS code and phase data in a way that is completely analogous to that of a CDMA system that no apparent inter-frequency phase bias is present in our phase equations. As explained in Takac (2009), Sleewaegen et al. (2012) and Banville et al. (2018), since \(dt_{1r,j} \ne \delta t_{1r,j}\), such bias slips into the phase equations when code and phase data would be used to get an a-priori estimate of a reference ambiguity. Such, however, is not the case with (5).

The structure of the above pair of GLONASS observation equations differs in two ways from that of a corresponding CDMA system. With a CDMA system, the inter-frequency SD code biases are absent and the wavelengths are satellite independent. This implies that for a CDMA system, its pair of double-differenced (DD) observation equations is free from the clock terms and inter-frequency biases, and that it can be directly parametrized in its own DD integer ambiguity. In case of GLONASS, however, the DD observation equations of receivers 1 and r, tracking satellites 1 and s, take the form

$$\begin{aligned} {\mathsf{E}}(p_{1r,j}^{1s})= & {} \rho _{1r}^{1s}+\iota _{1r,j}^{1s}+d_{1r,j}^{1s} \\ {\mathsf{E}}(\phi _{1r,j}^{1s})= & {} \rho _{1r}^{1s}-\iota _{1r,j}^{1s}+\lambda _j^{s}z_{1r,j}^{s}- \lambda _j^{1}z_{1r,j}^{1} \end{aligned}$$
(6)

Hence, the code and phase clocks, \(dt_{1r,j}\) and \(\delta t_{1r,j}\), get eliminated in the double-differencing, but the inter-frequency biases generally not. Also, since \(\lambda _j^{s} \ne \lambda _j^{1}\), the two SD integer ambiguities \(z_{1r,j}^{s}\) and \(z_{1r,j}^{1}\) fail to form a single DD integer ambiguity, this in contrast to the CDMA DD phase equations.

In the following, we will assume that \(d_{1r,j}^{1s}\) can either be neglected or a-priori corrected for. Previous studies have reported that the differential inter-frequency code biases can be neglected in case the baseline is formed from an homogeneous pair of receiver setups (i.e., having same receiver types, firmware and antennas) and that in case of mixed receivers, the biases can be calibrated because of their stability over time (Yamada et al. 2010; Chuang et al. 2013; Aggrey and Bisnath 2016; Liu et al. 2017; Hakansson et al. 2017). In the second last section, we will return to this assumption and discuss different ways of accommodation.

We will also assume for the moment that the differential ionospheric delays are absent. This does not affect the generality of our method, but restricts the model for the moment to short-baseline applications. Also this aspect will be taken up in the second last section, where we will show how our model formulation is made applicable for long baselines. With these assumptions and with

$$\begin{aligned} \lambda _{j}^{s} =2848 \lambda _{j}^{0}/a_{s},\quad \mathrm{with}\quad a_{s}=2848+\kappa ^{s} \in \mathbb{Z} \end{aligned}$$
(7)

which follows from \(\lambda _{j}^{s}=\lambda _{j}^{0}f_{j}^{0}/f_{j}^{s}\), we can write (6) as

$$\begin{aligned} {\mathsf{E}}(p_{1r,j}^{1s})= & {} \rho _{1r}^{1s} \\ {\mathsf{E}}(\phi _{1r,j}^{1s})= & {} \rho _{1r}^{1s}+2848\lambda _j^{0}\left[ \frac{z_{1r,j}^{s}}{a_{s}}- \frac{z_{1r,j}^{1}}{a_{1}}\right] \end{aligned}$$
(8)

Note that instead of the CDMA-familiar DD form \(z_{1r,j}^{1s}=z_{1r,j}^{s}-z_{1r,j}^{1}\), the GLONASS ambiguities in (8) are shown in the non-integer form \(z_{1r,j}^{s}/a_{s}- z_{1r,j}^{1}/a_{1}\). This has as consequence that the current theory of integer ambiguity resolution (Teunissen 2017) cannot be directly and rigorously applied to GLONASS.

The purpose of this contribution is to present a new GLONASS FDMA model that enables a direct and rigorous application of integer ambiguity resolution. In order to do so, we need to get an understanding on how to exploit the integerness of the between-receiver ambiguities in (8). First note that the problem is underdetermined since there are more between-receiver ambiguities than DD equations. A simple remedy for this would of course be to lump the ambiguity terms together and consider the difference \(z_{1r,j}^{s}/a_{s}- z_{1r,j}^{1}/a_{1}\) as one parameter (as is done in CDMA systems when forming their DD ambiguities). This indeed solves for the underdeterminancy, but it also spoils the integerness in the combination. To remedy this loss of integerness, one could then think of getting rid of the fractions in \(z_{1r,j}^{s}/a_{s}- z_{1r,j}^{1}/a_{1}\) and use instead of (8), the following formulation

$$\begin{aligned} {\mathsf{E}}(p_{1r,j}^{1s})= & {} \rho _{1r}^{1s} \\ {\mathsf{E}}(\phi _{1r,j}^{1s})= & {} \rho _{1r}^{1s}+\frac{2848\lambda _j^{0}}{a_{1}a_{s}}[a_{1}z_{1r,j}^{s}- a_{s}z_{1r,j}^{1}] \end{aligned}$$
(9)

Now, we can remove the underdeterminancy and still retain the integerness if we treat the difference \(\zeta _{1r,j}^{1s}=a_{1}z_{1r,j}^{s}- a_{s}z_{1r,j}^{1} \in \mathbb{Z}\) as one parameter. Each DD phase equation will then have one such ambiguity-based parameter, and each of them will be integer. Since this looks quite like the situation we have with the CDMA DD phase equations, one might then think that one can directly apply current methods of integer ambiguity resolution again. This conclusion is, however, wrong.

To appreciate the shortcoming of this reasoning, we first need to develop the concept of integer-estimability. By means of this new concept of integer-estimability, we will then also be able to discover which integer functions of the between-receiver integer GLONASS ambiguities can be taken as the proper functions for integer ambiguity resolution.

Integer-estimability in mixed-integer models

In this section, we introduce the new concept of integer-estimability. It generalizes the well-known concept of estimability from linear model theory to that of mixed-integer linear models.

Integer-estimability

Much of estimation theory that we use today is based on the concept of estimability (Grafarend and Sanso 1985; Koch 1999; Teunissen 2000; Muller and Stewart 2006). For a linear model \({\mathsf{E}}(y)=Ax\), a linear function of x, say \(F^{T}x\), is said to be estimable if and only if a linear function of y exists that has expected value \(F^{T}x\). Since the expectation of any linear function of y is equal to that same linear function of the rows of A times x, it follows that \(F^{T}x\) is estimable if and only if there is a linear function of the rows of A that is equal to \(F^{T}\).

As we will show below, this concept of estimability is not sufficient to cover the estimation requirements of mixed-integer models, i.e., models that contain both real-valued and integer-valued parameters, such as the GNSS models that include carrier-phase measurements. We therefore need to generalize the estimability concept to that of integer-estimability. Next to being estimable and integer, functions of integer parameters also need to guarantee that their integerness corresponds with integer values of the parameters the function is taken of. This is particularly crucial in the context of integer ambiguity resolution. Would this condition not be met, then the integer fixing of integer functions that are not integer-estimable implies that one can fix the undifferenced integer ambiguities to non-integer values and thus force the model to inconsistent and wrong constraints.

The following theorem provides the necessary and sufficient conditions that a function of integer parameters needs to satisfy in order to be integer-estimable.

Theorem 1

(Integer-Estimability) Let \({\mathsf{E}}(y)=Az+Bb\) be a mixed-integer model, where \(y \in \mathbb{R}^{m}\) \(z \in \mathbb{Z}^{n}\) and \(b \in \mathbb{R}^{\nu }\). Then, the necessary and sufficient conditions for p linearly independent functions \(\tilde{z}=F^{T}z\) to be estimable or integer-estimable are as follows:

  1. 1.

    \(\tilde{z}=F^{T}z\) is estimable iff \(F=A^{T}B^{\perp }X\) for some X, where \(B^{\perp }\) is a basis matrix of the orthogonal complement of the range space of B.

  2. 2.

    \(\tilde{z}=F^{T}z\) is integer-estimable iff \(F=A^{T}B^{\perp }X\) for some X and \(F^{T}\mathcal{Z}=[I_{p}, 0]\) for some admissible ambiguity transformation \(\mathcal{Z}\).

Proof

For the proof, see 'Appendix.' \(\square \)

The above theorem clearly shows that the estimability of \(\tilde{z}=F^{T}z\) and the integerness of \(F \in \mathbb{Z}^{n \times p}\) are not sufficient to guarantee that \(\tilde{z}\) is integer-estimable. Next to the estimability of \(\tilde{z}=F^{T}z\), the \(p \times n\) matrix \(F^{T}\) also needs to be equal to the first p rows of an \(n \times n\) admissible ambiguity transformation, which then, of course, implicitly implies the integerness of F as well. Note that as a special case, when \(p=n\), \(F^{T}\mathcal{Z}=I_{p}\) must hold, meaning that then \(F^{T}\) itself must be an admissible ambiguity transformation (Teunissen 1995).

As an important consequence of the above theorem, we have that the integer-estimable functions of a more relaxed model can always be written as linear combinations of the integer-estimable functions of the original model. To see this, consider the more relaxed model \({\mathsf{E}}(y)=Az+Bb+Cc\), having the entries of vector c as the additional unknown parameters. For \(\tilde{z}=F^{T}z\) now to be estimable, we must have \(F=A^{T}(B,C)^{\perp }Y\) for some Y. Since the column vectors of basis matrix \((B,C)^{\perp }\) can be written as linear combinations of those of basis matrix \(B^{\perp }\), i.e., \((B,C)^{\perp }=B^{\perp }V\) for some matrix V, it follows that \(F=A^{T}B^{\perp }VY\), which indeed are combinations of the estimable functions under the original model \({\mathsf{E}}(y)=Az+Bb\).

This property is also important in the context of the GLONASS model. It shows that for any relaxation of the model, the then valid integer-estimable ambiguities will always be functions of the basic set of GLONASS integer-estimable ambiguities. We will make use of this property in the second last section, when we add the ionospheric delays and other parameters to the model.

We now provide a few examples to see Theorem 1 at work.

Example 1

(Wide-lane narrow-lane integer fixing) The wide-lane and narrow-lane ambiguities, \(z_{w}=z_{1}-z_{2}\) and \(z_{n}=z_{1}+z_{2}\), are two well-known combinations of GPS DD ambiguities (Goad 1992; Teunissen 1995). However, as the following shows, they may not be used in paired form for integer ambiguity resolution:

$$\begin{aligned} \left[ \begin{array}{c} z_{w}\\ z_{n} \end{array} \right] = \underset{F^{T}}{ \left[ \begin{array}{cc} 1 &{} -1 \\ 1 &{} 1 \end{array} \right] } \left[ \begin{array}{c} z_{1}\\ z_{2} \end{array} \right] , \left[ \begin{array}{c} z_{1}\\ z_{2} \end{array} \right] = \underset{F^{-T} \ne \mathcal{Z}}{\frac{1}{2} \left[ \begin{array}{cc} 1 &{} \;1 \\ -1 &{} \;1 \end{array} \right] } \left[ \begin{array}{c} z_{w}\\ z_{n} \end{array} \right] \end{aligned}$$
(10)

Since \(F \in \mathbb{Z}^{2 \times 2}\), both the wide-lane and narrow-lane are integer whenever the DD ambiguities are integer. The converse is not true, however. Since the inverse of F is not admissible, the DD ambiguities \(z_{1}\) and \(z_{2}\) are not anymore guaranteed to be integer, for every integer values of \(z_{w}\) and \(z_{n}\). Hence, would one integer resolve \((z_{w}, z_{n})^{T}\), one may implicitly have fixed the integer DD ambiguities to non-integer values and thereby thus have forced the model to inconsistent and wrong constraints.

Example 2

(Phase-only integer-estimability) The GPS dual-frequency phase-only coefficient matrix of its L1 and L2 DD ambiguities, \(z_{1}\) and \(z_{2}\) (in cycles), and first-order DD ionospheric delay \(\iota \) (in range) is given as

$$\begin{aligned} \left[ \begin{array}{ccc} \lambda _{1} &{} 0 &{}-1 \\ 0 &{} \lambda _{2} &{}-\frac{\lambda _{2}^{2}}{\lambda _{1}^{2}} \end{array} \right] \end{aligned}$$
(11)

With \(A=\mathrm{diag}(\lambda _{1}, \lambda _{2})\) and \(B=(-1, -\frac{\lambda _{2}^{2}}{\lambda _{1}^{2}})^{T}\), we get \(A^{T}B^{\perp }=\lambda _{2}( \frac{\lambda _{2}}{\lambda _{1}}, -1)^{T}\), which, with the GPS wavelength ratio \(\lambda _{2}/\lambda _{1}=77/60\), gives as integer matrix \(F^{T}=(77, -60)\). Since \(F^{T}\mathcal{Z}=[1, 0]\) for

$$\begin{aligned} \mathcal{Z}= \left[ \begin{array}{cc} -7 &{} \;60 \\ -9 &{} \;77 \end{array} \right] ,\quad \mathrm{with}\quad \mathcal{Z}^{-1}= \left[ \begin{array}{cc} 77 &{} \;-60 \\ 9 &{} \;-7 \end{array} \right] \end{aligned}$$
(12)

it follows that the ambiguity combination \(\tilde{z}=77z_{1}-60z_{2}\) is integer-estimable, while \(\tilde{n}=9z_{1}-7z_{2}\) is not. Thus, instead of two ambiguities, only one particular combination of these two ambiguities is integer-estimable (Teunissen 1996). A corresponding modernized GPS triple-frequency phase-only analysis can be found in (Teunissen and Odijk 2003).

Example 3

(A non-integer-estimable integer combination) From the GLONASS observation equations (9) follow that for two satellites 1 and 2, the integer combination \(\zeta _{,j}=-a_{2}z_{1r,j}^{1}+a_{1}z_{1r,j}^{2} \in \mathbb{Z}\) is estimable. To check whether it is integer-estimable, we apply Theorem 1. This gives

$$\begin{aligned} \underset{F^{T}}{[-a_{2}, a_{1}]} \underset{\mathcal{Z}}{\left[ \begin{array}{cc} \alpha &{} \;\frac{a_{1}}{\mathrm{GCD}(a_{1},a_{2})} \\ \beta &{} \;\frac{a_{2}}{\mathrm{GCD}(a_{1},a_{2})} \end{array} \right] } = [\underset{\mathcal{L}}{\mathrm{GCD}(a_{1},a_{2})}, 0] \end{aligned}$$
(13)

with integers \(\alpha \) and \(\beta \) satisfying \(-\alpha a_{2}+\beta a_{1}= \mathrm{GCD}(a_{1},a_{2})\), whereby \(\mathrm{GCD}(a_{1},a_{2})\) denotes the Greatest Common Divisor of \(a_{1}\) and \(a_{2}\) . (The integers and GCD can be computed with the extended Euclidean algorithm.) The rationale in the construction of the above admissible \(\mathcal{Z}\) is as follows. First, we recognize that the null space of \(F^{T}\) is spanned by \((a_{1}, a_{2})^{T}\). Hence, the last column vector of \(\mathcal{Z}\) must be in this direction. However, in order be able to extend such vector to an integer basis, the GCD of its entries must equal 1. This is generally not the case for \((a_{1}, a_{2})^{T}\), but always the case when this vector is scaled by \(\mathrm{GCD}(a_{1},a_{2})^{-1}\). Now that we know the last column vector of \(\mathcal{Z}\), the first column vector follows from the condition that \(\mathcal{Z}\) must be admissible and thus have a determinant equal to \(\pm 1\).

With an application of Theorem 1, it now follows directly from (13), since \(F^{T}\mathcal{Z}=[\mathcal{L},0]\) that the integer combination \(\zeta _{,j}=-a_{2}z_{1r,j}^{1}+a_{1}z_{1r,j}^{2}\) is not integer-estimable in general. Integer-estimability would only be true in the special case that \(\mathrm{GCD}(a_{1},a_{2})=1\). With the use of the GCD-properties \(\mathrm{GCD}(a_{1},1)=1\) and \(\mathrm{GCD}(a_{1},a_{2})=\mathrm{GCD}(a_{1},a_{2}-a_{1})\), it follows that then at least one of the three conditions, \(a_{1}=1\), \(a_{2}=1\) or \(|a_{2}-a_{1}|=1\), needs to be satisfied for the integer combination \(\zeta \) to become integer-estimable.

Example 4

(Integer combination of DD ambiguities) Another integer combination that is estimable is

$$\begin{aligned} \eta _{,j}= a_{12}z_{1r,j}^{13}-a_{13}z_{1r,j}^{12} \end{aligned}$$
(14)

It is an integer combination of GLONASS DD ambiguities, which can be written in terms of the undifferenced ambiguities as \(\eta _{,j}=F^{T}z\), where \(F^{T}=[a_{23}, -a_{13}, a_{12}]\) and \(z=[z_{1r,j}^{1}, z_{1r,j}^{2}, z_{1r,j}^{3}]^{T}\). As we have the decomposition

$$\begin{aligned} \underset{F^{T}}{[a_{23}, -a_{13}, a_{12}]} \underset{\mathcal{Z}}{\left[ \begin{array}{ccc} \alpha &{} a_{13}/g &{}1 \\ \beta &{} a_{23}/g &{} 1\\ 0 &{} 0 &{} 1 \end{array} \right] } = [g, 0, 0] \end{aligned}$$
(15)

with \(\alpha a_{23}-\beta a_{13}=g\) and \(g=\mathrm{GCD}(a_{23}, a_{13})\), it directly follows that \(\eta _{,j}\) is not integer-estimable in general. It is integer-estimable if \(a_{23}=1\), \(a_{13}=1\) or \(a_{12}=1\), since then \(g=1\). Note that \(\mathrm{GCD}(a_{23}, a_{13})=\mathrm{GCD}(a_{23}, a_{12})\).

The last two examples showed estimable integer combinations that do not satisfy the conditions of Theorem 1 and therefore are not integer-estimable. The following corollary shows what one can do to extract integer-estimable functions from combinations that are estimable and integer.

Corollary 1

(Integer-estimability from estimable integer functions) Let \(G^{T}z\) be estimable and integer with \(G^{T}\mathcal{Z}=[\mathcal{L},0]\) (\(|\mathcal{L}|\ne \pm 1\)). Then, \(G^{T}z\) is not integer-estimable, but \(\tilde{z}=F^{T}z\), with \(F^{T}=[I_{p}, 0]\mathcal{Z}^{-1}\), is. The integer-inestimable \(G^{T}z\) can then be expressed in the integer-estimable \(\tilde{z}\) as \(G^{T}z=\mathcal{L}\tilde{z}\).

Proof

For the proof, see 'Appendix.' \(\square \)

The significance of the above corollary is that it has two very important practical consequences. First, it shows how one can construct integer-estimable functions from functions \(G^{T}z\) that are shown to be integer-inestimable by means of the decomposition \(G^{T}\mathcal{Z}=[\mathcal{L},0]\). It will therefore allow us to discover the basic set of integer-estimable ambiguities. Second, the corollary shows that if \(G^{T}z\) is part of a model’s design matrix that it can directly be replaced by \(\mathcal{L}\tilde{z}\), without an explicit knowledge of the admissible transformation \(\mathcal{Z}\).

We now show two examples of how the admissible \(\mathcal{Z}\) of \(G^{T}\mathcal{Z}= [\mathcal{L},0]\) can be used to construct integer-estimable functions from it.

Example 5

(Observing integer combinations of integers) Consider the 2m observation equations in the three unknown integers \(z_{1}\), \(z_{2}\) and \(z_{3}\):

$$\begin{aligned} {\mathsf{E}}\left[ \begin{array}{c} y_{i1}\\ y_{i2} \end{array} \right] = \underset{A=F^{T}}{\left[ \begin{array}{ccc} 5&{}-1&{}-1 \\ 1 &{} 16 &{}-11 \end{array} \right] } \left[ \begin{array}{c} z_{1} \\ z_{2} \\ z_{3} \end{array} \right] ,\quad i=1, \ldots , m \end{aligned}$$
(16)

Then, \(F^{T}z\) is clearly estimable and integer. But from

$$\begin{aligned} F^{T}\mathcal{Z}= \left[ \begin{array}{ccc} 7 &{} -2 &{} \;0 \\ -31 &{}5 &{}\;0 \end{array} \right] ,\quad \mathrm{with}\quad \mathcal{Z}= \left[ \begin{array}{ccc} 2 &{} \;0 &{} \;1 \\ 0 &{} \;1 &{} \;2 \\ 3 &{} \;1 &{} \;3 \end{array} \right] \end{aligned}$$
(17)

it follows that \(F^{T}z\) is not integer-estimable. According to Corollary 1, we can use the inverse

$$\begin{aligned} \mathcal{Z}^{-1}= \left[ \begin{array}{ccc} -1&{} \;-1 &{} \;1 \\ -6 &{} \;-3 &{} \;4 \\ 3 &{} \;2 &{} \;-2 \end{array} \right] \end{aligned}$$
(18)

to find the integer-estimable combinations as

$$\begin{aligned} \left[ \begin{array}{c} \tilde{z}_{1} \\ \tilde{z}_{2} \\ \end{array} \right] = [I_{2}, 0]\mathcal{Z}^{-1}= \left[ \begin{array}{c} -z_{1}-z_{2}+z_{3}\\ -6z_{1}-3z_{2}+4z_{3} \end{array} \right] \end{aligned}$$
(19)

Hence, in terms of the integer-estimable parameters, the observation equations (16) become

$$\begin{aligned} {\mathsf{E}}\left[ \begin{array}{c} y_{i1}\\ y_{i2} \end{array} \right] = \underset{\mathcal{L}}{\left[ \begin{array}{cc} 7&{}-2 \\ -31 &{} 5 \end{array} \right] } \left[ \begin{array}{c} \tilde{z}_{1} \\ \tilde{z}_{2} \end{array} \right] ,\quad i=1, \ldots , m \end{aligned}$$
(20)

whereby the integer-inestimable parameter \(\tilde{n}=3z_{1}+2z_{2}-2z_{3}\) has now been discarded.

Example 6

(The first integer-estimable GLONASS ambiguity) Recall that the integer combination \(\zeta _{,j}=-a_{2}z_{1r,j}^{1}+a_{1}z_{1r,j}^{2} = [\mathrm{GCD}(a_{1},a_{2}), 0] \mathcal{Z}^{-1}[z_{1r,j}^{1}, z_{1r,j}^{2}]^{T}\) was shown to be integer-inestimable (see 13). It shows, while \(\zeta _{,j}\) is integer whenever the GLONASS ambiguities \(z_{1r,j}^{1}\) and \(z_{1r,j}^{1}\) are integer, that the converse is not true, since with \(\zeta _{,j}\) being an integer, \(\zeta _{,j}/\mathrm{GCD}(a_{1},a_{2})\) will generally not be an integer. We can now apply Corollary 1 to construct a GLONASS ambiguity which is integer-estimable. Since the inverse of \(\mathcal{Z}\) of (13) is given as

$$\begin{aligned} \mathcal{Z}^{-1}= \left[ \begin{array}{cc} -\frac{a_{2}}{\mathrm{GCD}(a_{1},a_{2})}&{} \;\frac{a_{1}}{\mathrm{GCD}(a_{1},a_{2})} \\ \beta &{} -\alpha \end{array} \right], \end{aligned}$$
(21)

the integer-estimable GLONASS ambiguity, one for each frequency, follows as

$$\begin{aligned} \tilde{z}^{12}_{1r,j}=[1,0]\mathcal{Z}^{-1}z= \frac{a_{1}z_{1r,j}^{2}-a_{2}z_{1r,j}^{1}}{\mathrm{GCD}(a_{1},a_{2})},\quad j=1,2 \end{aligned}$$
(22)

Hence, for two satellites 1 and 2, the dual-frequency geometry-free DD GLONASS phase observation equations read

$$\begin{aligned} {\mathsf{E}}(\phi _{1r,j}^{12}) = \rho _{1r}^{12}+c_{12,j}\tilde{z}^{12}_{1r,j},\quad j=1,2 \end{aligned}$$
(23)

with ambiguity coefficient

$$\begin{aligned} c_{12,j}=\frac{2848\lambda _j^{0}\mathrm{GCD}(a_{1},a_{2})}{a_{1}a_{2}} \end{aligned}$$
(24)

The integer-estimable GLONASS ambiguity \(\tilde{z}^{12}_{1r,j}\) of its DD observation equation is thus not a DD ambiguity, as is the case with CDMA systems like GPS, but instead a special integer combination of its SD integer ambiguities (see 22).

Individual and joint integer-estimability

With our discovery of the scalar integer-estimable GLONASS ambiguity \(\tilde{z}_{1r,j}^{12}\) of (22) one would perhaps be inclined to think that when m satellites are observed, one can replicate the approach of Example 6 and formulate all \(m-1\) DD observation equations as follows

$$\begin{aligned} {\mathsf{E}}(\phi _{1r,j}^{1s}) = \rho _{1r}^{1s}+c_{1s,j}\tilde{z}^{1s}_{1r,j},\quad s=2, \ldots , m, j=1,2 \end{aligned}$$
(25)

This would, however, be incorrect from an integer ambiguity resolution point of view as individual integer-estimability does not imply joint integer-estimability. The following two examples make this difference between individual and joint integer-estimability clear.

Example 7

(Wide-lane or narrow-lane integer fixing) The wide-lane and narrow-lane ambiguities are separately integer-estimable, since

$$\begin{aligned} \underset{F_{w}^{T}}{[1, -1]} \underset{\mathcal{Z}_{w}}{\left[ \begin{array}{cc} 1 &{} \;1 \\ 0 &{} \;1 \end{array} \right] }= [1,0],\quad \underset{F_{n}^{T}}{[1, 1]} \underset{\mathcal{Z}_{n}}{\left[ \begin{array}{cc} 1 &{} 1 \\ 0 &{} -1 \end{array} \right] }= [1,0] \end{aligned}$$
(26)

But although they are both separately integer-estimable, they are not jointly integer-estimable as Example 1 has shown. Thus, one will always be able to find integer L1 and L2 DD ambiguities for each integer wide-lane ambiguity \(z_{w} \in \mathbb{Z}\), and also separately for each integer narrow-lane ambiguity \(z_{n} \in \mathbb{Z}\), but not necessarily for each integer pair \((z_{w}, z_{n})^{T} \in \mathbb{Z}^{2}\).

Example 8

(Joint integer-inestimability) Consider \(\tilde{z}_{1r,j}^{12}\) and \(\tilde{z}_{1r,j}^{13}\) (see 25), and let us assume that their GCDs are equal to one: \(\mathrm{GCD}(a_{1},a_{2})=1\) and \(\mathrm{GCD}(a_{1},a_{3})=1\). Then, both \(-a_{2}z_{1r,j}^{1}+a_{1}z_{1r,j}^{2}\) and \(-a_{3}z_{1r,j}^{1}+a_{1}z_{1r,j}^{3}\) are individually integer-estimable. For their joint integer-estimability, we have the decomposition

$$\begin{aligned}&\underset{F^{T}}{\left[ \begin{array}{ccc} -a_{2}&{} a_{1} &{} 0\\ -a_{3}&{}0&{}a_{1} \end{array} \right] } \underset{\mathcal{Z}}{\left[ \begin{array}{ccc} 1 &{} a_{1} &{} a_{1}\\ 1&{} a_{1}+1 &{}a_{1}+1\\ 1 &{} a_{1}&{}a_{1}+1 \end{array} \right] } \\&\quad =\left[ \begin{array}{lcl} -a_{12} &{} a_{1}(1-a_{12}) &{} a_{1}(1-a_{12})\\ -a_{13}&{} -a_{1}a_{13} &{}a_{1}(1-a_{13})\\ \end{array} \right] \end{aligned}$$
(27)

with \(|\mathcal{Z}|=1\). This shows that the decomposition reduces to the form \(F^{T}\mathcal{Z}=[\mathcal{L},0]\), with \(|\mathcal{L}| \ne \pm 1\), when \(a_{12}=1\), \(a_{13}=1\), and \(a_{1} \ne \pm 1\). Hence, also when both the GCDs of the pairs \(a_{1}, a_{2}\) and \(a_{1}, a_{3}\) are equal to one, \(\tilde{z}^{12}_{1r,j}\) and \(\tilde{z}^{13}_{1r,j}\) will not be jointly integer-estimable.

A canonical integer decomposition

As the above examples have shown, one cannot formulate the GLONASS model on the basis of (25) and then aim to integer resolve the \(2(m-1)\) ambiguities \(\tilde{z}_{1r,j}^{1s}\). A scalar approach is thus not sufficient to guarantee joint integer-estimability. To be able to establish joint integer-estimability, we will now take a vectorial approach, starting from the \(2(m-1)\) DD phase equations

$$\begin{aligned} {\mathsf{E}}(\phi _{1r,j}^{1s}) = \rho _{1r}^{1s}+2848\lambda _j^{0}\left[ \frac{z_{1r,j}^{s}}{a_{s}}- \frac{z_{1r,j}^{1}}{a_{1}}\right] \end{aligned}$$
(28)

With \(\phi =[\phi _{,1}^{T}, \phi _{,2}^{T}]^{T}\), \(\phi _{,j}=[\phi _{1r,j}^{12}, \ldots , \phi _{1r,j}^{1m}]^{T}\), \(e=[1,1]^{T}\), \(\rho =[\rho _{1r}^{12}, \ldots , \rho _{1r}^{1m}]^{T}\), \(z=[z_{,1}^{T}, z_{,2}^{T}]^{T}\), and \(z_{,j}=[z_{1r,j}^{12}, \ldots , z_{1r,j}^{1m}]^{T}\), the vectorial form of the \(2(m-1)\) phase observation equations (28) reads

$$\begin{aligned} {\mathsf{E}}(\phi )= e \otimes \rho + (\varLambda \otimes H) z \end{aligned}$$
(29)

with \(\varLambda = \mathrm{diag}(\lambda _{1}^{0}, \lambda _{2}^{0})\) and

$$\begin{aligned} H= 2848 \times \left[ \begin{array}{ccccc} -\frac{1}{a_{1}} &{} \frac{1}{a_{2}} &{} &{} &{} \\ -\frac{1}{a_{1}} &{} &{}\frac{1}{a_{3}}&{} &{} \\ \vdots &{} &{} &{}\ddots &{} \\ -\frac{1}{a_{1}}&{} &{} &{} &{}\frac{1}{a_{m}} \end{array} \right] \end{aligned}$$
(30)

Note that although H itself is non-integer, it can be written as the product of a non-integer diagonal matrix and an integer matrix: \(H=\mathrm{diag}(\frac{2848}{a_{1}a_{2}}, \dots , \frac{2848}{a_{1}a_{m}})F^{T}\), where \(F^{T} \in \mathbb{Z}^{(m-1) \times m}\). We will now determine a canonical decomposition of the patterned integer matrix \(F^{T}\). Although this patterned decomposition is mathematically of interest in its own right, its importance for the current contribution is that it will form, together with Theorem 1, the basis by which the new GLONASS FDMA model can be established.

Theorem 2

(Canonical Integer Decomposition) Consider the patterned integer matrix

$$\begin{aligned} F^{T}= \left[ \begin{array}{ccccc} -a_{2} &{} a_{1} &{} &{} &{} \\ -a_{3} &{} &{}a_{1}&{} &{} \\ \vdots &{} &{} &{}\ddots &{} \\ -a_{m} &{} &{} &{} &{}a_{1} \end{array} \right] \in \mathbb{Z}^{(m-1) \times m} \end{aligned}$$
(31)

and define the vectors \(a=(a_{1}, \ldots , a_{m})^{T} \in \mathbb{Z}^{m}\), \(a_{I}=(a_{1}, \ldots , a_{i})^{T} \in \mathbb{Z}^{i}\) and \(e_{m-i-1}=(1, \ldots , 1)^{T} \in \mathbb{R}^{m-i-1}\), and the scalars \(g_{1}=a_{1}\) and \(g_{i} =\mathrm{GCD}(a_{1}, \ldots , a_{i})\) \((1<i \le m)\). Then, \(F^{T}\) can be transformed in canonical integer form as:

$$\begin{aligned} F^{T}\mathcal{Z}=[\mathcal{L}, 0] \end{aligned}$$
(32)

with admissible \(\mathcal{Z}=[z_{1}, \ldots , z_{m}]\) (i.e., being integer with integer inverse) having as column vectors

$$\begin{aligned} z_{i} = \left\{ \begin{array}{ll} \left[ \frac{\alpha _{i}}{g_{i}}a_{I}^{T}, \beta _{i}, \frac{\alpha _{i}}{g_{i}}a_{1}e_{m-i-1}^{T}\right] ^{T}&{}\quad \mathrm{for}\; 1 \le i < m \\ \\ \frac{1}{g_{m}}a&{}\quad \mathrm{for}\;i=m \end{array} \right. \end{aligned}$$
(33)

and with integer lower triangular matrix \(\mathcal{L}\) having as entries

$$\begin{aligned} \mathcal{L}_{ii}&=a_{1}g_{i+1}/g_{i}\quad \mathrm{for}\; i=1, \ldots , m-1 \\ \mathcal{L}_{ij}&=-a_{1}\alpha _{j}a_{1(i+1)}/g_{j}\quad \mathrm{for}\; i=j+1, \ldots , m-1 \end{aligned}$$
(34)

with the integer scalars \(\alpha _{i}\) and \(\beta _{i}\) given by

$$\begin{aligned} -\alpha _{i}a_{i+1}+\beta _{i}g_{i}=g_{i+1}\;\mathrm{for}\;i=1, \ldots , m-1 \end{aligned}$$
(35)

Proof

For the proof, see 'Appendix.' \(\square \)

We now give a few examples to see the canonical integer decomposition of the theorem at work.

Example 9

(The 4-satellite case): In case \(m=4\), it follows from Theorem 2 that

$$\begin{aligned}&\underset{F^{T}}{ \left[ \begin{array}{cccc} -a_{2} &{} a_{1} &{} &{} \\ -a_{3} &{} &{}a_{1} &{} \\ -a_{4} &{} &{} &{}a_{1} \end{array} \right] }\underset{\mathcal{Z}}{\left[ \begin{array}{cccc} \alpha _{1} &{} \frac{a_{1}\alpha _{2}}{g_{2}} &{} \frac{a_{1}\alpha _{3}}{g_{3}} &{}\frac{a_{1}}{g_{4}} \\ \beta _{1} &{} \frac{a_{2}\alpha _{2}}{g_{2}} &{} \frac{a_{2}\alpha _{3}}{g_{3}} &{}\frac{a_{2}}{g_{4}} \\ \alpha _{1} &{} \beta _{2} &{} \frac{a_{3}\alpha _{3}}{g_{3}} &{} \frac{a_{3}}{g_{4}}\\ \alpha _{1} &{} \frac{a_{1}\alpha _{2}}{g_{2}} &{} \beta _{3} &{} \frac{a_{4}}{g_{4}} \end{array} \right] } \\&\quad =\left[ \begin{array}{cccc} g_{2} &{} &{} &{}0 \\ -\alpha _{1}a_{13} &{} \frac{a_{1}g_{3}}{g_{2}} &{} &{}0 \\ -\alpha _{1}a_{14} &{} -\frac{a_{1}\alpha _{2}a_{14}}{g_{2}} &{} \frac{a_{1}g_{4}}{g_{3}} &{} 0\\ \end{array} \right] =[\mathcal{L},0] \end{aligned}$$
(36)

with integer \(\alpha \)’s and \(\beta \)’s determined from

$$\begin{aligned} -\alpha _{i}a_{i+1}+\beta _{i}g_{i}=g_{i+1}\quad \mathrm{for}\;i=1, 2, 3 \end{aligned}$$
(37)

Note that the determinant of the integer lower triangular matrix \(\mathcal{L}\), being the product of its diagonal terms, is given as \(|\mathcal{L}|=a_{1}^{2}g_{4}\ne \pm 1\). This shows that the integer functions \(F^{T}z\) are not integer-estimable. Hence, the conclusion reached is that, despite \(\zeta =(I_{2} \otimes F^{T})z\) being estimable and always integer, one is not allowed—for integer ambiguity resolution purposes—to replace (29) by \({\mathsf{E}}(\phi )= e \otimes \rho + (\varLambda \otimes H') \zeta \), where \(H'=\mathrm{diag}(\frac{2848}{a_{1}a_{2}}, \dots , \frac{2848}{a_{1}a_{m}})\).

Example 10

(A special case) To determine the integer-estimable ambiguities for the previous example, we can apply Corollary 1 and determine them as \(\tilde{z}=[I_{3},0]\mathcal{Z}^{-1}z\). Let us see how this works out for the special case \(a_{12}=1\). In this special case, we have \(g_{2}=1\), and therefore also \(g_{3}=g_{4}=1\). With all these GCDs being equal to one, it follows from (37) that \(\alpha _{1}=\beta _{1}=-1\), \(\alpha _{2}=\alpha _{3}=0\) and \(\beta _{2}=\beta _{3}=1\). Although \(\mathcal{L}\) simplifies in this case, its determinant is still not equal to \(\pm 1\). Hence, the integer functions \(F^{T}z\) of (36) remain integer-inestimable.

We now use \(\tilde{z}=[I_{3},0]\mathcal{Z}^{-1}z\) to determine the integer-estimable ambiguities for this case. Since \(\mathcal{Z}\) and its inverse then simplify to

$$\begin{aligned} \mathcal{Z}= \left[ \begin{array}{cccc} -1&{}\;0&{}\;0&{}\;a_{1}\\ -1&{}\;0&{}\;0&{}\;a_{2}\\ -1&{}\;1&{}\;0&{}\;a_{3}\\ -1&{}\;0&{}\;1&{}\;a_{4} \end{array} \right] ,\quad \mathcal{Z}^{-1}= \left[ \begin{array}{cccc} -a_{2}&{}\;a_{1}&{}\;0&{}\;0\\ a_{23}&{}\;-a_{13}&{}\;1&{}\;0\\ a_{24}&{}\;-a_{14}&{}\;0&{}\;1\\ -1&{}\;1&{}\;0&{}\;0 \end{array} \right],\end{aligned}$$
(38)

we obtain the integer-estimable ambiguities as

$$\begin{aligned} \tilde{z}_{1}= & {} a_{1}z^{2}-a_{2}z^{1}=-z^{1}-a_{1}z^{12} \\ \tilde{z}_{2}= & {} a_{23}z^{1}-a_{13}z^{2}+z^{3}=z^{13}-a_{13}z^{12} \\ \tilde{z}_{3}= & {} a_{24}z^{1}-a_{14}z^{2}+z^{4}=z^{14}-a_{14}z^{12} \end{aligned}$$
(39)

with the integer-inestimable ambiguity being \(\tilde{n}=z^{2}-z^{1}\). Note that \(\tilde{z}_{1}\) of (39) is the integer-estimable ambiguity we already found earlier (see Example 6) for the special case \(a_{12}=1\) or \(\mathrm{GCD}(a_{1},a_{2})=1\), see (22). Also note that \(\tilde{z}_{2}\) of (39) resembles (14) (see Example 4) which was shown to be not integer-estimable when \(a_{12}\ne 1\).

GLONASS integer-estimable model

In this section, we formulate our new model, identify the GLONASS integer-estimable ambiguities and use the ADOP to infer the model’s strength for ambiguity resolution.

New model

We are now in a position to formulate the GLONASS integer-estimable DD model by combining Theorem 1, and its Corollary 1, with the integer canonical decomposition of Theorem 2. From \(F^{T}\mathcal{Z}=[\mathcal{L},0]\) (\(|\mathcal{L}| \ne \pm 1\)) of Theorem 2 (see 32), it follows, using Theorem 1, that the integer functions \(\zeta = (I_{2} \otimes F^{T})z\) are not integer-estimable and can therefore not be used, for the purpose of integer ambiguity resolution, to reparametrize the DD phase equations \({\mathsf{E}}(\phi )= e \otimes \rho + (\varLambda \otimes H) z\), with \(H=H'F^{T}\) and \(H'=\mathrm{diag}(\frac{2848}{a_{1}a_{2}}, \dots , \frac{2848}{a_{1}a_{m}})\), as \({\mathsf{E}}(\phi )= e \otimes \rho + (\varLambda \otimes H') \zeta \). However, Theorem 1 with its Corollary 1 also shows that the integer functions \(\tilde{z}= (I_{2} \otimes [I_{m-1},0]\mathcal{Z}^{-1})z\) are integer-estimable and that therefore \((I_{2} \otimes F^{T})z=(I_{2} \otimes \mathcal{L})\tilde{z}\) can be used to reparametrize the DD phase equations in integer-estimable GLONASS ambiguities as \({\mathsf{E}}(\phi )= e \otimes \rho + (\varLambda \otimes L) z\), where \(L=H'\mathcal{L}\). We summarize the result as follows.

Theorem 3

(GLONASS integer-estimable DD model) Let p and \(\phi \) denote the m-satellite observable DD code and phase vectors and assume their inter-frequency biases known. Then, the dual-frequency GLONASS integer-estimable, short-baseline, single-epoch, linearized DD model, having satellite 1 as reference, is given as

$$\begin{aligned} {\mathsf{E}}\left[ \begin{array}{c} p \\ \phi \end{array} \right] = \left[ \begin{array}{ccc} e \otimes G &{} 0 \\ e \otimes G &{} \varLambda \otimes L \end{array} \right] \left[ \begin{array}{c} b\\ a \end{array}\right] \end{aligned}$$
(40)

with the integer-estimable ambiguity vector \(a \in \mathbb{Z}^{2(m-1)}\), baseline vector \(b \in \mathbb{R}^{\nu }\), and design matrix entries: \(e=(1,1)^{T}\), G the \((m-1) \times \nu \) DD receiver-satellite geometry matrix, \(\varLambda = \mathrm{diag}(\lambda _{1}^{0}, \lambda _{2}^{0})\) and the lower triangular matrix

$$\begin{aligned} L_{ii}= & {} 2848 \times \frac{g_{i+1}}{a_{i+1}g_{i}}\quad \mathrm{for}\; i=1, \ldots , m-1 \\ L_{ij}= & {} 2848 \times \frac{-\alpha _{j}a_{1(i+1)}}{a_{i+1}g_{j}}\quad \mathrm{for}\; i=j+1, \ldots , m-1 \end{aligned}$$
(41)

for which the integers \(\alpha _{i}\) and \(\beta _{i}\) are given by \(-\alpha _{i}a_{i+1}+\beta _{i}g_{i}=g_{i+1}\), where \(a_{i}=2848+\kappa ^{i}\), \(\kappa ^{i} \in [-7, +6]\), and \(g_{1}=a_{1}\), \(g_{i} =\mathrm{GCD}(a_{1}, \ldots , a_{i})\) \((1<i \le m)\).

This result is the first GLONASS model formulation that guarantees, independent of the actual channel number entries, the integer-estimability of its ambiguities. In fact, it is a consequence of the two Theorems 1 and 2 that for the GLONASS ambiguities to be integer-estimable, the model must be of the above form.

The above model can be directly applied. No a-priori transformation is required to construct the integer-estimable ambiguities from its undifferenced versions. Conceptually, the only difference of the above model with its CDMA counterpart is the presence of the lower triangular matrix L, which here is given in easy-to-evaluate analytical form. This implies that available CDMA software is easily modified and that existing methods of integer ambiguity resolution can be directly applied.

The above formulation can also be applied to a range of different models and measurement situations. Next to the above geometry-based formulation, it can be used in geometry-fixed form (by setting \(G=0\)) or in geometry-free form (by setting \(G=I_{m-1}\)). For the single-frequency case, one simply replaces \(\varLambda \) in (40) by \(\lambda _{j}^{0}\) (\(j=1, 2\)).

Also, as the structure of (40) is, apart from L, similar to that of CDMA systems, many of the available CDMA results with their corresponding insights, including the analytical ones, are easily translated to that of the above GLONASS FDMA model. For instance, with \(Q_{\hat{a}\hat{a}}^{\mathrm{CDMA}}\) being the DD ambiguity variance matrix of a CDMA system, the corresponding ambiguity variance matrix of GLONASS for a similar measurement situation would be

$$\begin{aligned} Q_{\hat{a}\hat{a}}^{{\mathrm{GLONASS}}} = ( \varGamma \otimes L^{-1})Q_{\hat{a}\hat{a}}^{\mathrm{CDMA}} (\varGamma \otimes L^{-T}) \end{aligned}$$
(42)

with \(\varGamma \) the wavelength ratios between the two systems. Thus, through L, one may obtain clear insights into the ambiguity resolution capabilities of GLONASS and into its performance as compared to CDMA.

As many estimation algorithms include the process of inversion, we have also determined an analytical representation of the inverse of the lower triangular matrix L.

Corollary 2

(The inverse of GLONASS L) The inverse of the lower triangular matrix L of Theorem 3 (see 41) is again lower triangular having the entries,

$$\begin{aligned} L^{-1}_{ii}= & {} \frac{1}{2848} \times g_{i}a_{i+1}/g_{i+1} \quad \mathrm{for}\;i=1, \ldots , m-1 \\ L^{-1}_{ij}= & {} \frac{1}{2848} \times \alpha _{j} a_{j+1}a_{1(i+1)}\left( \prod \nolimits _{k=j+1}^{i-1} \beta _{k}\right) /g_{i+1} \\&\quad \mathrm{for}\;i=j+1, \ldots , m-1 \end{aligned}$$
(43)

with the integer \(\alpha _{i}\)’s and \(\beta _{i}\)’s determined by \(-\alpha _{i}a_{1(i+1)}+\beta _{i}g_{i}=g_{i+1}\) for \(i=1, \ldots , m-1\).

Proof

The proof follows from verification of \(LL^{-1}=I_{m-1}\). \(\square \)

The lower triangular matrix L and its inverse \(L^{-1}\) are, through the scalars \(a_{i}\) (\(1 \le i \le m\)), completely driven by the satellite channel numbers. As no assumptions were made about their actual values, the representation of L is generally valid and not subject to a particular measurement case. Hence, it could be used for potential design studies, e.g., to answer questions like what frequency separations and/or sets of channel numbers can give improved performance, and it is also still valid if the set of channel numbers would be extended and/or changed in the future. Hereby, we note that the GLONASS channel numbers have evolved over time (Leick et al. 2015; Revnivykh et al. 2017). In the original GLONASS design, the channel numbers were specified in the range [0, 24]. This was later modified to be in compliance with recommendations of the International Telecommunication Union (ITU) (Langley 1994). Starting in 1998, the channel numbers were restricted to [0, 12]. In a second update, conducted in 2005, also negative channel numbers were introduced and the covered range was changed to the current \([-7, +6]\) (ICD 2008).

Finally, we note that in the above formulation (40), we have taken an arbitrary satellite ‘1’ as reference. Although the choice of reference-satellite dictates the entries of L (i.e., the entries will change, when changing the reference satellite), it is important to know that a change of reference satellite will not change the performance of the above model (40). That is, the ambiguity resolution performance, as measured by the integer least-squares success rate, as well as the quality of the float and fixed baseline solutions, are invariant for the arbitrary choice of reference satellite. This can be understood once one recognizes that the \((m-1) \times m\) between-satellite differencing matrix \(D^{T}=[-e_{m-1}, I_{m-1}]\) is present in both the functional model and the stochastic model,

$$\begin{aligned} {\mathsf{D}}\left[ \begin{array}{c} p \\ \phi \end{array} \right] = \left[ \begin{array}{cc} Q_{pp} \otimes R &{} 0 \\ 0 &{} Q_{\phi \phi } \otimes R \end{array} \right] \end{aligned}$$
(44)

in which \(Q_{pp}=2\mathrm{diag}(\sigma _{p_{1}}^{2}, \sigma _{p_{2}}^{2})\), \(Q_{\phi \phi }=2\mathrm{diag}(\sigma _{\phi _{1}}^{2}, \sigma _{\phi _{2}}^{2})\) and \(R=D^{T}W^{-1}D\), where W is the diagonal satellite elevation weighting matrix. The property of invariance against the change of reference satellite is due to the fact that the differencing matrix manifests itself in the various estimation formulae through the expression \(D(D^{T}W^{-1}D)^{-1}D^{T}\), which, with \(e_{m}\) being the m-vector of ones, is identical to \(W-We_{m}(e_{m}^{T}We_{m})^{-1}e_{m}^{T}W\) and therefore invariant for the specific choice of differencing matrix or specific choice of reference satellite.

GLONASS integer-estimable ambiguities

As we pointed out, for the workings of model (40), it is not necessary to explicitly construct the GLONASS integer-estimable ambiguities from their undifferenced counterparts. To be able to work with the model, it is sufficient to know the lower triangular matrix L (see 41). Still, to get a deeper insight into our GLONASS model, we shall here discover which \((m-1)\) integer functions of the undifferenced GLONASS ambiguities are integer-estimable. According to Corollary 1, this amounts to solving \(\tilde{z} = [I_{m-1},0]\mathcal{Z}^{-1}z\). The solution is given in the following corollary.

Corollary 3

(GLONASS integer-estimable ambiguities)


Let \(z_{1r}^{i}\) denote, for either frequency \(j=1,2\), the between-receiver GLONASS ambiguity of satellite \(i = 1, \ldots , m\). Then, the GLONASS integer-estimable ambiguities are given in recursive form as

$$\begin{aligned} \underset{i \times 1}{\tilde{z}_{i}} = \left[ \begin{array}{c} \tilde{z}_{i-1} \\ \frac{g_{i}}{g_{i+1}}\left[ z_{1r}^{1(i+1)}-\frac{a_{1(i+1)}}{g_{i}} \tilde{n}_{i}\right] \end{array} \right] \end{aligned}$$
(45)

for \(i=2, \ldots , m-1\), with the integer-inestimable ambiguity

$$\begin{aligned} \tilde{n}_{i+1} = \frac{g_{i+1}}{g_{i}}\left[ \tilde{n}_{i} - \alpha _{i} c_{i}^{T}\tilde{z}_{i} \right] \quad \mathrm{for}\;\;i=2, \ldots , (m-1) \end{aligned}$$
(46)

and the initializations

$$\begin{aligned} \tilde{z}_{1} = \frac{g_{1}}{g_{2}}\left[ z_{1r}^{2}-\frac{a_{2}}{g_{1}} z_{1r}^{1}\right] ,\quad \tilde{n}_2 = -\alpha _{1} z_{1r}^{2} + \beta _1 z_{1r}^1 \end{aligned}$$
(47)

Proof

For the proof, see 'Appendix.' \(\square \)

Inspection of the integer-estimable GLONASS ambiguities (see 45) shows that they are scaled double-differenced ambiguities corrected for their integer-inestimable part. Also note that if all channel numbers would be equal, i.e., \(a_{i}=\mathrm{constant}\) for \(i=1, \ldots , m\), then the \(a_{1i}\)’s would be zero and all \(g_{i}\)’s would be the same, thus giving the result that then all integer-estimable ambiguities would become equal to standard DD ambiguities, just as we know them from the CDMA systems: \(\tilde{z}_{i}=z_{1r}^{1(i+1)}\) for \(i=1, \ldots , (m-1)\). The following example illustrates this further.

Example 11

(The 4-satellite case) For \(m=4\), we obtain from the above corollary, recognizing that \(z_{1r}^{2}-\frac{a_{2}}{g_{1}} z_{1r}^{1}=z_{1r}^{12}-\frac{a_{12}}{g_{1}} z_{1r}^{1},\)

$$\begin{aligned} \tilde{z}_{1}= & {} \frac{g_{1}}{g_{2}}\left[ z_{1r}^{12}-\frac{a_{12}}{g_{1}} z_{1r}^{1}\right] \\ \tilde{z}_{2}= & {} \frac{g_{2}}{g_{3}}\left[ z_{1r}^{13}-\frac{a_{13}}{g_{2}} \tilde{n}_{2}\right] , \quad \tilde{n}_2 = -\alpha _{1} z_{1r}^{2} + \beta _1 z_{1r}^1 \\ \tilde{z}_{3}= & {} \frac{g_{3}}{g_{4}}\left[ z_{1r}^{14}-\frac{a_{14}}{g_{3}} \tilde{n}_{3}\right] , \quad \tilde{n}_3 = \frac{g_{3}}{g_{2}}\left[ \tilde{n}_{2}-\alpha _{2}\tilde{z}_{2}\right] \end{aligned}$$
(48)

Thus, the integer-estimable GLONASS ambiguities are indeed scaled double-differenced ambiguities corrected for their integer-inestimable part. For the special case that \(g_{2}=1\), the result reduces to that of (39).

On GLONASS integer ambiguity resolution

With the established results so far, we are now in the position to give insight into the ambiguity resolution capabilities of our new GLONASS integer-estimable model formulation. For that purpose, we will use the ambiguity dilution of precision (ADOP), which is an easy-to-compute scalar diagnostic that measures the intrinsic model strength for successful ambiguity resolution. The ADOP, introduced in Teunissen (1997), is defined as

$$\begin{aligned} \mathrm{ADOP} = \sqrt{|Q_{\hat{a}\hat{a}}|}^{\frac{1}{2(m-1)}}\;\;\mathrm{(cycles)} \end{aligned}$$
(49)

with \(Q_{\hat{a}\hat{a}}\) being the \(2(m-1) \times 2(m-1)\) variance matrix of the least-squares estimated integer-estimable ambiguities. Important properties of the ADOP are that it is invariant for admissible ambiguity reparametrizations, that it is a measure of the probability content of the ambiguity confidence ellipsoid and corresponding ambiguity search space, and that it provides an approximation to the integer least-squares success rate. As a rule of thumb, an \(\mathrm{ADOP}\) of 0.12 cycles indicates an ambiguity success rate of \(99.9\%\) (Odijk and Teunissen 2008).

When we apply (49) to (42), we obtain an expression that relates the single-system GLONASS ADOP to that of a CDMA system. In a similar way, we can obtain the ADOP for two systems, i.e., when GLONASS is combined with a CDMA system. These results are summarized in the following.

Lemma 1

(GLONASS ADOP) The single-system, dual-frequency GLONASS ambiguity dilution of precision, \(\mathrm{ADOP}_{\mathrm{GLO}}\), and its single-frequency, dual-system version, \(\mathrm{ADOP}_{\mathrm{SF-DS}}\), can be expressed in a referenced dual-frequency CDMA ADOP as

$$\begin{aligned} \mathrm{ADOP}_{{\mathrm{GLO}}}= & {} \left( (\frac{\lambda _{1}\lambda _{2}}{\lambda _{1}^{0}\lambda _{2}^{0}})^{\frac{1}{2}}|L|^{\frac{-1}{(m-1)}}\right) \mathrm{ADOP}_{{\mathrm{DF-CDMA}}} \\ \mathrm{ADOP}_{{\mathrm{SF-DS}}}= & {} \left( (\frac{\lambda _{2}}{\lambda _{2}^{0}})^{\frac{1}{2}}|L|^{\frac{-1}{2(m-1)}} \right) \mathrm{ADOP}_{{\mathrm{DF-CDMA}}} \end{aligned}$$
(50)

with GLONASS wavelengths \(\lambda _{1}^{0}, \lambda _{2}^{0}\) and CDMA wavelengths \(\lambda _{1}, \lambda _{2}\).

To find a useful approximation to these GLONASS ADOPs, we first note, if we take GPS as the CDMA system, that the wavelength ratios can be well approximated by one, since \(\sqrt{\lambda _{1} \lambda _{2}/\lambda _{1}^{0} \lambda _{2}^{0}}=1.02\) and \(\sqrt{\lambda _{2}/\lambda _{2}^{0}}=1.0075\), which follows from \(\lambda _{1}^{0}=18.71\, \mathrm{cm}\) (\(f_{1}^{0}=1602\, \mathrm{MHz}\)), \(\lambda _{2}^{0}=24.06\, \mathrm{cm}\) (\(f_{2}^{0}=1246\, \mathrm{MHz}\)), \(\lambda _{1}=19.03 \,\mathrm{cm}\) (\(f_{1}=1575.42\, \mathrm{MHz}\)), and \(\lambda _{2}=24.42\, \mathrm{cm}\) (\(f_{2}=1227.60\, \mathrm{MHz}\)). For the determinant of L, we note, since L is lower triangular, that its determinant is equal to the product of its diagonal entries, which with (41) of Theorem 3 gives \(|L|^{\frac{-1}{m-1}}=r \left( \frac{a_{m}}{g_{m}}\right) ^{\frac{1}{(m-1)}}\), where \(r =\prod _{i=1}^{m-1}\left( \frac{a_{i}}{2848}\right) ^{\frac{1}{m-1}}\). As with the wavelength ratios, we have to a good approximation \(r \approx 1\), since \(a_{i}=2848+\kappa ^{i}\) where \(\kappa ^{i} \in [-7, +6]\). From this the following two approximations are obtained, \( \mathrm{ADOP}_{{\mathrm{GLO}}} \approx \left( 2848/g_{m}\right) ^{\frac{1}{m-1}} \mathrm{ADOP}_{{\mathrm{DF-CDMA}}} \) and \( \mathrm{ADOP}_{{\mathrm{SF-DS}}} \approx \left( 2848/g_{m}\right) ^{\frac{1}{2(m-1)}} \mathrm{ADOP}_{{\mathrm{DF-CDMA}}} \), thus showing, since the GCD \(g_{m}\) is at most three for four or more satellites, that the factor by which the CDMA ADOP gets multiplied is largely driven by the number of tracked satellites m and the very small relative frequency separation of GLONASS, \(\Delta f_{1}/f_{1}^{0}=\Delta f_{2}/f_{2}^{0}=1/2848\) (i.e., a larger frequency separation would have given a smaller ADOP).

Hence, since the GCD \(g_{m}\) is at most two for seven satellites, the GLONASS ADOP is then about three and a half times larger than its CDMA counterpart and less than two times larger in the single-frequency, dual-system case. This would indicate that although instantaneous ambiguity resolution may not be possible, fast ambiguity resolution, using less than ten epochs, is. A closer look at the diagonal entries of the GLONASS \(L^{-1}\) matrix (see 43) shows, however, that the situation is even much more favorable than that. As the size of the full ambiguity resolution ADOP is largely driven by the large first diagonal entry of \(L^{-1}\) (recall that \(g_{1}=a_{1}\)), the ADOP of partial ambiguity resolution can be made significantly smaller by resolving, instead of all \(m-1\) ambiguities, the per frequency \(m-2\) best determined ambiguities. In such case, the GLONASS ambiguity resolution becomes on par with that of the CDMA systems.

Extending the model

We have assumed so far that the differential ionospheric delays were negligible and the inter-frequency biases absent or calibrated. We will now show how to adapt the model so as to accommodate these delays and biases.

Ionospheric and inter-frequency biases

The ionospheric delays need to be accounted for in case one works with long baselines. As the delay is frequency dispersive, the DD ionospheric delay can be expressed to a first order in the DD delay on the first frequency as \(\iota _{1r,j}^{1s}=\mu _{j}i_{1r}^{1s}\), where \(i_{1r}^{1s}=(\frac{2848}{a_{s}})^{2} \iota _{1r}^{s}-(\frac{2848}{a_{1}})^{2} \iota _{1r}^{1}\) and \(\mu _{j}= (f_{1}^{s}/f_{j}^{s})^{2}\) (\(f_{1}^{s}/f_{2}^{s}=9/7\)). To account for the ionospheric delays, we thus include \(\iota _{1r,j}^{1s}=\mu _{j}i_{1r}^{1s}\) in the corresponding DD code and phase observation equations of (40). This inclusion will reduce the redundancy and make the model weaker as its number of unknown parameters is increased by \(m-1\) per epoch. Importantly though, in the absence of inter-frequency biases, this addition of the ionospheric delays will not change the integer-estimability of the GLONASS ambiguities. Hence, the same procedure for resolving the ambiguities can then still be used. This situation may change, however, when also the inter-frequency biases need to be accounted for. If this happens, adequate remedies need to be in place. As the code biases directly affect the usefulness of the code data for integer ambiguity resolution, the solutions need to be found in making the performance of ambiguity resolution immune or robust for these biases. The following three different approaches are possible:

  1. 1.

    GLONASS code data In case the code biases have small-enough bounds, one may still use the GLONASS code data with model (40), provided it is combined with either one or both of the following: code data down-weighting and/or ambiguity resolution bias robustness. One can take advantage of the bias robustness of ambiguity resolution if the code data are sufficiently precise and the code biases not too large. It is namely due to the integer nature of the ambiguities that small biases are still allowed in the ambiguity-float solution without really affecting the ambiguity success rate. In order to evaluate the size of allowable bias, one can either make use of the analytical, easy-to-compute, bias-affected integer-bootstrapping success rate formula of Teunissen (2001) or, in case of integer least-squares, make use of Monte Carlo simulations as demonstrated in Verhagen et al. (2013) and Li et al. (2014).

    In addition to the bias robustness, one may also aim to lessen the code bias effect on ambiguity resolution by down-weighting the code data in the adjustment. Note, however, that a simple down-weighting is not enough. The use of a weight different from that prescribed by the code data precision requires namely that one also applies a proper variance-propagation, so as to obtain a realistic ambiguity variance matrix as input for the ambiguity resolution process.

    Once the correct integer ambiguities are obtained, the ambiguity-fixed baseline can be computed from the phase data alone and thus without a dependence on the biased code data.

  1. 2.

    CDMA code data The above approach does not work when the code biases are too large or simply unknown. In that case, one cannot rely on using the GLONASS code data for integer ambiguity resolution. A solution is then to discard the GLONASS code data and replace them by unbiased code data from another GNSS. In the current multi-GNSS era, such solution is indeed practically feasible for many applications. Hence, for short baselines, this would mean that one can directly use the GLONASS model (40) again, but now with the GLONASS code data vector p replaced by that of another GNSS.

    This situation changes, however, if one needs to work with long baselines and has to include the ionospheric delays. The ionospheric delays of the phase data will then namely refer to GLONASS satellites, while those of the code data to the satellites of the added GNSS. As a result of this lack in coupling between the ionospheric delays of the phase data and code data, the integer-estimability of the GLONASS ambiguities will be affected. In the next sections, we will show how to recover in this situation the GLONASS integer-estimability again. Note, however, that the mentioned lack of coupling and corresponding integer-inestimability can also be repaired when one includes an ionospheric model, thereby linking all ionospheric delays to one common set of ionospheric parameters.

  1. 3.

    Codeless data In case the GLONASS code data cannot be used and no code data of another GNSS are available, the ultimate solution lies in resorting to phase-only ambiguity resolution. Again, for short baselines, this can be done directly with the GLONASS model (40), be it that then at least two epochs of data are needed, since instantaneous phase-only ambiguity resolution is impossible due to the lack of change in relative receiver-satellite geometry. For long baselines, however, the inclusion of the ionospheric delays and the absence of code data will again have their effect on the integer-estimability of the ambiguities. We will show how to solve this in the sections following.

Note that in the above discussion, we did not include the option of inter-frequency code bias modeling, the reason being that no such suitable model yet exists (Kozlov et al. 2000; Reussner and Wanninger 2011; Chuang et al. 2013; Hakansson et al. 2017). But since the biases can be calibrated, one may wonder why not include their time constancy directly into the model. This is indeed possible and would amount to treating the unknown code bias vector as if it is a time-constant ‘ambiguity vector,’ not for phase, but for the biased code observable. This would then be the simplest model one can think of. When doing so, it will be clear that, like with the phase-only approach, no instantaneous solution would be possible. At least two epochs would then be needed to establish the required change in relative receiver-satellite geometry. By including the code observables, in addition to the phase observables, one of course will get a more precise float solution of both the baseline and ambiguities, and therefore also a higher ambiguity success rate for integer ambiguity resolution. However, a closer inspection will reveal that this precision improvement is marginal. If \(Q_{\hat{a}\hat{a}}(\phi )\) denotes the phase-only ambiguity variance matrix and \(Q_{\hat{a}\hat{a}}(p, \phi )\) the ambiguity variance matrix when both phase and code are used, but with the inter-frequency code bias modeled as a time-constant ’ambiguity-vector’, then

$$\begin{aligned} Q_{\hat{a}\hat{a}}(p, \phi ) \approx \frac{1}{1+ \sigma _{\phi }^{2}/\sigma _{p}^{2}} \times Q_{\hat{a}\hat{a}}(\phi ) \end{aligned}$$
(51)

This shows, since the phase-code variance ratio is very small (i.e., \(\sigma _{\phi }^{2}/\sigma _{p}^{2} \approx 10^{-4}\)), that for all practical purposes, no real benefit can be expected from including the code data into the model. Furthermore, by including the code data, the solution also becomes susceptible to code multipath which is many times larger than that of phase.

We will now show how the integer-estimability of the GLONASS ambiguities can be recovered if the need arises to add parameters to the phase equations of our model (40). First, we will develop the general case in the next section, followed by two special cases in the sections following.

Recovery of integer-estimable ambiguities

The consequence of adding extra parameters to only the phase equations is that the system of equations becomes rank defect. As this rank defect reduces the integer-estimability of the ambiguities, we need to find which functions of the ambiguities recover the integer-estimability. Already earlier we showed that one does not need to go back and consider functions of the undifferenced ambiguities, but that it now suffices to work with our basic set of integer-estimable ambiguities of model (40), i.e., the \(m-1\) integer functions as given in Corollary 3.

The elimination of rank defects to establish estimability can be done in many different ways (Teunissen 1985; Odijk et al. 2015). Every restriction of the parameter space to a space complementary to the null space of the design matrix is a valid choice. In our case, however, the aim is integer-estimability and not only estimability. This implies that some choices should be avoided. For instance, taking the added parameters that are the cause for the rank defect as \(\mathcal{S}\)-basis would be a poor choice, as this would directly spoil the integerness of the ambiguities. Thus, the aim is to eliminate the rank defect such that the number of integer-estimable ambiguities is reduced at least as possible. The following theorem shows how this can be done.

Theorem 4

(Recovery of Integer-Estimability) Let Cc, with C of full rank, be added to the dual-frequency DD phase equations to give

$$\begin{aligned} {\mathsf{E}}(\phi )=e \otimes \rho + \underset{n \times n}{M} z+ \underset{n \times p}{C} c \end{aligned}$$
(52)

with \(n=2(m-1)\), \(M=\varLambda \otimes L\), and z integer-estimable when \(c=0\). Furthermore, let the \((n+p) \times p\) basis matrix \([Z_{2}^{T}, Y_{2}^{T}]^{T}\) span the null space of [MC], i.e., \(MZ_{2}+CY_{2}=0\), and let \(\mathcal{Z}=[Z_{1}, Z_{2}]\) be admissible (integer and \(|\mathcal{Z}|=\pm 1\)). Then, (52) can be parametrized in the maximum number of integer-estimable parameters as

$$\begin{aligned} {\mathsf{E}}(\phi )=e \otimes \rho + \underset{n \times (n-p)}{MZ_{1}}\tilde{z}_{1}+\underset{n \times p}{C}\tilde{c} \end{aligned}$$
(53)

with the integer-estimable ambiguity vector \(\tilde{z}_{1} \in \mathbb{Z}^{n-p}\) and estimable parameter vector \(\tilde{c} \in \mathbb{R}^{p}\) given as

$$\begin{aligned} \tilde{z}_{1} = [I_{n-p},0]\mathcal{Z}^{-1}z\quad \mathrm{and}\quad \tilde{c} = c-Y_{2}[0, I_{p}]\mathcal{Z}^{-1}z \end{aligned}$$
(54)

Proof

For the proof, see 'Appendix.' \(\square \)

With the addition of Cc to the DD phase equations, the originally integer-estimable ambiguity vector z in (52) fails to remain integer-estimable. The theorem shows how (52) needs to be replaced by (53) so that a maximum number of integer-estimable ambiguities can be recovered. The theorem also provides an interpretation of the new parameters by means of (54). Note that the number of integer-estimable ambiguities has reduced by the dimension of c and that \(\tilde{c}\) is now a version of c that is lumped with the integer-inestimable ambiguities.

The theorem has the attractive feature of showing, that in order to work with (53), only \(Z_{1}\) is needed and thus not the explicit transformation of (54). What the theorem does not show, however, is how \(Z_{1}\) can be obtained. We will now show how this can be done in a general way. Therefore, let \(C^{\perp } \in \mathbb{Z}^{(n-p) \times n}\) be a basis matrix of the orthogonal complement of the range space of C. Then, it follows from \([Z_{2}^{T}, Y_{2}^{T}]^{T}\) being a basis matrix of the null space of [MC] that we need to construct an admissible \(\mathcal{Z}\) that delivers a decomposition like \(C^{\perp T}M\mathcal{Z}=[C^{\perp T}MZ_{1}, 0]\). Since \(C^{\perp T}M\) is integer and of full row-rank \((n-p)\), it is always possible (e.g., Theorem 2 is an analytical example) to find an admissible \(\mathcal{Z}\) to obtain a decomposition of the form \(C^{\perp T}M\mathcal{Z}=[\mathcal{P}, 0]\), with \(\mathcal{P}\) being lower triangular and of full rank \(n-p\). To see this, consider the following construction of such \(\mathcal{Z}\) and \(\mathcal{P}\): By a repeated proper integer sweeping with the columns of \(C^{\perp T}M\) , one first brings the first row of the matrix \(C^{\perp T}M\mathcal{Z}\) in the form \([p_{11}, 0, \ldots , 0, 0]\). Then, one works on the second row of the so-obtained matrix to get the second row in the form \([p_{21}, p_{22}, 0, \ldots , 0, 0]\). Continuing in this way, the last row will then have the form \([p_{(n-p)1}, p_{(n-p),2}, \ldots , p_{(n-p),(n-p)},0]\), with the last zero representing the last p zero columns in \([\mathcal{P}, 0]\). The concatenation of the integer column sweeping will then form the sought for admissible \(\mathcal{Z}\) from which \(Z_{1}\) is then obtained.

Although this approach of constructing the sought for \(\mathcal{Z}\) is general, further simplifications are possible in case one can exploit the structure of C. In the following, we will present and develop two such cases, namely when C is given as

$$\begin{aligned} C=-\mu \otimes I_{m-1} \quad \mathrm{and}\quad C=\varLambda \otimes \kappa \end{aligned}$$
(55)

The first case is applicable when the ionospheric delays need inclusion for long-baseline phase-only GLONASS ambiguity resolution, while the second case is applicable in case the same model extension applies to L1 and L2. Note that \(C=(-\mu \otimes I_{m-1}, \varLambda \otimes \kappa )\), in case both extensions are needed at the same time. The solutions presented below also apply to this simultaneous case.

Long-baseline phase-only integer-estimability

We have seen that for long baselines, when the ionospheric delays need to be included, the integer-estimability of the ambiguities changes in two important cases: (a) in case of GLONASS phase-only processing and (b) in case the GLONASS phase data is combined with code data of another GNSS. The following corollary shows how for both these cases, the recovery of the ambiguity integer-estimability can be realized.

Corollary 4

(Phase-only integer-estimability) Let the dual-frequency, short-baseline phase equation be given as (see 40)

$$\begin{aligned} {\mathsf{E}}(\phi )=e \otimes \rho +(\varLambda \otimes L)z \end{aligned}$$
(56)

with \(z_{1}\) and \(z_{2}\) of \(z=(z_{1}^{T}, z_{2}^{T})^{T}\) being the integer-estimable ambiguities on L1 and L2, respectively. Then, the long-baseline GLONASS phase-only phase equation is given as

$$\begin{aligned} {\mathsf{E}}(\phi )=e \otimes \rho +(\lambda \otimes L)\tilde{z}+(-\mu \otimes I_{m-1})\tilde{\iota } \end{aligned}$$
(57)

with \(\lambda = [60\lambda _{1}^{0}, 77\lambda _{2}^{0}]^{T}\), \(\mu =[1, (\lambda _{2}^{0}/\lambda _{1}^{0})^{2}]^{T}\), the integer-estimable ambiguity vector \(\tilde{z}=9z_{1}-7z_{2}\) and estimable ionospheric delay vector \(\tilde{\iota } = \iota -7\lambda _{1}^{0}(-77Lz_{1}+60Lz_{2})\).

Proof

For the proof, see 'Appendix.' \(\square \)

This result shows that it is (57) that one needs to use in case of long-baseline GLONASS phase-only processing. Is the processing done without the aid of code data from another GNSS, then at least two epochs are required so as to realize the required change in relative receiver-satellite geometry. This is, however, not needed when (57) is combined with code data of another GNSS. In that case, a single-epoch suffices in principle.

Note that one can bring (57) back into a similar form as (56) by eliminating the \(m-1\) ionospheric delays. When doing so, one obtains the integer-estimable, ionospheric-free (IF) GLONASS phase equation

$$\begin{aligned} {\mathsf{E}}(\phi _{\mathrm{IF}})=e \otimes \rho +(\lambda _{\mathrm{IF}} \otimes L)\tilde{z} \end{aligned}$$
(58)

where \(\lambda _{\mathrm{IF}}= \frac{9}{32}\lambda _{1}^{0}\). Thus, it is this (58) that one needs to use if it is the ionospheric-free formulation that is used by the GNSSs to which the GLONASS phase-only data are added.

Integer-estimability with L1–L2 phase bias

We now show how the integer-estimability can be recovered when a bias \(\kappa c_{,j}\), with known \(\kappa \in \mathbb{Z}^{m-1}\) and unknown \(c_{,j} \in \mathbb{R}\), is added to the phase equation of \(\phi _{,j}\). With the addition of \(Cc=(\varLambda \otimes \kappa )c\), the extended dual-frequency, phase equation becomes \({\mathsf{E}}(\phi )=e \otimes \rho +(\varLambda \otimes L)z+(\varLambda \otimes \kappa )c\). As it follows from its structure that the recovery of the integer-estimability can be done per frequency, we write, with \(z=[z_{,1}^{T}, z_{,2}^{T}]^{T}\) and \(c=[c_{,1}, c_{,2}]^{T}\),

$$\begin{aligned} {\mathsf{E}}(\phi _{,j})= & {} \rho +\lambda _{j}^{0}[L, \kappa ][z_{,j}^{T}, c_{,j}]^{T} \\= & {} \rho +\lambda _{j}^{0}\tilde{H}[\tilde{L}, \tilde{\kappa }][z_{,j}^{T}, c_{,j}]^{T},\quad j=1,2 \end{aligned}$$
(59)

in which

$$\begin{aligned} \tilde{H}= & {} \mathrm{diag}\left( \frac{1}{a_{1}a_{2}}, \ldots , \frac{1}{a_{1}a_{m}}\right) \\ \tilde{L}= & {} 2848 \mathcal{L} \\ \tilde{\kappa }= & {} \tilde{H}^{-1}\kappa \end{aligned}$$
(60)

Note that both \(\tilde{L}\) and \(\tilde{\kappa }\) are integer, since \(\mathcal{L}\) and \(\kappa \) are integer. To apply Theorem 4, so as to recover the integer-estimability in (59), we need to find an admissible transformation \(\tilde{\mathcal{Z}}\) that brings the \((m-2) \times (m-1)\) integer matrix \(\tilde{\kappa }^{\perp T}\tilde{L}\) into the form

$$\begin{aligned} (\tilde{\kappa }^{\perp T}\tilde{L})\tilde{\mathcal{Z}}=[\tilde{\mathcal{L}},0] \end{aligned}$$
(61)

We can now make a good use again of our integer lower triangular matrix \(\mathcal{L}\) of Theorem 2. Because \(\mathcal{L}\) is integer and lower triangular, so is \(\tilde{L}\) of (61). Hence, if we premultiply \(\tilde{L}\) with the integer matrix \(\tilde{\kappa }^{\perp T} = [\tilde{\kappa }_{(1)}, -\tilde{\kappa }_{1}I_{m-2}]\), in which \(\tilde{\kappa }_{(1)}=[\tilde{\kappa }_{2}, \ldots , \tilde{\kappa }_{m-1}]^{T}\), we obtain an integer matrix that is not too far from being lower triangular. As the following lemma shows, such matrix can then relatively easy be brought into the form (61) by a specially constructed \(\tilde{\mathcal{Z}}\).

Lemma 2

(Integer triangularization) The integer matrix

$$\begin{aligned} W=\underset{n \times (n+1)}{[u, V]} = \left[ \begin{array}{ccccc} u_{1} &{} v_{11} &{} &{} &{} \\ u_{2} &{} v_{21} &{} v_{22} &{} &{} \\ \vdots &{} \vdots &{} \vdots &{} \ddots &{} \\ u_{n} &{} v_{n1} &{} v_{n2}&{} \ldots &{} v_{nn} \end{array} \right] \end{aligned}$$
(62)

is brought into integer canonical form \(W\tilde{\mathcal{Z}}=[\tilde{\mathcal{L}},0] \), with lower triangular \(\tilde{\mathcal{L}} \in \mathbb{Z}^{n \times n}\), by means of the admissible \(\tilde{\mathcal{Z}}=\tilde{\mathcal{Z}}_{(1)} \times \ldots \times \tilde{\mathcal{Z}}_{(n)}\), defined by

$$\begin{aligned}&\tilde{\mathcal{Z}}_{(i)}=\mathrm{blockdiag}(I_{i-1}, Z_{i}, I_{n-i}) \;\mathrm{for}\;i=1, \ldots , n \\&Z_{i}= \left[ \begin{array}{cc} \alpha _{i}&{}-v_{ii}/\gamma _{i}\\ \beta _{i}&{} v_{i(i-1)}^{(i-1)}/\gamma _{i} \end{array} \right] \\&\alpha _{i}v_{i(i-1)}^{(i-1)}+\beta _{i}v_{ii}=\gamma _{i},\quad \gamma _{i}=\mathrm{GCD}(v_{i(i-1)}^{(i-1)}, v_{ii}) \\&v_{i(i-1)}^{(i-1)}=(V\tilde{\mathcal{Z}}_{(1)} \times \ldots \times \tilde{\mathcal{Z}}_{(i-1)})_{i,(i-1)} \\&v_{i(i-1)}^{(i-1)}=u_{1}\quad \mathrm{for}\;i=1 \end{aligned}$$
(63)

Proof

The proof follows from direct verification. \(\square \)

The following example shows how the algorithm of this lemma can be applied to bring \(\tilde{\kappa }^{\perp T}\tilde{L}\) into the canonical form (61).

Example 12

(The 4-satellite case) For \(m=4\), the \((m-2) \times (m-1)\) integer matrix \(\tilde{\kappa }^{\perp T} = [\tilde{\kappa }_{(1)}, -\tilde{\kappa }_{1}I_{m-2}]\) is given as

$$\begin{aligned} \tilde{\kappa }^{\perp T} = \left[ \begin{array}{ccc} \tilde{\kappa }_{2} &{} -\tilde{\kappa }_{1} &{} 0 \\ \tilde{\kappa }_{3} &{} 0 &{} -\tilde{\kappa }_{1} \end{array} \right] \end{aligned}$$
(64)

Since \(\tilde{L}\) is lower triangular with entries \(\tilde{L}_{ij}\), the matrix product \(\tilde{\kappa }^{\perp T}\tilde{L}\) is given as

$$\begin{aligned} \tilde{\kappa }^{\perp T}\tilde{L} =\left[ \begin{array}{ccc} u_{1} &{} v_{11} &{} 0 \\ u_{2} &{} v_{21} &{} v_{22} \end{array} \right] \end{aligned}$$
(65)

where \(u_{1}=\tilde{\kappa }_{2}\tilde{L}_{11}-\tilde{\kappa }_{1}\tilde{L}_{21}\), \(u_{2}=\tilde{\kappa }_{3}\tilde{L}_{11}-\tilde{\kappa }_{1}\tilde{L}_{31}\), \(v_{11}=-\tilde{\kappa }_{1}\tilde{L}_{22}\), \(v_{21}=-\tilde{\kappa }_{1}\tilde{L}_{32}\) and \(v_{22}=-\tilde{\kappa }_{1}\tilde{L}_{33}\). As (65) is in the form of (62), we can now apply the algorithm of the lemma. This gives in the first step:

$$\begin{aligned} \underset{\tilde{\kappa }^{\perp T}\tilde{L}}{\left[ \begin{array}{ccc} u_{1} &{} v_{11} &{} 0 \\ u_{2} &{} v_{21} &{} v_{22} \end{array} \right] } \underset{\tilde{\mathcal{Z}}_{(1)}}{ \left[ \begin{array}{ccc} \alpha _{1} &{} -v_{11} &{} 0 \\ \beta _{1} &{} u_{1} &{} 0 \\ 0 &{} 0 &{} 1 \end{array} \right] } = \left[ \begin{array}{ccc} \gamma _{1} &{} 0 &{} 0 \\ u_{2}^{(1)} &{} v_{21}^{(1)} &{} v_{22} \end{array} \right] \end{aligned}$$
(66)

with \(\alpha _{1}\) and \(\beta _{1}\) from \(\alpha _{1}u_{1}+\beta _{1}v_{11}=\gamma _{1}=\mathrm{GCD}(u_{1}, v_{11})\), and \(u_{2}^{(1)}=\alpha _{1}u_{2}+\beta _{1}v_{21}\), \(v_{21}^{(1)}=v_{21}u_{1}-u_{2}v_{11}\). Application of the second step gives:

$$\begin{aligned} \left[ \begin{array}{ccc} \gamma _{1} &{} 0 &{} 0 \\ u_{2}^{(1)} &{} v_{21}^{(1)} &{} v_{22} \end{array} \right] \underset{\tilde{\mathcal{Z}}_{(2)}}{ \left[ \begin{array}{ccc} 1 &{} 0 &{} 0 \\ 0&{} \alpha _{2} &{} -v_{22} \\ 0 &{} \beta _{2} &{} v_{21}^{(1)} \end{array} \right] } = \left[ \begin{array}{ccc} \gamma _{1} &{} 0 &{} 0 \\ u_{2}^{(1)} &{} \gamma _{2} &{} 0 \end{array} \right] \end{aligned}$$
(67)

with \(\alpha _{2}\) and \(\beta _{2}\) from \(\alpha _{2}v_{21}^{(1)}+\beta _{2}v_{22}=\gamma _{2}=\mathrm{GCD}(v_{21}^{(1)}, v_{22})\). The admissible transformation that brings (65) in the form (67) is thus given as

$$\begin{aligned} \tilde{\mathcal{Z}}=\tilde{\mathcal{Z}}_{(1)} \times \tilde{\mathcal{Z}}_{(2)} = \left[ \begin{array}{ccc} \alpha _{1} &{} -\alpha _{2}v_{11} &{} v_{11}v_{22} \\ \beta _{1} &{} \alpha _{2}u_{1} &{} -u_{1}v_{22} \\ 0 &{} \beta _{2} &{} v_{21}^{(1)} \end{array} \right] \end{aligned}$$
(68)

The last column vector of \(\tilde{\mathcal{Z}}\) spans the null space of (65), while the first two column vectors are then the ones needed for recovering the integer-estimability.

With the algorithm of Lemma 2 we can thus determine the admissible \(\tilde{\mathcal{Z}}=[\tilde{\mathcal{Z}}_{1}, \tilde{\mathcal{Z}}_{2}]\) of (61) and use the \((m-1) \times (m-2)\) integer matrix \(\tilde{\mathcal{Z}}_{1}\) for the recovery of the integer-estimability in (59) to get,

$$\begin{aligned} {\mathsf{E}}(\phi _{,j})= & {} \rho +\lambda _{j}^{0}[L, \kappa ][z_{,j}^{T}, c_{,j}]^{T} \\= & {} \rho +\lambda _{j}^{0}[L\tilde{\mathcal{Z}}_{1}, \kappa ][\tilde{z}_{,j}^{T}, \tilde{c}_{,j}]^{T},\quad j=1,2 \end{aligned}$$
(69)

Thus, the recovery of the integer-estimability shows how the extension of the model with \(\kappa c_{,j}\) results in a new and lower-dimensioned integer-estimable ambiguity vector \(\tilde{z}_{,j}\), with the new coefficient matrix \(L\tilde{\mathcal{Z}}_{1}\).

Summary and conclusions

We developed and presented a new GLONASS FDMA model. The model is generally applicable and guarantees, independent of the actual channel number entries, the integer-estimability of the new GLONASS ambiguities. The model’s only difference with its CDMA counterpart is the presence of the lower triangular matrix L in its design matrix. This matrix, which establishes the integer-estimability of the ambiguities, is given in an easy-to-evaluate analytical form. The close resemblance between our GLONASS model and the DD CDMA models also implies that available CDMA software is easily modified and that existing methods of integer ambiguity resolution can be directly applied.

The realization of our GLONASS DD model has been made possible because of two important results. First, the defining new concept of integer-estimability and second, the construction of a special integer matrix canonical decomposition. From the concept of integer-estimability, we learn that the conditions of estimability and integerness of functions are not sufficient to guarantee integer-estimability. This shows when estimable integer functions are used for ambiguity resolution, that if these functions fail to be integer-estimable, one may in fact be fixing the undifferenced integer ambiguities to non-integer values, thereby thus constraining the model to physically inconsistent and wrong values.

Our integer-estimability Theorem 1 provides the conditions that need to be fulfilled for integer functions to be integer-estimable. Next to these conditions, the theorem also shows the way on how to create integer-estimable functions and how a given design matrix can be expressed in them. We used these latter two properties in combination with Theorem 2 to develop our new GLONASS design matrix. Its easy-to-compute form is made possible by means of the analytical integer decomposition given in Theorem 2. It is thus a consequence of the two Theorems 1 and 2 that for the GLONASS ambiguities to be integer-estimable, the model must be of the discovered form (40).

As the structure of our GLONASS integer-estimable DD model is similar, apart from L, to that of CDMA systems, many of the available CDMA results with corresponding insights are easily translated to the GLONASS case. Also the currently available theory of integer inference can now directly be applied to it, and this does not only hold for the class of integer estimators, but also for the classes of integer equivariant estimators (Teunissen 2003) and integer-aperture estimators (Verhagen and Teunissen 2006). We made use of this to get a first insight into the expected ambiguity resolution performance of the new GLONASS model. By means of an analysis of the GLONASS ADOP, we showed that fast ambiguity resolution can be expected and that performance will even be on par with comparable CDMA systems when resolving the per frequency \(m-2\) best determined ambiguities. We showed thereby also that larger frequency separations would even result in larger success rates.

As the integer-estimability of the ambiguities changes when extra parameters are added to the phase equations, we also provided by means of Theorem 4 a general method to recover the required integer-estimability again. This was applied and further worked out for long baselines in case the GLONASS code data cannot be relied on due to the presence of unknown inter-frequency code biases. In such case the to be included ionospheric delays change the integer-estimability when either the GLONASS phase data is combined with code data of another GNSS or when, in the absence of reliable code data, GLONASS phase-only processing needs to be done. It was shown how the integer-estimability could be recovered and what interpretation needed to be given to the recovered parameters.

We believe that the presented model opens up a whole variety of carrier-phase-based GNSS applications that have hitherto been a challenge for GLONASS. This applies not only to fast ambiguity-resolved GLONASS positioning and attitude determination, but also to such important positioning concepts as PPP-RTK (Wubbena et al. 2005; Teunissen and Khodabandeh 2015), either as GLONASS-only or in multi-GNSS context (Montenbruck et al. 2017). As stated in Liu et al. (2017), there is indeed a need to further develop GLONASS PPP ambiguity resolution. The presented model provides this opportunity and in particular to realize the integer recovery of the ambiguities for the GLONASS PPP-RTK users. Although we presented our model in DD form, it can also be formulated in undifferenced (UD) form, which is attractive for networks and/or when parameters other than those of positioning are of interest, such as, for instance, the satellite-phase biases as needed for PPP-RTK (Schonemann et al. 2011; Lannes and Prieur 2013; Odijk et al. 2015).

The presented model also enables a seamless combination with CDMA systems, be it for positioning or other GNSS parameter estimation needs. Even a direct combination of current GLONASS FDMA and the under development GLONASS CDMA becomes now possible with the new model. As part of the GLONASS signal evolution plan (Urlichich et al. 2011; Langley 2017), CDMA signals are made available as a complement to the legacy FDMA signals. A first CDMA signal in the L3 band was introduced by the GLONASS-K1 satellite launched in 2011 and is also made available by the GLONASS-M satellites launched since 2014. An initial assessment of GLONASS CDMA L3 ambiguity resolution and positioning performance is given in (Zaminpardaz et al. 2017). Further signals will be added with each new generation of GLONASS satellites, whereby CDMA signals will also be transmitted in the L1 and L2 bands to improve interoperability with other GNSSs. Despite the introduction of new CDMA signals, GLONASS will continue to provide the legacy FDMA signals in the future so as to provide backward compatibility. Hence, this offers great opportunities, now and in the future, for having the presented integer-estimable GLONASS model (2) take advantage of these combined FDMA-CDMA signals.