High-Accuracy Static Baseline Estimation using NavIC L5 Observables

The estimation of static baselines using NavIC L5 double-differenced (DD) pseudoranges and carrier phases is investigated. We estimate the baseline with increasing accuracy by using the DD pseudoranges, smoothing the DD pseudoranges with the DD carrier phases, fixing the ambiguities in DD carrier phases, and imposing height-constraints on ambiguity and baseline estimates. Using the DD pseudoranges in estimating a 6-m baseline, the 3D root-mean-square error (RMSE) is 1.71 m. By incorporating the DD carrier-phase measurements and fixing its ambiguities, we achieved a 3D steady-state accuracy of 3 cm and convergence time of 23 minutes for a 350-m baseline in the secondary service area of NavIC. Further performance gains were achieved using a height-constrained solution in which 3D steady-state accuracy and convergence time was improved to 1 cm and 8 minutes, respectively.

However, there are not many papers on baseline estimation. A comprehensive work on baseline estimation using NavIC L5 in standalone and in combination with GPS L5 is presented in Zaminpardaz et al. (2017a), in which a short baseline in Curtin University, Australia, which lies in the secondary service area of NavIC, was estimated using double-differenced (DD) carrier-phase (CP) observables. Their research concluded that an instantaneous ambiguity success rate of 99.9%-99.99% is always feasible within NavIC's service area. Shukla et al. (2018) implemented a variation of a Hatch filter using single-differenced (SD) NavIC L5 pseudoranges and SD delta ranges to estimate a 9.69-m baseline from the primary service area of NavIC. In their study, no separate integer ambiguity resolution was undertaken as the delta range, calculated by subtracting the carrier phase at successive instants, was free from integer ambiguity terms as long as the lock was maintained. They reported a 3D root-mean-square error (RMSE) of 1.07 m.
In our research, we estimated a 6-m static baseline using NavIC L5 double-differenced (DD) pseudoranges from IIT Indore in Indore, India. First, the linearization errors in relation between the SD observable and the baseline vector as a function of the baseline length was shown. As our baseline was short, the linearization errors were negligible compared to measurement noise. The errors in the SD L5 observables were estimated using the expected SD range, which is calculated by measuring the baseline length and its azimuth using a measuring tape and a compass, respectively. Various errors like differential multipath and measurement noise as a function of elevation were illustrated. To reduce the impact of the measurement noises, elevation-dependent weighting functions were calculated for NavIC signals using time-differenced code-minus-carrier (CMC) observables (Goad, 1990). By using the weighted DD pseudoranges from the visible satellites, the baseline was estimated using a single-epoch weighted least squares method.
DD carrier-phase-derived baseline estimates are highly accurate compared to DD pseudoranges due to the former's low multipath error and measurement noise. The receivers used in the 6-m baseline estimation were not capable of providing dual-frequency (DF) GPS observables; hence, the true value of the baseline length was not known precisely to act as a benchmark for the DD carrier-phase-based baseline estimates. We used differential observables from a 350-m baseline at Curtin University in Perth, Australia, which had geodetic-grade antennas and DF multi-constellation receivers. Notwithstanding the fact that Curtin University lies in the secondary service area of NavIC, which may have caused degraded dilution of precision, impacting the accuracy and convergence time, its baseline was precisely known and acted as a benchmark for assessing NavIC's baseline estimation results. We used two methods in estimating the baseline using NavIC DD carrier phases. First, we estimated the baseline using carrier-smoothed code observables in which no ambiguities were fixed explicitly as the time differencing between carrier-phase observables eliminated differential ambiguity. In the next method, we estimate/fix the DD ambiguities using the LAMBDA technique (Teunissen, 1998), which provides accurate baseline estimates.
Finally, height constraints were introduced to improve the baseline estimation accuracy using NavIC observables. The paper concludes with a summary and future work.

Baseline Estimation Using DD Pseudoranges
Two right-hand circularly polarized antennas (A14SACIRNSAT) from Accord Systems, capable of receiving NavIC L5/S1 and GPS L1, were erected 6-m apart on top of the Hub building at IIT Indore, India, as seen in the top photo of Figure 1. One of the antennas in the top photo of Figure 1, located at 22°31′ 31.0710″ N, 75°55′ 17.3242″ E, was considered the reference antenna. The antennas were connected to two Accord IRNSS/GPS/SBAS receivers shown in the bottom photo of Figure 1. Each receiver provided 1-Hz measurements of raw pseudoranges and carrier phases at NavIC L5 and S1 and GPS L1 frequencies.

