Our site uses cookies to improve your experience. You can find out more about our use of cookies in About Cookies, including instructions on how to turn off cookies if you wish to do so. By continuing to browse this site you agree to us using cookies as described in About Cookies.

[1] A filter to separate the effect of multipath in Global Navigation Satellite System (GNSS) signal-to-noise ratio (SNR) data is presented. The filter removes multipath cleanly, and affects neither slowly varying trends (such as tropospheric absorption or variation in satellite range) nor high frequency components (such as ionospheric scintillation), and so is potentially useful in space-weather research. Similarly, the multipath data removed from the input data is minimally distorted, and contains useful information as to the multipath geometry. A method to locate reflecting objects using a form of spectral analysis is described.

If you can't find a tool you're looking for, please click the link at the top of the page to "Go to old article view". Alternatively, view our Knowledge Base articles for additional help. Your feedback is important to us, so please let us know if you have comments or ideas for improvement.

[2] Multiple-path (multipath) effects are a source of both problems and opportunities for Global Navigation Satellite System (GNSS) applications. (The term “multipath” is used here to describe any form of not-line-of-sight reception; it does not imply that multiple reflections are occurring.) Whilst the most severe problem is that of a receiver locking onto a reflected or diffracted signal, causing a spurious increase in measured satellite range [Kaplan and Hegarty, 2006], a variety of more subtle effects will occur even when the receiver is correctly locked onto the direct signal.

[3] One such effect (and the focus of this paper) is the influence on the signal-to-noise ratio (SNR) recorded by the receiver, in which alternating intervals of constructive and destructive interference between the direct and reflected signals cause quasi-periodic oscillations. The SNR oscillation effect can be disruptive or beneficial, depending on application. For example, in ionospheric research, amplitude scintillation (i.e. rapid variation in observed amplitude) is a routinely measured quantity. Multipath distorts these measurements by adding another source of amplitude variations [Van Dierendonck et al., 1993]. Conversely, in the case of ground-reflected multipath, SNR oscillations have been used to determine soil moisture content [Larson et al., 2008a, 2008b, 2010]. A SNR derived assessment of multipath may also be used to compensate for its effect on other quantities, such as the observed phase of the carrier wave [Axelrad et al., 1994, 1996; Bilich et al., 2007].

[4] In both cases, it is desirable to isolate the SNR variation due to multipath, so that it may either be discarded or analyzed in further detail. In section 2, such a filter scheme is presented. Similarly, regardless of whether multipath is disruptive or beneficial, it is useful to determine (or verify) the location of the reflecting object. In section 3, a technique to constrain the reflector location is presented.

[5] Finally, in section 4, results for three different multipath scenarios, all using Global Position System (GPS) data, are presented. These consisted of an antenna in a relatively simple multipath environment, an antenna in a very complex multipath environment, and an antenna on coastal cliffs, where the sea acted as the reflector.

2. Multipath Isolation Filter

[6] A range of schemes have been used for removing or extracting multipath effects from SNR data. When multipath is to be analyzed, wavelet filters have been used [Bilich and Larson, 2007; Bilich et al., 2008], as have schemes which combine the SNR data from multiple antennas [Comp and Axelrad, 1998]. When amplitude scintillation is to be measured, multipath effects (amongst other things) are commonly removed by dividing the signal by the output of a low-pass filter [Van Dierendonck et al., 1993]. Kalman filters (and various derivatives thereof) based on multipath models have also been used [Dai et al., 1997].

[7] Such techniques exploit the fact that the physical effects combining to give the measured SNR have different characteristic frequencies. The movement of the satellite causes a slow variation in SNR, due to the changing satellite distance, and the antennas (of both satellite and receiver) having direction-dependent gain. Signal absorption in the troposphere (which is particularly high at low satellite elevations) will cause a similar slow variation. These effects will occur at periods of many hours.

[8] Power fluctuations due to ionospheric scintillation are conventionally held to start at frequencies above 0.1 Hz, which is a standard cutoff-frequency for the “detrending” filters used in ionospheric research [Van Dierendonck et al., 1993; Beach and Kintner, 1999; Forte, 2005]. In practice, this can often be increased to 0.3 Hz, especially at higher latitudes, where the Fresnel frequencies are generally higher [Forte, 2005].

[9] The multipath oscillation (for a single locally-planar reflector) occurs at a frequency ν given (as derived in section 3.1) by

