FIELD OF THE INVENTION
[0001] The present invention relates to methods of information processing in satellite navigation
systems with differential positioning of a mobile user.
BACKGROUND OF THE INVENTION
[0002] Satellite navigation systems, such as GPS (USA) and GLONASS (Russia), are intended
for high accuracy self-positioning of different users possessing special navigation
receivers. A navigation receiver receives and processes radio signals broadcasted
by satellites located within line-of-sight distance. The satellite signals comprise
carrier signals that are modulated by pseudo-random binary codes, which are then used
to measure the delay relative to local reference clock or oscillator. These measurements
enable one to determine the so-called pseudo-ranges (γ) between the receiver and the
satellites. The pseudo-ranges are different from true ranges (D, distances) between
the receiver and the satellites due to variations in the time scales of the satellites
and receiver and various noise sources. To produce these time scales, each satellite
has its own on-board atomic clock, and the receiver has its own on-board clock, which
usually comprises a quartz crystal. If the number of satellites is large enough (more
than four), then the measured pseudo-ranges can be processed to determine the user
location (e.g., X, Y, and Z coordinates) and to reconcile the variations in the time
scales. Finding the user location by this process is often referred to as solving
a navigational problem or task.
[0003] The necessity to guarantee the solution of navigational tasks with accuracy better
than 10 meters, and the desire to raise the stability and reliability of measurements,
have led to the development of the mode of "differential navigation ranging," also
called "differential navigation" (DN). In the DN mode, the task of finding the user
position is performed relative to a Base station (Base), the coordinates of which
are known with the high accuracy and precision. The Base station has a navigation
receiver that receives the signals of the satellites and processes them to generate
measurements. The results of these measurements enable one to calculate corrections,
which are then transmitted to the user that also uses a navigation receiver. By using
these corrections, the user obtains the ability to compensate for the major part of
the strongly correlated errors in the measured pseudo-ranges, and to substantially
improve the accuracy of his or her positioning.
[0004] Usually, the Base station is immobile during measurements. The user may be either
immobile or mobile. We will call such a user "the Rover." The location coordinates
of a moving Rover are continuously changing, and should be referenced to a time scale.
[0005] Depending on the navigational tasks to be solved, different modes of operation may
be used in the DN mode. They differ in the way in which the measurement results are
transmitted from the Base to the Rover. In the Post-processing (PP) mode, these results
are transmitted as digital recordings and go to the user after all the measurements
have been finished. In the PP mode, the user reconstructs his or her location for
definite time moments in the past.
[0006] Another mode is the Real-Time Processing (RTP) mode, and it provides for the positioning
of the Rover receiver just during the measurements. The RTP mode uses a communication
link (usually it is a radio communication link), through which all the necessary information
is transmitted from the Base to the Rover receiver in digital form.
[0007] Further improvement of accuracy of differential navigation may be reached by supplementing
the measurements of the pseudoranges with the measurements of the phases of the satellite
carrier signals. If one measures the carrier phase of the signal received from a satellite
in the Base receiver and compares it with the carrier phase of the same satellite
measured in the Rover receiver, one can obtain measurement accuracy to within several
percent of the carrier's wavelength,
i.e. , to within several centimeters.
[0008] The practical implementation of those advantages, which might be guaranteed by the
measurement of the carrier phases, runs into the problem of there being ambiguities
in the phase measurements.
[0009] The ambiguities are caused by two factors. First, the difference of distances
ΔD from any satellite to the Base and Rover is much greater than the carrier's wavelength
λ. Therefore, the difference in the phase delays of a carrier signal
Δϕ =
ΔD/
λ received by the Base and Rover receivers exceeds several cycles. Second, it is not
possible to measure the integer number of cycles in
Δϕ from the incoming satellite signals; one can only measure the fractional part of
Δϕ. Therefore, it is necessary to determine the integer part of
Δϕ, which is called the "ambiguity".
[0010] More precisely, we need to determine the set of all such integer parts for all the
satellites being tracked, one integer part for each satellite. One has to determine
this set along with other unknown values, which include the Rover's coordinates and
the variations in the time scales.
[0011] In a general way, the task of generating highly-accurate navigation measurements
is formulated as follows: one determines the state vector of a system, with the vector
containing
nΣ unknown components. Those include three Rover coordinates (usually along Cartesian
axes X, Y, Z) in a given coordinate system (sometimes time derivatives of coordinates
are added too); the variations of the time scales which is caused by the phase drift
of the local main reference oscillator; and
n integer unknown values associated with the ambiguities of the phase measurements
of the carrier frequencies. The value of
n is determined by the number of different carrier signals being processed, and accordingly
coincides with the number of satellite channels actively functioning in the receiver.
At least one satellite channel is used for each satellite whose broadcast signals
are being received and processed by the receiver. Some satellites broadcast more than
one code-modulated carrier signal, such as a GPS satellite that broadcasts a carrier
in the L
1 frequency band and a carrier in the L
2 frequency band. If the receiver processes the carrier signals in both of the L
1 and L
2 bands, the number of satellite channels (
n) increases correspondingly.
[0012] Two sets of navigation parameters are measured by the Base and Rover receivers, respectively,
and are used to determine the unknown state vector. Each set of parameters includes
the pseudo-range of each satellite to the receiver, and the full (complete) phase
of each satellite carrier signal, the latter of which may contain ambiguities. Each
pseudorange is obtained by measuring the time delay of a code modulation signal of
the corresponding satellite. The code modulation signal is tracked by a delay-lock
loop (DLL) circuit in each satellite-tracking channel. The full phase of a satellite's
carrier signal is tracked by phase counter (as described below) with input from a
phase-lock-loop (PLL) in the corresponding satellite tracking channel (an example
of which is described below in greater detail). An
observation vector is generated as the collection of the measured navigation parameters for specific
(definite) moments of time.
[0013] The relationship between the state vector and the observation vector is defined by
a well-known system of navigation equations. Given an observation vector, the system
of equations may be solved to find the state vector if the number of equations equals
or exceeds the number of unknowns in the state vector. In the latter case, conventional
statistical methods are used to solve the system: the least-squares method, the method
of dynamic Kalman filtering, and various modifications of these methods.
[0014] Practical implementations of these methods in digital form may vary widely. In implementing
or developing such a method on a processor, one usually must find a compromise between
the accuracy of the results and speed of obtaining results for a given amount of processor
capability, while not exceeding a certain amount of loading on the processor. The
present invention is directed to novel methods and apparatuses for accelerating the
obtaining of reliable estimates for the integer ambiguities at an acceptable processor
load.
[0015] More particularly, the present invention is directed to novel methods and apparatuses
for more quickly obtaining such estimates in floating-point form (non-integer form)
which are close to the integer values. With these floating-point forms, which we call
floating ambiguities, conventional methods may be used to derive the corresponding
integer ambiguities.
[0016] US patent no. US 6,268,824 describes methods and apparatuses of positioning a mobile user in a system of satellite
differential navigation. Satellites broadcast code signals, which are modulated onto
respective carrier signals, and which are received by two receivers on Earth. The
first receiver is situated at a point with known coordinates. The results of its measurements
are transmitted to a user at a second receiver through a connection link, the user
being interested in knowing his or her positioning. The second receiver is similar
to the first receiver and it receives the signals of the same satellites. By processing
data from the measurements of code delays and carrier phase shifts in the satellite
signals received by the two receivers, the described methods and apparatuses determine
the location of the user with high precision and make the time indications of receiver
clocks more accurate and exact. In one arrangement, the procedure of resolution of
phase measurement ambiguities comprises the preliminary estimation of floating ambiguities
by a recurrent (e.g., iterative) procedure including the simultaneous processing of
code and phase measurements for all satellites for each processing time interval,
and the gradual improvement of the result as the information is accumulated.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
- FIG. 1 is schmatic diagram of an exemplary receiver which may be used in practicing
the present invention.
- FIG. 2 is a perspective view of a rover station and a base station in a first exemplary
coinfiguration according to the present invention.
- FIG. 3 is a perspective view of a rover station and a base station in a second exemplary
coinfiguration according to the present invention.
- FIG. 4 is a flow diagram illustrating a general set of exemplary embodiments according
to the present invention.
- FIG. 5 is a schematic diagram of an exemplary apparatus according to the present invention.
- FIG. 6 is a diagram of an exemplary computer program product according to the present
invention.
- FIG. 7 is a flow diagram illustrating another general set of exemplary embodiments
according to the present invention.
- FIG. 8 is a diagram of another exemplary computer program product according to the
present invention.
SUMMARY OF THE INVENTION
[0018] Broadly stated, the present invention encompasses methods and apparatuses for estimating
the floating ambiguities associated with the measurement of the carrier signals of
a plurality of global positioning satellites as recited in the accompanying claims.
[0019] The floating ambiguities are associated with a set of phase measurements of a plurality
n of satellite carrier signals made by a first navigation receiver (B) and a second
navigation receiver (R) separated by a distance, wherein a baseline vector (
xo,yo,zo) relates the position of the second receiver to the first receiver. Each satellite
carrier signal is transmitted by a satellite and has a wavelength, and each receiver
has a time clock for referencing its measurements. Any difference between the time
clocks may be represented by an offset. Methods and apparatuses according to the present
invention receive, for a plurality of two or more time moments
j, the following inputs: a vector

representative of a plurality of pseudo-ranges measured by the first navigation receiver
(B) and corresponding to the plurality of satellite carrier signals, a vector

representative of a plurality of pseudo-ranges measured by the second navigation
receiver (R) and corresponding to the plurality of satellite carrier signals, a vector

representative of a plurality of estimated distances between the satellites and the
first navigation receiver (B), a vector

representative of a plurality of estimated distances between the satellites and the
second navigation receiver (R), a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the first navigation receiver (B), a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the second navigation receiver (R), and a geometric Jacobian matrix

whose matrix elements are representative of the changes in the distances between
the satellites and one of the receivers that would be caused by changes in that receiver's
position and time clock offset. (As used herein, the term "representative of," as
used for example used when indicating that a first entity is representative of a second
entity, includes cases where the first entity is equal to the second entity, where
the first entity is proportional to the second entity, and where the first entity
is otherwise related to the second entity.)
[0020] The present invention may be practiced in real time, where estimates of the floating
ambiguities are generated as the above satellite information is being received. The
present invention may also be practiced in post-processing mode, where the floating
ambiguities are estimated after all the above satellite information has been received.
In the latter case, block processing according to the present invention may be done.
[0021] Preferred methods and apparatuses according to the present invention generate, for
each time moment j, a vector Δ
γj of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

and also generate, for each time moment
j, a vector
Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ
-1 is a diagonal matrix comprising the inverse wavelengths of the satellites. In the
case of real-time processing, an LU-factorization of a matrix
M1, or a matrix inverse of matrix
M1, is generated for a first time moment (denoted as
j = 1), with the matrix
M1 being a function of at least Λ
-1 and

Also for this initial time moment, an initial vector
N1 of floating ambiguities is generated as a function of at least
Δγ1, Δϕ1, and the LU-factorization of matrix
M1 or the matrix inverse of matrix
M1. For an additional time moment j, an LU-factorization of a matrix
Mj, or a matrix inverse of matrix
Mj, is generated, with the matrix
Mj being a function of at least Λ
-1 and

Also for an additional time moment j, a vector N
j of estimated floating ambiguities is generated as a function of at least Δ
γj,
Δϕj, and the LU-factorization or matrix
Mj or the matrix inverse of matrix
Mj. Exemplary forms of matrices
Mj and vectors
Nj are provided below. In this manner, a set of successively more accurate estimates
of the floating ambiguities are generated in real-time with the vectors
Nj. This method, of course, may also be practiced in a post-processing environment,
where the data has been previously recorded and then processed according to the above
steps.
[0022] In the post-processing environment, the following block processing approach according
to the present invention may be practiced. As with above-described embodiments for
real-time processing, the vectors of pseudo-range residuals
Δγk and vectors of phase residuals
Δϕk, k=1,...
j, are generated. Thereafter, a general matrix
M is generated from the data, with
M being a function of at least
Λ-1 and

for index
k of

covering at least two of the time moments
j, and an LU-factorization of matrix
M or a matrix inverse of matrix
M is generated. Thereafter, a vector
N of estimated floating ambiguities is generated as a function of at least the set
of range residuals
Δγk, the set of phase residuals
Δϕk, and the LU-factorization of matrix
M or the matrix inverse of matrix
M.
[0023] As an advantage of the present invention, the nature of matrix
M, as described in greater detail below, enables a compact way of accumulating the
measured data in order to resolve the floating ambiguities. As a further advantage,
forms of matrix
M provide a stable manner of factorizing the matrix using previous information. In
preferred embodiments, matrix M is substantially positive definite, and also preferably
symmetric.
[0024] Accordingly, it is an objective of the present invention to improve the stability
of generating estimates of the floating ambiguities, and a further objective to reduce
the amount of computations required to generate estimates of the floating ambiguities.
[0025] This and other advantages and objectives of the present invention will become apparent
to those of ordinary skill in the art in view of the following description.
DETAILED DESCRIPTION OF THE PRESENT INVENTION
NOMENCLATURE
[0026] All vectors presented herein are in column form. The transpose of a vector or matrix
is indicated by the conventional superscript "
T" affixed to the end of the name of the vector or matrix. The inverse of a matrix
is indicated by the conventional superscript "
-1" affixed to the end of the name of the matrix. For the convenience of the reader,
we provide a summary notation symbols below:
γ - denotes a pseudorange measurement, also called a code measurement; a pseudorange
is the approximate distance between a satellite and a receiver is equal to the speed
of light c multiplied by the time it takes the satellite signal to reach the receiver.
ϕ - denotes a phase measurement.
n - denotes the number of satellites from which measurements are collected
S - is a superscript index that is attached to a measurement quantity (e.g., γ , ϕ) or other data to identify the satellite to which the quantity corresponds.
j and k - are subscript indices that are attached to a measurement quantity (e.g., γ , ϕ ) or other data to identify the moment in time (e.g., epoch) to which the measure
the quantity corresponds.
c - speed of light in air.
λS - denotes a wavelength of a carrier signal emitted by the S-th satellite. The wavelength
may denote either the L1-band carrier or the L2-band carrier, as indicated by the
context of the discussion.
Λ - denotes a diagonal matrix of wavelengths: Λ = diag(λl, . . ., λn).
Ol,mor Olxm - denotes an l × m zero matrix (all matrix elements are zero). The indices l and m take on the appropriate values in the context that the matrix is used. In other words,
specific numerical values or other indices may appear in the places of l and m.
Il or Il×l - denotes a square identity matrix of size l × l. The index l takes on the appropriate value in the context that the square identity matrix is
used. In other words, specific numerical values or other indices may appear in place
of l.
µ - is a vector of observable equations, preferably linearized observable equations.
µ = (Δγ1,..., Δγn, Δϕ1,..., Δϕn)T, where each element of µ is associated with a corresponding satellite, where the superscript indices affixed
to the elements identify the satellites.

- denotes the observation matrix H associates with the pseudo-ranges γ. In the art, is also called the Jacobian matrix,
the Jacobi matrix, the geometric function matrix, the Jacobian geometric matrix, the
matrix of directional cosines, and the directional cosine matrix.

has dimensions of n × 4.
Qk - denotes a compound matrix formed by

and Λ as follows:

having dimensions of 2n × 4.
G - denotes a compound matrix

formed by the zero matrix On,n and the identity matrix In, having dimensions of 2n × n . The matrix G has many purposes. One purpose is to select the lower-right n x n sub-matrix of a larger 2n × 2n matrix as follows: GT C G = C22, where


- denotes a compound matrix

which is a 2n × (4+n) matrix, ∥·∥F-1 denotes F-1 - weighted norm,