Baseline Estimation Using DD Carrier Phases
Two sites, CUCC and SPA7, spanning 350 m at Curtin University in Perth, Australia, were equipped with JAVAD TRE G3T DELTA receivers and TRM59800.00 SCIS choke ring antennas. They provided GPS DF and NavIC L5 observables at 30-second intervals.
In the next sections, we investigate the errors in SD and DD observables.

BETWEEN-RECEIVER SINGLE-DIFFERENCE OBSERVABLES
The atmospheric errors, satellite ephemeris, and clock bias in the pseudorange and carrier-phase observables are spatially correlated. Hence, if the pseudoranges from the two receivers separated by a distance (baseline) were differenced, these errors could be mitigated, though, the reduction in these errors would depend on the baseline length (Farrell, 2008;Misra & Enge, 2011). The error mitigation is good for short baselines (< 1 km) but would degrade for longer baselines.
In our study, the baselines were less than a kilometer. Hence, the SD pseudoranges from the user (u) and reference (r) receivers to a satellite k canceled out all the spatially correlated errors, leaving just the differential range r ur k ( ) , receiver clock bias t ur , and multipath error M ur k ( ) as shown in Equation (1). The SD carrier-phase equation shown in Equation (2) has an additional ambiguity term λN ur k ( ) . Also, its multipath error m ur k is about one-hundredth of the code phase multipath error M ur k ( ) : Assuming equal noise variances in the observables at the two receivers, the SD pseudorange and carrier-phase noises are normally distributed as ν σ ρ ur k where σ φ is two orders of magnitude more precise than σ ρ .

Relation Between the SD Range and the Baseline Vector
The relation between the SD range r ur k ( ) (superscript k will be dropped here for simplicity) in Equation (1) and the baseline vector b between the reference and the user receivers can be derived with the help of Figure 2.
This figure and the following analysis from Equations (4-10) are adapted from (Farrell, 2008). In Figure 2, the range from the reference and the user receivers to a satellite are denoted as r r and r u , respectively, with the corresponding unit vectors denoted as 1 r and 1 u . The position of the user and reference receivers and the FIGURE 2 Illustration of between-receiver differencing geometry for a large baseline (Farrell, 2008) satellite are denoted as x u , x r and x ( ) k , respectively. The zenith angle between the reference receiver and the satellite is denoted as θ in the figure.
From Figure 2, the SD range can be written as: Adding 1 u · (x r -x r ) to the right-hand side of Equation (4) and rearranging it, we get an equation with the baseline vector b as shown in Equation (5): From Figure 2, it is seen that the ranges from the reference and the user receivers to the satellite are related with the zenith angle θ : Substituting Equation (6) into Equation (5) and simplifying, we get: Using the small angle approximation, cos , θ θ = − 1 2 2 in Equation (7), and on further simplification, the SD range is: where b is the magnitude of b. The errors in neglecting b r r 2 2 for NavIC and GPS are shown in Table 1 for various baselines. For shorter baselines (≤ 1 km), the linearization errors are 1.4 cm and 2.5 cm for NavIC and GPS, respectively. As the NavIC satellites are at higher orbits (36,000 km) compared to GPS (20,000 km), the linearization errors are small for NavIC.  As our baseline is 6 m, the linearization error term b r r 2 2 in Equation (9) is negligible as shown in Table 1. Also, the unit vector from the user receiver to the satellite, 1 u in Equation (9) is replaced with the unit vector from the reference to the satellite, 1 r , as they are essentially the same due to the short baseline and the large distance between the receivers and the satellite. Hence, Equation (9) simplifies to: As the position of the reference receiver is known a priori, the unit vector from it to the satellite, 1 r , in Equation (10) is known at every epoch. Ideally, if we have perfect SD range measurements (r ur ) from three satellites, a single-epoch least-squares technique can be used to estimate the unknown three components of the baseline vector b. In reality, we have SD pseudorange measurements which have other errors, like the differential receiver clock bias, that precludes the estimation of the baseline vector alone, unless we have additional SD pseudorange measurements from more than three satellites. Hence, we investigate the errors in the SD pseudorange observables in the following sections. In order to assess the errors in SD pseudoranges, we need to know the true SD range, which is shown next.