where λ is the wavelength, is a vector pointing to (and perpendicular to) the plane of the reflector, ξ is the apparent angular velocity of the satellite across the sky, and is a unit vector (perpendicular to the vector pointing towards the satellite) giving its apparent direction of motion.

[10] The highest multipath frequencies occur for distant reflectors. This is increased for grazing-incidence reflection, which corresponds to and being roughly parallel. Assuming that and are exactly parallel, that ∣∣ = 250 m (which encompasses the most distant reflector used in the examples below, specifically the sea beneath a coastal cliff), that ξ = 1.45 × 10^{−4} rad s^{−1} (corresponding to the approximately 12 hour orbital period), and that λ = 19.05 cm (the L1 wavelength), gives an upper frequency of 0.4 Hz. This can potentially overlap with ionospheric scintillation, but in practice such large values are extreme cases, which are only relevant to antennas placed in the shadow of large hills [Bilich and Larson, 2007] or above unusually high coastal cliffs. These extremes require the distant reflector to be very large, in order to overcome the weakening in signal due to the inverse square law. Reducing ∣∣ to a more likely maximum of 50 m keeps the multipath frequency below 0.1 Hz.

[11] Low multipath frequencies occur for nearby reflectors. The lowest possible frequency of multipath is formally zero, which occurs when the vector is precisely aligned with the direction of the satellite, giving · = 0. This, however, will only last for a short period of time, and for most geometries will not happen at all. Assuming that the satellite never comes within 5° of perfect alignment, then an extremely close reflector at ∣∣ = 1 m will have a minimum frequency of 0.5 cycles per hour, which is higher than that of the above slowly varying trends.

[12] Therefore, in most cases, the multipath will be within a range of fading frequencies that is higher than the slowly varying trend, but lower than ionospheric scintillation, and so can be isolated.

2.1. Derivation of Filter

[13] A new multipath filter scheme was derived by modeling the phenomenon, and then constructing a network of digital filters to systematically deconstruct the resulting equation and extract the relevant terms.

[14] It was assumed that power measurements were mean values taken over time intervals equal to the 20 ms C/A (coarse acquisition) data-bit length (or multiples thereof), causing the contribution from frequency components other than the carrier to effectively sum to zero. The power itself was assumed to be a constant multiple of the recorded SNR (at least for a given receiver over a single satellite pass). The ideal interference pattern between a sine-wave of wavelength λ and its reflections will be of the form

where (for the nth reflection) d_{n} is the difference in path length and ρ_{n} is a slowly varying parameter depending on the reflectance. The reflection of electromagnetic waves is normally accompanied by a half-cycle phase shift, and so ρ_{n} will usually be negative.

[15] The radiation pattern of the antenna will also influence ρ_{n}, as the direct and reflected signals will often arrive in directions with different gain. Furthermore, if the antenna is circularly polarized, the reversal of handedness that the signal undergoes on reflection will also cause a gain difference. This is unproblematic if multipath is simply to be removed, as the only constraint on ρ_{n} is that it is slowly varying, and so the fact that it conflates two physical effects is irrelevant. It is also (as explained in section 3.2), unimportant when determining reflector location. It only becomes necessary to know the antenna gain pattern if the reflectance itself is to be measured.

[16] This form was generalized to give a model for power P as

The slowly varying trends in SNR are represented by Q. This is roughly proportional to G_{r}G_{s}T/r^{2}, where r is the distance to the satellite, T is the fraction of transmitted power reaching the receiver, G_{r} is the antenna gain the receiver (in the direction of the satellite), and G_{s} is the antenna gain of the satellite (in the direction of the receiver). These factors do not have to be considered separately, as the only requirement made of Q is that it be slowly varying. For convenience, Q is defined to have a mean value of 1, which is achieved by appropriate choice of the power unit P_{0}.

[17] The (1 + s) factor accounts for rapid variation in power (due to effects such as ionospheric scintillation). This is the sum of the mean power (scaled to 1 by choice of P_{0}), and a high-frequency term s, which represents the variation about this mean.

[18]Equation (3) therefore consists of a low frequency factor Q, an intermediate frequency factor [1 + ∑_{n} ρ_{n} cos(2πd_{n}/λ)]^{2} and a high frequency factor (1 + s). Each of these factors tends towards a value of one if the physical effects being represented are removed. This suggests that they can be separated using a homomorphic (or cepstrum) filter , which is a filter applied to logarithmic data. (Homomorphic analysis has been used in the analysis of GPS multipath before [Ying et al., 2003; Wang et al., 2008], but not as part of the filter scheme described here.) A homomorphic filter splits the signal up as