Brief Background on the Structure of the Satellite Signals
[0027] Before describing the present invention, we briefly describe the structure of the
satellite signals and of a typical receiver suitable for differential navigation applications.
Each of the satellites radiates signals in two frequency bands: the L1 band and the
L2 band. Two carrier signals are simultaneously transmitted in the L1-band; both carrier
signals have the same frequency, but are shifted in phase by π/2 (90°). The first
L1 carrier signal is modulated by the clear acquisition C/A-code signal and the second
L1 carrier signal is modulated by the precision P-code signal. One carrier signal
is transmitted in the L2 band, and uses a different frequency than the L1 carrier
signals. The L2 carrier signal is modulated by the same P-code signal used to modulate
the second L1 carrier signal. These carrier frequencies are between 1 GHz and 2 GHz
in value. Each C/A-code signal and P-code signal comprises a repeating sequence of
segments, or "chips", where each chip is of a predetermined time period (Δ) and has
a pre-selected value, which is either +1 or -1. The segment values follow a pseudo-random
pattern, and thus the C/A-codes and the P-codes are called pseudo-random code signals,
or PR-code signals. Additionally, before each C/A-code signal and P-code signal is
modulated onto its respective carrier signal, each code signal is modulated by a low
frequency (50 Hz) information signal (so-called information symbols).
The approximate distance between a satellite and a receiver is equal to the speed
of light
c multiplied by the transmission time it takes the satellite signal to reach the receiver.
This approximate distance is called the pseudorange γ, and it can be corrected for
certain errors to find a corrected distance D between the satellite and the receiver.
There is a pseudorage between each visible satellite and the receiver. The transmission
time from satellite to receiver is measured with the aid of clocks in the receiver
and the satellite, and with the aid of several time scales (
i.e., timing marks) present within the received satellite signal. The clocks in the satellites
and the receiver are set to substantially the same time, but it is assumed that the
receiver clock has a time offset τ because the receiver clock is based upon a quartz-crystal
whereas each satellite clock is based upon a more accurate atomic reference clock.
The receiver has the orbital patterns of the satellites stored in a memory, and it
can determine the orbital position of the satellites based on the time of its clock.
The receiver reads the timing marks on the satellite's signal, and compares them against
it own clock to determine the transmission time from satellite to receiver. The satellite's
low-frequency (50Hz) information signal provides the least precise timing information,
the C/A-code signal provides the next most precise timing information, and the P-code
signal provides the most precise timing information. The pseudorange is determined
from the low-frequency information si gnal and the C/A-code signal for civilian users
and some military users, and is determined from the low-frequency information signal
and the P-code signal for most military users. Accurate use of the P-code signal requires
knowledge of a certain code signal that is only known to military users. Precision
better than that provided by the P-code signal can be obtained by measuring the phase
of the satellite carrier signal in a differential navigation mode using two receivers.
[0028] Referring to FIG. 1, a typical receiver for differential navigation applications
has an antenna, an amplifier/filter unit that receives the antenna's output, a frequency
down-conversion unit that receives the output of the amplifier/filter unit, and several
individual tracking channels of the coherent type, each of which receives the down-converted
satellite signals. The receiver also comprises a receiver clock, which provides base
timing signals to the local oscillator of the down-conversion unit, and to components
within each individual tracking channel. The down-conversion unit provides down-converted
and quantized versions of the satellite si gnals to the channels, with the down-converted
signals having frequencies generally in the range of 10 MHz to 20 MHz. Each channel
tracks a selected one of the satellite signals. Each tracking channel measures the
delay of one PR-code signal within the satellite signal (e.g., C/A-code or P-code
signal), and also the phase of the down-converter version of the satellite's carrier
signal. A typical tracking channel comprises a Delay-Lock Loop (DLL) circuit for tracking
the delay, of the PR-code, a Phase-Lock Loop (PLL) circuit for tracking the phase
of the satellite's carrier signal, and three correlators which generate the input
signals for the DLL and PLL circuits.
[0029] Referring to FIG. 1, the DLL circuit has a reference code generator that generates
a set of reference code signals, each of which tracks the PR-code of the satellite
signal, and each of which is provided as an input to a respective correlator. Each
correlator output is representative of the degree to which the reference code signals
are tracking the satellite code signal (
i.e., the amount by which the reference signals are advanced or retarded in time with
respect to the satellite signal). The DLL circuit also has a DLL discriminator and
a DLL filter. The DLL discriminator receives inputs from two correlators, a DLL correlator
that generates a base signal for controlling the DLL circuit and a main correlator
that generates a signal useful for normalizing the base signal from the DLL correlator.
The DLL discriminator generates an error control signal from these inputs; this error
signal is filtered by the DLL filter before being provided to the DLL reference code
generator as a control signal. The value of the DLL error signal varies by the amount
that the reference code signals of the DLL generator are delayed or advanced with
respect to the satellite code signal being tracked, and causes the code generator
to adjust the timing of the reference code signals to better match the satellite's
code signal. In this manner, tracking is achieved. The pseudorange γ may be generated
by methods known to the art from the receiver's clock, the 50 Hz information signal,
and any one of the reference code signals generated by the DLL. This is indicated
in the "γ
j(T
j)" box.
[0030] In a similar manner, the PLL has a reference carrier generator that generates a reference
carrier signal that tracks the down-converter version of the satellite's carrier signal.
We denote the frequency of the reference carrier signal as
fNCO since the reference carrier frequency is often generated by a numerically-controlled
oscillator (NCO) within the reference carrier generator. Referring to FIG. 1, the
PLL circuit also has a PLL discriminator and a PLL filter. The PLL discriminator receives
inputs from two correlators, a PLL correlator that generates a base signal for controlling
the PLL circuit, and the main correlator that generates a signal useful for normalizing
the base signal from the PLL correlator. Each correlator output is representative
of the degree to which the reference carrier signal is tracking the satellite's carrier
signal (
i.e., the amount by which the reference carirer signal is advanced or retarded in time
with respect to the satellite's carrier signal). The PLL discriminator generates an
error control signal from these inputs; this error control signal is filtered by the
PLL filter before being provided to the PLL reference carrier generator as a control
signal. The value of the PLL error signal varies by the amount that the reference
carrier signal of the PLL reference carrier generator is delayed or advanced with
respect to the satellite carrier signal being tracked, and causes the reference carriergenerator
to adjust the timing of the reference carrier signal to better match the satellite's
carrier signal. The reference carrier generator provides a phase signal
φjNCO(Tj) representative of the phase (integrated frequency) of the PLL's reference oscillator.
This signal may be combined with other information, as described below, to provide
a signal representative of the full phase of the satellite signal (but possibly with
ambiguities in it). This is indicated in the "
φj(T
j)" box.
[0031] Finally, each individual tracking channel usually comprises a search system which
initially varies the reference signals to bring the PLL and DLL circuits into lock
mode. The construction of this and the other above components is well know to the
art, and a further detailed description thereof is not needed in order for one of
ordinary skill.in the art to make and use the present invention.
Brief Background on the Navigation Parameters.
[0032] Because of the time offset
τ and other error effects, the ps eudorange
γ between a satellite and a receiver is usually not the actual distance between the
satellite and the receiver. By looking at the pseudoranges of four or more satellites,
there are well-known methods of estimating the time offset
τ of the receiver and of accounting for some of the error effects to generate the computed
distance D between the satellites and the receiver. The receiver's position may then
be computed. However, because of various sources of noise and the relatively low resolution
of the pseudo-random code signal, the true distances
(i.e., true ranges), and receiver's position coordinates will not be exactly known, and
will have errors.
[0033] In theory, more precise values for the receiver's position and clock offset could
be obtained by measuring the number of carrier cycles that occur between each satellite
and the receiver. The phase of the carrier of the satellite signal as transmitted
by a satellite can be expressed as:

where

is an initial phase value,
fS is the satellite carrier frequency, and
t is the satellite's time. Because the satellite carrier frequency is generated from
a very precise time base, we may assume that f
S is a constant and not time dependent, and we may replace the above integral
with fS•t, as we have shown in the second line in the above equation. The phase of this signal
when it reaches the receiver's antenna over the range distance
D(t) is denoted as
φSA(
t)
, and its value would be:

where c is the speed of light, and where
τATM(
t) is a delay due to anomalous atmospheric effects which occur mostly in the upper
atmosphere. The number of cycles
fs•τATM(
t) due to the atmospheric effects cannot be predicted or determined to within an accuracy
of one carrier cycle by a stand-alone receiver (
i.e., cannot be determined by absolute positioning). However, the atmospheric effect can
be substantially eliminated in a differential GPS mode where the phase of the satellite
is measured at a rover station and a base station
, φSA,R(
t) and
φSA,B(
t) respectively, and then subtracted from one another. Over the short baseline between
the rover and base stations, the atmospheric delay
τATM(
t) in both of these phases is equal for practical purposes, and the difference in phases
is:

[0034] The terms

and
fS•t have also been cancelled from the difference. In FIG. 2, we show a base station,
a rover station, and four satellites, in schematic form. The wave fronts of the satellite
carrier signal are nearly planar by the time they reach the base and rover stations
since the satellites are at least 22,000 km away. These wave fronts are illustrated
in FIG. 2 for the first and fourth satellites (S1 and S4). Assuming that a wave front
of the satellite carrier reaches one of the antennas first (either rover or base),
the above difference is the number of additional wave fronts that the satellite carrier
must travel before it reaches the second antenna (either base or rover). We have illustrated
this for the first satellite S1 as
fS1•DR(
t)/
c - fS1•DB(
t)/
c. Using the angle between the baserover baseline vector and the line-of-sight vector
to the satellite from either of the stations, the number of carrier cycles that lie
along the baseline can be determined by trigonometry, and thus the baseline can, in
theory, be accurately determined from the differential phase.
[0035] However, the task of measuring carrier phase is not as easy as it appears. In practice,
we must use non-ideal receivers to measure the phases
φSA,R(
t) and
φSA,B(
t)
, with each receiver having a different clock offset with respect to the GPS time,
and with each receiver having phase errors occurring during the measurement process.
In addition, at the present time, it is not practical to individually count the carrier
cycles as they are received by the receiver's antenna since the frequency of the carrier
signal is over 1 GHz. However, the PLL loop can easily track the Doppler-shift frequency
fD of the carrier signal, which is in the kHz range. With a few assumptions, the phases
φSA,R(
t) and
φSA,B(
t) can be related to their respective Doppler-shift frequencies. As is known in the
art, the satellite transmits at a fixed frequency of
fS, but the relative motion between the satellite and receiver causes the frequency
seen by the receiver to be slightly shifted from the value of
fS by the Doppler frequency
fD. We may write the frequency seen by the receiver's antenna as
fS + fD, where
fD has a positive value when the distance between the satellite and receiver's antenna
is shrinking, and a negative value when the distance is increasing. Each receiver
can then assume that the received phase is proportional to the predictable amount
of
fS•t, minus the amount
fD•t due to the Doppler-shift. The Doppler amount
fD•t is subtracted from
fS•t because the Doppler frequency increases as the distance between the satellite and
receiver's antenna decreases. The predictable amount
fS•t will be the same for each receiver, but the Doppler frequencies will usually be different.
[0036] As previously mentioned with reference to FIG. 1, the reference oscillator (e.g.,
NCO) of the PLL circuit tracks the frequency of a selected one of the down-converted
satellite signals. As a result, it inherently tracks the Doppler-shift frequency of
the satellite's carrier signal. Before being provided to the PLL circuit, the carrier
signal is down-converted from the GHz range by a local oscillator having a frequency
fL. The frequency seen by the PLL circuit is (
fS+fD)
-fL, which can be rearranged as: (
fS-fL) +
fD. The quantity (
fS-fL) is known as the pedestal frequency
fp, which is typically around 10 MHz to 20 MHz. The PLL's reference oscillator tracks
the down-converted frequency of
fp +
fD. We would like to integrate the frequency of the reference oscillator to obtain a
phase observable which is proportional to
- fD•t. Starting at a time moment
Tp when the PLL circuit initially locks onto the down-converted satellite signal, with
the time moment
Tp being measured by the receiver's clock, we will generate a phase observable
φj(
Tj) at discrete time moments
Tj of the receiver's clock
T as follows:

where
fp,nom is the nominal value of the pedestal frequency, and where
φjNCO(
Tj) is the phase (integrated frequency) of the PLL's reference oscillator (e.g., NCO).
The time moments
Tj are spaced apart from each other by a time interval Δ
Tj, as measured by the receiver's clock, and may be express as
Tj = j·ΔTj, where
j is an integer.
φj(
Tj) is in units of cycles, and is proportional to the negative of the integrated Doppler-shift
frequency. This is because
φjNCO(
Tj) changes value in proportional to the quantity (
fp + fD)•(Tj - Tp).
[0037] While it may be possible to set
φjNCO(
Tp) to any value at the initial lock moment
Tp, it is preferably to set
φjNCO(
Tp) to a value substantially equal to (
fp,nom• Tp - fS• D̃p/
c)
, where
Tp is measured from the start of GPS time, and where
D̃p is the approximate distance between the satellite and the receiver, as found by the
pseudorange measured by the DLL, or as found by a single point positioning solution.
This setting of
φjNCO(
Tp) is conventional and provides values of
φj(
Tj) for the base and rover stations which are referenced from the same starting time
point.
[0038] In
U.S. Patent No. 6,268,824, which is commonly assigned with the present application, it is shown how the observable
φj(
Tj) is related to the distance D between the receiver and the satellite. We summarize
the relationship here, neglecting the atmospheric delay
τATM(
tj) since this delay will be canceled out when we take the difference between receivers,
and refer the reader to the patent for the derivation:

where
- fS is the satellite carrier frequency,
- Dj is the distance between satellite and receiver at time moment Tj,
- c is speed of light in the atmosphere,
- Tj is the offset between the satellite time clock t and the receiver time clock T (Tj = tj +'τj ), τj varies with time,
- Tp is the time moment when the PLL circuit initially locks onto the down-converted satellite
signal,
- φ'0 = ΦLO + fL,nom•Tp, where ΦLO is the phase offset of the receiver's local oscillator and fL,nom is the nominal frequency of the receiver's local oscillator,

is an initial phase value of the satellite,
- Nnco is an unknown integer number of carrier cycles due to the PLL not knowing which carrier
cycle it first locks onto, Nnco may be positive or negative, and
- ξφj is a small tracking error due to the operation of the PLL circuit.
As it turns out, if we chose the time increments Δ
Tj for
Tj (Tj =
j•Δ
Tj) to be equal to Δ
Tj = 2 ms or an integer multiple of 2 ms, then the term
- fS•Tp is an integer number which can be consolidated with the integer ambiguity -
Nnco into a single ambiguity +
N.

Thus, our Doppler phase observable
φj(
Tj) has been related to the distance
Dj between the satellite and receiver, the time offset
τj of the receiver, an integer ambiguity
N, and some initial phase offsets

which can be readily determined.
[0039] We will now write equation (7) for the base and rover stations, adding superscripts
"B" and "
R" for the base and rover stations, and subscript
"m" to indicate the
m-th satellite signal and the
m-th individual tracking channel.

For the differential navigation mode, the difference of these phases is formed:

Using
Nm = (
NmB - NmR) to represent the difference between the ambiguities, and using the well-known relationship
fS/
c =1/λ
m, where λ
m is the wavelength of the satellite carrier signal, we have:

The values for

and

can be readily determined. The values of

and

cannot be determined, but they have zero mean values (and should average to zero
over time).
[0040] Now, we relate this back to the initial objective and problem that we expressed with
respect to FIG. 2. As indicated, we wanted to find the phase difference quantity (
fS•DR(
t)/
C-fS•DB(
t)/
c) associated with each satellite in order to determine the number of carrier cycles
that lie along the baseline, and thus provide a better estimate of the coordinates
of the baseline. By examination of the phase difference quantity and equations (9)
and (10), we seek that (
fS•DR(
t)/
c-fS•DB(
t)/
c) is equal to
,m(
Tj) , which we can measure, minus the cycle ambiguity
Nm, minus the error in the clocks

minus the phase offsets

and minus the errors

the last of which can be removed by averaging. Thus, estimating the cycle ambiguities
N will be important in using the phase information to improve the estimated coordinates
of the baseline.
Our Inventions related to Ambiguity Resolution - Estimating Floating Ambiguities
[0041] Our inventions can be applied to a number of application areas. In general application
areas, the rover and base stations can move with respect to one another. In one set
of specific application areas, the base and rover stations are fixed to a body or
vehicle (e.g., planes and ships) and separated by a fixed distance L, as shown in
FIG. 3. We refer to these applications as the constant distance constraint applications.
The movement of the vehicle may be arbitrary while the distance between two antennas
is held constant due to the rigidity of the vehicle body. This distance L
RB is known with a certain degree of confidence is considered as an additional constraint
or measurement available at every time instant, because it depends on both Base and
Rover positions. The constraint can be mathematically expressed as:

where
xR, yR, and
zR, represent the rover station coordinates and where
xB, yB, and
zB represent the base station coordinates. The information from the constraint can be
used to better estimate the Rover position relative to the Base. For this, it is preferably
to form a cost penalty function mathematically equivalent to the form:

where, in preferred embodiments, the cost function F(*) will be minimized such that
and its the first derivatives with respect to the rover coordinates (or alternatively
the base coordinates) are reduced to values near zero:

In the preferred methods described below, the amount of weighting given to minimizing
the cost function F(*) will set by a weighting parameter
q (e.g.,
q•F(*)) , with no weighting being given when
q=0, and increasing degrees of weighting being given by selecting
q>0. The case of setting q=0 is also equivalent to removing the constraint that the
rover and base stations are separated by a fixed distance L.
[0042] The ambiguity resolution task generally comprises the following three main parts:
- 1. Generation of the floating ambiguity estimations (estimating the floating ambiguities),
- 2. Generation of the integer ambiguities, and
- 3. Formation of a signal of integer ambiguities resolution.
[0043] The present invention pertains to the first part, that of generating the floating
ambiguity estimates. The second and third parts may be accomplished by apparatuses
and methods known in the art. The apparatuses and methods of our present invention
use as an input data:
- (a) the pseudo-ranges and full phase measurements obtained in the Base and Rover receivers;
- (b) the satellites coordinates (which are highly predictable can be readily determined
from the GPS time and information provided in the 50 Hz low-frequency information
signal by methods well known to the art);
- (c) the estimated coordinates of the Base and Rover stations (as measured at their
antennas); which may be generated from then pseudo-range data by single point solutions,
and oftentimes the coordinates of the base station are precisely known;
- (d) optionally, a set of weight coefficients characterizing the accuracy of the measurements;
and
- (e) optionally, an estimate rj' of the baseline coordinates rj and the value of LRB if the cost function F(*) is used.
[0044] According to the input data, a vector of observations and a covariance matrix of
measurements are formed. After that a state vector is generated, components of which
are floating ambiguities, the number of which is equal to the number of satellites.
On the basis of the floating ambiguity values, a search of the integer ambiguities
is performed with use of a least-squares method that is modified for integer estimations.
[0045] Improvement of the floating ambiguity estimations can take place step-by-step, and
the probability of correct ambiguity resolution increases step-by-step as information
is accumulated. Preferred finishing of this process is registered by appearance of
the signal of integer ambiguities resolution, which indicates that ambiguity resolution
was performed sufficiently safely. After that, the integer ambiguities together with
other input ) data are used for accurate determination of the base line vector. The
tasks of determining the integer ambiguities and of generating the signal of integer
ambiguities resolution are known to the art and do not form part of our invention.
These tasks, therefore, are not described in greater detail.
[0046] Our invention is suitable for both the RTP mode and for the PP mode under movable
Rover, where the Rover coordinates may be random and independent in adjacent clock
moments. Our invention is also suitable for both the RTP mode and for the PP mode
when both the base and rover stations are moving, where the coordinates of the stations
may be random, but constrained by fixed distance L
RB, in adjacent clock moments.
[0047] We start by rewriting equation (10), which has the integer ambiguities
Nm in vector form:

where Λ
-1 is a diagonal matrix of inverse wavelengths. We note that the components of

can be selected to be integer constants, and can therefore be incorporated into the
integer ambiguities
N, which may be called the modified integer ambiguities
N. Thus, we may simplify the above equation:

After this modified
N are found, the "true"
N may be found by subtracting

from the modified
N.
[0048] As an alternative equivalent to the above, the vector

can be computed and carried over to the left-hand side of equation (14) and subtracted
from

As such, the
N that is determined will be the "true"
N. Once the "true"
N is found, then the underlying unknown integer number of carrier cycles
Nnco may be found by negating the "true"
N (i.e., multipling by-1) and then
subtracting fS•Tp (
Nnco =
- "true"
N - fS•Tp)
. However, for the ultimate goal of computing more accurate coordinates of the baseline,
the modified ambiguities
N in equation (14) can be used, and they greatly simplify the computations. Nonetheless,
it will be appreciated that the present invention may be practiced by using the "true"
N or
Nnco in equation (14) by suitable modification of the left-hand side of equation (14),
and that the appended claims cover such practices.
[0049] Our approach comprises solving the above equations (14) at a plurality of time moments
jointly to find an estimation for vector
N. We cannot readily find measured values for vectors

and

and we have some errors in the range vectors

and

Our approach is to represent (model) the errors in the range vectors

and

and the terms

by the following error vector:
Λ-1.

where

is the Jacobian matrix (
e.g., directional cosine matrix), and where [
Δx
, Δy, Δz, c•Δτ ]
T are corrections to the baseline coordinates and clock offsets of the receivers. Thus,
we will model the above equation as:

The pseudoranges will be used to estimate the vector

as follows:

This will be done through the formation of observation vectors, state vectors, and
observation matrices, and an estimation process over a plurality of time moments,
as described below in greater detail. Vector N will be jointly estimated in this process.
Generation of the Vector of Observations.
[0050] A vector of observations
µj is generated at each clock time moment
tj=
j•ΔTJ and comprises 2•
n components, where
n is the number of the satellite channels. The first
n components are the residuals of the single differences of the Base and Rover pseudoranges,
which we denote in vector form as Δ
γj:

where

and

are vectors containing the pseudo-ranges of the satellites, measured in the Base and
Rover receivers, respectively; and

and

are vectors of the estimated ranges of the satellites from Base and Rover stations
at the moment of j-th signal radiation

and

are computed from the known positions of the satellites, the estimated position of
the rover, and the known or estimated position of the base station by standard geometry.
[0051] The next
n components of the observation vector
µj are the residuals of the single differences of the Base and Rover full phases (Δ
φj), which we indicate here in vector form:

where


and

are vectors of the full phases of the given satellite signal, measured at the Base
and Rover receivers, respectively (the phases are measured in cycles); and
Λ-1 is a diagonal matrix of inverse wavelengths, where each diagonal component corresponds
to a channel and is equal to 1/λ, where λ is the wavelength of the carrier signal
in the given channel. The full phase vectors ϕBj and ϕRj may be constructed in the form provided by equation (5):


or may be constructed in the form which includes the phase offsets of the base receiver:


In either case, we will use the convention practice and have the base receiver correct
its clock so that the base time
Tj will be equivalent to the GPS time
tj for the purposes of implementing our inventions (the time offset has already been
accounted for in the above equations). For all practical purposes, times
Tj and
tj will refer to the same processing time increment, and can be interchanged in the
above equations.
State Vector Representation.
[0052] The forms represented by Equations (15)-(18) maybe represented in matrix form equivalent
to:

where vector
Aj is a state vector related to observation matrix
µj and where matrix

is an observation matrix that specifies the relationship between the components of
the observations vector
µj and the state vector
Aj. State vector vector
Aj comprises (4+
n) components. The first three components are increments (
Δx, Δy, Δz) to the coordinates (
x°, y°, z°) of the baseline vector unknown at the
j-th clock moment, the fourth component is the unknown increment of the reference oscillator
phases (
c•Δτ). The remaining n components are the unknown floating ambiguities, different in different
channels (
N1, N2... Nn). Matrix

comprises 2
n rows and (4+
n) columns, and may be divided into the following 4 parts (sub-matrices):

The first part, the left upper corner of this matrix (the first four columns by the
first
n rows), is occupied by the observation matrix

relating to the pseudo-range measurements, each row corresponding to one channel
(from the 1-st to the n-th). For the
n-th channel, the corresponding row appears like this:

where
αjn , βjn, hjn - the directional cosines of the range vector to the n-th satellite from Rover for
the j-th time moment. Methods of computing directional cosines are well known to the
art and a description thereof herein is not needed for one of ordinary skill in the
art to make and use the present invention.
[0053] The second part of matrix

the left lower comer (the first four columns by the last
n rows), is occupied by the matrix product

relating to the full phase measurements, each row corresponding to one channel (from
the 1-st to the
n-th). For the n-th channel, the corresponding row appears like this:

where
λn is the wavelength of the carrier signal in the
n-th channel.
[0054] The third part of matrix

the right upper corner (the last
n columns by the first n rows) is occupied by zeroes. And the fourth part, the right
lower corner (the last
n rows by the last
n columns) is occupied by the elements relating to the floating ambiguities. This part
represents the identity matrix
In with dimensions of nxn. For the discussion that follows below, it will be convenient
to identified sub-blocks of matrix

as follows

where
Qj is a compound matrix formed by

and
Λ as follows:

and where
G is a compound matrix the zero matrix
On×n and the identity matrix
In as follows:

Equation (18) has 2
n equations (according to the number of components of the observation vector), and
may be used to determine the state vector
Aj at the
j-th clock moment
(i.e., to determine 4+
n unknown values). Solution of such a system of equations at
n≥4 may be performed by the method of least squares. However, our invention relates
to solving for the ambiguity vector
N, which is a component of
Aj, over a plurality of time moments. Before we describe that process, however, we want
to first describe the groundwork of how we can integrate the minimization of the cost
function F(*) for constrained distance between receivers, if used, with the solution
of Equation (19), and to then describe some covariance matrices that characterize
the accuracy of the measured data used to generate
µj. These covariance matrices are helpful to our invention, but not strictly necessary.
[0055] The cost function F(*) may be expressed in the following form:

where:

is a vector of the first four components of
Aj. and

is a vector of the coordinates of the baseline vector, with a zero as the four vector
component. Using a second-order truncation of the Taylor series expansion, the cost
function F(*) may be approximated as:

where

Because forms (21)-(23) share common variables with equation (18), the minimization
of
q•F(*) can be integrated with the solution of equation (18), as described below in greater
detail.
Generation of the measurements covariance matrix.
[0056] Measurements covariance matrix
RJ is preferably formed in the following way on the basis of weight coefficients obtained
in Base and Rover receivers:

where

and

The weight coefficients

characterize the accuracy of the measurements of the residuals
Δγj of the pseudo-range single differences for the corresponding satellite channels (1-st,
2-nd, ..., n-th). The generation of the weight coefficients is not a critical part
of the present invention, and one may use his particular method of weighting. We present
here one of our ways, where each of these coefficients maybe determined according
to the weight coefficients measured in each channel by Base and Rover receivers for
the pseudo-ranges,
i.e., by values

and

[0057] Thus, for example, for the n-th channel:

where

and

are determined taking into account the measured signal-to-noise ratio in the receivers
and the satellite elevation angles in the n-th channel (of Base and Rover, respectively).
Specifically, for each of the receivers (no superscript used),

where

is the signal strength of the m-th satellite carrier signal as received by the receiver
(it has been normalized to a maximum value and made dimensionless), where ξ
k,m is the elevation angle of the
m-th satellite as seen by the receiver, where a minimum elevation angle
ξB min at which the signal becomes visible at the receiver, where σ
γ2 is the variance of the code measurements (σγ ≈1 m). The factor

is dimensionless.
[0058] Weight coefficients

characterize the accuracy of the measurements of the residuals
Δφj of the phase single differences, and are determined similarly. Here the same input
data is used: the signal-to-noise ratio and the angle of elevation, but another scale
for the phase measurements is considered (
e.g., σ
ϕ2 instead of σ
γ2). Specifically, for each of the receivers (no superscript used),

and

where

and
ξBmin are as they are above, and where σ
ϕ2 is the variance of the code measurements (σ
ϕ ≈ 1 mm).
[0059] When the magnitudes of either of weight coefficients

or

is less than a first selected small threshold value, the value of

is generated as a first small number which is less than the first threshold value.
This is equivalent to setting

to a large number equal to the inverse of the first small number. Similarly, when
the magnitudes of either of weight coefficients

or

is less than a second selected small threshold value, the value of

is generated as a second small number which is less than the second threshold value.
This is equivalent to setting

to a large number equal to the inverse of the second small number.
[0060] In some instances, satellite signals are blocked from view and should be excluded
from the ambiguity resolution process. The elements of the covariance matrix
Rj corresponding to these satellite signals are replaced by a very large number. The
very large number is selected in advance, and has a value which exceeds by several
orders of magnitude the nominal values of the covariance matrix components

or

encountered during operation. Consequently, in further computations, the weights
of all measurements relating to these channels become so small that they do not influence
the result.
[0061] As a more simple approach, but currently less preferred, one can use the following
form of covariance matrix
Rj, or a scaled version thereof:

This form gives an equal weighting of 1/σ
γ2 of to the rows of pseudorange data provided by Δ
γj and an equal weighting of 1/σ
ϕ2 to the rows of phase data provided by
Δ ϕj. When a satellite is blocked from view or not visible, the elements of the covariance
matrix
Rj corresponding to the satellite are preferably replaced by a very large number, as
described above.
Central Aspects of the Present Invention
[0062] Summarizing equation (19), the linearized measurement model at the j-th epoch takes
the form:

We expect that the vector of floating ambiguities
Nj will be constant in time, and therefore we will drop the subscript index
j. Instead, we will denote
Nj the evaluation of
N obtained through the epoch from 1 to
j.
Generation of the floating ambiguity estimations
[0063] We create the following scalar quantity
J in equation (27) which integrates the minimization of equation (26) with the minimization
of the truncated cost functions
Fk for the constrained distance condition (if used) according to equations (21) - (23):

As mentioned above, q is a scalar weighting factor (penalty parameter) which is equal
to or greater than 0 (q ≥0). We seek to minimize
J in value in order to obtain
ak, k = 1
,..., j and
N . The minimization of
scalar J essentially seeks to minimize the errors in the individual forms of

and conditions (11), if applicable, for data of all of the
j epochs being considered, but with the constraint that floating ambiguity vector
N in each individual state vector
Ak be the same. The individual vectors
ak are allowed to have different values. If the fixed distance constraint between rover
and base stations is not considered to be present, then cost function F
k is omitted from equation (27), and all following equations based on equation (27).
This may be simply done by setting weighting parameter q=0. If the fixed distance
constraint is used, values for the weighting parameter q can range from approximately
0.5 to approximately 4, with a typical range being between approximately 1 and approximately
3. The best value of q often depends upon the amount of noise in the signals and the
receivers, and can be found by trying several values within the above ranges (
i.e., fine tuning). The inventors have found a value of q=2 to be useful for their test
applications. In the case where the distance between the receivers is constrained
to a fixed value, we emphasize that the use of the cost function qF is optional, and
that one is not required to use it. Using the methods of the present invention without
the cost function qF will still provide estimates of the floating ambiguities. The
inclusion of the cost function qF generally enables more accurate estimates.
[0064] The inventors have discovered that a set of
N which minimizes scalar
J can be found by solving the following block linear system for the set
N, which is a vector.

To the inventors' knowledge, the form of scalar
J provide by equation (27) and form of the linear system provided by equation (28)
are not found in the prior art. While it is preferred to use the weighting matrices
R and their inverse matrices, it may be appreciated that the present invention can
be practiced without them. In the latter case, each weighting matrix
R may be replaced by an identity matrix of similar dimension in Equation (28) and the
following equations; each inverse matrix
R-1 is similarly replaced by an identity matrix.
[0065] The inventors have further constructed an inverse matrix for the block matrix on
the left-hand side of the equation (28), and from this inverse matrix have found a
form of
N which satisfies equation (28) as follows:

where this form comprises an
n x
n inverse matrix multiplying an
n x
1 vector. In the discussion that follows, we will identify the
n x
n inverse matrix as
M-1 and the
n x
1 vector as
B, with
N =
M-1 B. The above form may be more simply expressed if we form a matrix matrix
Pk for the data of the k-th time moment in the following form:

and a vector:

[0066] With matrix
Pk, equation (29) may now be written as:

We refer to
Pk as a projection-like matrix for q=0 and a quasi-projection matrix for q>0. Each component
matrix

is symmetric positive definite and may be inverted. Moreover, a matrix comprised
of a summation of symmetric positive definite matrices is also symmetric positive
definite. Thus, matrix
M is symmetric positive definite and can be inverted. In preferred implementations
of the present invention, the inverse of
M is not directly computed. Instead, a factorization of
M into a lower triangular matrix
L and an upper triangular matrix
U is produced as follows:
M =
LU. Several different factorizations are possible, and
L and
U are not unique for a given matrix
M. The
LU factorization of matrix
M enables us to compute the floating ambiguities
N through a sequence of forward and reverse substitutions. These substitutions are
well known to the art (
cf. any basic text on numerical analysis or matrix computations). With symmetric positive
definite matrices, one may choose
L and
U such that
U=
LT, which gives a factorization of
M =
LLT. This is known as the Cholesky factorization, and it generally has low error due
to numerical rounding than other factorizations.
[0067] With
N being generated from this form, the inventors have further found that each individual
vector
ak can be generated according to the following form:

The generation of the individual vectors
ak is optional to the process of generating a set of floating ambiguities
N. However, when using cost function F(*) and equations (22) and (23), one can generate
ak in order to update
rk. The forms of
N and
ak which the inventors have discovered enable one to generate a vector N without having
to first generate the individual vectors
ak.
[0068] When using the cost function F(*),
Sk and
hk (and
gk which is derived from
hk and
Sk), an estimate of the baseline vector
rk at time moment "k" has to be generated. As indicated by equations (22) and (23),
both
Sk and
hk depend upon L
RB, which does not normally change, and upon
rk, which can change and often does change. For generating
Sk and
hk, it is usually sufficient to use an estimate of
rk, which we denote at
rk' and which may be provided by the user or general process that is using the present
invention. As part of generating the calculated distances
DkR and
DkB, the user or general process uses the estimated position of the rover and the known
or estimated position of the base station. An estimate
rk' can be generated by subtracting the position of the base station from the estimated
position of the rover. If desired, one can refine the estimate by generating
ak from equation (31), and then using the combination (
rk
'+
ak) as a more refined estimate of
rk in generating
Sk and
hk. To do this, one may first generate an estimate
N' to
N by using equation (30) with
Sk=0 and
gk=0. Then equation (31) can be evaluated using
N=
N'
, Sk=0, and
gk=0 to generate refined baseline vectors
rk =(
rk'+
ak), and initial values of
Sk',
hk', and
gk'. Equation (30) is then again evaluated using the initial values
Sk',
hk', and
gk' for
Sk,
hk, and
gk, respectively. The process may be repeated again. To speed convergence, one can consider
using prior values of
Sk' and
gk' in generating
ak for k>1 as follows:

First Exemplary Set of Method Implementations of the Present Invention
[0069] The inventors have discovered a number of ways to employ the form of
N provided by Equation (30). For post-processing application, the satellite data may
be collected for a plurality
j of time moments, the matrices
Rk and
Qk (and optionally
Sk) and the vectors
µk (and optionally
hk and
gk) for each k-th time moment may then be computed, and the
n x
n inverse matrix
M-1 and the
n x
1 vector
B may then be generated and thereafter multiplied together to generate the vector N.
The plurality of time moments may be spaced apart from one another by equal amounts
of time or by unequal amounts of time. As indicated above, instead of generating the
inverse matrix
M-1; one may generate the
LU factorization of
M and perform the forward and reverse substitutions. The factorization-substitution
process is faster than generating the inverse matrix, and more numerically stable
than most matrix inversion processes. If necessary, Equations (30) and (31) may be
iterated as described above until convergence for significantly nonlinear dependency
of quantities in equations (22) and (23) on the Rover position.
[0070] For real-time applications,
M-1 and
B may be initially computed at a first time moment from a first set of data (e.g.,
R1,
Q1,
µ1, R2,
Q2,
µ2) and then recomputed at subsequent time moments when additional data becomes available.
For instance, we can initially compute
M and
B based on
l time moments
k=1 to
k=l as follows:

where the subscript "
l" has been used with
Ml and
Bl to indicate that they are based on the
l time moments
k=1 to
k=l. The floating ambiguity may then be computed from
Nl= [
Ml-1]
Bl, using matrix inversion or LU-factorization and substitution. Data from the next
time moment
l+1 can then be used to generate the updated quantities
Ml+1 and
Bl+1 as follows using the previously computed quantities
Ml and
Bl:

With an updated set of floating ambiguities being computed from
Nl+1 = [
Ml+1]-1 Bl+1, using matrix inversion or LU-factorization and substitution. It may be appreciated
that the above forms of
Ml+1 and
Bl+1 may be employed recursively
(e.g., iteratively) in time to compute updated floating ambiguities
Nl+1 from previously-computed values of the quantities
Ml and
Bl as satellite data is collected. The recursion may be done with each recursive step
adding data from one epoch, or with each recursive step adding data from multiple
epochs, such as provided by the following forms:

where
Ml and
Bl are based upon
j time moments, and
Mm and
Bm are based on these time moments plus the time moments
l+1 through to
m, where
m > l+1. While these recursion methods are preferably applied to real-time applications,
it may be appreciated that they may be equally used in post processing applications.
Furthermore, while one typically arranges the time moments such that each time moment
k+1 occurs after time moment k, it may be appreciated that other ordering of the data
may be used, particularly for post processing applications.
[0071] The steps of the above method are generally illustrated in a flow diagram 40 shown
in FIG. 4. Initially, the data is received
(e.g., 
and optionally
rj' and L
RB) as indicated at reference number 41. At step 42, the method generates, for each
time moment
j, a vector Δ
γj of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

At step 43, the method generates, for each time moment
j, a vector
Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

-

where
Λ-1 is a diagonal matrix comprising the inverse wavelengths of the satellites, the set
of phase residuals being denoted as
Δϕk , k=1, ..,
j. At step 44, the method generates an LU-factorization of a matrix M or a matrix inverse
of matrix
M, the matrix
M being a function of at least
Λ-1 and
Hkγ, for index
k of
Hkγ covering at least two of the time moments
j. Exemplary forms of matrix
M have been provided above. At step 45, the method generates a vector
N of estimated floating ambiguities as a function of at least the set of range residuals
Δγk, the set of phase residuals
Δϕk, and the LU-factorization of matrix
M or the matrix inverse of matrix
M. Exemplary forms of vector
N have been provided above. If the cost function F(*) is included, then steps 44 and
45 may be reiterated, along with a step of generating
ak for refined estimates of
rk, as indicated above.
[0072] It may be appreciated that the above steps may be performed other sequences than
that specifically illustrated in FIG. 4, as long as the data needed to perform a specific
step is available. For example, parts of steps 41, 42, and 43 may be performed as
matrix
M is being assembled in step 44.
[0073] The above method maybe carried out on the exemplary apparatus 100 shown in FIG. 5.
Apparatus 100 comprises a data processor 110, an instruction memory 112 and data memory
114 for data processor 110, an optional keyboard/display 115 for interfacing between
data processor 110 and a human user, and a generalized data portal 120 for receiving
the measured data

and optionally
rj'and L
RB, each data having been described in detail above. Memories 112 and 114 may be separate,
or difference sections of the same memory bank. Generalized data portal 120 may take
any number of conventional forms, such as one or more input/output ports, or one or
more files stored on disk, tape, non-volatile memory, volatile memory, or other forms
of computer readable medium. The data can be placed in data portal 120 by any number
of means, such as by a user of the apparatus, or by a more general apparatus that
utilizes the apparatus of the present invention in carrying out its functions (such
as, for example, computing precise estimates of the position of the rover or the coordinates
of the baseline vector). In the former case, the keyboard/display 115 may be used
to receive information from the user as to when new data has been provided to data
portal 120 (this may be useful in post-processing applications). In the latter case,
a more general apparatus may comprise the rover station (including receiver channels
such as that shown in FIG. 1) and radio transceiver for receiving data from the base
station. In the case that both the base and rover stations are located on the same
vessel, the more general apparatus may comprise the base and rover stations.
[0074] Data processor 110 may be configured to implement the above-described method embodiments,
such as exemplified by the steps in FIG. 4, by running under the direction of a computer
product program present within instruction memory 112. An exemplary computer program
product 60 is illustrated in FIG. 6. Computer program product 60 may be stored on
any computer-readable medium and then loaded into instruction memory 112 as needed.
Instruction memory 112 may comprises a non-volatile memory, a programmable ROM, and
hard-wired ROM, or a volatile memory.
[0075] Computer program produce 60 comprises five instruction sets. Instruction Set #1 directs
data processor 110 to receive the measured data from data portal 120. The measured
data from portal 120 may be loaded into data memory 114 by Instruction Set #1. As
another implementation, the data may be loaded into memory 114 by subsequent instruction
sets as the data is needed. In the latter case, Instruction Set #1 can take the form
of a low-level I/O routine that is called by the other instruction sets as needed.
As such, data portal 120 and data processor 110 under the direction of instruction
set #1 provide means for receiving the measured data for apparatus 100. Instruction
Set #2 directs data processor to generate, for each time moment
j, a vector
Δγj of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

As such, data processor 110 under the direction of instruction set #2 provides means
for generating the range residuals
Δγj for apparatus 100. Instruction Set #3 directs data processor 110 to generate, for
each time moment
j, a vector
Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where
Λ-1 is a diagonal matrix comprising the inverse wavelengths of the satellites. As such,
data processor 110 under the direction of instruction set #3 provides apparatus 100
with means for generating the phase residuals
Δϕj. The residuals may be stored in data memory 114.
[0076] Instruction Set #4 directs data processor 110 to generate an LU-factorization of
matrix
M or a matrix inverse of matrix
M, the matrix
M being a function of at least
Λ-1 and

for
index k of

covering at least two of the time moments
j. Exemplary forms of matrix
M have been provided above. Matrix
M and its LU-factorization or inverse may be stored in data memory 114. As such, data
processor 110 under the direction of instruction set #4 provide apparatus 100 with
means for generating matrix
M and its LU-factorization or inverse. Finally, instruction Set #5 directs data processor
110 to generate a vector
N of estimated floating ambiguities as a function of at least the set of range residuals
Δγk, the set of phase residuals
Δϕk, and the LU-factorization of matrix
M or the matrix inverse of matrix
M. Exemplary forms of vector
N have been provided above. Vector N may be stored in data memory 114. As such, data
processor 110 under the direction of instruction set #5 provide apparatus 100 with
means for generating an vector
N, which is an estimate of the floating ambiguities.
[0077] The resulting estimates provided by vector
N may be outputted on keyboard/display 115, or may be provided to the more general
process through data portal 120 or by other transfer means (such as by memory 114
if data processor 110 is also used to implement the more general process).
Second Exemplary Set of Method Implementations of the Present Invention
[0078] The inventors have developed additional recursive methods that are generally better
suited to real-time applications. The second exemplary set of methods generally facilitate
implementations which require less memory storage space and fewer computations. We
previously defined a projection-like matrix
Pk for the data of the k-th time moment as follows:

Equation (32) was then applied to the form of equation (30) to provide the form:

where
M and
B are identified in the forms of:

The forms of equations (33B) can be expressed in the following recursion form:

Then

noting that
Nj = [
Mj]
-1 Bj for the data from time moments 1 through
j, we can write
Nj-1 = [
Mj-1]
-1 Bj-1 for the data from time moments 1 through
j-1. The latter can be rearranged as
Mj-1 Nj-1 =
Bj-1 and used to substitute for the term
Bj-1 in equation (35A) to provide:

To equation (35B), we now add and subtract the term
GTPj G Nj-1 from the second. bracketed quantity to obtain:

Noting that the first two terms of the second bracketed quantity can be factored
as (
Mj-1+
GTPjG)
Nj-1 and that the factor (
Mj-1+
GTPjG) is the inverse of the first bracketed quantity in equation (35C), it can be seen
that the first bracketed quantity multiplied onto (
Mj-1+GTPjG)
Nj-1 is simply
Nj-1. Therefore, equation (35C) can be simplified as:

The second bracketed quantity of equation (35D) can be further simplified as:

Using equation (34) this becomes:

With this, the following recursive method may be used in a real time application:
(1) Generate initial values of M0 and N0, set epoch counter k to zero ( k = 0).
(2) Increment the epoch counter by one; obtain the data needed to generate the matrices
Rk and Qk, and the vector µk.
(3) Generate Rk and Qk, and µk. If the constant distance constraint is to be used, then also compute Sk, hk, and gk, and select a value for q greater than zero; otherwise, set qSk =0 and qgk=0 in steps (4)-(7) below.
(4) Generate Pk in a form equivalent to:

(5A) Generate an LU-factorization of Mk, where Mk is in a form equivalent to Mk = Mk-1 + GTPk G. Exemplary ways of generating LU factorizations are described in greater detail below.
-- OR --
(5B) Generate an inverse matrix Mk-1 of Mk, where Mk is in a form equivalent to Mk = Mk-1 + GT Pk G. In general, this approach requires more computation than the approach of step (5A),
and is currently the less preferred approach.
(6) Generate Nk = Nk-1 + Mk-1(GTPk (µk - G Nk-1) + qgk). If the inverse matrix Mk-1 has been generated according to step (5B), this form may be generated by conventional
multiplication of Mk-1 onto a vector Fk, where Fk = (GTPk (µk - G Nk-1) + qgk). Nk-1) + qgk). If the LU factorization for Mk has been generated according to step (5A), then the quantity Xk = Mk-1 (GTPk (µk - G Nk-1) + qgk) may be generated from a forward and reverse substitution on the form: Lk Uk Xk = Fk, where Lk is the lower triangular matrix and Uk is the upper triangular matrix of the factorization. The quantity Xk is then added to Nk-1 to form Nk.
(7) Optionally generate ak=(QkTRk-1Qk)-1 (QkTRk-1(µk-GNk)-qgk)
(8) Reiterate steps (2)-(7).
For initial values it is convenient to use
M0 = 0 and
N0 = 0. One can also use satellite data from a single epoch to generate values for
M0 and
N0 using forms (4), (5A), (7A). This is in fact what is done with the above steps (2)-(6)
are performed on the data for the first epoch with
M0= 0 and
N0= 0. In step (3), if the distance constraint is to be used, one may use
rk' to generate
Sk, h
k, and
gk , or one may generate more refined estimate as (r
k'+a
k), with a
k being generated as:

or as

[0079] During the first few recursion steps, matrix
Mk may be ill-conditioned, and thus the generation of the LU factorization or inverse
of
Mk may incur some rounding errors. This problem can be mitigated by using
Rk = I during the few recursions, or using an
Rk with more equal weightings between the psuedorange and phase data, and then switching
a desired form for
Rk.
[0080] The steps of the above method are generally illustrated in a flow diagram 70 shown
in FIG. 7. Initially, the data is received
(e.g., 
and optionally r
j' and L
RB) as indicated at reference number 71. At step 72, the method generates, for each
time moment j, a vector Δγ
j of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of: Δγ
j 
At step 73, the method generates, for each time moment
j, a vector Δγ
j of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ
-1 is a diagonal matrix comprising the inverse wavelengths of the satellites, the set
of phase residuals being denoted
as Δϕk, k=1, .., j.
[0081] At step 74, the method generates, for time moment
j = 1, an LU-factorization of a matrix
M1 or a matrix inverse of matrix
M1, the matrix
M1 being a function of at least Λ
-1 and

Any of the forms for
M described above may be used. At step 75, the method generates, for time moment
j = 1, a vector
N1 as a function of at least Δγ
1, Δϕ1, and the LU-factorization of matrix
M1 or the matrix inverse of matrix
M1. At step 76, the method generates, for an additional time moment j ≠ 1, an LU-factorization
of a matrix
Mj or a matrix inverse of matrix
Mj, the matrix
Mj being a function of at least Λ
-1 and

At step 77, the method generates, for an additional time moment j ≠ 1, a vector
Nj as a function of at least Δγ
j, Δϕ
j and the LU-factorization or matrix
Mj or the matrix inverse of matrix M
j. At step 78, the estimated ambiguity vector
Nj is reported. If the estimated ambiguity vector has not achieved sufficient accuracy,
as set by the user, steps 76 and 77 are repeated, with steps 76-78 forming a loop.
If the estimated ambiguity vector has achieved a sufficient degree of accuracy, or
if steps 76-78 have been repeated for a maximum number of times set by the user, the
process is ended. If the cost function F(*) is included, then step 76 may include
the generation of
ak for refined estimates of
rk, as indicated above.
[0082] It may be appreciated that the above steps may be performed other sequences than
that specifically illustrated in FIG. 7, as long as the data needed to perform a specific
step is available. For example, parts of steps 71-73 may be performed as matrix
M1 is being assembled in step 74, and as matrix
Mj is being assembled in step 76. It may also be appreciated that the data set provided
to the process may span several tens of time moments to several thousands of time
moments, and that the time moment j=1 illustrated above may correspond to any of the
time moments in the data set, not just the earliest time moment or the first received
time moment. It may also be appreciated that steps 74-75 may generated their respective
M matrices and
N vectors from data measured over two or more time moments as discussed above with
regard to equations (31A)-(31F), as well as just one time moment, and that steps 76-77
may generated their respective
M matrices and N vectors from data measured over two or more time moments as discussed
above with regard to equations (31A)-(31F), as well as just one time moment. It may
be further appreciated that approproate ones of the appended claims are intended to
cover these possibilities.
[0083] The above method embodiments may be carried out on the exemplary apparatus 100 shown
in FIG. 5, using a different set of instructions in memory 112. Specifically, data
processor 110 may be configured to implement the above-described method embodiments
exemplified by the steps in FIG. 7, by running under the direction of a computer product
program present within instruction memory 112. An exemplary computer program product
80 is illustrated in FIG. 8. Computer program product 80 may be stored on any computer-readable
medium and then loaded into instruction memory 112 as needed. Instruction memory 112
may comprises a non-volatile memory, a programmable ROM, and hard-wired ROM, or a
volatile memory.
[0084] Computer program produce 80 comprises eight instruction sets. Instruction Set #1
directs data processor 110 to receive the measured data from data portal 120. The
measured data from portal 120 may be loaded into data memory 114 by Instruction Set
#1. As another implementation, the data may be loaded into memory 114 by subsequent
instruction sets as the data is needed. In the latter case, Instruction Set #1 can
take the form of a low-level I/O routine that is called by the other instruction sets
as needed. As such, data portal 120 and data processor 110 under the direction of
instruction set #1 provide means for receiving the measured data for apparatus 100.
Instruction Set #2 directs data processor to generate, for each time moment
j, a vector Δγ
j of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

As such, data processor 110 under the direction of instruction set #2 provides means
for generating the range residuals Δγ
j for apparatus 100. Instruction Set #3 directs data processor 110 to generate, for
each time moment
j, a vector
Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ
-1 is a diagonal matrix comprising the inverse wavelengths of the satellites. As such,
data processor 110 under the direction of instruction set #3 provides apparatus 100
with means for generating the phase residuals
Δϕj. The residuals may be stored in data memory 114.
[0085] Instruction Set #4 directs data processor 110 to generate, for time moment
j = 1, an LU-factorization of a matrix
M1 or a matrix inverse of matrix
M1, the matrix
M1 being a function of at least
Λ-1 and

Exemplary forms of matrix
M1 have been provided above. Matrix
M1 and its LU-factorization or inverse may be stored in data memory 114. As such, data
processor 110 under the direction of instruction set #4 provide apparatus 100 with
means for generating matrix
M1 and its LU-factorization or inverse. Instruction Set #5 directs the data processor
110 to generate, for time moment
j = 1, an estimated ambiguity vector
N1 as a function of at least Δγ
1, Δϕ1, and the LU-factorization of matrix
M1 or the matrix inverse of matrix
M1. Exemplary forms of vector N
1 have been provided above. Vector
N1 may be stored in data memory 114. As such, data processor 110 under the direction
of instruction set #5 provide apparatus 100 with means for generating an vector
N1, which is an estimate of the floating ambiguities.
[0086] Instruction Set #6 directs data processor 110 to generate, for one or more additional
time moments j ≠1, an LU-factorization of a matrix
Mj or a matrix inverse of matrix
Mj, the matrix M
j being a function of at least Λ
-1 and