Determination of a Short, True Baseline Vector and SD range
The two vectors 1 r k ( ) and b in Equation (10) are shown graphically in the left and middle plots of Figure 3, respectively. Looking at the left and the middle plots of Figure 3, it is evident that the projection of these two vectors in the east-north-up (ENU) frame centered at the reference antenna are: where az (k) and el (k) are the azimuth and the elevation angles of 1 r and az and el are the azimuth and elevation angles of b. az (k) and el (k) are calculated from the reference receiver position (calculated by averaging the Accord position estimate) and the satellite's ephemeris is read from the Accord receiver log file. The true SD range r ur k ( ) in Equation (10) Using a measuring tape, the baseline vector length b is measured to be 6 m. Using a magnetic compass, the azimuth angle az of the b is read as 90°. The deviation between the True North and Magnetic North at Indore is 2° west (using isogonic lines). Hence, the az of the baseline vector from the True North is 88°. The two tilt angles of the east-north horizontal plane are considered to be zero. The elevation angle of the baseline vector el depends on the relative height between the reference and user antenna. The antennas are arranged to have equal heights, so el = 0, simplifying Equation (12) to:

Errors in SD Observables
The plot of the true SD range, r ur k ( ) , and the errors in NavIC SD pseudoranges, calculated using Equation (1) and Equation (13) for PRN3 are shown in the left half of Figure 4. Similarly, the errors in the SD carrier-phase observables using Equation (2) and Equation (13) for PRN3 are shown in the right-half of Figure 4. Observing the top-left plot of the figure, it is clear that the error in SD pseudorange (green) is noisy and oscillatory compared with the true SD range (red). This is explained by observing that the right-hand side of Equation (1) consists of the true differential range, differential receiver clock bias, and differential multipath. The dominant error source in the results, however, is the differential clock bias, inferred from the SD carrier phase shown in the top-right plot in Figure 4), which resembles the noisy SD pseudorange, even though the zero-mean carrier-phase random noise is nearly one-hundredth of the pseudorange zero-mean random noise.
The SD carrier phase at L5 is not offset by the differential ambiguity as the receivers at the user and reference stations keep their respective carrier-phase measurements aligned (within a few wavelengths) to the pseudoranges. This is not the case with the SD carrier phase at S1 (bottom-right plot) which shows an offset of 7,884 m compared to the SD pseudorange at S1 (bottom-left plot in Figure 4). In general, the receiver tries to keep the difference between the carrier phase (meter) and the pseudorange within a few wavelengths for each channel it is tracking. However, it has been observed that, in certain channels of the Accord receiver, the difference between the carrier phase and the pseudorange is much greater than a few wavelengths. The S1 channel at the base receiver was not aligned causing this deviation.
The differences between the measured SD pseudoranges and the true SD range were calculated and their averages for L5 and S1 signals were 1.41 m and 0.96 m, respectively. There is a difference of 0.45 m between the averages of L5 and S1 SD pseudoranges. This is due to the differential multipath errors being different for NavIC L5 and S1 pseudoranges (Althaf & Hablani, 2020a). The averages of the errors in the L5 pseudorange and carrier phase, 1.41 m and 1.40 m, respectively, are equal, suggesting it to be caused by the differential clock bias.
Having explored the errors in SD observable, we then estimate the errors in the DD observable.
In order to remove the differential receiver clock bias (the dominant error source) from the SD observable, the difference between the two SD observables from two different satellites was calculated as shown in Equations (14-15;Farrell, 2008;Misra & Enge, 2011). Here the SD observable from the first satellite was sub-tracted from the SD observable from the k-th satellite. The first satellite, chosen for the differencing operation, is called a reference satellite or pivot satellite for the double-differencing operation. The satellite with the highest elevation angle is usu-ally selected as the reference satellite due to its reduced multipath error.
The differential multipath error would still be present in the DD observables, especially in the DD pseudorange (Equation [14]). However, the magnitude of the multipath error in DD carrier phase (Equation [15]) was minimal compared to that of the DD pseudorange. This is detailed in the following sections.