where P()() and P() are dimensionless variables giving the high, middle and low frequency components. The corner frequencies ω_{1} (low) and ω_{2} (high) are chosen to encompass the frequency range of the multipath oscillation. Making the change of variables W ≡ ln (P/P_{0}), W() ≡ ln (P(), W() ≡ ln (P() and W() ≡ ln (P() transforms equation (4) to

In this logarithmic form, the homomorphic filters become linear filters .

[19] Terms of the form f = ln (1 + α cos θ) will include frequency components besides that of the multipath oscillation. These can be analyzed by noting that f is approximately periodic, and so can be represented as a Fourier series, with the fundamental frequency being equal to that of the power oscillation. The periodicity is only approximate, as both the multipath frequency and ρ_{n} vary with time. However, the time scales of these variations are much longer than the time period of individual oscillations, and so periodicity can be assumed over short time intervals. In practical terms, it is required that periodicity is a good approximation over durations up to the digital filter correlation length.

[20] The ω_{1} corner frequency is (by definition) lower than the multipath frequency, and so the effect of the ω_{1} low pass filter will be to isolate the zeroth order (constant) term f_{0} from the series. For a single reflector, this can be evaluated (for constant α) as

In the case of multiple reflectors this term generalizes (see Appendix A) to

The Fourier series of ln (1 + α cos θ) will also contain higher order terms, with frequencies equal to integer multiples of the multipath frequency. These can usually be removed by giving ω_{2} a value substantially larger than the multipath frequency, thus filtering out the strongest harmonics.

[21] Similarly, the fact that s contains only high frequency components, does not imply that the same is true for ln (1 + s). However, assuming the spectral width of s is relatively narrow, the spectrum of ln (1 + s) will consist of a comb of frequency peaks, spaced at integer multiples of the central frequencies of s. The peaks of this comb will pass on either side of the ω_{1} < ω < ω_{2} frequency band, and so ln (1 + s)() will be small.

[22] Applying the filters (and making the above assumptions) gives

Transforming out of the logarithmic basis gives

Taking the square root of the central component (and expanding) gives

where the first term is slowing varying, whilst the second term is rapidly varying. Therefore, using high and low pass linear filters about the ω_{1} frequency, and dividing defines a quantity

which is the sum of multipath oscillations, modulated by their reflection coefficients. Therefore a quantity can be defined

which is equivalent to equation (3) with all the multipath reflection terms ρ_{n} set to zero.

[23] In summary, the filter scheme acts (assuming the above assumptions hold) to split the input data into two quantities. The first quantity Θ describes the multipath (and nothing but the multipath), whilst the second quantity is the multipath-free data. The input data can be trivially reconstructed as P = (1 + Θ)^{2}, and so the filter is reversible.

2.2. Numerical Implementation of the Filter

[24] The system was implemented using the algorithm outlined in Figure 1. The constituent filters consisted of a Butterworth filter applied to both the data, and time reversed data, thus forming a zero-phase filter. Zero-phase filters are intrinsically non-causal, which is problematic for real-time applications; attempts were made to replace these filters with causal filters, but the resulting phase shifts were extremely disruptive, rendering the filter useless. If the realtime removal of multipath is required, it may be possible (but beyond the scope of this paper) to use values of Θ from a previous sidereal day to remove it from the current data. It may also be possible (but, again, beyond the scope of this paper) to design causal transfer functions that work properly within the filter scheme.

[25] When the algorithm was first implemented, it suffered from filter ringing, due to the mismatch between the non-zero edges of the data-set and the implicitly zero values outside of the data set. This problem was mitigated by using the reflection-padding technique, in which the edges of the data set were extended with a mirror image (in time) of the signal. This itself was imperfect, as the beginnings and the ends of data sets usually corresponded to a rising and a falling of the signal, and these were reversed by simple mirroring. Therefore, the mirrored signals were themselves turned upside-down in a logarithmic basis (and shifted upwards or downwards to form a continuous curve with the true signal) so that the rising and falling trends were maintained.

[26] The code was written using MatLab, with the Signal Processing Toolbox used to implement the filters.

3. Analysis of Multipath Environment

[27] The shape of the multipath induced power fringes contain information about the geometry of the sources of reflection. While this information is insufficient to completely reconstruct the receiver's surroundings, it can be used to constrain the likely positions of a reflector, even in the presence of other multipath sources. For example, if the multipath effect is believed to be from the ground, the technique can be used to verify that this is the case, as only a small fraction of possible multipath signal shapes are consistent with such a scenario.

[28] A variety of approaches have been applied to this problem. The most direct technique is to use a multiple antenna system, and to perform direction finding on the reflected signal [Axelrad et al., 1996; Comp and Axelrad, 1998; Santos and Farret, 2001; Farret and Santos, 2001]. This, however, requires specialist hardware, and can rarely be applied to third-party data. When using a single antenna, a simple technique (and one commonly built into GPS receiver software) is to record the satellite azimuth at the points of strong SNR oscillation, and then to assume that the reflector lies in the opposite direction [Hilla, 2004]. A more advanced method is to measure the multipath frequency by performing wavelet analysis on the SNR signal, and then to match this frequency to that predicted from a model of planes tilted towards the receiver by an unknown angle [Bilich and Larson, 2007; Bilich et al., 2008]. Schemes based on carrier phase have also been used [Rost and Wanninger, 2009].

[29] In this section, a technique to constrain multipath reflectors based on the shape of the multipath signal (as isolated from other physical effects, using the filter in section 2) is described.

3.1. Multipath Geometry

[30] It is assumed that the surface of the object is locally planar, and that the reflection is specular. The reflection geometry can be represented using a vector which points from the receiver to the tangential plane of the reflecting surface, such that and the plane are perpendicular, as is shown in Figure 2. The direction of doesn't necessarily point to the object itself. The law of specular reflection can be written as

where the unit vectors and give the directions of the incidence and reflected beams, and the unit vector is perpendicular to the tangential plane. Using = _{2}/∣l_{2}∣ and = −/∣v∣ gives

The observed interference pattern depends on the path difference

From the geometry in Figure 2, it can be seen that ∣l_{1}∣ = · _{2}, and so

From Figure 2, it can also be seen that _{2} · = −∣v∣^{2}. Substituting this in gives the relationship between path difference, satellite position and perpendicular vector as

The rate of change of this path difference, in terms of wavelengths per unit time is given by

A difference of one wavelength corresponds to a single cycle of power oscillation, and so ν is the frequency of the oscillation. The rate of change of direction is essentially an angular velocity, and can be split up as d/dt = −ξ, where ξ is the angular rate at which the satellite tracks across the sky, and is a unit vector (perpendicular to ) representing the apparent path at a given instant. This gives (on removing the physically irrelevant sign of the frequency)

[31] The model assumes a single planar reflection, and so disregards the possibilities of multipath due to double reflections, multipath from curved surfaces and multipath due to diffraction. (If, however, the resulting multipath analysis reports the presence of a reflector which clearly doesn't exist, this provides some evidence that one of the above effects is present.)

[32] An additional problem is that trends in d differing uniformly by any integer multiple of the wavelength λ, will produce the same interference pattern. Therefore, only the change in distance Δd can be determined. The remaining d(mod λ) term can be extracted, but as d is usually much larger than λ, this quantity provides little useful information. This implies that reflectors with different geometries can produce similar interference patterns, and so from a given interference pattern, it is not possible to uniquely reconstruct the geometry.

3.2. Deriving Perpendicular Vectors With Spectral Analysis

[33] From equations (15) and (23), a set of ideal reflectors with perpendicular vectors _{n}, and reflectance coefficients ρ_{n} will have the form

In the simplified case of scalar v_{n}, and linear scalar i(t), the reflector terms become sinusoids, and so can be resolved from a data set Θ by calculating the Fourier transform, and then determining v_{n} from the positions of the spectral peaks. In the proper case, a similar technique is possible, using a transform of the form

where j is the unit imaginary. This is a generalization of the Fourier transform, and for the above simplified case, reduces to it. Like the Fourier transform, it is based on the principle that the product of two dissimilar waveforms will oscillate at a beat frequency, and so integrate to zero, whilst the product of two similar waveforms will retain a constant phase relationship, and so integrate to a nonzero value. This transform does not specifically extract the frequency, or any other readily definable characteristic of the signal. Instead, it is dependent on the signal's entire shape, and so makes use of all available information.

[34] Applying Euler's theorem to equation (27) gives

In principle, only the real part is relevant, as the cos (4π · /λ) kernel matches the functional form of the model, whilst the imaginary part is a physically irrelevant quadrature term. In practice, however, the real part of the spectrum consists of wavelength-scale oscillations about each physical feature, due to the dependence of the interference pattern on relative phase. If a transform is calculated over a span of meters or tens of meters, this ultra-fine detail is a nuisance, as to avoid aliasing, the transform resolution is kept impractically high. A better option is to consider the absolute value of the transform, and thus remove these phase oscillations.

[35] Another practical issue is that any real measurement will have a finite time span (instead of the infinite range specified in equation (27)). This was dealt with by assuming all values outside of the recorded range to be zero.

[36] The ρ_{n} coefficients are themselves time varying, and so will influence the spectrum. However, the functional form is likely be a temporally broad hump, and so the spectrum is likely to be a spectrally narrow hump centered about the origin. (For example the Fourier transform of a wide Gaussian function is a narrow Gaussian function.) In the spectral domain, the multiplication by ρ_{n} becomes a convolution by its spectrum. Therefore, the only outcome is a small spectral broadening of the features corresponding to reflectors. The coefficients are also dependent on the antenna gain pattern, but again, due to the slowly varying nature, this will have little effect on the spectral analysis. It is only if the reflection coefficients are to be themselves measured (which is beyond the scope of this paper) that the gain pattern must be analyzed.

[37] The most important problem is that previously mentioned, of trends in d differing uniformly by any integer multiple of the wavelength λ producing the same interference pattern. It is pointless to perform a 3D transform, as a single reflector will appear to be located over a range of positions. As is explained in Appendix B, a 2D transform is possible (for example by assuming the perpendicular vector to be horizontal). Each point derived from the transform _{n} can then be (approximately) extended to a 1D set of points as

where is γ_{n} is a free coefficient for each reflector, and is a common vector, which is derived from the satellite track across the sky. In general will point in a direction which is neither horizontal nor vertical, and so if a reflector is thought to be at a particular position, it is improbable (at least in most environments) that another realistic reflector will lie at any other point along ′_{n}. (In the case studies described below, no such alternative reflectors were seen.)

4. Results

[38] Three case studies, all using GPS, were investigated. In each case, a NovAtel GPStation 2, sampling at 50 Hz was used. The raw data were filtered (to remove occasional instances of unphysically large or identically zero values) and then down-sampled to 1 Hz by calculating the mean (of linearly scaled data) over 50 sample bins. The filter frequencies (shown in the relevant figure captions) were chosen by visual inspection of graphs of the input and filtered data. The upper bound to the multipath frequency window was steadily increased until either no trace of the multipath oscillations remained, or further increase gave no improvement. The lower frequency was steadily decreased, until the filtered curve passed neatly through the inflection points of the oscillations in the unfiltered curve.

4.1. Simple Multipath Environment

[39] An antenna was placed on a roof, several meters away from a machinery box capping an elevator shaft. Strong multipath peaks were recorded, as is shown in Figure 3. A 2D spectral analysis was performed on the Θ parameter extracted from the data (over its entire time range), as shown in Figure 4. This clearly shows a strong spectral peak, corresponding to a vector perpendicular to the elevator box wall. There are also some weaker peaks in the same direction, the origin of which are not known. It is possible that some double reflections are present. It is also possible that some spurious frequencies have entered the signal; these may be due to nonlinearity in the receiver causing frequency mixing, or deviations from the assumptions made by the filter scheme having a non-trivial effect.

4.2. Complex and Noisy Multipath Environment

[40] An antenna was placed in a courtyard, in a metal framed building, with metalized glass windows, providing a complex multipath environment. Many satellites were visible despite being occluded by buildings for their entire pass. The result (as shown for satellite PRN 32 in Figure 5) was a very complex signal lacking any obvious periodicity. Despite this complexity, reflection from a flat ledge (measured to be 12.5 m below the receiver) could be detected in a spectral plot of vertical vectors (calculated over the entire time interval), as is shown in Figure 6.

4.3. Satellites Rising and Setting Over Sea

[41] An antenna was placed on a coastal cliff top at Flamborough Head (54° 06′ 59″ N; 0° 04′ 58″ W), overlooking the North Sea, with a northerly to easterly view. Three GPS satellites (PRNs 7, 8, and 19) were observed setting over the sea, and a fourth (PRN 17) was observed rising. For all four satellites, pronounced interference fringes were seen (as is shown in Figure 7). Spectral analysis was performed over the entire available time intervals, for vertical vectors with lengths ranging from 0 to 100 meters, as is shown in Figure 8). The variation in the available time intervals have a moderate effect on the width of the spectral peaks. The plot corresponding to the longest time interval (for PRN 8) has the narrowest spectral peak width, an effect which is analogous to the Fourier scaling theorem. The antenna was measured (using a laser range-finder) to be 28 m above sea level. This height matches the peaks to within 2m in all four plots.

[42] An antenna was placed in Boulby (54° 33′ 58″ N; 0° 50′ 27″ W), also on cliffs overlooking the North Sea, with a northerly to easterly view. Very rapid multipath fringes were seen, as is shown in Figure 9. (In this case, it was necessary to reduce the sample binning to 5 samples per bin, thus providing a 10Hz data rate.) By performing spectral analysis (over the entire time interval) for PRN 30, a reflection peak at 209 m was seen (as is shown in Figure 10) which is within 3% of the 203 m height given by the Ordnance Survey.

5. Conclusions

[43] A filter to separate the effect of multipath from GNSS signal-to-noise ratio data was developed and applied to a variety of cases. In all cases, the filtered data was shown to preserve slowly varying trends, resulting from effects such as tropospheric absorption, antenna anisotropy and variations in satellite range.

[44] The filtered data also retained high frequency components, leaving it suitable for geophysical work such as detecting ionospheric amplitude scintillation. A potential application is in “detrending” the data used to calculate amplitude scintillation metrics, such as the S4 index. This is normally done by dividing the signal by the output of a linear low-pass filter [Van Dierendonck et al., 1993], to remove multipath along with the above slowly varying effects. A more physically realistic approach would be to remove the multipath first, using the described filter. A detailed study on this will be the focus of a future paper.

[45] Similarly, the multipath data extracted from the input data is minimally distorted, and so contains information describing the multipath geometry. Unlike other multipath analysis schemes, it has been cleanly separated from other effects, using a method which fully accounts for the physical nature of the phenomenon. The cleanness of the data allows it to be analyzed to constrain the source of the multipath reflector, and a scheme to perform this analysis has been presented. The scheme has been shown to successfully reconstruct the height of coastal cliffs, the depth of a courtyard, and the orientation of a rooftop reflector.

Appendix A:: Zero Frequency Component of f = ln (1 + ∑_{n}α_{n} cos θ_{n})

[46] In Appendix A, the zero-frequency (DC) component of the function f = ln (1 + ∑_{n}α_{n} cos θ_{n}) is derived. Taylor expanding the log function about unity gives

This is the sum of sinusoidal terms and constant terms (which result from the expansion of even powers of the cosine function). The zero frequency component of f is the sum of these constant terms, which (for even l) are given by

Making the change of variable l = 2m gives

Thus giving a sum of the form

Using the summing formula

(which can be derived by noting that the left-hand-side is the Taylor series about α = 0 of the right-hand-side) gives the final result as

Appendix B:: Relationship Between Perpendicular Vectors Corresponding to Same Interference Pattern

[47] In Appendix B, an approximate formula relating the different perpendicular vectors giving rise to the same interference pattern is derived. In matrix notation, using Cartesian coordinates, equation (23) becomes

The direction of the incoming satellite signal at a time t was parameterized by applying an Affine transformation (defined with matrix and column vector ) to a vector function of time (t) representing a simple basis rotation, such that

A basis of the form

was chosen, with Ω being used as additional fitting parameter. The least-squares best-fit values of and were derived at given values of Ω using the method described by Spath [2004]. (In practice, the transformation will be similar to an orthogonal transformation, due to the requirement that the fitted values of approximate unit vectors.) The fitting coefficient was then minimized in Ω (using a golden-section method) to find the overall least-squares best-fit. Typically, when fitting an entire satellite pass with data at one minute intervals, the real and fitted coordinates matched to within less than a degree. Combining equations (B1)–(B3) (and taking the transpose) gives

Then, by defining

the path length is given by

It is at this point that the interference problem becomes relevant. Any constant term is practically unmeasurable (due to an integer wavelength offset having no effect on the interference pattern), and so it is removed to give

This formulation makes the resulting ambiguity explicit, as the coefficient γ is now missing (and so immeasurable), whilst the other two coefficients α and β still remain. The fact that one degree of freedom has been lost means that it is only meaningful to do spectral analysis of the multipath signal in one or two dimensions. Inverting equation (B5), and decomposing the vector into known and unknown components gives

The first term on the right-hand-side is known, whilst the second term corresponds to a vector with known direction, but unknown scale γ. It therefore follows that a spectral analysis reporting a reflector with perpendicular vector is in fact consistent with a set of vectors given by

where the direction of the path along which the perpendicular vector may lie is (subject to the approximations made in fitting the satellite data) given by

Acknowledgments

[48] The authors acknowledge financial support from the Engineering and Physical Sciences Research Council (EPSRC).