Exemplary forms of matrix
Mj have been provided above. Matrix M
j and its LU-factorization or inverse may be stored in data memory 114. As such, data
processor 110 under the direction of instruction set #6 provide apparatus 100 with
means for generating matrix
Mj and its LU-factorization or inverse. Because of their similar operations, Instruction
Set #6 may share or duplicate portions of Instruction Set #4. Instruction Set #7 directs
the data processor 110 to generate, for one or more additional time moments j ≠1,
a vector
Nj as a function of at least Δγ
j, Δϕj , and the LU-factorization or matrix
Mj or the matrix inverse of matrix M
j. Exemplary forms of vector
Nj have been provided above. Vector
Nj may be stored in data memory 114. As such, data processor 110 under the direction
of instruction set #7 provide apparatus 100 with means for generating an vector
Nj, which is an estimate of the floating ambiguities. Because of their similar operations,
Instruction Set #7 may share or duplicate portions of Instruction Set #5.
[0087] Instruction Set #8 directs the data processor 110 to report vector
Nj as having estimates of the floating ambiguities, and to repeat Instruction Sets #6
and #7 if vector does not have sufficient (or desired) accuracy, or if it is desired
to keep the process going even through sufficient accuracy has been reached. The resulting
estimates provided by vector N may be outputted on keyboard/display 115, or may be
provided to the more general process through data portal 120 or by other transfer
means (such as by memory 114 if data processor 110 is also used to implement the more
general process).
[0088] Give the detailed description of the present Specification, it is well within the
ability of one skilled in the GPS art to construct all of the above Instruction Sets
without undue experimentation, and a detailed code listing thereof is not needed for
one of ordinary skill in the art to make and use the present invention.
Methods of LU-factorization of Matrix M
First method
[0089] We now discuss methods of LU-factorization for matrix
M. The factorization methods may be used in any of the above steps or computer instruction
sets where an LU-factorization is generated or where an inverse matrix is generated,
such as in step (5A) described above, and also used in step (5B) to construct an inverse
matrix for
M, although such is computationally costly. In one approach of LU-factorization, the
matrix
Mk-1 from the previous iteration is retained for the current iteration, and
GT Pk G from the current iteration is added to it to form the matrix
Mk for the current iteration of step (5B). Then, any LU-factorization method may be
used to find a lower triangular matrix
Lk and an upper triangular matrix
Uk which satisfies
Mk = Lk Uk . Since
Mk is symmetric positive definite, the Cholesky method may be used. This method has
good numerical stability, and generates upper triangular matrix
Uk such that it equals the transpose of lower triangular matrix.
Lk: Uk = LkT. With this factorization,
Mk = Lk LkT. The standard Cholesky method requires a square-root operation for each row of the
matrix (n rows requires
n square-root operations). Such operations may be difficult or time consuming to perform
on mid-range processor chips. A modification of the Cholesky method developed by Wilkinson
and Reinsch may be used to avoid these square-root operations. In this method, the
factorization
of Mk = L̃DL̃T is used, where D is a diagonal matrix. We refer readers who are not familiar with
this area of the art to the following references for further information:
- 1. Kendall E. Atkinson, An Introduction to Numerical Analysis, publisher: John Wiley
& Sons, 1978, pages 450-454;
- 2. J. Wilkinson and C. Reinsch, Linear Algebra, Handbook for Automatic Computation, Vol.
2, publisher: Springer-Verlag, New York, 1971, pages 10-30;
- 3. Gene Golub and Charles Van Loan, Matrix Computations, publisher: The Johns Hopkins
University Press, Baltimore, Maryland, pages 81-86.
The above described main instruction sets that generate LU factorizations of matrix
M can be constructed to include instructions that direct data processor 110 to carry
out the above forms of Cholesky factorization of matrix M under this first method.
The combination of these instructions and data processor 110 provides apparatus 100
with means for performing the Cholesky factorizations.
Second method.
[0090] Instead of using the modified Cholesky method, the following method developed by
the inventors may be used. The inventors currently prefer this method. Given that
we have generated the previous factorization
Mk-1 = Lk-1 Lk-1T, we generate a factorization
Tk TkT for the quantitiy
GT Pk G as follows:
Tk TkT = GT Pk G. Later, we will describe how this factorization
Tk TkT may be generated. Using
Tk TkT = GT Pk G, the factorization
Lk LkTof Mk may be written as:

It is known in the matrix computation art that the product of two
n x
n matrices
X and
Y is equal to the sum of the outer products of the columns of these matrices, as specified
below:

where {
x1,
x2 , ...,
xn } are the columns of matrix
X, and where {
y1,
y2, ...,
yn } are the columns of matrix
Y. The inventors have applied this general knowledge to their development of the invention
to recognize that

where {
tk,1,
tk,2,...,
tk,n} are the columns of matrix
Tk. Each outer product

is an n
x n matrix of rank one. It is known from the article entitled "
Methods for Modifying Matrix Factorizations" by P.E. Gill, G.H. Golub, W. Murray,
and M.A. Saunders (Mathematics of Computation, Vol. 28, No. 126, April 1974, pp. 505-535) that when a rank-one matrix of the form
z zT is added to a symmetric positive definite matrix
A, a previously computed Cholesky factorization of matrix
A may be modified with a relatively few number of computations (much less than the
number of computations need to generate a factorization of
A+
z zT). The inventors have further recognized that performing
n such rank-one modifications on the previous factorization
Lk-1 Lk-1T for
Mk-1 using

for
s = 1 to
s = n would also require less computations and would have better accuracy that a new factorization
for
Mk.
[0091] Let us illustrate this approach by first defining a set of intermediate factorization
matrices
L̃1 , L̃2, ...,
L̃n , each of which has the same dimensions as
Lk-1 and
Lk. We now go through a sequence of
n rank-one modifications which will sequentially generate the matrices
L̃1 through
L̃n, with the last matrix
L̃n being in a form which is substantially equal to the desired factorization
Lk. The first rank-one modification starts with any of the matrices

Without loss of generality, we will start with s=1 in order to simplify the presentation.
We then write:

which can be factored as:

where vectors c
1 and
tk,1 are related to one another as follows:
Lk-1 Tc
1 =
tk,1. Vector c
1 is readily obtained from vector
tk,1 with a forward substitution process with the previously computed matrix
Lk-1, since
Lk-1 is lower triangular. Then, the above reference by Gill,
et al. teaches how to readily obtain a Cholesky factorization of (I +

), which we denote here as

The reader is referred to that reference, as well any other references teaching such
factorizations, for the implementation details. From this it can be seen that the
form of equation (35) becomes:

and thus
L̃1= Lk-1 L1 . The multiplication of two lower triangular matrices is relatively easy to perform
and computationally inexpensive.
[0092] We now perform the second rank-one modification using rank-one modification the matrix

in a similar manner by writing:

which can be factored as:

where vector c
2 is generated from
tk,2 by forward substitution according to:
L̃1 c
2 =
tk,2. A Cholesky factorization of

is then obtained, which we denote here as

Thus,
L̃2=
L̃1 L2 . The recursion process continues in this manner until
L̃n is computed. The following recursion sequence can be used:
- (1) Allocate matrices L̃0, L̃1,L̃2, ..., L̃n, and L1 , L̃2, ..., Ln , and vectors c1,c2, ..., cn.
- (2) Set an index j =1, and set L0 = Lk-1.
- (3) Repeat the following steps (4) - (7) n times:
- (4) Generate vector cj from vector tk,j by forward substitution according to:

- (5) Generate matrix Lj as a Cholesky factorization of the quantity

- (6) Generate matrix L̃j as the matrix multiplication of L̃j-1 and L̃j :

- (7) Increment index j.
- (8) Provide L̃ as Lk.
Third method.
[0093] Close examination of the second method shows that the following more compact recursion
sequence may be used:
- (1) Allocate matrices L̃ and L and a vectors c.
- (2) Set an index j =1, and set L̃ = Lk-1.
- (3) Repeat the following steps (4) - (7) n times:
- (4) Generate vector c from tk,j by forward substitution according to: L̃ cj = tk,j.
- (5) Generate matrix L as a Cholesky factorization of the quantity (I + ccT).
- (6) Generate the matrix multiplication product L̃ L, and store the result as L̃ (e.g., overwrite the storage location of L̃ with the product L̃ L ).
- (7) Increment index j.
- (8) Provide L̃ as Lk.
The above-described
n sequential rank-one modifications require approximately half as many operations as
direct re-factorization. In addition, low rank modifications to a matrix factorization
are generally more numerically stable than direct re-factorization.
[0094] The previously-described main instruction sets that generate LU factorizations of
matrix
M can be constructed to include instructions that direct data processor 110 to carry
out the above forms steps of factorizing matrix
M under the above second and third methods. Specifically, there would be a first subset
of instructions that direct the data processor to generate an LU-factorization of
matrix
Mj-1 in a form equivalent to
Lj-1 Lj-1T wherein
Lj-1 is a low-triangular matrix and
Lj-1T is the transpose of
Lj-1. In addition, there would be a second subset of instructions that direct the data
processor to generate a factorization of
GT Pj G in a form equivalent to
Tj TjT =
GT Pj G, where
TjT is the transpose of
Tj (examplary methods for this are described below). There would also be a third subset
of instructions that direct the data processor to generate an LU-factorization of
matrix M
j in a form equivalent to
Lj LjT from a plurality
n of rank-one modifications of matrix
Lj-1, as described above, each rank-one modification being based on a respective column
of matrix
Tj, where n is the number of rows in matrix
Mj. The combination of these subsets of instructions and data processor 110 provides
apparatus 100 with means for performing the above tasks.
Generation of matrix Tk
[0095] The last two factorization methods requires finding
Tk TkT =
GT Pk G so that the column vectors
tk,s may be used. One can use the Cholesky factorization method to generate
Tk since
GTPk G is symmetric positive definite (we call this the first method of generating matrix
Tk). The above second subset of instructions be constructed to include further instructions
that direct data processor 110 to carry out the any form of Cholesky factorization
of
GT Pk G.to generate
Tk,. The combination of these further instructions and data processor 110 provides apparatus
100 with means for generate matrix
Tj from a Cholesky factorization of
GT Pj G. However, the inventors have developed the following more efficient second method
of generation of matrix
Tk. It must be noted that this second method of generation of matrix
Tk is applicable if the penalty parameter
q related to the constant distance constraints defined by equation (11), and appearing
starting with the Equation (27), is set to zero. In other words, the second method
of generating matrix T
k described below is applicable if the constant distant constraints are not used.
The second method of generating matrix Tk
[0096] The second method is based on a novel block Householder transformation of the matrix
GT Pk G which the inventors have developed. This method is based on constraining the weighting
matrices
Rγ and
Rϕ to the following forms that are based on a common weighing matrix
W:

where σ
γ and σ
ϕ are scalar parameters selected by the user, and where

is either the L1-band wavelength or the L2-band wavelength of the GPS system. If
all the wavelengths in Λ are the same, the above forms reduce to:

[0097] With
W, σ
γ σ
ϕ,
Rγ and
Rϕ selected, the following steps are employed to generate matrix
Tk
- 1. Generate a scalar b in a form equivalent to:

= (in the case of dual band measurements

- 2. Generate a matrix H̃ in a form equivalent to H̃ = W1/2Hk.
- 3. Generate a Householder matrix SHH for matrix H̃.
- 4. Generate matrix Tk in a form equivalent to:

or in the case of dual band measurements:

where sub-matrixces A11, A21, and A22 are as follows:


and

[0098] The derivation of this method is explained in Appendix A.
[0099] The above second subset of instructions be constructed to include further instructions
that direct data processor 110 to carry out the above four general step under this
second method of generating matrix
Tk. The combination of these further instructions and data processor 110 provides apparatus
100 with means for generate matrix
Tj .
[0100] While the present invention has been particularly described with respect to the illustrated
embodiments, it will be appreciated that various alterations, modifications and adaptations
may be made based on the present disclosure, and are intended to be within the scope
of the present invention. While the invention has been described in connection with
what is presently considered to be the most practical and preferred embodiments, it
is to be understood that the present invention is not limited to the disclosed embodiments
but, on the contrary, is intended to cover various modifications and equivalent arrangements
included within the scope of the appended claims.
APPENDIX A - Derivation of the Second Method of Generating Matrix T.
[0101] To simplify the presentation of this derivation, we take the case of where the measurements
are provided in only one GPS frequency band (e.g., L1-band). Generalization to two-band
data and multiband data (GLONASS) is straight-forward matter. First, let us relate
the range weighting matrix (
Rγ)
-1 and the phase weighting matrix (
Rϕ)
-1 to a common weight matrix
W and two scalar parameters
σγ and
σϕ as follows:

where
W is a diagonal positive definite
n ×
n matrix. We now want to look at the block factorization of the component

which is part of

To simplify the presentation, we are going to omit the time-moment subscript "
k" and the pseudorange superscript "γ" from, our notation for

and simply use the notation

in the following discussion. With the above, we can write the matrix component

as follows:

With the condition that the measurement data is within one signal band, all of the
wavelengths are the same (for the purposes of determining the floating ambiguity),
and the diagonal wavelength matrix
Λ may be replaced by the identity matrix
I multiplied by the scalar wavelength value λ:
Λ = λ
I This leads to the simplification:

[0102] The quantity

may be represented a single scalar value

and the above may be further simplified as:

[0103] The matrix
W is diagonal positive definite so we can write
W =
W1/2 W1/2. Then we have

[0104] Denoting the matrix product
W 1/2H more simply as
H̃ (i.e., W1/2H =
H̃), the above form can be rewritten as:

[0105] We now generate reduced forms for
H̃ and
H̃T . We apply the Householder transformation to matrix
H̃T, which is indicated by Householder matrix
SHH:

where matrix
V is a lower diagonal 4 x 4 matrix. Matrix
S is an. n x n matrix, and is an orthogonal (so that
SHHSHHT=
In) since it is a Householder matrix. Multiplying both sides of the above equation by
SHHT, and using the fact that
SHHSHHT =
In , we can find that:

[0106] Then, by the transpose rule, we can find
H̃ =
SHHṼT. We now substitute these reduced forms for
H̃ and
HT in the prior equation for
GTPG, and perform the following sequence of substitutions, expansions, and regrouping:

[0107] Finally, we obtain

[0108] In the case when we use both GPS and GLONASS measurements, take matrices (
Rγ)
-1 and (
Rϕ)
-1 in the form

where
λ is the GPS wave length, then all the above reasoning hold including the formula for
T . However the value

is close to 1 (but always less than 1), so

is a small value, the operation of taking a square root does not reduce accuracy.
[0109] This method of generating the matrix
T may be extended to L1 and L2 band measurements. Let

where
λ1 and
λ2 are the wavelengths of GPS L1 and L2 bands, respectively, and W is the weighing matrix,
as above. Then

Matrix
Q thus takes the form

so that

and

where
b is defined as

Note that in this case the matrix
G takes the form

[0110] As in the case of L1, measurements, denote

and, implementing Householder transformation:
H̃TSHH=Ṽ = [V | O4×(n-4)] that is

we obtain:

[0111] Matrix
K has the following structure:

[0112] The Cholesky factorization of matrix
K: K =
K̃K̃T may be obtained using finite formula:

[0113] Thus, for matrix
T, where
GPGT =
TTT , we may write

where sub-matrixces
A11,
A21, and
A22 are as follows:

and

1. A method of estimating a set of floating ambiguities associated with a set of phase
measurements of a plurality
n of satellite carrier signals made by a first navigation receiver (B) and a second
navigation receiver (R) separated by a distance, wherein a baseline vector (
xo,
yo,
zo) relates the position of the second receiver to the first receiver, each satellite
carrier signal being transmitted by a satellite and having a wavelength, wherein each
receiver has a time clock for referencing its measurements and wherein any difference
between the time clocks may be represented by an offset, said method receiving (71),
for a plurality of two or more time moments j, the following inputs:
a vector

representative of a plurality of pseudo-ranges measured by the first navigation receiver
(B) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of pseudo-ranges measured by the second navigation
receiver (R) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of estimated distances between the satellites and the
first navigation receiver (B),
a vector

representative of a plurality of estimated distances between the satellites and the
second navigation receiver (R),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the first navigation receiver (B),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the second navigation receiver (R),
a geometric Jacobian matrix

whose matrix elements are representative of the changes in the distances between
the satellites and one of the receivers that would be caused by changes in that receiver's
position and time clock offset, said method characterized by:
(a) generating (72), for each time moment j, a vector Δγj of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

(b) generating (73), for each time moment j, a vector Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ-1 is a diagonal matrix comprising the inverse wavelengths of the satellites;
(c) generating (74), for time moment j = 1, an LU-factorization of a matrix M1 or a matrix inverse of matrix M1, the matrix M1 being a function of at least Λ-1 and

(d) generating (75), for time moment j = 1, a vector N1 as a function of at least Δγj , Δϕj, and the LU-factorization of matrix M1 or the matrix inverse of matrix M1;
(e) generating (76), for an additional time moment j ≠ 1, an LU-factorization of a
matrix Mj or a matrix inverse of matrix Mj, the matrix Mj being a function of at least Λ-1 ,

and an instance of matrix M generated for a different time moment;
(f) generating (77), for an additional time moment j ≠ 1, a vector Nj as a function of at least Δγj , Δϕj , and the LU-factorization or matrix Mj or the matrix inverse of matrix Mj, the vector Nj having estimates of the floating ambiguities; and
(g) determining (78) if Nj has sufficient accuracy, wherein steps (e) and (f) are
repeated if Nj does not have sufficient accuracy.
2. The method of Claim 1 wherein step (c) comprises generating an LU-factorization for
a matrix comprising a form equivalent to
(GTP1G), where:
• the matrix G has 2n rows, n columns, an upper sub-matrix, and a lower sub-matrix, one of the sub-matrices comprises
an n x n zero matrix and the other sub-matrix comprising an n x n identity matrix,
• the matrix GT comprises the transpose matrix of matrix G, and
the matrix P1 has 2n rows, 2n columns, and a form which comprises a matrix equivalent to

where the matrix R1 is a weighting matrix, where the matrix R1-1 comprises an inverse of matrix R1, where the matrix Q1 has an upper sub-matrix and a lower sub-matrix, one of the sub-matrices of Q1 comprising matrix

and the other of the sub-matrices of Q1 comprising the matrix product

and wherein the matrix Q1T comprises the transpose of matrix Q1, and where the quantity qSk is a zero matrix when the distance
between the first and second navigation receivers is unconstrained and where q may
be a non-zero weighting parameter and Sk may be a non-zero matrix when the distance between the first and second navigation
receivers is constrained.
3. The method of Claim 2 wherein step (d) comprises the step of generating vector
N1 to comprise a vector having a form equivalent to

where the matrix
M1-1 comprises an inverse of matrix of matrix
M1, and where the vector
µ1 comprises the vector [
Δγ1,
Δϕ1 ]
T, and where the quantity q
gk is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and
gk may be a non-zero vector when the distance between the first and second navigation
receivers is constrained.
4. The method of Claim 1 wherein step (e) comprises generating an LU-factorization for
a matrix comprising a form equivalent to
Mj =
M j-1 +
GTPjG , where:
• Mj-1 comprises the matrix M1 of step (c) when j = 2 and comprises the matrix Mj of step (e) for the j-1 time moment when j > 2,
• the matrix G has 2n rows, n columns, an upper sub-matrix, and a lower sub-matrix, one of the sub-matrices comprising
an n x n zero matrix and the other sub-matrix comprising an n x n identity matrix,
• the matrix GT comprises the transpose matrix of matrix G, and
• the matrix Pj has 2n rows, 2n columns, and a form which comprise a matrix equivalent to

where the matrix Rj is a weighting matrix, where the matrix Rj-1 comprises an inverse of matrix Rj, where the matrix Qj has an upper sub-matrix and a lower sub-matrix, one of the sub-matrices of Qj comprising matrix

and the other of the sub-matrices of Qj comprising the matrix product

and wherein the matrix QjT comprises the transpose of matrix Qj, and where the quantity qSj is a zero matrix when the distance between the first and second navigation receivers
is unconstrained and where q may be a non-zero weighting parameter and Sj may be a non-zero matrix when the distance between the first and second navigation
receivers is constrained.
5. The method of Claim 4 wherein step (f) comprises the step of generating vector
Nj to comprise a vector having a form equivalent to

where the matrix
Mj-1 comprises an inverse of matrix of matrix
Mj, where the vector
µj, comprises the vector [
Δγj,
Δϕj ]
T, and where the vector
Nj-1 comprises the vector
N1 generated by step (d) when j = 2 and comprises the vector
Nj-1 generated by step (f) for the
j-1 time moment when j > 2, and where the quantity q
gj is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and
gj may be a non-zero vector when the distance between the first and second navigation
receivers is constrained.
6. The method of claim 3 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein step (c) generates matrix
S1 in a form equivalent to:

where
r1 is a vector comprising estimates of the three coordinates of the baseline vector
for the time moment j=1 and a zero as fourth component, where
r1T is the vector transpose of
r1, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein step (d) generates vector
g1 for the time moment j=1 in a form equivalent to:

where:
7. The method of Claim 3 wherein weighting matrix R1 comprises an identity matrix multiplied by a scalar quantity.
8. The method of claim 5 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein step (e) generates matrix
Sj in a form equivalent to:

where
rj is a vector comprising estimates of the three coordinates of the baseline vector
for the j-th time moment and a zero as fourth vector component, where
rjT is the vector transpose of
rj, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein step (f) generates vector
gj for the j-th time moment in a form equivalent to:

where:
9. The method of Claim 5 wherein the weighting matrix Rj comprises an identity matrix multiplied by a scalar quantity for at least one time
moment j.
10. The method of Claim 4 wherein the generation of the LU-factorization in step (e) comprises
the steps of:
(g) generating an LU-factorization of matrix Mj-1 in a form equivalent to Lj-1 Lj-1T wherein Lj-1 is a low-triangular matrix and Lj-1T is the transpose of Lj-1;
(h) generating a factorization of GT Pj G in a form equivalent to Tj TjT = GT Pj G, where TjT is the transpose of Tj;
(i) generating an LU-factorization of matrix Mj in a form equivalent to Lj LjT from a plurality n of rank-one modifications of matrix Lj-1, each rank-one modification being based on a respective column of matrix Tj, where n is the number of rows in matrix Mj .
11. The method of Claim 10 wherein step (h) generates matrix Tj from a Cholesky factorization of GT Pj G.
12. The method of Claim 10 wherein weighting matrix
Rj has a form equivalent to:

where
Rγ and
Rϕ are weighting matrices; wherein
Rγ and
Rϕ are related to a common weighting matrix
W and scaling parameters σ
γ and σ
ϕ as follows

and

wherein step (h) of generating matrix
Tj comprises the steps of:
generating a scalar b in a form equivalent to:

where λGPS is the wavelength of the satellite signals,
generating a matrix H̃ in a form equivalent to

= generating a Householder matrix SHH for matrix H̃ , and
generating matrix Tj in a form equivalent to:

13. The method of Claim 10 wherein weighting matrix
Rj is applied to a case where there is a first group of satellite signals having carrier
signals in a first wavelength band and a second group of satellite signals having
a carrier signals in a second wavelength band, the weighting frequency having a form
equivalent to:

where
Rγ and
Rϕ are weighting matrices; wherein
Rγ and
Rϕ are related to a common weighting matrix
W, the carrier wavelengths of the first group of signals as represented by matrix
Λ(1), the carrier wavelengths of the second group of signals as represented by matrix
Λ(2), the center wavelength of the first band as represented by
λ1 the center wavelength of the first band as represented by
λ2 and scaling parameters
σγ and
σϕ, as follows:

where

wherein step (h) of generating matrix
Tj comprises the steps of:
generating a
scalar b in a form equivalent to:

where
λ1 is the wavelength of a first group of satellite signals and
λ2 is the wavelength of a second group of satellite signals,
generating a matrix
H̃ in a form equivalent to

generating a Householder matrix
SHH for matrix
H̃, and generating matrix
Tj in a form equivalent to:

where sub-matrixces
A11,
A21, and
A22 are as follows:

and
14. The method of Claim 4 wherein step (d) comprises generating a vector B1 to comprise a vector having a form equivalent to GT P1 µ1+qg1, where the vector µ1 comprises the vector [Δγ1, Δϕ1]T, and where the quantity qgj is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and gj may be a non-zero vector when the distance between the first and second navigation
receivers is constrained; and
wherein step (f) further comprises generating, for each time moment j ≠ 1, a vector Bj to comprise a matrix having a form equivalent to Bj-1 + GT Pjµj +qgj, where the vector µj comprises the vector [Δγj, Δϕj]T, and where the vector Bj-1 is the vector B1 generated by step (d) when j = 2 and comprises the vector generated by step (f) for
the j-1 time moment when j > 2, and where the quantity qgj is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and gj may be a non-zero vector when the distance between the first and second navigation
receivers is constrained; and
wherein step (f) further comprises generating vector Nj to comprise a vector having a form equivalent to Nj = [Mj]-1 Bj, where the matrix Mj-1 comprises an inverse of matrix of matrix Mj.
15. The method of claim 14 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein step (c) generates matrix
S1 in a form equivalent to:

where
r1 is a vector comprising estimates of the three coordinates of the baseline vector
for the time moment j=1 and a zero as fourth component, where
r1T is the vector transpose of
r1, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein step (d) generates vector
g1 for the time moment j=1 in a form equivalent to:

where:
16. The method of claim 14 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein step (e) generates matrix
Sj in a form equivalent to:

where
rj is a vector comprising estimates of the three coordinates of the baseline vector
for the j-th time moment and a zero as fourth vector component, where
rjT is the vector transpose of
rj, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein step (f) generates vector
gj for the j-th time moment in a form equivalent to:

where:
17. The method of Claim 14 wherein the weighting matrix Rj comprises an identity matrix multiplied by a scalar quantity for at least one time
moment j.
18. A method of estimating a set of floating ambiguities associated with a set of phase
measurements of a plurality
n of satellite carrier signals made by a first navigation receiver (B) and a second
navigation receiver (R), wherein a baseline vector (
xo, yo, zo) relates the position of the second receiver to the first receiver, each satellite
carrier signal being transmitted by a satellite and having a wavelength, wherein each
receiver has a time clock for referencing its measurements and wherein any difference
between the time clocks may be represented by an offset, said method receiving (41),
for a plurality of two or more time moments
j, the following inputs for each time moment
j:
a vector

representative of a plurality of pseudo-ranges measured by the first navigation receiver
(B) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of pseudo-ranges measured by the second navigation
receiver (R) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of estimated distances between the satellites and the
first navigation receiver (B),
a vector

representative of a plurality of estimated distances between the satellites and the
second navigation receiver (R),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the first navigation receiver (B),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the second navigation receiver (R),
a geometric Jacobian matrix

whose matrix elements are representative of the changes in the distances between
the satellites and one of the receivers that would be caused by changes in that receiver's
position and time clock offset, said method characterised by:
(a) generating (42), for each time moment j, a vector Δγj of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

said step generating a set of range residuals Δγk, k=1, .., j;
(b) generating (43), for each time moment j, a vector Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ-1 is a diagonal matrix comprising the inverse wavelengths of the satellites, said step
generating a set of phase residuals Δϕk k=1, .., j;
(c) generating (44) an LU-factorization of a matrix M or a matrix inverse of matrix
M, the matrix M being a function of at least Λ-1 and

for index k of

covering at least two of the time moments j ;
(d) generating (45) a vector N of estimated floating ambiguities as a function of at least the set of range residuals
Δγk, the set of phase residuals Δ ϕk, and the LU-factorization of matrix M or the matrix inverse of matrix M.
19. The method of Claim 18 wherein step (c) comprises generating matrix
M in a form equivalent to the summation

where:
• the matrix G has 2n rows, n columns, an upper sub-matrix, and a lower sub-matrix, one of the sub-matrices comprises
an n x n zero matrix and the other sub-matrix comprising an n x n identity matrix,
• the matrix GT comprises the transpose matrix of matrix G, and
• the matrix Pk has 2n rows, 2n columns, and a form which comprises a matrix equivalent to

where the matrix Rk is a weighting matrix, where the matrix Rk-1 comprises an inverse of matrix Rk, where the matrix Qk has an upper sub-matrix and a lower sub-matrix, one of the sub-matrices of Qk comprising matrix

and the other of the sub-matrices of Qk comprising the matrix product

and wherein the matrix QkT comprises the transpose of matrix Qk, and where the quantity qSk is a zero matrix when the distance between the first and second navigation receivers
is unconstrained and where q may be a non-zero weighting parameter and Sk may be a non-zero matrix when the distance between the first and second navigation
receivers is constrained.
20. The method of Claim 19 wherein step (d) comprises generating matrix
N in a form equivalent to:

where the matrix
M-1 comprises an inverse of matrix of matrix
M, where the vector
µk comprises the vector [
Δγk,
Δϕk ]
T, and where the quantity q
gk is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and
gk may be a non-zero vector when the distance between the first and second navigation
receivers is constrained.
21. The method of claim 20 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein step (c) generates matrix
Sk for the k-th time moment in a form equivalent to:

where
rk is a vector comprising estimates of the three coordinates of the baseline vector
at the k-th time moment, and a zero as fourth component, where
rkT is the vector transpose of
rk, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein step (d) generates vector
gk for the k-th time moment in a form equivalent to:

where:
22. The method of Claim 19 wherein at least one of the weighting matrices Rk comprises an identity matrix multiplied by a scalar quantity.
23. A computer program product for directing a data processor to perform the method of
any preceding claim.
24. An apparatus (100) for estimating a set of floating ambiguities associated with a
set of phase measurements of a plurality
n of satellite carrier signals made by a first navigation receiver (B) and a second
navigation receiver (R) separated by a distance, wherein a baseline vector (
xo,yo,zo) relates the position of the second receiver to the first receiver, each satellite
carrier signal being transmitted by a satellite and having a wavelength, wherein each
receiver has a time clock for referencing its measurements and wherein any difference
between the time clocks may be represented by an offset, said apparatus (100) for
receiving (71), for a plurality of two or more time moments
j, the following inputs:
a vector

representative of a plurality of pseudo-ranges measured by the first navigation receiver
(B) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of pseudo-ranges measured by the second navigation
receiver (R) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of estimated distances between the satellites and the
first navigation receiver (B),
a vector

representative of a plurality of estimated distances between the satellites and the
second navigation receiver (R),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the first navigation receiver (B),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the second navigation receiver (R),
a geometric Jacobian matrix

whose matrix elements are representative of the changes in the distances between
the satellites and one of the receivers that would be caused by changes in that receiver's
position and time clock offset,
said apparatus (100) characterised by:
(a) means for generating (72), for each time moment j, a vector Δγj a plurality of range residuals of pseudo-range measurements made by the first and
second navigation receivers in the form of:

(b) means for generating (73), for each time moment j, a vector Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ-1 is a diagonal matrix comprising the inverse wavelengths of the satellites;
(c) means for generating (74), for time moment j = 1, an LU-factorization of a matrix
M1 or a matrix inverse of matrix M1, the matrix M1 being a function of at least Λ-1 and

(d) means for generating (75), for time moment j = 1, a vector N1 as a function of at least Δγ1, Δϕ1, and the LU-factorization of matrix M1 or the matrix inverse of matrix M1;
(e) means for generating (76), for an additional time moment j ≠ 1, an LU-factorization
of a matrix Mj or a matrix inverse of matrix Mj, the matrix Mj being a function of at least Λ-1 and

(f) means for generating (77), for an additional time moment j ≠ 1, a vector Nj as a function of at least Δγj, Δϕj, and the LU-factorization or matrix Mj or the matrix inverse of matrix Mj, the vector Nj having estimates of the floating ambiguities; and
(g) means for determining (78) if Nj has sufficient accuracy, wherein steps (e) and
(f) are repeated if Nj does not have sufficient accuracy.
25. The apparatus of Claim 24 wherein means (c) comprises means for generating an LU-factorization
for a matrix comprising a form equivalent to (
GTP1G), where:
• the matrix G has 2n rows, n columns, an upper sub-matrix, and a lower sub-matrix, one of the sub-matrices comprises
an n x n zero matrix and the other sub-matrix comprising an n x n identity matrix,
• the matrix GT comprises the transpose matrix of matrix G, and
• the matrix P1 has 2n rows, 2n columns, and a form which comprises a matrix equivalent to

where the matrix R1 is a weighting matrix, where the matrix R1-1 comprises an inverse of matrix R1 where the matrix Q1has an upper sub-matrix and a lower sub-matrix, one of the sub-matrices of Q1 comprising matrix

and the other of the sub-matrices of Q1 comprising the matrix product

and wherein the matrix Q1T comprises the transpose of matrix Q1, and where the quantity qSk is a zero matrix when the distance between the first and second navigation receivers
is unconstrained and where q may be a non-zero weighting parameter and Sk may be a non-zero matrix when the distance between the first and second navigation
receivers is constrained.
26. The apparatus of Claim 25 wherein means (d) comprises means for generating vector
N1 to comprise a vector having a form equivalent to

where the matrix
M1-1 comprises an inverse of matrix of matrix
M1, and where the vector
µ1 comprises the vector [
Δγ1,
Δϕ1]
T, and where the quantity q
gk is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and
gk may be a non-zero vector when the distance between the first and second navigation
receivers is constrained.
27. The apparatus of Claim 24 wherein means (e) comprises means for generating an LU-factorization
for a matrix comprising a form equivalent to

where:
• Mj-1 comprises the matrix M1 of generated by means (c) when j = 2 and comprises the matrix Mj generated by means (e) for the j-1 time moment when j > 2,
• the matrix G has 2n rows, n columns, an upper sub-matrix, and a lower sub-matrix, one of the sub-matrices comprising
an n x n zero matrix and the other sub-matrix comprising an n x n identity matrix,
• the matrix GT comprises the transpose matrix of matrix G, and
• the matrix Pj has 2n rows, 2n columns, and a form which comprise a matrix equivalent to

where the matrix Rj is a weighting matrix, where the matrix Rj-1 comprises an inverse of matrix Rj, where the matrix Qj has an upper sub-matrix and a lower sub-matrix, one of the sub-matrices of Qj comprising matrix

and the other of the sub-matrices of Qj comprising the matrix product

and wherein the matrix QjT comprises the transpose of matrix Qj, and where the quantity qSj is a zero matrix when the distance between the first and second navigation receivers
is unconstrained and where q may be a non-zero weighting parameter and Sj may be a non-zero matrix when the distance between the first and second navigation
receivers is constrained.
28. The apparatus of Claim 27 wherein means (f) comprises means for generating vector
Nj to comprise a vector having a form equivalent to

where the matrix

comprises an inverse of matrix of matrix
Mj, where the vector
µj comprises the vector [
Δγj, Δϕj]
T, and where the vector
Nj-1 comprises the vector
N1 generated by means (d) when j = 2 and comprises the vector
Nj-1 generated by means (f) for the
j-1 time moment when j > 2, and where the quantity q
gj is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and
gj may be a non-zero vector when the distance between the first and second navigation
receivers is constrained.
29. The apparatus of claim 26 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein means (c) comprises means for generating matrix
S1 in a form equivalent to:

where
r1 is a vector comprising estimates of the three coordinates of the baseline vector
for the time moment j=1 and a zero as fourth component, where
r1T is the vector transpose of
r1, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein means (d) comprises means for generating vector
g1 for the time moment j=1 in a form equivalent to:

where:
30. The apparatus of Claim 28 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein means (e) comprises means for generating matrix
Sj in a form equivalent to:

where
rj is a vector comprising estimates of the three coordinates of the baseline vector
for the j-th time moment and a zero as fourth vector component, where
rjT is the vector transpose of
rj, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros, and where
O3x1 is a column vector of three zeros; and
wherein means (f) comprises means for generating vector
gj for the j-th time moment in a form equivalent to:

where:
31. The apparatus of Claim 27 wherein means (e) for generating the LU-factorization of
Mj comprises:
(g) means for generating an LU-factorization of matrix Mj-1 in a form equivalent to Lj-1 Lj-1T wherein Lj-1 is a low-triangular matrix and Lj-1T is the transpose of Lj-1;
(h) means for generating a factorization of GT Pj G in a form equivalent to

where

is the transpose of Tj; and
(i) means for generating an LU-factorization of matrix Mj in a form equivalent to

from a plurality n of rank-one modifications of matrix Lj-1, each rank-one modification being based on a respective column of matrix Tj, where n is the number of rows in matrix Mj.
32. The apparatus of Claim 31 wherein means (h) generates matrix Tj from a Cholesky factorization of GT Pj G.
33. The apparatus of Claim 31 wherein weighting matrix
Rj has a form equivalent to:

where
Rγ and
Rϕ are weighting matrices; wherein
Rγ and
Rϕ are related to a common weighting matrix
W and scaling parameters
σγ and
σϕ as follows

and

wherein means (h) of generating matrix
Tj comprises:
means for generating a scalar b in a form equivalent to:

where

is the wavelength of the satellite signals,
means for generating a matrix H̃ in a form equivalent to

means for generating a Householder matrix SHH for matrix H̃, and
means for generating matrix Tj in a form equivalent to:

34. The apparatus of Claim 31 wherein weighting matrix
Rj is applied to a case where there is a first group of satellite signals having carrier
signals in a first wavelength band and a second group of satellite signals having
a carrier signals in a second wavelength band, the weighting frequency having a form
equivalent to:

where
Rγ and
Rϕ are weighting matrices; wherein
Rγ and
Rϕ are related to a common weighting matrix
W, the carrier wavelengths of the first group of signals as represented by matrix
Λ(1), the carrier wavelengths of the second group of signals as represented by matrix
Λ(2), the center wavelength of the first band as represented by
λ1 the center wavelength of the first band as represented by
λ2, and scaling parameters
σγ and
σϕ, as follows:

where

wherein step (h) of generating matrix
Tj comprises the steps of:
generating a scalar b in a form equivalent to:

where λ1 is the wavelength of a first group of satellite signals and λ2 is the wavelength of a second group of satellite signals,
generating a matrix H̃ in a form equivalent to

generating a Householder matrix SHH for matrix H̃, and
generating matrix Tj in a form equivalent to:

where sub-matrixces A11, A21, and A22 are as follows:


and

35. An apparatus (100) for estimating a set of floating ambiguities associated with a
set of phase measurements of a plurality
n of satellite carrier signals made by a first navigation receiver (B) and a second
navigation receiver (R) separated by a distance, wherein a baseline vector (
xo,yo,zo) relates the position of the second receiver to the first receiver, each satellite
carrier signal being transmitted by a satellite and having a wavelength, wherein each
receiver has a time clock for referencing its measurements and wherein any difference
between the time clocks may be represented by an offset, said apparatus (100) for
receiving (41), for a plurality of two or more time moments
j, the following inputs:
a vector

representative of a plurality of pseudo-ranges measured by the first navigation receiver
(B) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of pseudo-ranges measured by the second navigation
receiver (R) and corresponding to the plurality of satellite carrier signals,
a vector

representative of a plurality of estimated distances between the satellites and the
first navigation receiver (B),
a vector

representative of a plurality of estimated distances between the satellites and the
second navigation receiver (R),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the first navigation receiver (B),
a vector

representative of a plurality of full phase measurements of the satellite carrier
signals measured by the second navigation receiver (R),
a geometric Jacobian matrix

whose matrix elements are representative of the changes in the distances between
the satellites and one of the receivers that would be caused by changes in that receiver's
position and time clock offset,
said apparatus (100) characterised by:
(a) means for generating (42), for each time moment j, a vector Δγj of a plurality of range residuals of pseudo-range measurements made by the first
and second navigation receivers in the form of:

said means generating a set of range residuals Δγk, k=1, .., j;
(b) means for generating (43), for each time moment j, a vector Δϕj of a plurality of phase residuals of full phase measurements made by the first and
second navigation receivers in the form of:

where Λ-1 is a diagonal matrix comprising the inverse wavelengths of the satellites, said means
generating a set of phase residuals Δϕk, k=1, .., j;
(c) means for generating (44) an LU-factorization of a matrix M or a matrix inverse of matrix M, the matrix M being a function of at least Λ-1 and

for index k of

covering at least two of the time moments j ;
(d) means for generating (45) a vector N of estimated floating ambiguities as a function of at least the set of range residuals
Δγk, the set of phase residuals Δϕk, and the LU-factorization of matrix M or the matrix inverse of matrix M.
36. The apparatus of Claim 35 wherein means (c) comprises means for generating matrix
M in a form equivalent to the summation

where:
• the matrix G has 2n rows, n columns, an upper sub-matrix, and a lower sub-matrix, one of the sub-matrices comprises
an n x n zero matrix and the other sub-matrix comprising an n x n identity matrix,
• the matrix GT comprises the transpose matrix of matrix G, and
• the matrix Pk has 2n rows, 2n columns, and a form which comprises a matrix equivalent to

where the matrix Rk is a weighting matrix, where the matrix Rk-1 comprises an inverse of matrix Rk, where the matrix Qk has an upper sub-matrix and a lower sub-matrix, one of the sub-matrices of Qk comprising matrix

and the other of the sub-matlices of Qk comprising the matrix product

and wherein the matrix QkT comprises the transpose of matrix Qk, and where the quantity qSk is a zero matrix when the distance between the first and second navigation receivers
is unconstrained and where q may be a non-zero weighting parameter and Sk may be a non-zero matrix when the distance between the first and second navigation
receivers is constrained.
37. The apparatus of Claim 36 wherein means (d) comprises means for generating matrix
N in a form equivalent to:

where the matrix
M-1 comprises an inverse of matrix of matrix
M, where the vector
µk comprises the vector [
Δγk ,
Δϕk]
T, and where the quantity q
gk is a zero vector when the distance between the first and second navigation receivers
is unconstrained and where q may be non-zero and
gk may be a non-zero vector when the distance between the first and second navigation
receivers is constrained.
38. The apparatus of claim 37 wherein the distance between the first and second navigation
receivers is constrained to a distance L
RB, wherein means (c) comprises means for generating matrix
Sk for the k-th time moment in a form equivalent to:

where
rk is a vector comprising estimates of the three coordinates of the baseline vector
at the k-th time moment, and a zero as fourth component, where
rkT is the vector transpose of
rk, where
I3 is the 3-by-3 identity matrix, where
O1x3 is a row vector of three zeros,
and where
O3x1 is a column vector of three zeros; and
wherein means (d) generates vector
gk for the k-th time moment in a form equivalent to:

where:
1. Verfahren zum Schätzen eines Satzes von gleitenden Mehrdeutigkeiten, die einem Satz
von Phasenmessungen einer Mehrzahl n von Satellitenträgersignalen zugeordnet sind,
die von einem ersten Navigationsempfänger (B) und einem zweiten Navigationsempfänger
(R) erzeugt werden, die durch einen Abstand voneinander getrennt sind, wobei ein Grundlinienvektor
(x
0, y
0, z
0) auf die Position des zweiten Empfängers zum ersten Empfänger bezogen ist, wobei
jedes Satellitenträgersignal von einem Satelliten gesendet wird und eine Wellenlänge
aufweist, wobei jeder Empfänger einen Zeittakt zum Referenzieren seiner Messungen
aufweist, und wobei eine etwaige Differenz zwischen den Zeittakten durch einen Versatz
repräsentiert werden kann, wobei das Verfahren, für eine Mehrzahl von zwei oder mehr
Zeitmomenten j, die folgenden Eingaben empfängt (71):
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem ersten Navigationsempfänger
(B) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem zweiten Navigationsempfänger
(R) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem ersten
Navigationsempfänger (B) repräsentiert,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem zweiten
Navigationsempfänger (R) repräsentiert,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem ersten Navigationsempfänger (B) gemessen werden,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem zweiten Navigationsempfänger (R) gemessen werden,
eine geometrische Jacobi-Matrix

deren Matrixelemente die Änderungen in den Abständen zwischen dem Satelliten und
einem der Empfänger repräsentieren, die durch Änderungen der Position des Empfängers
und dem Zeittaktversatz verursacht würden, wobei das Verfahren gekennzeichnet ist durch:
(a) Erzeugen (72), für jeden Zeitmoment j, eines Vektors Δγj einer Mehrzahl von Bereichsresten von Pseudobereichmessungen, die von den ersten
und zweiten Navigationsempfängern vorgenommen werden, in der Form von:

(b) Erzeugen (73), für jeden Zeitmoment j eines Vektors Δϕj einer Mehrzahl von Phasenresten von Vollphasenmessungen, die von den ersten und zweiten
Navigationsempfängern vorgenommen werden, in der Form von:

wobei Λ-1 eine diagonale Matrix ist, die zwei inverse Wellenlängen der Satelliten aufweist;
(c) Erzeugen (74), für den Zeitmoment j = 1, eine LU-Faktorisierung einer Matrix M1 oder einer Inversmatrix der Matrix M1, wobei die Matrix M1 eine Funktion von zumindest Λ-1 and

ist;
(d) Erzeugen (75), für den Zeitmoment j = 1, eines Vektors N1 als Funktion von zumindest Δγ1, Δϕ1, und der LU-Faktorisierung der Matrix M1 oder der Inversmatrix der Matrix M1;
(e) Erzeugen (76), für einen zusätzlichen Zeitmoment j ≠ 1, einer LU-Faktorisierung
der Matrix Mj oder einer Inversmatrix der Matrix Mf, wobei die Matrix Mj eine Funktion von zumindest Λ-1,

und eines Exemplars der Matrix M, die für ein anderes Zeitmoment erzeugt wurde, ist;
(f) Erzeugen (77), für einen zusätzlichen Zeitmoment j ≠ 1, eines Vektors Nj als Funktion von zumindest Δγj, Δϕj, der LU-Faktorisierung oder Matrix Mj oder der Inversmatrix der Matrix Mj, wobei der Vektor Nj Schätzungen der gleitenden Mehrdeutigkeiten aufweist; und
(g) Bestimmen (78), ob Nj eine ausreichende Genauigkeit hat, wobei die Schritte (e) und (f) wiederholt werden,
wenn Nj keine ausreichende Genauigkeit hat.
2. Das Verfahren von Anspruch 1, wobei Schritt (c) aufweist, eine LU-Faktorisierung für
eine Matrix zu erzeugen, die eine Form äquivalent zu (
GTP1G) hat, wobei:
• die Matrix G 2n Zeilen , n Spalten, eine obere Submatrix und eine untere Submatrix aufweist, wobei
eine der Submatrices eine n x n Nullmatrix aufweist und die andere Submatrix eine
n x n Identitätsmatrix aufweist,
• die Matrix GT die transponierte Matrix der Matrix G aufweist, und
die Matrix P1 2n Zeilen, 2n Spalten, und eine Form aufweist, die eine Matrix aufweist, äquivalent zu

wobei die Matrix R1 eine Gewichtungsmatrix ist, wobei die Matrix R1-1 eine Inversmatrix R1 aufweist, wobei die Matrix Q1 eine obere Submatrix und eine untere Submatrix aufweist, wobei eine der Submatrices
von Q1 die Matrix

aufweist und die andere der Submatrices von Q1 das Matrixprodukt

aufweist, und wobei die Matrix Q1T die Transponierte der Matrix Q1 aufweist, und wobei die Größe qSk eine Nullmatrix ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q ein Nicht-null-Gewichtungsparameter sein kann, und Sk eine Nicht-null-Matrix sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängern beschränkt ist.
3. Das Verfahren von Anspruch 2, wobei Schritt (d) den Schritt des Erzeugen vom Vektor
N1 aufweist, dass er einen Vektor aufweist, der eine Form äquivalent zu

hat, wobei die Matrix
M1-1 eine Inversmatrix der Matrix
M1 aufweist, und wobei der Vektor
µ1 den Vektor [
Δγ1,
Δϕ1]
T aufweist, und wobei die Größe q
gk ein Null-Vektor ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und
gk ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
beschränkt ist.
4. Das Verfahren von Anspruch 1, wobei Schritt (e) aufweist, eine LU-Faktorisierung für
eine Matrix zu erzeugen, die eine Form ä quivalent zu
Mj =
Mj-1 +
GTPjG aufweist, wobei:
• Mj-1 die Matrix M1 von Schritt (c) aufweist, wenn j = 2, und die Matrix Mj von Schritt (e) für das j-1 Zeitmoment aufweist, wenn j > 2,
• die Matrix G 2n Zeilen, n Spalten, eine obere Sub-matrix, und eine untere Submatrix aufweist, wobei
eine der Sub-Matrices eine n x n Null-Matrix aufweist und die andere Submatrix eine
n x n Identitäts-matrix aufweist,
• die Matrix GT die transponierte Matrix der Matrix G aufweist, und
• die Matrix Pj 2n Zeilen, 2n Spalten und eine Form aufweist, welche eine Matrix äquivalent zu

aufweist, wobei die Matrix Rj eine Gewichtungsmatrix ist, wobei die Matrix

eine Inverse der Matrix Rj aufweist, wobei die Matrix Qj eine obere Sub-Matrix und eine untere Sub-Matrix aufweist, wobei eine der Sub-Matrices
von Qj eine Matrix

aufweist und die andere der Sub-Matrices von Qj das Matrixprodukt

aufweist und wobei die Matrix

die Transponierte der Matrix Qj aufweist, und wobei die Größe qSj eine Null-Matrix ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
unbeschränkt ist und wobei q ein Nicht-null-Gewichtungsparameter sein kann und Sj eine Nicht-null-Matrix sein kann, wenn der Abstand zwischen ersten und zweiten Navigationsempfiängern
beschränkt ist.
5. Das Verfahren von Anspruch 4, wobei Schritt (f) den Schritt des Ereugens eines Vektors
Nj aufweist, so dass er einen Vektor aufweist, der eine Form äquivalent zu

hat, wobei die Matrix

eine Inversmatrix der Matrix
Mj aufweist, und wobei der Vektor
µj den Vektor [
Δϕj, Δϕj]
T aufweist, und wobei der Vektor
Nj-1 den in Schritt (d) erzeugten Vektor
N1 aufweist, wenn j = 2, und den in Schritt (f) für den
j-1 Zeitmoment erzeugten Vektor in
Nj-1, aufweist, wenn j > 2, und wobei die Größe q
gj ein Null-Vektor ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und
gj ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
beschränkt ist.
6. Das Verfahren von Anspruch 3, wobei der Abstand zwischen ersten und zweiten Navigationsempfängern
auf einen Abstand L
RB beschränkt ist, wobei der Schritt (c) die Matrix
S1 in einer Form erzeugt, die äquivalent ist zu:

wobei r
1 ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors für den
Zeitmoment j=1 und eine Null als vierte Komponente aufweist, wobei r
1T die Vektortransponierte von r
1 ist, wobei I
3 is the 3-x-3-Identitätsmatrix ist, wobei O
1x3 ein Zeilenvektor von drei Nullen ist und wobei O
3x1 ein Spaltenvektor von drei Nullen ist; und wobei Schritt (d) den Vektor
g1 für das Zeitmoment j=1 in einer Form erzeugt, die äquivalent ist zu:

wobei
7. Das Verfahren von Anspruch 3, wobei die Gewichtungsmatrix R1 eine Identitätsmatrix aufweist, die mit einer skalaren Größe multipliziert wird.
8. Das Verfahren von Anspruch 5, wobei der Abstand zwischen den ersten und zweiten Navigationsempfängern
auf einen Abstand L
RB beschränkt ist, wobei Schritt (e) die Matrix
Sj in einer Form erzeugt, die äquivalent ist zu:

wobei r
j ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors für den
j-ten Zeitmoment und eine Null als vierte Vektorkomponente aufweist, wobei

die Vektortransponierte von r
j ist, und wobei I
3 die 3x3-Identitätsmatrix ist, wobei O
1x3 ein Zeilenvektor von drei Nullen ist und wobei O
3x1 ein Spaltenvektor von drei Nullen ist; und
wobei Schritt (f) den Vektor g
j für den j-te Zeitmoment in einer Form erzeugt, die äquivalent ist zu:

wobei:
9. Das Verfahren von Anspruch 5, wobei die Gewichtungsmatrix Rj eine Identitätsmatrix aufweist, die mit einer skalaren Größe für zumindest einen
Zeitmoment j multipliziert ist.
10. Das Verfahren von Anspruch 4, wobei die Erzeugung der LU-Faktorisierung in Schritt
(e) die Schritte aufweist:
(g) Erzeugen einer LU-Faktorisierung der Matrix Mj-1 in einer Form äquivalent zu Lj-1 Lj-1T, wobei Lj-1 eine niedrige dreieckige Matrix ist und Lj-1T die Transponierte von Lj-1 ist;
(h) Erzeugen einer Faktorisierung von GTPjG in einer Form äquivalent zu

wobei

die Transponierte von Tj ist;
(i) Erzeugen einer LU-Faktorisierung der Matrix Mj in einer Form äquivalent zu

aus einer Mehrzahl n von erstrangigen Modifizierungen der Matrix Lj-1, wobei jede erstrangige Modifizierung auf einer erstrangigen Spalte der Matrix Tj beruht, wobei n die Anzahl von Zeilen in der Matrix Mj ist.
11. Das Verfahren von Anspruch 10, wobei Schritt (h) die Matrix Tj aus einer Cholesky-Faktorisierung von GTPjG erzeugt.
12. Das Verfahren von Anspruch 10, wobei die Gewichtungsmatrix
Rj eine Form aufweist, die äquivalent ist zu:

wobei
Rγ und
Rφ Gewichtungsmatrices sind, wobei
Rγ und
Rϕ auf eine gemeinsame Gewichtungsmatrix W und Skalierungsparameter
σγ und
σϕ wie folgt

und

bezogen sind,
wobei Schritt (h) der Erzeugung der Matrix T
j die Schritte aufweist:
Erzeugen eines Skalars b in einer Form äquivalent zu:

wobei λGPS die Wellenlänge der Satellitensignale ist,
Erzeugen einer Matrix H̃ in einer Form äquivalent zu

Erzeugen einer Haushältermatrix SHH für die Matrix H̃, und
Erzeugen der Matrix Tj in einer Form äquivalent zu:

13. Das Verfahren von Anspruch 10, wobei die Gewichtungsmatrix
Rj auf einen Fall angewendet wird, wo es eine erste Gruppe von Satellitensignalen, die
Trägersignale in einem ersten Wellenlängenband aufweisen, und eine zweite Gruppe von
Satellitensignalen, die Trägersignale in einem zweiten Wellenlängenband aufweisen,
gibt, wobei die Gewichtungfrequenz eine Form aufweist, die äquivalent ist zu:

wobei
Rγ und
Rϕ Gewichtungsmatrices sind; wobei
Rγ und
Rϕ auf eine gemeinsame Gewichtungsmatrix W, wobei die Trägerwellenlängen der ersten
Signalgruppe repräsentiert durch die Matrix Λ
(1), die Trägerwellenlängen der zweiten Signalgruppe repräsentiert durch die Matrix Λ
(2), die Mittelwellenlänge des ersten Bands repräsentiert durch λ
1 die Mittelwellenlänge des ersten Bands repräsentiert durch λ
2, und Skalierungsparameter
σγ und
σϕ bezogen sind, wie folgt:

wobei Schritt (h) vom Erzeugen der Matrix T
j die Schritte aufweist: Erzeugen eines Skalars b in einer Form äquivalent zu:

wobei λ
1 die Wellenlänge einer ersten Gruppe von Satellitensignalen ist und λ
2 die Wellenlänge einer zweiten Gruppen von Satelliten-signalen ist,
Erzeugen einer Matrix
H̃ in einer form äquivalent zu
H̃ =
W1/2 Hγj, Erzeugen einer Haushältermatrix
SHH für die Matrix
H̃, und Erzeugen der Matrix
TJ in einer Form äquivalent zu:

wobei die Sub-Matrixces A11, A21, und A22 wie folgt sind:

und
14. Das Verfahren von Anspruch 4, wobei Schritt (d) das Erzeugen eines Vektors
B1 aufweist, der einen Vektor aufweist, der eine Form äquivalent zu
GT P1 µ1+1+q
g1 hat, wobei der Vektor
µ1 den Vektor [
Δγ
1,
Δϕ1]
T aufweist, und wobei die Größe q
gj ein Null-Vektor ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und
gj ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängern beschränkt ist; und
wobei Schritt (f) ferner aufweist, für jeden Zeitmoment
j ≠ 1, einen Vektor
Bj zu erzeugen, so dass er eine Matrix mit einer Form äquivalent zu
BJ-1 +
GT Pjµj +q
gj hat, wobei der Vektor
µj den Vektor [Δ
γj, Δϕj]
T aufweist und wobei der Vektor
Bj-1 der in Schritt (d) erzeugte Vektor
B1 ist, wenn j = 2, und den in Schritt (f) für den
j-1 Zeitmoment erzeugten Vektor aufweist, wenn j > 2, und wobei die Größe q
gj ein Null-Vektor ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und
gj ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängern beschränkt ist; und
wobei Schritt (f) ferner aufweist, Vektor N
j zu erzeugen, so dass er einen Vektor mit einer Form äquivalent zu N
j = [M
j]
-1 B
j, aufweist, wobei die Matrix

eine Inversmatrix der Matrix M
j aufweist.
15. Das Verfahren von Anspruch 14, wobei der Abstand zwischen den ersten und zweiten Navigationsempfängern
auf einen Abstand L
RB beschränkt ist, und wobei der Schritt (c) eine Matrix
S1 in einer Form äquivalent zu erzeugt:

wobei r
1 ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors für den
Zeitmoment j=1 und eine Null als vierte Komponente aufweist, wobei r
1T die Vektortransponierte von r
1 ist, und wobei I
3 die 3x3-Identitätsmatrix ist, wobei O
1x3 ein Zeilenvektor von drei Nullen ist, und wobei O
3x1 ein Spaltenvektor von drei Nullen ist; und
wobei Schritt (d) den Vektor g
1 für den Zeitmoment j=1 in einer Form erzeugt, die äquivalent ist zu:

wobei:
16. Das Verfahren von Anspruch 14, wobei der Abstand zwischen den ersten und zweiten Navigationsempfängern
auf einen Abstand L
RB beschränkt ist, wobei der Schritt (e) die Matrix S
j in einer Form äquivalent zu erzeugt:

wobei r
j ein Vektor ist, der Schätzungen der drei Koordinate des Grund-linienvektors für den
j-ten Zeitmoment und eine Null als vierte Vektorkomponente aufweist, wobei r
jT die Vektortransponierte von r
j ist, wobei l
3 die 3x3-Identitätsmatrix ist, wobei O
1x3 ein Zeilenvektor von drei Nullen ist und wobei O
3x1 ein Spaltenvektor von drei Nullen ist; und
wobei Schritt (f) den Vektor g
j für den j-ten Zeitmoment in einer Form erzeugt, die äquivalent ist zu:

wobei:
17. Das Verfahren von Anspruch 14, wobei die Gewichtungsmatrix Rj eine Identitätsmatrix aufweist, die mit einer skalaren Größe für zumindest einen
Zeitmoment j multipliziert wird.
18. Verfahren zum Schätzen eines Satzes von gleitenden Mehrdeutigkeiten, die einem Satz
von Phasenmessungen einer Mehrzahl n von Satellitenträgersignalen zugeordnet sind,
die von einem ersten Navigationsempfänger (B) erzeugt werden, wobei ein Grundlinienvektor
(x°, y°, z°) auf die Position des zweiten Empfängers zum ersten Empfänger bezogen
ist, wobei jedes Satellitenträgersignal von einem Satelliten gesendet wird und eine
Wellenlänge aufweist, wobei jeder Empfänger einen Zeittakt zum Referenzieren seiner
Messungen aufweist, und wobei eine etwaige Differenz zwischen den Zeittakten durch
einen Versatz repräsentiert werden kann, wobei das Verfahren, für eine Mehrzahl von
zwei oder mehr Zeitmomenten j, die folgenden Eingaben für jeden Zeitmoment j empfängt
(41):
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem ersten Navigationsempfänger
(B) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem zweiten Navigationsempfänger
(R) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem ersten
Navigationsempfänger (B) repräsentiert,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem zweiten
Navigationsempfänger (R) repräsentiert,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem ersten Navigationsempfänger (B) gemessen werden,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,die
von dem zweiten Navigationsempfänger (R) gemessen werden,
eine geometrische Jacobi-Matrix

deren Matrixelemente die Änderungen in den Abständen zwischen dem Satelliten und
einem der Empfänger repräsentieren, die durch Änderungen der Position des Empfängers
und dem Zeittaktversatz verursacht würden, wobei das Verfahren gekennzeichnet ist durch:
(a) Erzeugen (42), für jeden Zeitmoment j, eines Vektors Δγj einer Mehrzahl von Bereichsresten von Pseudobereichmessungen, die von den ersten
und zweiten Navigationsempfängern durchgeführt werden, in der Form von:

wobei der Schritt einen Satz von Bereichsresten Δγk , k=1, .., j, erzeugt;
(b) Erzeugen (43), für jeden Zeitmoment j, eines Vektors Δϕj einer Mehrzahl von Phasenresten von Vollphasenmessungen, die von den ersten und zweiten
Navigationsempfängern vorgenommen werden, in der Form von:

wobei Λ-1 eine diagonale Matrix ist, die zwei inverse Wellenlängen der Satelliten aufweist,
wo-bei der Schritt einen Satz von Phasenresten Δϕk , k=1, .., j; erzeugt;
(c) Erzeugen (44) einer LU-Faktorisierung einer Matrix M oder einer Inversmatrix der Matrix M, wobei die Matrix M eine Funktion von zumindest Λ-1 and

ist, für Index k von

die zumindest zwei der Zeitmomente j abdeckt
(d) Erzeugen (45) eines Vektors N von geschätzten gleitenden Mehrdeutigkeiten als Funktion von zumindest dem Satz von
Bereichsresten Δγk, des Satzes von Phasenresten Δϕk, und der LU-Faktorisierung der Matrix M oder der Inversmatrix der Matrix M.
19. Das Verfahren von Anspruch 18, wobei der Schritt (c) aufweist, die Matrix
M in einer Form zu erzeugen, die äquivalent ist zu der Summierung

wobei die Matrix
G 2n Zeilen, n Spalten, eine obere Sub-Matrix, und eine untere Sub-Matrix aufweist,
wobei eine der Sub-Matrices eine n xn-Nullmatrix aufweist und die andere Sub-Matrix
eine nxn-Identitätsmatrix aufweist,
• die Matrix GT die transponierte Matrix der Matrix G aufweist, und
• die Matrix Pk 2n Zeilen, 2n Spalten und eine Form aufweist, die eine Matrix aufweist, die äquivalent
ist zu

wobei die Matrix Rk eine Gewichtungsmatrix ist, wobei die Matrix Rk-1 eine Inverse der Matrix Rk aufweist, wobei die Matrix Qk eine obere Sub-Matrix und eine untere Sub-Matrix aufweist, wobei eine der Submatrices
von Qk die Matrix Hkγ aufweist und die andere der Sub-Matrices von Qk das Matrixprodukt Λ-1Hkγ aufweist, und wobei die Matrix QkT die Transponierte der Matrix Qk aufweist, und wobei die Größe qSk eine Null-Matrix ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q ein Nicht-null-Gewichtungsparameter sein kann und Sk eine Nicht-null-Matrix sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängern beschränkt ist.
20. Das Verfahren von Anspruch 19, wobei der Schritt (d) aufweist, die Matrix N in einer
Form zu erzeugen, die äquivalent ist zu:

wobei die Matrix
M-1 eine Inversmatrix der Matrix
M aufweist, wobei der Vektor
µk den Vektor [Δγ
k,
Δϕk]
T aufweist und wobei die Größe q
gk ein Null-Vektor ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und
gk ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängem beschränkt ist.
21. Das Verfahren von Anspruch 20, wobei der Abstand zwischen den ersten und zweiten Navigationsempfängern
auf einen Abstand L
RB beschränkt ist, wobei der Schritt (c) die Matrix
Sk für den k-ten Zeitmoment in einer Form zu erzeugen, die äquivalent ist zu:

wobei r
k ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors zum k-ten
Zeitmoment sowie eine Null als vierte Komponente aufweist, wobei
rkT die Vektortransponierte von
rk ist, wobei
I3 die 3x3-Identitätsmatrix ist, wobei
O1x3 ein Zeilenvektor von drei Nullen ist, und wobei
O3x1 ein Spaltenvektor von drei Nullen ist; und wobei Schritt (d) einen Vektor g
k für den k-ten Zeitmoment in einer Form erzeugt, die äquivalent ist zu:

wobei:
22. Das Verfahren von Anspruch 19, wobei zumindest eine der Gewichtungsmatrices Rk eine Identitätsmatrix aufweist, die mit einer skalaren Größe multipliziert wird.
23. Computerprogrammprodukt zum Anweisen eines Datenprozessors, das Verfahren von einem
vorangehenden Anspruch durchzuführen.
24. Vorrichtung (100) zum Schätzen eines Satzes von gleitenden Mehrdeutigkeiten, die einem
Satz von Phasenmessungen einer Mehrzahl n von Satellitenträgersignalen zugeordnet
sind, die von einem ersten Navigationsempfänger (B) und einem zweiten Navigationsempfänger
(R) erzeugt werden, die durch einen Abstand voneinander getrennt sind, wobei ein Grundlinienvektor
(x°, y°, z°) auf die Position des zweiten Empfängers zum ersten Empfänger bezogen
ist, wobei jedes Satellitenträgersignal von einem Satelliten gesendet wird und eine
Wellenlänge aufweist, wobei jeder Empfänger einen Zeittakt zum Referenzieren seiner
Messungen aufweist, und wobei eine etwaige Differenz zwischen den Zeittakten durch
einen Versatz repräsentiert werden kann, wobei die Vorrichtung (100) dazu dient, für
eine Mehrzahl von zwei oder mehr Zeitmomenten j, die folgenden Eingaben zu empfangen
(71):
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem ersten Navigationsempfänger
(B) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem zweiten Navigationsempfänger
(R) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem ersten
Navigationsempfänger (B) repräsentiert,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem zweiten
Navigationsempfänger (R) repräsentiert,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem ersten Navigationsempfänger (B) gemessen werden,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem zweiten Navigationsempfänger (R) gemessen werden,
eine geometrische Jacobi-Matrix

deren Matrixelemente die Änderungen in den Abständen zwischen dem Satelliten und
einem der Empfänger repräsentieren, die durch Änderungen der Position des Empfängers
und dem Zeittaktversatz verursacht würden,
wobei die Vorrichtung (100)
gekennzeichnet ist durch:
(a) Mittel zum Erzeugen (72), für jeden Zeitmoment j, eines Vektors Δγj einer Mehrzahl von Bereichsresten von Pseudobereichmessungen, die von den ersten
und zweiten Navigationsempfängern vorgenommen werden, in der Form von:

(b) Mittel zum Erzeugen (73), für jeden Zeitmoment j, eines Vektors Δϕj einer Mehrzahl von Phasenresten von Vollphasenmessungen, die von den ersten und zweiten
Navigationsempfängern vorgenommen werden, in der Form von:

wobei Λ-1 eine diagonale Matrix ist, die zwei inverse Wellenlängen der Satelliten aufweist;
(c) Mittel zum Erzeugen (74), für den Zeitmoment j = 1, eine LU-Faktorisierung einer
Matrix M1 oder einer Inversmatrix der Matrix M1, wobei die Matrix M1 eine Funktion von zumindest Λ-1 and H1γ ist;
(d) Mittel zum Erzeugen (75), für den Zeitmoment j = 1, eines Vektors N1 als Funktion von zumindest Δγ1, Δϕ1, und der LU-Faktorisierung der Matrix M1 oder der Inversmatrix der Matrix M1;
(e) Mittel zum Erzeugen (76), für einen zusätzlichen Zeitmoment j ≠ 1, einer LU-Faktorisierung
der Matrix Mj oder einer Inversmatrix der Matrix Mj, wobei die Matrix Mj eine Funktion von zumindest Λ-1,

ist;
(f) Mittel zum Erzeugen (77), für einen zusätzlichen Zeitmoment j ≠ 1, eines Vektors
Nj als Funktion von zumindest Δγj, Δϕj, der LU-Faktorisierung oder Matrix Mj oder der Inversmatrix der Matrix Mj, wobei der Vektor Nj Schätzungen der gleitenden Mehrdeutigkeiten aufweist; und
(g) Mittel zum Bestimmen (78), ob Nj eine ausreichende Genauigkeit hat, wobei die Schritte (e) und (f) wiederholt werden,
wenn Nj keine ausreichende Genauigkeit hat.
25. Die Vorrichtung von Anspruch 24, wobei das Mittel (c) ein Mittel zum Erzeugen einer
LU-Faktorisierung für eine Matrix aufweist, die eine Form äquivalent zu (
GTP1G) aufweist, wobei:
• die Matrix G 2n Zeilen, n Spalten, eine obere Sub-matrix, und eine untere Submatrix aufweist, wobei eine der
Sub-Matrices eine n x n Null-Matrix aufweist und die andere Submatrix eine n x n Identitätsmatrix
aufweist,
• die Matrix GT die transponierte Matrix der Matrix G aufweist, und
• die Matrix Pj 2n Zeilen, 2n Spalten und eine Form aufweist, welche eine Matrix äquivalent zu

aufweist, wobei die Matrix Rj eine Gewichtungsmatrix ist, wobei die Matrix R1-1 eine Inverse der Matrix Rj aufweist, wobei die Matrix Q1 eine obere Sub-Matrix und eine untere Sub-Matrix aufweist, wobei eine der Sub-Matrices
von Q1 eine Matrix H1γ aufweist und die andere der Sub-Matrices von Q1 das Matrixproduct Λ-1Hjγ aufweist und wobei die Matrix QjT die Transponierte der Matrix Qj aufweist, und wobei die Größe qSk eine Null-Matrix ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
unbeschränkt ist und wobei q ein Nicht-null-Gewichtungsparameter sein kann und Sk eine Nicht-null-Matrix sein kann, wenn der Abstand zwischen ersten und zweiten Navigations-empfängern
beschränkt ist.
26. Die Vorrichtung von Anspruch 25, wobei das Mittel (d) ein Mittel aufweist, um den
Vektor
N1 so zu erzeugen, dass er einen Vektor aufweist, der eine Form äquivalent zu

hat, wobei die Matrix
M1-1 eine Inversmatrix der Matrix M
1 aufweist, und wobei der Vektor
µ1, den Vektor [Δγ
1,
Δϕ1]
T aufweist, und wobei die Größe q
gk ein Null-Vektor ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängem
unbeschränkt ist, und wobei q nicht null sein kann und g
k ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
beschränkt ist.
27. Die Vorrichtung von Anspruch 24 wobei das Mittel (e) ein Mittel aufweist, um eine
LU-Faktorisierung für eine Matrix für eine Form zu erzeugen, die äquivalent ist zu

wobei:
• Mj-1 die vom Mittel (c) erzeugte Matrix M1 aufweist, wenn j = 2, und die vom Mittel (e) erzeugte Matrix Mj den j-1 Zeitmoment aufweist, wenn j > 2,
• die Matrix G 2n Zeilen, n Spalten, eine obere Sub-matrix, und eine untere Submatrix aufweist, wobei eine der
Sub-Matrices eine n x n Null-Matrix aufweist und die andere Submatrix eine n x n Identitäts-matrix
aufweist,
• die Matrix GT die transponierte Matrix der Matrix G aufweist, und
• die Matrix Pj 2n Zeilen, 2n Spalten und eine Form aufweist, welche eine Matrix äquivalent zu

aufweist, wobei die Matrix
Rj eine Gewichtungsmatrix ist, wobei die Matrix

eine Inverse der Matrix
Rj aufweist, wobei die Matrix
Qj eine obere Sub-Matrix und eine untere Sub-Matrix aufweist, wobei eine der Sub-Matrices
von
Qj eine Matrix
Hjγ aufweist und die andere der Sub-Matrices von
Qj das Matrixproduct

aufweist und wobei die Matrix
QjT die Transponierte der Matrix
Qj aufweist, und wobei die Größe q
Sj eine Null-Matrix ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
unbeschränkt ist und wobei q ein Nicht-null-Gewichtungsparameter sein kann und
Sj eine Nicht-null-Matrix sein kann, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
beschränkt ist.
28. Die Vorrichtung von Anspruch 27, wobei das Mittel (f) ein Mittel aufweist, um den
Vektor
Nj so zu erzeugen, dass er einen Vektor aufweist, der eine Form äquivalent zu

hat, wobei die Matrix

eine Inversmatrix der Matrix
Mj aufweist, und wobei der Vektor
µj den Vektor [Δ
γj,
Δϕj]
T aufweist, und wobei der Vektor
Nj-1 den in Schritt (d) erzeugten Vektor N
1 aufweist, wenn j = 2, und den durch das Mittel (f) für den
j-1 Zeitmoment erzeugten Vektor in
Nj-1 aufweist, wenn j > 2, und wobei die Größe q
gj ein Null-Vektor ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und g
j ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
beschränkt ist.
29. Die Vorrichtung von Anspruch 26, wobei der Abstand zwischen ersten und zweiten Navigationsempfängern
auf einen Abstand L
RB beschränkt ist, wobei das Mittel (c) die Matrix S
1 in einer Form erzeugt, die äquivalent ist zu:

wobei r
1 ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors für den
Zeitmoment j=1 und eine Null als vierte Komponente aufweist, wobei r
1T die Vektortransponierte von R
1 ist, wobei I
3 is the 3-x-3-Identitätsmatrix ist, wobei O
1x3 ein Zeilenvektor von drei Nullen ist und wobei O
3x1 ein Spaltenvektor von drei Nullen ist (d); und
wobei das Mittel (d) ein Mittel aufweist, um den Vektor g
1 für das Zeitmoment j=1 in einer Form zu erzeugen, die äquivalent ist zu:

wobei
30. Die Vorrichtung von Anspruch 28, wobei der Abstand zwischen den ersten und zweiten
Navigationsempfängern auf einen Abstand L
RB beschränkt ist, wobei das Mittel (e) ein Mittel aufweist, um die Matrix
Sj in einer Form zu erzeugen, die äquivalent ist zu:

wobei
rj ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors für den
j-ten Zeitmoment und eine Null als vierte Vektorkomponente aufweist, wobei r
jT die Vektortransponierte von r
j ist, und wobei I
3 die 3x3-Identitätsmatrix ist, wobei O
1x3 ein Zeilenvektor von drei Nullen ist und wobei O
3x1 ein Spaltenvektor von drei Nullen ist; und
wobei das Mittel (f) ein Mittel aufweist, um den Vektor g
j für den j-te Zeitmoment in einer Form zu erzeugen, die äquivalent ist zu:

wobei:
31. Die Vorrichtung von Anspruch 27, wobei das Mittel (e) zum Erzeugen der LU-Faktorisierung
von
Mj aufweist:
(g) Mittel zum Erzeugen einer LU-Faktorisierung der Matrix Mj-1 in einer Form äquivalent zu Lj-1 Lj-1T, wobei Lj-1 eine niedrige dreieckige Matrix ist und Lj-1T die Transponierte von Lj-1 ist;
(h) Mittel zum Erzeugen einer Faktorisierung von GTPjG in einer Form äquivalent zu TjTjT = GTPjG, wobei TjT die Transponierte von Tj ist;
(i) Mittel zum Erzeugen einer LU-Faktorisierung der Matrix Mj in einer Form äquivalent zu Lj LjT aus einer Mehrzahl n von erstrangigen Modifizierungen der Matrix Lj-1, wobei jede erstrangige Modifizierung auf einer erstrangigen Spalte der Matrix Tj beruht, wobei n die Anzahl von Zeilen in der Matrix Mj ist.
32. Die Vorrichtung von Anspruch 31, wobei das Mittel (h) die Matrix Tj aus einer Cholesky-Faktorisierung von GTPjG erzeugt.
33. Die Vorrichtung von Anspruch 31, wobei die Gewichtungsmatrix
Rj eine Form äquivalent zu:

hat, wobei
Rγ und
Rϕ Gewichtungsmatrices sind,
wobei
Rγ und
Rφ auf eine gemeinsame Gewichtungsmatrix W und Skalierungsparameter σ
γ und
σφ wie folgt

und

bezogen sind, wobei das Mittel (h) der Erzeugung der Matrix T
j aufweist:
Mittel zum Erzeugen eines Skalars b in einer Form äquivalent zu:

wobei λGPS die Wellenlänge der Satellitensignale ist,
Mittel zum Erzeugen einer Matrix H̃ in einer Form äquivalent zu H̃ = W1/2H-γj,
Mittel zum Erzeugen einer hiaushältermatrix SHH für die Matrix H̃, und Mittel zum Erzeugen der Matrix Tj in einer Form äquivalent zu:

34. Die Vorrichtung von Anspruch 31, wobei die Gewichtungsmatrix
Rj auf einen Fall angewendet wird, wo es eine erste Gruppe von Satellitensignalen, die
Trägersignale in einem ersten Wellenlängenband aufweisen, und eine zweite Gruppe von
Satellitensignalen, die Trägersignale in einem zweiten Wellenlängenband aufweise,
gibt, wobei die Gewichtungfrequenz eine Form aufweist, die äquivalent ist zu:

wobei
Rγ und
Rϕ Gewichtungsmatrices sind; wobei
Rγ und
Rϕ auf eine gemeinsame Gewichtungsmatrix W, wobei die Trägerwellenlängen der ersten
Signalgruppe repräsentiert durch die Matrix Λ
(1), die Trägerwellenlängen der zweiten Signalgruppe repräsentiert durch die Matrix Λ
(2), die Mittelwellenlänge des ersten Bands repräsentiert durch λ
1, die Mittelwellenlänge des ersten Bands repräsentiert durch λ
2, und Skalierungsparameter
σγ und
σϕ bezogen sind, wie folgt:

wobei

wobei Schritt (h) zum Erzeugen der Matrix T
j die Schritte aufweist:
Erzeugen eines Skalars b in einer Form äquivalent zu:

wobei λ
1 die Wellenlänge einer ersten Gruppe von Satellitensigna - len ist und λ
2 Wellenlänge einer zweiten Gruppen von Satelliten-signalen ist,
Erzeugen einer Matrix
H̃ in einer form äquivalent zu
H̃ =
W1/2Hγj,
Erzeugen einer Haushältermatrix
SHH für die Matrix
H̃, und
Erzeugen der Matrix
Tj in einer Form äquivalent zu:

wobei die Sub-Matrixces
A11, A21, und
A22 wie folgt sind:

und
35. Vorrichtung (100) zum Schätzen eines Satzes von gleitenden Mehrdeutigkeiten, die einem
Satz von Phasenmessungen einer Mehrzahl n von Satellitenträgersignalen zugeordnet
sind, die von einem ersten Navigationsempfänger (B) und einem zweiten Navigationsempfänger
(R) erzeugt werden, die durch einen Abstand voneinander getrennt sind, wobei ein Grundlinienvektor
(x°, y°, z°) auf die Position des zweiten Empfängers zum ersten Empfänger bezogen
ist, wobei jedes Satellitenträgersignal von einem Satelliten gesendet wird und eine
Wellenlänge aufweist, wobei jeder Empfänger einen Zeittakt zum Referenzieren seiner
Messungen aufweist, und wobei eine etwaige Differenz zwischen den Zeittakten durch
einen Versatz repräsentiert werden kann, wobei die Vorrichtung (100) dazu dient, für
eine Mehrzahl von zwei oder mehr Zeitmomenten j die folgenden Eingaben zu empfangen:
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, die von dem ersten Navigationsempfänger
(B) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von Pseudobereichen repräsentiert, gemessen von dem zweiten Navigationsempfänger
(R) gemessen werden und der Mehrzahl von Satellitenträgersignalen entsprechen,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem ersten
Navigationsempfänger (B) repräsentiert,
einen Vektor

der eine Mehrzahl von geschätzten Abständen zwischen den Satelliten und dem zweiten
Navigationsempfänger (R) repräsentiert,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem ersten Navigationsempfänger (B) gemessen werden,
einen Vektor

der eine Mehrzahl von Vollphasenmessungen der Satellitenträgersignale repräsentiert,
die von dem zweiten Navigati-onsempfänger (R) gemessen werden,
eine geometrische Jacobi-Matrix

deren Matrixelemente die Änderungen in den Abständen zwischen dem Satelliten und
einem der Empfänger repräsentieren, die durch Änderungen der Position des Empfängers
und dem Zeittaktversatz verursacht würden, wobei die Vorrichtung (100) gekennzeichnet ist durch:
(a) Mittel zum Erzeugen (42), für jeden Zeitmoment j, eines Vektors Δγj einer Mehrzahl von Bereichsresten von Pseudobereichmessun-gen, die von den ersten
und zweiten Navigationsempfängern vorgenommen werden, in der Form von:

wobei der Schritt einen Satz von Bereichsresten Δγk , k=1, .., j, erzeugt;
(b) Mittel zum Erzeugen (43), für jeden Zeitmoment j, eines Vektors Δϕj einer Mehrzahl von Phasenresten von Vollphasenmessungen, die von den ersten und zweiten
Navigationsempfängern vorgenommen werden, in der Form von:

wobei Λ-1 eine diagonale Matrix ist, die zwei inverse Wellenlängen von Satelliten aufweist,
wobei das Mittel einen Satz von Phasenresten Δϕk , k=1, .., j; erzeugt;
(c) Mittel zum Erzeugen (44) einer LU-Faktorisierung einer Matrix M oder eine Inversmatrix
der Matrix M, wobei die Matrix M eine Funktion von zumindest Λ-1 and

ist, für Index k von

die zumindest zwei der Zeitmomente j abdeckt;
(d) Mittel zum Erzeugen (45) eines Vektors N von geschätzten gleitenden Mehrdeutigkeiten
als Funktion von zumindest dem Satz von Seu-eichsresten Δγk, des Satzes von Phasenresten Δϕk, und der LU-Faktorisierung der Matrix M oder der Inversmatrix der Matrix M.
36. Die Vorrichtung von Anspruch 35, wobei das Mittel (c) ein Mittel aufweist, um die
Matrix
M in einer Form zu erzeugen, die äquivalent ist zu der Summierung

wobei die Matrix
G 2n Zeilen, n Spalten, eine obere Sub-Matrix, und eine untere Sub-Matrix aufweist,
wobei eine der Sub-Matrices eine nxn-Nullmatrix aufweist und die andere Sub-Matrix
eine nxn-Identitätsmatrix aufweist,
• die Matrix GT die transponierte Matrix der Matrix G aufweist, und
• die Matrix Pk 2n Zeilen, 2n Spalten und eine Form aufweist, die eine Matrix aufweist, die äquivalent
ist zu:

wobei die Matrix Rk eine Gewichtungsmatrix ist, wobei die Matrix Rk-1 eine Inverse der Matrix Rk aufweist, wobei die Matrix Qk eine obere Sub-Matrix und eine untere Sub-Matrix aufweist, wobei eine der Submatrices
von Qk die Matrix Hkγ aufweist und die andere der Sub-Matrices von Qk das Matrixprodukt Λ-1Hkγ aufweist, und wobei die Matrix QkT die Transponierte der Matrix Qk aufweist, und wobei die Größe qSk eine Null-Matrix ist, wenn der Abstand zwischen ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q ein Nicht-null-Gewichtungsparameter sein kann und Sk eine Nicht-null-Matrix sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängern beschränkt ist.
37. Die Vorrichtung von Anspruch 36, wobei das Mittel (d) ein Mittel aufweist, um die
Matrix
N in einer Form zu erzeugen, die äquivalent ist zu:

wobei die Matrix
M-1 eine Inversmatrix der Matrix
M aufweist, wobei der Vektor
µk den Vektor [Δ
γk, Δϕk]
T aufweist und wobei die Größe q
gk ein Null-Vektor ist, wenn der Abstand zwischen den ersten und zweiten Navigationsempfängern
unbeschränkt ist, und wobei q nicht null sein kann und
gk ein Nicht-null-Vektor sein kann, wenn der Abstand zwischen den ersten und zweiten
Navigationsempfängern beschränkt ist.
38. Die Vorrichtung von Anspruch 37, wobei der Abstand zwischen den ersten und zweiten
Navigationsempfängern auf einen Abstand L
RB beschränkt ist, wobei das Mittel (c) die Matrix S
k für den k-ten Zeitmoment in einer Form erzeugt, die äquivalent ist zu:

wobei
rk ein Vektor ist, der Schätzungen der drei Koordinaten des Grundlinienvektors zum k-ten
Zeitmoment sowie eine Null als vierte Komponente aufweist, wobei
rkT die Vektortransponierte von
rk ist, wobei
I3 die 3x3-Identitätsmatrix ist, wobei
O1x3 ein Zeilenvektor von drei Nullen ist, und wobei
O3x1 ein Spaltenvektor von drei Nullen ist; und wobei das Mittel (d) einen Vektor
gk für den k-ten Zeitmoment in einer Form erzeugt, die äquivalent ist zu:

wobei:
1. Procédé d'estimation d'un ensemble d'ambiguïtés flottantes associé à un ensemble de
mesures de phases d'une pluralité n de signaux de porteuse de satellites réalisées
par un premier récepteur de navigation (B) et un deuxième récepteur de navigation
(R) séparés par une distance, où un vecteur de référence (
x0, y0, z0) associe la position du deuxième récepteur au premier récepteur, chaque signal de
porteuse de satellite étant émis par un satellite et ayant une longueur d'onde, où
chaque récepteur a une horloge temporelle pour référencer ses mesures et où un différence
quelconque entre les horloges temporelles peut être représentée par un décalage, ledit
procédé recevant (71), pour une pluralité de deux instants
j ou plus, les entrées suivantes :
un vecteur

représentant une pluralité de pseudo distances mesurées par le premier récepteur
de navigation (B) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de pseudo distances mesurées par le deuxième récepteur
de navigation (R) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de distances estimées entre les satellites et le premier
récepteur de navigation (B),
un vecteur

représentant une pluralité de distances estimées entre les satellites et le deuxième
récepteur de navigation (R),
un vecteur

i représentant une pluralité de mesures de phases totales des signaux de porteuse
de satellites mesurées par le premier récepteur de navigation (B),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le deuxième récepteur de navigation (R),
une matrice Jacobienne géométrique

dont les éléments matriciels représentent les variations des distances entre les
satellites et l'un des récepteurs qui pourraient être provoquées par des variations
de la position de ce récepteur et du décalage d'horloge temporelle, ledit procédé
étant caractérisé par le fait :
(a) de générer (72), pour chaque instant j, un vecteur Δγj d'une pluralité de résidus de distance de mesures de pseudo distance réalisées par
les premier et deuxième récepteurs de navigation sous forme de :

(b) de générer (73), pour chaque instant j, un vecteur Δϕj d'une pluralité de résidus de phase de mesures de phase totales réalisées par les
premier et deuxième récepteurs de navigation sous forme de :

où Λ-1 est une matrice diagonale comprenant les longueurs d'ondes inverses des satellites
;
(c) de générer (74), pour un instant j = 1, une factorisation LU d'une matrice M1 ou d'un inverse de matrice de la matrice M1, la matrice M1 étant une fonction d'au moins Λ-1 et

(d) de générer (75), pour un instant j = 1, un vecteur N1 en tant que fonction d'au moins Δγ1, Δϕ1 et la factorisation LU de la matrice M1 ou de l'inverse de matrice de la matrice M1 ;
(e) de générer (76), pour un instant supplémentaire j ≠ 1, une factorisation LU d'une matrice Mj ou d'un inverse de matrice de la matrice Mj, la matrice Mj étant une fonction d'au moins Λ-1,

et d'une instance de la matrice M générée pour un instant différent ;
(f) de générer (77), pour un instant supplémentaire j ≠ 1, un vecteur Nj en tant que fonction d'au moins Δγj, Δϕj, et la factorisation LU de la matrice Mj ou de l'inverse de matrice de la matrice Mj, le vecteur Nj ayant les estimations des ambiguïtés flottantes ; et
(g) de déterminer (78) si Nj a une précision suffisante, où les étapes (e) et (f) sont répétées si Nj n'a pas une précision suffisante.
2. Procédé de la revendication 1, dans lequel l'étape (c) comprend le fait de générer
une factorisation LU pour une matrice comprenant une forme équivalente à (G
T P
1 G) où :
• la matrice G a 2n lignes, n colonnes, une sous-matrice supérieure et une sous-matrice
inférieure, l'une des sous-matrices comprend une matrice nulle n x n et l'autre sous-matrice
comprenant une matrice identité n x n,
• la matrice GT comprend la matrice transposée de la matrice G, et
la matrice P1 a 2n lignes, 2n colonnes, et une forme qui comprend une matrice équivalente à :

où la matrice R1 est une matrice de pondération, où la matrice R1-1 comprend un inverse de la matrice R1, où la matrice Q1 a une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
de Q1 comprenant une matrice

et l'autre des sous-matrices de Q1 comprenant le produit matriciel

et où la matrice Q1T comprend la transposée de la matrice Q1, et où la quantité qSk est une matrice nulle lorsque la distance entre les premier et deuxième récepteurs
de navigation n'est pas limitée et où q peut être un paramètre de pondération non
nul et Sk peut être une matrice non nulle lorsque la distance entre les premier et deuxième
récepteurs de navigation est limitée.
3. Procédé de la revendication 2, dans lequel l'étape (d) comprend l'étape qui consiste
à générer un vecteur N
1 pour comprendre un vecteur ayant une forme équivalente à :

où la matrice M
1-1 comprend un inverse de matrice de la matrice M
1, et où le vecteur µ
1 comprend le vecteur [
Δγ1,
Δϕ1]
T , et où la quantité qg
k est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et g
k peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée.
4. Procédé de la revendication 1, dans lequel l'étape (e) comprend le fait de générer
une factorisation LU pour une matrice comprenant une forme équivalente à :

où
• Mj-1 comprend la matrice M1 de l'étape (c) lorsque j = 2 et comprend la matrice Mj de l'étape (e) pour l'instant j-1 lorsque j>2,
• la matrice G a 2n lignes, n colonnes, une sous-matrice supérieure et une sous matrice
inférieure, l'une des sous-matrices comprenant une matrice nulle n x n et l'autre
sous-matrice comprenant une matrice identité n × n.
• la matrice GT comprend la matrice transposée de la matrice G, et
• la matrice Pj a 2n lignes, 2n colonnes, et une forme qui comprend une matrice équivalente à :

où la matrice R
j est une matrice de pondération, où la matrice R
j-1 comprend un inverse de la matrice R
j,
où la matrice Q
j a une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
de Q
j comprenant une matrice

et l'autre des sous-matrices de Q
j comprenant le produit matriciel

et où la matrice Q
jT comprend la transposée de la matrice Q
j, et où la quantité
qSj est une matrice nulle lorsque la distance entre les premier et deuxième récepteurs
de navigation n'est pas limitée et où q peut être un paramètre de pondération non
nul et
Sj peut être une matrice non nulle lorsque la distance entre les premier et deuxième
récepteurs de navigation est limitée.
5. Procédé de la revendication 4, dans lequel l'étape (f) comprend l'étape de génération
d'un vecteur N
j pour comprendre un vecteur ayant une forme équivalente à :

où la matrice M
j-1 comprend un inverse de matrice de la matrice M
j, où le vecteur µ
j comprend le vecteur [Δγ
j, Δϕ
j]
T, et où le vecteur
Nj-1 comprend le vecteur N
1 généré par l'étape (d) lorsque j = 2 et comprend le vecteur N
j-1 généré par l'étape (f) pour l'instant
j-1 lorsque j > 2, et où la quantité qg
j est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et g
j peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée.
6. Procédé de la revendication 3, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où l'étape (c) génère une matrice S
1 dans une forme équivalente à :

où r
1 est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
pour l'instant j= 1 et un zéro en tant que quatrième composante, où r
1T est la transposée de vecteur de r
1, où I
3 est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de trois zéros, et où O
3x1 est un vecteur colonne de trois zéros ; et
où l'étape (d) génère un vecteur g
1 pour l'instant j = 1 dans une forme équivalente à :

où :
7. Procédé de la revendication 3, dans lequel la matrice de pondération R1 comprend une matrice identité multipliée par une grandeur scalaire.
8. Procédé de la revendication 5, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où l'étape (e) génère une matrice S
j dans une forme équivalente à :

où r
j est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
pour le
jième instant et un zéro en tant que quatrième composante de vecteur, où r
jT est la transposée de vecteur de r
j, où I
3; est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de 3 zéros, et où O
3x1 est un vecteur colonne de 3 zéros ; et
où l'étape (f) génère un vecteur g
j pour le
jième instant dans une forme équivalente à :

où :
9. Procédé de la revendication 5, dans lequel la matrice de pondération Rj comprend une matrice identité multipliée par une grandeur scalaire pour au moins
un instant j.
10. Procédé de la revendication 4, dans lequel la génération de la factorisation LU dans
l'étape (e) comprend les étapes qui consistent :
(g) à générer une factorisation LU de la matrice Mj-1 dans une forme équivalente à Lj-1 Lj-1T où Lj-1 est une matrice triangulaire inférieure et Lj-1T est la transposée de Lj-1;
(h) à générer une factorisation de GT Pj G dans une forme équivalente à TjTjT = GTPjG, où TjT est la transposée de Tj;
(i) à générer une factorisation LU de la matrice Mj dans une forme équivalente à Lj LjT à partir d'une pluralité n de modifications de rang un de la matrice Lj-1, chaque modification de rang un étant basée sur une colonne respective de la matrice
Tj, où n est le nombre de lignes dans la matrice Mj.
11. Procédé de la revendication 10, dans lequel l'étape (h) génère une matrice Tj à partir d'une factorisation de Cholesky de GTPjG.
12. Procédé de la revendication 10, dans lequel la matrice de pondération R
j a une forme équivalente à :

où R
γ et R
ϕ sont des matrices de pondération ;
où R
γ et R
ϕ sont liées à une matrice de pondération commune W et à des paramètres de mise à l'échelle
σγ et
σϕ comme suit :

et

où l'étape (h) de génération de la matrice T
j comprend les étapes qui consistent :
à générer un scalaire b dans une forme équivalente à :

où
λGPS est la longueur d'onde des signaux de satellites,
à générer une matrice H̃ dans une forme équivalente à

à générer une matrice de Householder S
HH pour la matrice H̃, et
à générer une matrice T
j dans une forme équivalente à :
13. Procédé de la revendication 10, dans lequel la matrice de pondération R
j est appliquée à un cas où il y a un premier groupe de signaux de satellites ayant
des signaux de porteuse dans une première bande de longueurs d'ondes et un deuxième
groupe de signaux de satellites ayant des signaux de porteuse dans une deuxième bande
de longueurs d'ondes, la fréquence de pondération ayant une forme équivalente à :

où R
γ et R
ϕ sont des matrices de pondération ;
où R
γ et R
ϕ sont liées à une matrice de pondération commune W, aux longueurs d'ondes de porteuse
du premier groupe de signaux comme représentées par la matrice Λ
(1), aux longueurs d'ondes de porteuse du deuxième groupe de signaux comme représentées
par la matrice Λ
(2), à la longueur d'onde centrale de la première bande comme représentée par λ
1, à la longueur d'onde centrale de la première bande comme représentée par λ
2, et à des paramètres de mise à l'échelle
σγ et
σϕ comme suit :

où l'étape (h) de génération de la matrice T
j comprend les étapes qui consistent :
à générer un scalaire b dans une forme équivalente à :

où λ1 est la longueur d'onde d'un premier groupe de signaux de satellites et λ2 est la longueur d'onde d'un deuxième groupe de signaux de satellites,
à générer une matrice H̃ dans une forme équivalente à :

à générer une matrice de Householder SHH pour la matrice H̃, et
à générer la matrice Tj dans une forme équivalente à :

où les sous-matrices A11, A21, et A22 sont comme suit :


et

14. Procédé de la revendication 4, dans lequel l'étape (d) comprend le fait de générer
un vecteur B1 pour comprendre un vecteur ayant une forme équivalente à GTP1µ1 +qg1, où le vecteur µ1 comprend le vecteur [Δγ1, Δϕ1]T, et où la quantité qgj est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est limitée pas et où q peut être non nul et gj peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée ; et
où l'étape (f) comprend en outre le fait de générer, pour chaque instant j ≠ 1, un
vecteur Bj pour comprendre une matrice ayant une forme équivalente à Bj-1 + GT Pjµj +qgj, où le vecteur µj comprend le vecteur [Δγj, Δϕj]T, et où le vecteur Bj-1 est le vecteur B1 généré par l'étape (d) lorsque j = 2 et comprend le vecteur généré par l'étape (f)
pour l'instant j-1 lorsque j > 2, et où la quantité qgj est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et gj peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée ; et
où l'étape (f) comprend en outre le fait de générer un vecteur Nj pour comprendre un vecteur ayant une forme équivalente à Nj = [Mj]-1 Bj, où la matrice Mj-1 comprend un inverse de matrice de la matrice Mj.
15. Procédé de la revendication 14, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où l'étape (c) génère une matrice S
1 dans une forme équivalente à :

où r
1 est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
pour l'instant
j = 1 et un zéro en tant que quatrième composante, où r
1T est la transposée de vecteur de r
1, où I
3 est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de trois zéros, et où O
3x1 est un vecteur colonne de trois zéros ; et
où l'étape (d) génère un vecteur g
1 pour l'instant j = 1 dans une forme équivalente à :

où
16. Procédé de la revendication 14, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où l'étape (e) génère une matrice S
j dans une forme équivalente à :

où r
j est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
pour le j
ième instant et un zéro en tant que quatrième composante de vecteur, où r
jT est la transposée de vecteur de r
j, où I
3 est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de 3 zéros, et où O
3x1 est un vecteur colonne de 3 zéros ; et
où l'étape (f) génère un vecteur g
j pour le j
ième instant dans une forme équivalente à :

où
17. Procédé de la revendication 14, dans lequel la matrice de pondération Rj comprend une matrice identité multipliée par une grandeur scalaire pour au moins
un instant j.
18. Procédé d'estimation d'un ensemble d'ambiguïtés flottantes associé à un ensemble de
mesures de phases d'une pluralité n de signaux de porteuse de satellites réalisées
par un premier récepteur de navigation (B) et un deuxième récepteur de navigation
(R), où un vecteur de référence (
x0,
y0, z0) associe la position du deuxième récepteur au premier récepteur, chaque signal de
porteuse de satellite étant émis par un satellite et ayant une longueur d'onde, où
chaque récepteur a une horloge temporelle pour référencer ses mesures et où une différence
quelconque entre les horloges temporelles peut être représentée par un décalage, ledit
procédé recevant (41), pour une pluralité de deux instants
j ou plus, les entrées suivantes pour chaque instant
j :
un vecteur

représentant une pluralité de pseudo distances mesurées par le premier récepteur
de navigation (B) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de pseudo distances mesurées par le deuxième récepteur
de navigation (R) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de distances estimées entre les satellites et le premier
récepteur de navigation (B),
un vecteur

représentant une pluralité de distances estimées entre les satellites et le deuxième
récepteur de navigation (R),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le premier récepteur de navigation (B),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le deuxième récepteur de navigation (R),
une matrice Jacobienne géométrique

dont les éléments matriciels représentent les variations des distances entre les
satellites et l'un des récepteurs qui pourraient être provoquées par des variations
de la position de ce récepteur et du décalage d'horloge temporelle, ledit procédé
étant caractérisé par le fait :
(a) de générer (42), pour chaque instant j, un vecteur Δγj d'une pluralité de résidus de distance de mesures de pseudo distances réalisées par
les premier et deuxième récepteurs de navigation sous forme de :

ladite étape de génération d'un ensemble de résidus de distance Δγk, k = 1, .., j ;
(b) de générer (43), pour chaque instant j, un vecteur Δϕj d'une pluralité de résidus de phase de mesures de phases totales réalisées par les
premier et deuxième récepteurs de navigation sous forme de :

où Λ-1 est une matrice diagonale comprenant les longueurs d'ondes inverses des satellites,
ladite étape de génération d'un ensemble de résidus de phase Δϕk, k = 1, .., j ;
(c) de générer (44) une factorisation LU d'une matrice M ou d'un inverse de matrice
de la matrice M, la matrice M étant une fonction d'au moins Λ-1 et

pour un indice k de

couvrant au moins deux instants parmi les instants j ;
(d) de générer (45) un vecteur N d'ambigüités flottantes estimées en tant que fonction
d'au moins l'ensemble de résidus de distance Δγk, l'ensemble de résidus de phase Δϕk et la factorisation LU de la matrice M ou de l'inverse de matrice de la matrice M
;
19. Procédé de la revendication 18, dans lequel l'étape (c) comprend le fait de générer
une matrice M dans une forme équivalente à la sommation

où
• la matrice G a 2n lignes, n colonnes, une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
comprend une matrice nulle n × n et l'autre sous-matrice comprenant une matrice identité n × n,
• la matrice GT comprend la matrice transposée de la matrice G, et
• la matrice Pk a 2n lignes, 2n colonnes, et une forme qui comprend une matrice équivalente à :

où la matrice R
k est une matrice de pondération, où la matrice R
k-1 comprend un inverse de la matrice R
k, où la matrice Q
k a une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
de Q
k comprenant une matrice

et l'autre des sous-matrices de Q
k comprenant le produit matriciel

et où la matrice Q
kT comprend la transposée de la matrice Q
k, et où la quantité qS
k est une matrice nulle lorsque la distance entre les premier et deuxième récepteurs
de navigation n'est pas limitée et où q peut être un paramètre de pondération non
nul et S
k peut être une matrice non nulle lorsque la distance entre les premier et deuxième
récepteurs de navigation est limitée.
20. Procédé de la revendication 19, dans lequel l'étape (d) comprend le fait de générer
une matrice N dans une forme équivalente à :

où la matrice M
-1 comprend un inverse de matrice de la matrice M, où le vecteur µ
k comprend le vecteur [Δγk,
Δϕk]
T, et où la quantité qg
k est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et g
k peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée.
21. Procédé de la revendication 20, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où l'étape (c) génère une matrice S
k pour le k
ième instant dans une forme équivalente à :

où r
k est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
au k
ième instant, et un zéro en tant que quatrième composante, où

est la transposée de vecteur de r
k, où I
3 est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de trois zéros, et où O
3x1 est un vecteur colonne de trois zéros ; et
où l'étape (d) génère un vecteur g
k pour le k
ieme instant dans une forme équivalente à :

où
22. Procédé de la revendication 19, dans lequel au moins l'une des matrices de pondération
Rk comprend une matrice identité multipliée par une grandeur scalaire.
23. Produit de programme informatique pour diriger un processeur de données pour effectuer
le procédé de l'une des revendications précédentes.
24. Appareil (100) pour estimer un ensemble d'ambiguïtés flottantes associé à un ensemble
de mesures de phases d'une pluralité n de signaux de porteuse de satellites réalisées
par un premier récepteur de navigation (B) et un deuxième récepteur de navigation
(R) séparés par une distance, où un vecteur de référence (x
0, y
0, z
0) associe la position du deuxième récepteur au premier récepteur, chaque signal de
porteuse de satellite étant émis par un satellite et ayant une longueur d'onde, où
chaque récepteur a une horloge temporelle pour référencer ses mesures et où une différence
quelconque entre les horloges temporelles peut être représentée par un décalage, ledit
appareil (100) pour recevoir (71), pour une pluralité de deux instants j ou plus,
les entrées suivantes :
un vecteur

représentant une pluralité de pseudo distances mesurées par le premier récepteur
de navigation (B) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de pseudo distances mesurées par le deuxième récepteur
de navigation (R) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de distances estimées entre les satellites et le premier
récepteur de navigation (B),
un vecteur

représentant une pluralité de distances estimées entre les satellites et le deuxième
récepteur de navigation (R),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le premier récepteur de navigation (B),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le deuxième récepteur de navigation (R),
une matrice Jacobienne géométrique

dont les éléments matriciels représentent les variations des distances entre les
satellites et l'un des récepteurs qui pourraient être provoquées par les variations
de la position de ce récepteur et du décalage d'horloge temporelle,
ledit appareil (100) étant caractérisé par :
(a) un moyen pour générer (72), pour chaque instant j, un vecteur Δγj d'une pluralité de résidus de distance de mesures de pseudo distances réalisées par
les premier et deuxième récepteurs de navigation sous forme de :

(b) un moyen pour générer (73), pour chaque instant j, un vecteur Δϕj d'une pluralité de résidus de phase de mesures de phases totales réalisées par les
premier et deuxième récepteurs de navigation sous forme de :

où Λ-1 est une matrice diagonale comprenant les longueurs d'ondes inverses des satellites
;
(c) un moyen pour générer (74), pour l'instant j = 1, une factorisation LU d'une matrice M1 ou d'un inverse de matrice de la matrice M1, la matrice M1 étant une fonction d'au moins Λ-1 et

(d) un moyen pour générer (75), pour l'instant j = 1, un vecteur N1 en tant que fonction d'au moins Δγ1, Δϕ1, et la factorisation LU de la matrice M1 ou de l'inverse de matrice de la matrice M1;
(e) un moyen pour générer (76), pour un instant supplémentaire j ≠ 1, une factorisation
LU d'une matrice Mj ou d'un inverse de matrice de la matrice Mj, la matrice Mj étant une fonction d'au moins A-1 et

(f) un moyen pour générer (77), pour un instant supplémentaire j ≠ 1, un vecteur Nj en tant que fonction d'au moins Δγj, Δϕj, et la factorisation LU de la matrice Mj ou de l'inverse de matrice de la matrice Mj, le vecteur Nj ayant des estimations des ambiguïtés flottantes ; et
(g) un moyen pour déterminer (78) si Nj a une précision suffisante, où les étapes
(e) et (f) sont répétées si Nj n'a pas une précision suffisante.
25. Appareil de la revendication 24, dans lequel un moyen (c) comprend un moyen pour générer
une factorisation LU pour une matrice comprenant une forme équivalente à (G
T P
1G), où :
• la matrice G a 2n lignes, n colonnes, une sous-matrice supérieure, et une sous-matrice
inférieure, l'une des sous-matrices comprend une matrice nulle n x n et l'autre sous-matrice
comprenant une matrice identité n x n,
• la matrice GT comprend la matrice transposée de la matrice G, et
• la matrice P1 a 2n lignes, 2n colonnes, et une forme qui comprend une matrice équivalente à

où la matrice R1 est une matrice de pondération, où la matrice

comprend un inverse de la matrice R1, où la matrice Q1 a une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
de Q1 comprenant la matrice

et l'autre des sous- matrices de Q1 comprenant le produit matriciel

et où la matrice

comprend la transposée de matrice Q1, et où la quantité qSK est une matrice nulle lorsque la distance entre les premier et deuxième récepteurs
de navigation n'est pas limitée et où q peut être un paramètre de pondération non
nul et Sk peut être une matrice non nulle lorsque la distance entre les premier et deuxième
récepteurs de navigation est limitée.
26. Appareil de la revendication 25, dans lequel le moyen (d) comprend un moyen pour générer
un vecteur N
1 pour comprendre un vecteur ayant une forme équivalente à

où la matrice

comprend un inverse de matrice de la matrice M
1, et où le vecteur µ
1 comprend le vecteur [Δγ
1, Δϕ
1]T, et où la quantité qg
k est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et g
k peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée.
27. Appareil de la revendication 24, dans lequel un moyen (e) comprend un moyen pour générer
une factorisation LU pour une matrice comprenant une forme équivalente à

où :
• Mj-1 comprend la matrice M1 générée par un moyen (c) lorsque j = 2 et comprend la matrice Mj générée par un moyen (e) pour l'instant j-1 lorsque j > 2,
• la matrice G a 2n lignes, n colonnes, une sous-matrice supérieure, et une sous-matrice
inférieure, l'une des sous-matrices comprenant une matrice nulle n x n et l'autre
sous-matrice comprenant une matrice identité n x n,
• la matrice GT comprend la matrice transposée de la matrice G, et
• la matrice Pj a 2n lignes, 2n colonnes, et une forme qui comprend une matrice équivalente à

où la matrice R
j est une matrice de pondération, où la matrice

comprend un inverse de la matrice R
j, où la matrice Q
j a une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
de Q
j comprenant une matrice

et l'autre des sous-matrices de Q
j comprenant le produit matriciel

et où la matrice

comprend la transposée de la matrice Q
j, et où la quantité qS
j est une matrice nulle lorsque la distance entre les premier et deuxième récepteurs
de navigation n'est pas limitée et où q peut être un paramètre de pondération non
nul et S
j peut être une matrice non nulle lorsque la distance entre les premier et deuxième
récepteurs de navigation est limitée.
28. Appareil de la revendication 27, dans lequel un moyen (f) comprend un moyen pour générer
un vecteur N
j pour comprendre un vecteur ayant une forme équivalente à

où la matrice

comprend un inverse de matrice de la matrice M
j, où le vecteur µ
j comprend le vecteur [Δγ
j, Δϕ
j]T, et où le vecteur N
j-1 comprend le vecteur N
1 généré par un moyen (d) lorsque j = 2 et comprend le vecteur N
j-1 généré par un moyen (f) pour l'instant
j-1 lorsque j > 2, et où la quantité qg
j est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et g
j peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée.
29. Appareil de la revendication 26, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où un moyen (c) comprend un moyen pour générer une matrice S
1 dans une forme équivalente à :

où r
1 est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
pour l'instant j = 1 et un zéro en tant que quatrième composante, où

est la transposée de vecteur de r
1, où est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de trois zéros, et où O
3x1 est un vecteur colonne de trois zéros ; et
où un moyen (d) comprend un moyen pour générer un vecteur g
1 pour l'instant j = 1 dans une forme équivalente à :

où :
30. Appareil de la revendication 28, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où un moyen (e) comprend un moyen pour générer une matrice S
j dans une forme équivalente à :

où r
j est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
pour le j
ième instant et un zéro en tant que quatrième composante de vecteur, où

est la transposée de vecteur de r
j, où I
3 est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de trois zéros, et où O
3x1 est un vecteur colonne de trois zéros ; et
où un moyen (f) comprend un moyen pour générer un vecteur g
j pour le j
ième instant dans une forme équivalente à :

où :
31. Appareil de la revendication 27, dans lequel un moyen (e) pour générer la factorisation
LU de M
j comprend :
(g) un moyen pour générer une factorisation LU de la matrice Mj-1 dans une forme équivalente à Lj-1 Lj-1T où Lj-1 est une matrice triangulaire inférieure et Lj-1T est la transposée de Lj-1 ;
(h) un moyen pour générer une factorisation de GT Pj G dans une forme équivalente à Tj TjT = GT Pj G, où

est la transposée de Tj ; et
(i) un moyen pour générer une factorisation LU de la matrice Mj dans une forme équivalente à

à partir d'une pluralité n de modifications de rang un de matrice Lj-1. chaque modification de rang un étant basée sur une colonne respective de la matrice
Tj, où n est le nombre de lignes dans la matrice Mj.
32. Appareil de la revendication 31, dans lequel un moyen (h) génère une matrice Tj à partir d'une factorisation de Cholesky de GT PjG.
33. Appareil de la revendication 31, dans lequel la matrice de pondération R
j a une forme équivalente à :

où R
γ et R
ϕ sont des matrices de pondération ;
où R
γ et R
ϕ sont liées à une matrice de pondération commune W et à des paramètres de mise à l'échelle
σ
γ et σ
ϕ comme suit

et

où un moyen (h) de génération de matrice T
j comprend :
un moyen pour générer un scalaire b dans une forme équivalente à :

où

est la longueur d'onde des signaux de satellites,
un moyen pour générer une matrice H̃ dans une forme équivalente à

un moyen pour générer une matrice de Householder SHH pour la matrice H̃, et
un moyen pour générer la matrice Tj dans une forme équivalente à :

34. Appareil de la revendication 31, dans lequel la matrice de pondération R
j est appliquée à un cas où il y a un premier groupe de signaux de satellites ayant
des signaux de porteuse dans une première bande de longueurs d'ondes et un deuxième
groupe de signaux de satellites ayant des signaux de porteuse dans une deuxième bande
de longueurs d'ondes, la fréquence de pondération ayant une forme équivalente à :

où R
γ et R
ϕ sont des matrices de pondération ;
où R
γ et R
ϕ sont liées à une matrice de pondération commune W, aux longueurs d'ondes porteuses
du premier groupe de signaux comme représentées par la matrice Λ
(1), aux longueurs d'ondes porteuses du deuxième groupe de signaux comme représentées
par la matrice Λ
(2), à la longueur d'onde centrale de la première bande comme représentée par λ
1, à la longueur d'onde centrale de la première bande comme représentée par λ
2, et à des paramètres de mise à l'échelle σ
y et σ
ϕ, comme suit :

où

où l'étape (h) de génération de matrice T
j comprend les étapes qui consistent :
à générer un scalaire
b dans une forme équivalente à :

où λ
1 est la longueur d'onde d'un premier groupe de signaux de satellites et λ
2 est la longueur d'onde d'un deuxième groupe de signaux de satellites,
à générer une matrice
H̃ dans une forme équivalente à

à générer une matrice de Householder S
HH pour la matrice
H̃, et
à générer une matrice T
j dans une forme équivalente à :

où les sous-matrices A11, A21, et A22 sont comme suit :

et
35. Appareil (100) pour estimer un ensemble d'ambiguïtés flottantes associé à un ensemble
de mesures de phases d'une pluralité n de signaux de porteuse de satellites réalisées
par un premier récepteur de navigation (B) et un deuxième récepteur de navigation
(R) séparés par une distance, où un vecteur de référence (x
0, y
0, z
0) associe la position du deuxième récepteur au premier récepteur, chaque signal de
porteuse de satellite étant émis par un satellite et ayant une longueur d'onde, où
chaque récepteur a une horloge temporelle pour référencer ses mesures et où une différence
quelconque entre les horloges temporelles peut être représentée par un décalage, ledit
appareil (100) pour recevoir (41), pour une pluralité de deux instants
j ou plus, les entrées suivantes :
un vecteur

représentant une pluralité de pseudo distances mesurées par le premier récepteur
de navigation (B) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de pseudo distances mesurées par le deuxième récepteur
de navigation (R) et correspondant à la pluralité de signaux de porteuse de satellites,
un vecteur

représentant une pluralité de distances estimées entre les satellites et le premier
récepteur de navigation (B),
un vecteur

représentant une pluralité de distances estimées entre les satellites et le deuxième
récepteur de navigation (R),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le premier récepteur de navigation (B),
un vecteur

représentant une pluralité de mesures de phases totales des signaux de porteuse de
satellites mesurées par le deuxième récepteur de navigation (R),
une matrice Jacobienne géométrique

dont les éléments matriciels représentent les variations des distances entre les
satellites et l'un des récepteurs qui pourraient être provoquées par les variations
de la position de ce récepteur et du décalage d'horloge temporelle,
ledit appareil (100) étant caractérisé par :
(a) un moyen pour générer (42), pour chaque instant j, un vecteur Δγj d'une pluralité de résidus de distance de mesures de pseudo distances réalisées par
les premier et deuxième récepteurs de navigation sous forme de :

ledit moyen générant un ensemble de résidus de distance Δγk, k = 1,..j ;
(b) un moyen pour générer (43), pour chaque instant j, un vecteur Δϕj d'une pluralité de résidus de phase de mesures de phases totales réalisées par les
premier et deuxième récepteurs de navigation sous forme de :

où Λ-1 est une matrice diagonale comprenant les longueurs d'ondes inverses des satellites,
ledit moyen générant un ensemble de résidus de phase Δϕk, k = 1,..,j ;
(c) un moyen pour générer (44) une factorisation LU d'une matrice M ou d'un inverse
de matrice de la matrice M, la matrice M étant une fonction d'au moins Λ-1 et

pour un indice k de

couvrant au moins deux instants parmi les instants j ;
(d) un moyen pour générer (45) un vecteur N d'ambiguïtés flottantes estimées en tant
que fonction d'au moins l'ensemble de résidus de distance Δγk, l'ensemble de résidus de phase Δϕk, et la factorisation LU de la matrice M ou de l'inverse de matrice de la matrice
M.
36. Appareil de la revendication 35, dans lequel un moyen (c) comprend un moyen pour générer
une matrice M dans une forme équivalente à la sommation

où:
• la matrice G a 2n lignes, n colonnes, une sous-matrice supérieure, et une sous-matrice
inférieure, l'une des sous-matrices comprenant une matrice nulle n x n et l'autre
sous-matrice comprenant une matrice identité n x n,
• la matrice GT comprend la matrice transposée de la matrice G, et
• la matrice Pk a 2n lignes, 2n colonnes, et une forme qui comprend une matrice équivalente à

où la matrice R
k est une matrice de pondération, où la matrice

comprend un inverse de la matrice R
k, où la matrice Q
k a une sous-matrice supérieure et une sous-matrice inférieure, l'une des sous-matrices
de Q
k comprenant une matrice

et l'autre des sous-matrices de Q
k comprenant le produit matriciel

et où la matrice

comprend la transposée de la matrice Q
k, et où la quantité qS
k est une matrice nulle lorsque la distance entre les premier et deuxième récepteurs
de navigation n'est pas limitée et où q peut être un paramètre de pondération non
nul et S
k peut être une matrice non nulle lorsque la distance entre les premier et deuxième
récepteurs de navigation est limitée.
37. Appareil de la revendication 36, dans lequel un moyen (d) comprend un moyen pour générer
une matrice N dans une forme équivalente à :

où la matrice M
-1 comprend un inverse de matrice de la matrice M, où le vecteur µ
k comprend le vecteur [Δγ
k, Δϕ
k]
T, et où la quantité qg
k est un vecteur nul lorsque la distance entre les premier et deuxième récepteurs de
navigation n'est pas limitée et où q peut être non nul et g
k peut être un vecteur non nul lorsque la distance entre les premier et deuxième récepteurs
de navigation est limitée.
38. Appareil de la revendication 37, dans lequel la distance entre les premier et deuxième
récepteurs de navigation est limitée à une distance L
RB, où un moyen (c) comprend un moyen pour générer la matrice S
k pour le k
ième instant dans une forme équivalente à :

où r
k est un vecteur comprenant des estimations des trois coordonnées du vecteur de référence
au k
ième instant, et un zéro en tant que quatrième composante, où

est la transposée de vecteur de r
k, où I
3 est la matrice identité 3 par 3, où O
1x3 est un vecteur ligne de trois zéros, et où O
3x1 est un vecteur colonne de trois zéros ; et
où le moyen (d) génère un vecteur g
k pour le k
ième instant dans une forme équivalente à :

où :