Errors in DD Observables
The true DD range (63) ( ), ur r shown in blue in the left plot of Figure 5, is calculated by subtracting the differential range (Equation [12]) of N3 from N6, where N3 is the reference satellite for double-differencing. The plot of the error in DD code phase measurement is calculated by subtracting the true DD range from the DD code observable ( ); Equation (14), is shown in red in the same plot for NavIC L5. The oscillations seen in the DD code phase measurement varies between 1-4 m due to the differential code phase multipath error.
In order to visualize the errors in the DD carrier-phase observable, Equation (15), an approximate estimate of the integer ambiguity N ur ( ) 63 is calculated using: The zoomed-in plot of the error in the DD carrier-phase observable, calculated , ur ur ur r N is shown in the right half of Figure 5. The error in the DD carrier phase is less noisy because its differential multipath error, m ur ( ) , 63 and receiver noise, β ur ( ) , 63 in Equation (15) are two orders of magnitude more precise compared to the counterparts in the DD pseudoranges.

Elevation-Dependent Weighting Functions for the Observables
Before we can calculate the baseline using double-differenced observables, it is necessary to properly assign weights to each measurement as the errors in it are a function of elevation angle. We used a method described in Eueler and Goad (1991) to find a mapping function relating the errors in the undifferenced measurement and the elevation angle. The method involves calculating a code-minus-carrier (CMC) observable by subtracting the observable in Equation (2) from Equation (1): where I is the ionospheric delay in the undifferenced pseudorange. Due to the short baselines in our study, the ionospheric delay term 2I in Equation (17) is ignored. Subtracting this CMC observable from the CMC observable calculated after a time interval Δt, we get: FIGURE 5 True DD range (blue), the errors in the DD code (red, left plot), and the zoomedin DD carrier phase (red, right plot) using NavIC L5 observables over an 80-minute duration on September 3, 2019 where the Δ operator implies the difference between consecutive values. For very small Δt and with no cycle slips, CMC Δt represents the uncertainty in the SD pseudorange measurement. Grouping this observable for elevation intervals of 1°, like 22°-23°, 23°-24°, we calculate the standard deviation of this observable at 1° elevation intervals (the mean of CMC Δt is essentially zero). An elevation-dependent model is fitted relating this random noise to the elevation angle. The left and right half of Figure 6 shows the measure of random noise in the pseudorange observable, inferred through the standard deviation of CMC Δt observable, for the 6-m and 350-m baselines, respectively. The top row in Figure 6 shows the standard deviation of a CMC Δt observable in 1° intervals for 24 hours from four NavIC geosynchronous satellites and four GPS satellites calculated with Δt = 30 seconds, while the carrier-to-noise ratio is shown in the bottom row.
For the 6-m baseline, the elevation angles for NavIC were between 20°-72° over the duratioin of 24 hours, whereas the GPS satellites' elevation angles were between 10°-85° as seen from the top-left plot of Figure 6. The solid lines represent the mapping functions that fit the scatter points for NavIC and GPS. Even though an exponential function fits the NavIC CMC observables well, the elevation constant in the exponential mapping function exceeded 90°. Hence, an inverse sine mapping function for NavIC was selected.
The inverse sine functions for NavIC and the exponential function for GPS are listed in Table 2 along with the weights assigned for various elevation angles. The weights were normalized with respect to NavIC L5. For the Accord antenna used in the 6-m baseline, at higher elevation angles 75°-90°, the GPS L1 observable was weighted larger compared to NavIC L5. From 30°-75°, NavIC L5 was assigned a larger weight compared to GPS. NavIC S1 was weighted approximately one-third of the NavIC L5 weights from 30°-90°. These results are consistent with the design of the Accord antenna, which was optimized to receive NavIC L5 and S1 frequencies. Hence, GPS L1 error shown in Figure 6 is larger compared to NavIC frequencies.
The bottom-left plot of Figure 6, showing the carrier-to-noise ratio, C/N 0 (+/-3σ) of the signals received at the 6-m baseline, confirms these observations as NavIC L5 C/N 0 is higher than that of NavIC S1 and GPS L1, for elevations up to 70°. The right-half of Figure 6 shows the elevation-dependent mapping functions and C/N 0 for the 350-m baseline whose antenna can only track NavIC L5 and GPS L1. NavIC satellites' elevation angle varies between 20°-84°, and are of better C/N 0 compared to GPS L1 C/N 0 as seen from the bottom-right plot of Figure 6.
Having investigated the errors in SD/DD observables and calculated weights based on elevation angles, we proceeded further to estimate the baseline using the NavIC observables.

MEASUREMENT EQUATIONS IGNORING THE MULTIPATH ERROR
The matrix-vector equations relating the SD pseudorange and carrier-phase measurements from m visible satellites at an epoch with the baseline vector b (ignoring the multipath error) are: where 1  is the geometry matrix containing receiver-satellite unit vectors 1 r k ( ) ; t is the differential receivers clock bias; e is a vector of all ones; a sd is the SD ambiguity vector; and ν sd and β sd are vectors of random noises in the SD pseudorange and carrier-phase measurements, respectively, whose individuals elements are normally distributed: ν σ ρ ( , )  0 2 2 and β σ φ ( , ),  0 2 2 where σ ρ and σ φ are the standard deviation of the undifferenced code and carrier-phase random noise.
In order to estimate the unknown ambiguities in a sd , the differential receivers clock bias t needs to be removed. The traditional technique is to choose a satellite's SD observable and subtract it with the rest of the satellites' SD observables, which produces the following DD code and carrier-phase observables: If Satellite 1 is chosen as the pivot satellite, then: The vector of DD observables in Equations (21-22) are correlated due to the differencing operation performed with the observables from the pivot satellite. Hence, the covariance matrix is: where o pk = { | }, ( , ) ρ φ are the pivot/other satellites and σ o is the elevation-dependant mapping functions shown in Table 2.
In the next section, we present baseline estimation results using the DD pseudorange equations.

BASELINE ESTIMATION WITH DOUBLE-DIFFERENCED PSEUDORANGES
The 6-m baseline vector was estimated using single-epoch weighted least squares (WLS) algorithm with elevation-dependent weights for an 80-minute duration on DOY 234 in 2019. Seven NavIC satellites were always visible with a position dilution of precision (DOP) of 3.2. The ENU baseline estimation errors are shown in Figure 7. The errors are mostly contained in the 2σ channel but there are oscillations In the next section, we use carrier-phase observables along with the pseudoranges to improve the baseline accuracy.

BASELINE ESTIMATION WITH DD CARRIER-PHASE OBSERVABLES
The easiest way to use DD carrier phases without resolving the integer ambiguities is to use carrier-smoothed code. We demonstrated the baseline accuracy using this method and then improve it by fixing the ambiguities. The results presented in this section are for the 350-m baseline in Curtin University on DOY 273 (2019), whose true baseline is known with high accuracy. Six NavIC satellites were visible for 6.5 h (00:30-04:30 and 13:00-15:30) in a day; the rest of the time, five satellites were available. The position dilution of precision (PDOP) was ~5 except for two time periods (08:00-13:00 and 21:00-01:00) during which it increased to a maximum value of 11 and 23, respectively.

Carrier-Smoothed Code
A precise DD pseudorange can be obtained by utilizing the DD carrier phase using a Kalman filter (Kaplan & Hegarty, 2006) as shown next.
Given an estimate of DD pseudorange ( ) ρ s + at t -1 epoch and DD carrier-phase measurements ( )  φ at t and t -1 epoch, the DD pseudorange at epoch t can be estimated using: Equation (25) is the state propagation equation in which the state transition matrix is 1. The state covariance matrix P at t -1 is: The covariance matrix is propagated using P P Q When the DD pseudorange measurement  ρ at t arrives, a better estimate of DD pseudorange at t is calculated using: The state update equation of Kalman filter is given in Equation (27) where the measurement matrix H is 1, Kalman gain K P H R H P H ) , 1 and the measurement covariance matrix R R t = ρ . The covariance matrix of the newly updated state vector is:

Results
In Figure 8, the measured DD pseudorange, carrier phase, and the smoothed pseudorange estimated using the Kalman filter are shown. We see that the DD pseudorange is mostly scattered between -6 m and -9 m, whereas DD carrier phase doesn't vary much (-8.5 m to -9 m) but has the unknown DD ambiguity which offsets it from the DD pseudorange measurements. But using the smoothed pseudorange calculated using Equation (27), we see that it is as precise as the DD carrier phase but doesn't have its bias. Hence, we could get better accuracy in baseline estimation using smoothed pseudoranges.
The ENU errors calculated using smoothed pseudoranges are shown in Figure 9. The east, north, and vertical errors using the smoothed DD pseudoranges lie mostly within +/-1 m. The 2σ channel was exceeded by the estimates due to the assumption of Gaussian noise. The large variation in the 2σ channel (between 20:00 and 01:00 hours) was due to poor dilution of precision (DOP), which is also seen in the sudden jumps in the vertical error estimates.
The baseline errors statistics calculated using the smoothed DD pseudoranges is shown in Table 4. The 3D RMS position error was 85 cm for the carrier-smoothed pseudoranges, which is twice as better compared to the 3D RMSE of 1.71 m calculated using only the DD pseudoranges in the previous section.
As seen from the results, we were still not able to achieve cm-level accuracy without resolving the integer ambiguities; this is pursued next.   The baseline vector is initialized from the knowledge of the position of the rover, calculated using the undifferenced pseudoranges from the rover using an elevation-dependant WLS technique and the base station position. The SD ambiguities are initialized using: The state error covariance matrix P = 30 2 I 8 , where the variance for the baseline components and the SD ambiguities are initialized to 30 m 2 and 30 cyc 2 , respectively. I 8 denotes an identity matrix of the size eight. The state propagation equations from epoch t to the next epoch t + 1 are: As the baseline is static and the SD ambiguities are assumed to be constant, Φ t is an identity matrix and the process noise covariance matrix Q t is also zero.
The DD pseudoranges and carrier-phase observables (in meters) are used as measurements to the Kalman filter and they are related to the state vector through  (32) is the unit vector from the receiver to the satellite k. The DD measurement noise covariance matrix for the observables is: where R ρ and R φ are given in Equation (24). We didn't implement any algorithm to detect cycle slips in the carrier-phase measurements. However, the loss-of-lock indicator (LLI) in the RINEX observation file is used to detect cycle slips. If an LLI is set for a particular satellite, then the corresponding elements in the SD ambiguity vector and the state covariance matrix are reset.
At the end of each epoch, the SD ambiguity vector in the state vector x and its covariance matrix P are converted to the DD float ambiguity vector â and covariance matrix ˆâ a Q which are fed to the LAMBDA method (Verhagen et al., 2012) to calculate the integer ambiguity vector ẑ. Two possible candidate integer vectors in increasing square-norm error (SNE) between the candidate vectors and the DD float ambiguity vector are provided by LAMBDA. If the ratio of the SNE of the second candidate to the first candidate is > 3, then the baseline is calculated using the first candidate integer vector, a process known as fixed in the literature, else, the baseline vector in the state vector x is considered as the final solution (termed float).
During an epoch, if the ratio test is greater than three, we can improve the baseline estimates in the state vector x using the integer ambiguity vector ẑ to generate a fixed baseline solution b z (and its covariance ˆb b ) z z Q as shown below.

Results and Discussion
The 350-m baseline estimation results calculated using NavIC L5 observables are shown in Figure 10. Five satellites were visible from this site on DOY 273 (2019) with a PDOP ranging between 5.75-6.75 for the 30-minute duration as seen from the top plot of Figure 10. A cyan line in the top plot represents that the ratio test (RT) was equal to 3. If the RT calculated at each epoch were greater than this line, then the fixed solution would be calculated, else, the float solution. During the initial epochs (2nd, 4th), the RT did exceed the threshold line (RT=3), indicating a highly accurate solution. But this is not the case, as the successive RT values stayed below three. It took 46 epochs for the RT to exceed the threshold line. After that instant, the RT value increased signaling the availability of highly accurate baseline solution. In the middle plot of Figure 10, the ENU components of the baseline error are plotted. The individual components have errors close to a meter until the fixed solution was achieved at the 46th epoch, after which we achieved cm-level errors for the three components. The last plot shows the 3D residual-sum-of-squares (RSS) errors. The error in the float solution is around 1 meter and the steady-state error (after fixing) is close to 3 cm.
The ENU components of the baseline error along with their 3σ are shown in Figure 11. The ENU errors were within the 3σ channel initially, but skirted the channel after 20 epochs. The errors and the 3σ channel after 46 epochs (i.e., once the fixed solution is available) are shown in the inset plots. In the east and the north direction, we achieved the accuracy of ~1 cm once the solution was fixed with a vertical accuracy of 2.5 cm. The DD carrier-phase measurement FIGURE 11 ENU estimation errors and 3σ channel while estimating a 350-m baseline using NavIC L5 observables (ambiguities resolved) FIGURE 12 DD measurement residuals in the Kalman filter residuals and pseudorange measurement residuals in the Kalman filter, shown in Figure 12, lie within 2 cm and 2.5 m, respectively.

Improving the Baseline Steady-State Accuracy and Convergence Time with Height-Constraint
The NavIC baseline estimation accuracy and convergence time in Figure 10 are improved further by introducing constraints on some of the states that are known a priori by other means. In our study, we imposed a height constraint to the estimation algorithm. There are many methods for implementing equality constraints in the Kalman filter (Gupta & Raphael, 2007): restricting the state at each epoch to lie in the constrained space, adjusting the optimal Kalman gain so that the state estimate does not violate the constraint, etc. In this study, we restricted the state to its equality constraint at each epoch using the following formulation.
If a constraint c is known such that where ˆx x Q is the covariance matrix of the unconstrained state vector ˆ.
x If the relative height of the rover antenna with regard to the base antenna is known (i.e., both antennas on a level ground) and the baseline vector's ECEF components are the first three elements of the state vector, then FIGURE 13 Height-constrained baseline estimate using NavIC L5 observables (ambiguities resolved); the last plot also shows the unconstrained 3D RSS baseline error using ambiguitiesfixed GPS L1 observables the relation between the height constraint and the state vector is given by C T = [cos cos , sin cos , sin , , , ], λ φ λ φ φ 0 0  where the first three elements of C T comprise the unit vector of the u (up) axis expressed in the ECEF frame and the number of zeros equal to the number of ambiguities in the state vector. λ and φ are the longitude and latitude of the base antenna. The baseline estimation results, incorporating the height constraint, are shown in Figure 13.
The ratio test value shown in the top plot of Figure 13 becomes greater than the float-fix threshold of three at the 16th epoch instead of the 46th epoch for the unconstrained case. Looking at the middle plot, it is clear that the error in the baseline height (relative to the base) estimate, shown in red, is zero as the relative height is constrained to a priori value (with no uncertainty) from the first epoch. This helps the other states to converge faster-the east component of the baseline converges followed by the north component. The steady-state 3D RSS error, shown in the last plot, for the height-constrained case is 7 mm compared to 3 cm for the unconstrained case.
Even though the relative height constraint allows us to achieve improved accuracy and the results converge faster, any uncertainty in the constraint affects the accuracy as shown in Table 5. A 1-cm uncertainty in the height estimate increases the 3D RSS baseline steady-state error to 1.5 cm (from 7 mm for a constraint with no uncertainty). As the uncertainty increases the steady-state error increases also.

Comparison with GPS Estimates
Since the Curtin University site chosen for evaluating the ambiguity resolution of NavIC L5 observables lies in NavIC's secondary service area (suboptimal satellites-receiver geometry compared to the primary service area), we calculated the baseline estimates by resolving ambiguities in GPS L1 observables, to serve as a benchmark. In order to reduce the programming complexity of handling the rising/ setting of the GPS satellites in the 1-hour duration that we studied, we chose five GPS satellites that were visible for the entire 1-hour duration, with PDOP ranging between 3.8-4.2, to resolve the ambiguities and estimate the baseline without any height constraints. In four epochs, the 3D RSS baseline estimation errors reduced to 1 cm compared to 16 epochs and 0.8-cm accuracy for height-constrained NavIC as seen from the last plot of Figure 13. This result was expected due to the superior geometric diversity of the GPS satellites (PDOP: 3.8-4.2) compared to NavIC satellites (PDOP around 6).

CONCLUSION
The baseline estimation accuracy using NavIC L5 observables was investigated. Using NavIC L5 DD pseudoranges, the 3D RMSE in estimating a 6-m baseline using WLS was 1.71 m. Using carrier-smoothed code, the 3D RMSE was reduced by half to 0.85 m. Even better accuracy was achieved using the DD carrier-phase observables recursively and fixing the ambiguities using the LAMBDA technique whereby the error in the 3D position and convergence time were 3 cm (steady-state) and 23 minutes, respectively, in estimating a 350-m baseline in the secondary service area of NavIC. The accuracy and convergence time was further improved using height constraints, which improved the 3D steady-state accuracy to 1 cm and convergence time to 8 minutes.

a c k n o w l e d g m e n t s
We are grateful to the Space Application Centre, Indian Space Research Organisation, for funding this study in part. We would like to thank Curtin University (MGEX) for hosting/providing the GNSS data.

c o n f l i c t o f i n t e r e s t
The authors declare no potential conflict of interests.