efficient satellite orbit approximation

8
BIOGRAPHY Paula Korvenoja (now Paula Syrjärinne) received her M.Sc. degree in information technology from Tampere University of Technology, Finland, in June 2000. She is a graduate student in mathematics and works for Nokia Mobile Phones. Robert Piché received his Ph.D. in civil engineering from the University of Waterloo, Canada, in 1986. Since 1988 he has been at the Mathematics Department of Tampere University of Technology, where he is now professor. His research interests include numerical analysis and system simulation. ABSTRACT In order to speed up satellite position and velocity computation, the ephemeris orbit model is approximated by simple curves. Piecewise polynomial interpolation is shown to be appropriate for the purpose, and especially splines and Hermite polynomials of different degrees and sampling intervals are compared. Cubic Hermite interpolation, along with its other beneficial properties, attains more than tenfold efficiency compared to ephemeris evaluation. INTRODUCTION The quality of satellite position estimates is essential for the accuracy of navigation solutions. Given ephemeris, the best estimate is achieved by directly calculating the satellite’s position from the orbit model. However, this calculation includes evaluating a number of functions, including also transcendental ones, causing quite a lot of cost per second for 1Hz navigation solution updates. On the other hand, such an intensive computation seems to be needless: looking at each dimension of the orbit separately, during short periods, the stretches of orbit are nearly linear, and even in four hours’ time they resemble curves of degree at most three. Thus, they are ideal to be interpolated: the actual values are computed only at rather sparse intervals and a polynomial that is cheaper to evaluate is fitted in between the sampling instants. Interpolation reduces the cost of satellite location and velocity determination remarkably. Furthermore, the position precision does not suffer, if the interpolation is carried out in a suitable way. The most natural choice for orbit interpolation is a polynomial of rather low degree. Polynomials of too high degree introduce undesired oscillations between sampled orbit points. However, to keep the relative error small enough, a low-degree polynomial is not sufficient for long interpolation areas. The best alternative is then introduced by dividing the interpolation area into shorter intervals and using piecewise polynomial interpolation, such as splines or piecewise Hermite interpolation [3], [4]. SATELLITE ORBITS In GPS, the satellite position function is formed based on the sixteen parameters transmitted in the ephemeris data. Six of the parameters are equivalent to Keplerian elements and nine are perturbation corrections to the Keplerian model. All the parameters are time variant, and their applicability time is given by the remaining parameter, time of ephemeris which is the reference time used in ephemeris equations. The ephemeris data is valid during about four hours’ period around the time of ephemeris. During this time the satellite position is specified with a one-sigma accuracy of less than 0.35m [7]. Ephemeris parameters and equations are presented in the Appendix. It is seen from the ephemeris equations that the formulas for satellite’s x-, y- and z-coordinates are combinations of sinusoidal curves, x and y being the same curve in different phases and z consisting of a single sinusoidal component. The period of x and y is two times the satellite’s orbital period, while the period of z is the same as the orbital period. However, this periodicity does not apply in practice, as the ephemeris parameters change several times during a day. The x-, y- and z- ECEF coordinates computed from one ephemeris model during two orbital periods are plotted in Figure 1. In the plots, the time of ephemeris is marked as a circle and instants one hour before and after time of ephemeris are shown as asterisks, to give some idea of how the satellite’s tracks behave during shorter times. Efficient Satellite Orbit Approximation Paula Korvenoja, Research and Technology Access, Nokia Mobile Phones, Finland Robert Piché, Tampere University of Technology, Finland Proceedings of ION GPS 2000, September 19-22, 2000, Salt Lake City, USA, pages 1930-1937.

Upload: megustalazorra

Post on 17-Dec-2015

6 views

Category:

Documents


6 download

DESCRIPTION

In order to speed up satellite position and velocity computation, the ephemeris orbit model is approximated by simple curves.

TRANSCRIPT

  • BIOGRAPHY

    Paula Korvenoja (now Paula Syrjrinne) received herM.Sc. degree in information technology from TampereUniversity of Technology, Finland, in June 2000. She is agraduate student in mathematics and works for NokiaMobile Phones.

    Robert Pich received his Ph.D. in civil engineering fromthe University of Waterloo, Canada, in 1986. Since 1988he has been at the Mathematics Department of TampereUniversity of Technology, where he is now professor. Hisresearch interests include numerical analysis and systemsimulation.

    ABSTRACT

    In order to speed up satellite position and velocitycomputation, the ephemeris orbit model is approximatedby simple curves. Piecewise polynomial interpolation isshown to be appropriate for the purpose, and especiallysplines and Hermite polynomials of different degrees andsampling intervals are compared. Cubic Hermiteinterpolation, along with its other beneficial properties,attains more than tenfold efficiency compared toephemeris evaluation.

    INTRODUCTION

    The quality of satellite position estimates is essential forthe accuracy of navigation solutions. Given ephemeris, thebest estimate is achieved by directly calculating thesatellites position from the orbit model. However, thiscalculation includes evaluating a number of functions,including also transcendental ones, causing quite a lot ofcost per second for 1Hz navigation solution updates. Onthe other hand, such an intensive computation seems to beneedless: looking at each dimension of the orbit separately,during short periods, the stretches of orbit are nearly linear,and even in four hours time they resemble curves ofdegree at most three. Thus, they are ideal to beinterpolated: the actual values are computed only at rathersparse intervals and a polynomial that is cheaper toevaluate is fitted in between the sampling instants.

    Interpolation reduces the cost of satellite location andvelocity determination remarkably. Furthermore, theposition precision does not suffer, if the interpolation iscarried out in a suitable way. The most natural choice fororbit interpolation is a polynomial of rather low degree.Polynomials of too high degree introduce undesiredoscillations between sampled orbit points. However, tokeep the relative error small enough, a low-degreepolynomial is not sufficient for long interpolation areas.The best alternative is then introduced by dividing theinterpolation area into shorter intervals and usingpiecewise polynomial interpolation, such as splines orpiecewise Hermite interpolation [3], [4].

    SATELLITE ORBITS

    In GPS, the satellite position function is formed based onthe sixteen parameters transmitted in the ephemeris data.Six of the parameters are equivalent to Keplerian elementsand nine are perturbation corrections to the Keplerianmodel. All the parameters are time variant, and theirapplicability time is given by the remaining parameter,time of ephemeris which is the reference time used inephemeris equations. The ephemeris data is valid duringabout four hours period around the time of ephemeris.During this time the satellite position is specified with aone-sigma accuracy of less than 0.35m [7]. Ephemerisparameters and equations are presented in the Appendix.

    It is seen from the ephemeris equations that the formulasfor satellites x-, y- and z-coordinates are combinations ofsinusoidal curves, x and y being the same curve indifferent phases and z consisting of a single sinusoidalcomponent. The period of x and y is two times thesatellites orbital period, while the period of z is the sameas the orbital period. However, this periodicity does notapply in practice, as the ephemeris parameters changeseveral times during a day. The x-, y- and z- ECEFcoordinates computed from one ephemeris model duringtwo orbital periods are plotted in Figure 1.

    In the plots, the time of ephemeris is marked as a circle andinstants one hour before and after time of ephemeris areshown as asterisks, to give some idea of how the satellitestracks behave during shorter times.

    Efficient Satellite Orbit Approximation

    Paula Korvenoja, Research and Technology Access, Nokia Mobile Phones, Finland

    Robert Pich, Tampere University of Technology, Finland

    Proceedings of ION GPS 2000, September 19-22, 2000, Salt Lake City, USA,pages 1930-1937.

  • The same (ideal) periods that x-, y- and z- positions haveapply to velocities and accelerations in each of thedimensions. The velocities corresponding to the satellitetracks above are shown in Figure 2, and the two hour timestretch is marked in the same way as above.

    It is seen that during a couple of hours time, the satellitecoordinates and velocities resemble linear or at most cubicpolynomials.

    ORBIT INTERPOLATION

    In the previous section, it was observed that a lot ofcalculations are needed to evaluate points in the seeminglyso simple orbital curves. The positions of all the satellitesin sight have to be updated as often as a new navigatorposition fix is computed. For 1Hz update rate, the satellitepositioning introduces a notable computational burden, letalone applications where many satellite orbital stretches ofseveral minutes length need to be constructed in a shorttime, e.g. assisted GPS time reconstruction [8]. Todecrease the cost, only sparse samples of the orbit arecalculated and interpolation is carried out in between thesampled positions. Some of the most suitableapproximation methods are compared in the followingparagraphs.

    Requirements for Approximation Algorithms

    The properties required for orbit approximating curvesinclude continuity, precision and low evaluation cost.Continuity is important because of the navigation solution

    stability; a jumpy satellite position induces rapid andincorrect changes in the navigators position. The termprecision is used here to quantify how closely theapproximation follows the calculated orbit. Since theephemeris-based orbit is only a simplified model of thesatellites motion, the approximation error is not the sameas the accuracy of the approximation versus the satellitestrue orbit. Evaluation cost is composed of the intensity ofconstructing the approximating interpolation polynomial,including calculation of samples, and the cost of theinterpolation polynomial evaluation.

    The satellites velocity in the three dimensions can bedetermined by differentiating the ephemeris equations. Thecomputation of velocity and position from ephemeris isonly a few percent more computationally expensive thancomputing position alone; the formulas are given inAppendix. Here, the velocity is computed from the firsttime derivative of the fitted polynomial. The derivatives ofbasic polynomial fits with no conditions of derivatives donot produce good velocity approximations, whereas cubicsplines and Hermite curves are suitable for the purposealready by definition.

    The velocity determination could, of course, also becarried as its own interpolation process. However, thisrequires more computation, and as the velocity precisionachieved by position approximation differentiating aregood enough for this application, velocity interpolation isnot explicitly carried out though, in fact, in Hermiteinterpolation, velocities are actually interpolated too.

    Figure 2. Satellites ECEF x-, y- and z- velocity track during two orbital periods.

    1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5

    x 105

    -3000

    -2000

    -1000

    0

    1000

    2000

    3000

    GPS time (seconds)

    x ve

    loci

    ty (m

    /s)

    x velocity

    1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5

    x 105

    -3000

    -2000

    -1000

    0

    1000

    2000

    3000

    GPS time (seconds)

    y ve

    loci

    ty (m

    /s)

    y velocity

    1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5

    x 105

    -4000

    -3000

    -2000

    -1000

    0

    1000

    2000

    3000

    4000

    GPS time (seconds)

    z ve

    loci

    ty (m

    /s)

    z velocity

    1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5

    x 105

    -2.5

    -2

    -1.5

    -1

    -0.5

    0

    0.5

    1

    1.5

    2

    2.5x 10

    7

    GPS time (seconds)

    EC

    EF

    x co

    ordi

    nate

    (met

    ers)

    x coordinate

    1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5

    x 105

    -2.5

    -2

    -1.5

    -1

    -0.5

    0

    0.5

    1

    1.5

    2

    2.5x 10

    7

    EC

    EF

    z co

    ordi

    nate

    (met

    ers)

    z coordinate

    GPS time (seconds)1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5

    x 105

    -2.5

    -2

    -1.5

    -1

    -0.5

    0

    0.5

    1

    1.5

    2

    2.5x 10

    7

    GPS time (seconds)

    EC

    EF

    y co

    ordi

    nate

    (met

    ers)

    y coordinate

    Figure 1. Satellites ECEF x-, y- and z- coordinates track during two orbital periods.

  • Notation

    Throughout the paper, the sampling instants will bedenoted as , and they are assumed to be in strictly

    increasing order, i.e. for all . Sampling instants

    may also be called knots as in spline applications. Theintervals between consecutive knots are called

    sampling intervals. At the sampling instants, the ECEFcoordinates of the satellite are calculated from ephemeris.For Hermite polynomials, also velocity or velocity andacceleration in ECEF are determined. Based on thesesampled data, a separate one-dimensional polynomial isconstructed for each of the dimensions.

    Linear Piecewise Polynomials

    The simplest way to interpolate satellite orbit based on

    samples calculated at is to draw a segment line

    through consecutive samples,

    . (1)

    This kind of piecewise first-degree polynomial is a specialcase of both splines and Hermite polynomials. More onspline and Hermite interpolation theory will be covered inthe following sections.

    Linear splines are continuous but their derivatives are not.Thus, the approximated satellite position is not affected byjumps but the velocity, if computed from the slope of

    the line segment, changes discontinuously at knots.

    Another alternative for velocity computation, of course,would be the evaluation of velocities from ephemeris atsampling instants and construction of a separate linearspline for velocity interpolation. This, however, has thedisadvantage that the velocity spline value differs from thederivative of the position spline.

    The construction and evaluation of linear splines arecomputationally very cheap. However, the bulk of the cost,as well as precision, depend on the number of calculatedsamples of satellite position. As the orbits are not linear bynature, it is clear that a straight line approximation is goodonly on a very short sampling interval. Thus, only frequentsample computation assure satisfactory precision, reducingthe efficiency.

    Cubic Splines

    Polynomial splines of degree k and the set of samplesevaluated at knots , are piecewise

    polynomials defined by the conditions [6]

    On each interval , is a polynomial of

    degree .

    has a continuous st derivative on .The linear splines introduced above are splines of degree1. The most commonly used splines are of degree 3, alsocalled cubic splines. In general, piecewise polynomials ofodd degree behave better and are easier to construct thanthose of even degree. As for degree 3, the splineconstruction and evaluation are rather simple and cheapcompared to higher degree splines, and still, cubicpolynomials interpolate usually precisely enough also inlonger sampling intervals

    The definition of splines yield for interpolating cubicsplines three sets of conditions: interpolation

    conditions and ,

    continuity conditions for the first derivatives, and continuity conditions for

    the second derivatives , where is

    the evaluated value of the function to be approximated.Altogether, conditions result, while the number of

    unknown polynomial coefficients is , 4 for each of the

    intervals. Hence, two additional equations are needed toconstruct the piecewise polynomial. The choice

    defines natural cubic spline,

    which has a minimum curvature over the interpolationarea, and is therefore sometimes very suitable. If possible,however, it is better to set the free conditions so that theyuse additional information of the approximated function.Some alternatives are to use the functions first or secondderivatives at the endknots. If the derivatives are notavailable, they can also be roughly approximated byaveraging the sample points near the ends of theinterpolation area. In this application, the true secondderivatives at the interpolation area endpoints are used.

    Continuity in position and even in velocity is ensured bythe definition of cubic splines. The only continuityproblem occurs when the interpolation interval reaches itsend and a new spline needs to be constructed. If the firstknot of the new interpolation interval is the same as the lastin the previous interval, then position continuity isachieved. Also velocity continuity would be obtained, ifvelocity instead of acceleration at the end points was used.

    The construction of a cubic spline involves solving for thesplines second derivatives at knots from a tridiagonal

    system of equations. Once this has been done, thespline evaluation of the cubic polynomials are easilycarried out. The most serious drawback in cubic splineconstruction is the need for batch processing: all thesample points have to be evaluated before the spline can beconstructed. In a situation where there is a need toconstruct splines for several satellite orbits simultaneously,the sudden processing load may slow down the otheroperations of the receiver. This kind of case appears every

    ti

    ti ti 1+< i

    ti ti 1+,[ ]

    N

    ti S

    S t( )

    a0t b0 t t0 t1,[ ],+

    an 1 t bn 1 t tn 1 tn,[ ]( )+

    =

    ai

    ti i 1 n, ,=

    S t( )

    ti 1 ti ),[ S

    kS k 1( ) t0 tn,[ ]

    2n

    Si ti( ) yi= Si ti 1+( ) yi 1+= n 1

    S'i 1

    ti( ) S'i ti( )= n 1

    S''i 1

    ti( ) S''i ti( )= yi

    4n 2

    4n

    n

    S0'' t0( ) Sn 1 '' tn( ) 0= =

    n 1+

  • time a receiver is turned on and it has received ephemerismessages from the satellites.

    Cubic and Quintic Hermite Interpolation

    In Hermite interpolation, not only the approximatedfunction is interpolated at the nodes , but also the

    derivatives of up to a certain order. The set of samples at

    n sampling nodes consists of the function values and

    the derivatives from to , forming

    conditions ,

    , . A unique polynomial of

    degree exists that fulfils these conditions, whenever theknots are distinct

    Hermite interpolation is a special case of the interpolationform known as Birkhoff interpolation. Unlike Hermiteinterpolation, in the more general conditions, derivativesof order are permitted to be given at a sampling point

    even if some of the lower order derivatives were notprescribed. The resulting set of equations may be singular,while in Hermite interpolation it is always of full rank,guaranteeing the unique solution. A special case ofHermite interpolation is truncated Taylor series expansion,where the number of nodes is one, and the number ofderivatives k is the number of terms in the truncated series.

    In the satellite orbit application the Hermite interpolationis restricted to polynomial pieces with two sampled pointsand one or two orbit derivatives at the points. The orbitapproximation in each of the three dimensions is made upof a sequence of these pieces. In the first configuration toexamine, a cubic polynomial was fitted between instants

    and , interpolating satellites position and velocity at

    these points, i.e. using the orbit value and its firstderivative as conditions. In the other examination,accelerations at the sampling points were added to theconditions, resulting quintic interpolating polynomial.

    The addition of velocity and/or acceleration informationensures more reliability to the approximating polynomial,while the increase in the cost is low, because the sampleevaluation is carried out so rarely. Furthermore, no batchprocessing is needed, and as the derivatives at the ends areknown, no oscillation of the interpolating polynomialappears. Also, the derivative of the interpolatingpolynomial is truly a polynomial fit of the velocityfunction, not just a differentiated position fit. Notice,however, that the continuity of acceleration is not ensuredfor piecewise cubic Hermite polynomials, while for cubicsplines it is, as well as for piecewise quintic Hermitepolynomials. As expected, quintic polynomials producehighly precise approximations, even with intervals as longas 15 minutes. On the other hand, the bulk of the cost iscaused by the 1Hz position and velocity updates, which is

    significantly more expensive for quintic polynomials thanfor cubic.

    Other Possible Approximation Methods

    To justify the choice of taking only Hermite polynomialsand cubic splines into comparison, the reasons fordiscarding other methods are briefly stated.

    There are several good reasons to choose Hermiteinterpolation as the orbit approximation method. First ofall, a Hermite polynomial fit is easily constructed based ona set of calculated orbit points only. Taylor seriestruncation or some tangential estimations are quite costlyto be evaluated, and thus not practical. Ordinarypolynomial interpolation, on the other hand, would not bereasonable, since for a large set of datapoints, it often leadsto a polynomial of unnecessarily high order, and unstablebehaviour between interpolation points. Noninterpolatoryfitting of a polynomial with a fixed order, say 2, would bepossible too, but it is not considered here since a simpleand efficient interpolatory scheme is found. An example ofleast squares spline fitting in orbit determination case isgiven in [1].

    As for cubic splines, there are several other ways todetermine the end conditions than the one used here.Natural splines can be made precise by introducingdensely spaced initialization knots near the interpolationarea ends. Also, the second derivatives in the ends can beapproximated by using so called not-a-knot conditions [2].However, as the true satellite accelerations at the endpointsare available, they should be used as they provide the mostprecise approximation.

    Particular approximation algorithms for periodic functionsare also available [6]. Unfortunately, they are notapplicable to the orbit interpolation problem for tworeasons. First of all, although orbit coordinates andvelocities ideally are periodic if calculated with one set ofephemeris parameters, the same parameters are not validthrough the whole period. Hence, the functions are notperiodic in reality. Even if they were, the periods are about24 hours for x and y positions and velocities and 12 hoursfor z positions and velocities. It is not practical to assumethat positioning in a hand-held device would continue thislong. A more probable positioning time is a couple ofhours. During that time, there would be no benefit of theperiodicity, anyway.

    THEORETICAL ERROR BOUNDS

    A number of results are known concerning the goodness ofpolynomial fit. A way to measure the closeness of theinterpolating polynomial p to the interpolated function f isto determine the norm of the error [4]. Two usablenorms are the Euclidean norm

    f ti

    f

    f ti( )

    f' ti( ) fki 1( ) ti( )

    M 1+ k0 k1 kn+ + += pj( )

    ti( ) fj( )

    ti( )=

    j 0 ki, ,= i 0 n, ,=

    M

    k ti

    ti

    ti 1+

    f p

  • (2)

    and the infinity norm

    . (3)

    The function in (2) is a positive weighting functionthat can be used if anomalies for some values of t are moresignificant than for others. The following error boundsgive results on how large values get, and can beseen as bounds for the infinity norm (3). The results arevery general, applying for any continuous function f andare therefore rather pessimistic for the orbital curves,which are of simple shapes.

    First, consider polynomial approximation in general.Weierstrass Theorem states that if f is continuous in

    , then for any , a polynomial of degree

    exists such that . Thus, any continuous

    function can be approximated as precisely as wanted in aclosed interval by increasing the degree of approximatingpolynomial as needed. A further result, the Strong UnicityTheorem [6], says that among polynomials of fixed degreen, the best approximation is unique.

    For the basic form of polynomial interpolation, where apolynomial of degree n-1 is fitted according to n sampledpoints , inside the interval , the

    increase in polynomial degree also means the increase inthe number of sampled points, which clearly contradictsthe cost reduction idea of interpolation. A bound for theerror at point is given by

    [4]

    , (4)

    where is any point in the interpolation interval,

    is defined inside the interval, and

    . (4) bounds the error only in one point

    and is not practical if an overall error bound is needed.Then, should be replaced by , which is not

    usually easily evaluated. When an overall error bound isneeded, the sampling nodes can be chosen as Chebyshevpolynomial roots translated into interval [4]. For

    this node spacing, the error is bounded by

    . (5)

    The error in Chebyshev polynomial root -node spacing isnot smaller than for other spacings in general, but the

    benefit is that an a priori maximum error can bedetermined.

    Bounds for Hermite polynomials of degree andtheir kth derivatives are given by [6]

    , (6)

    where is the constant interval length. The correspondingbound for cubic splines is

    , (7)

    where and [2]. According to

    the formulas, the maximum bound for cubic splineposition error is 5 times greater than for Hermitepolynomial, but for spline velocity error 4 times smaller. Itwill be seen in the tests of next section that in the orbitapplication, the two interpolation methods performapproximately equally well. To give some examples of theerror bound magnitudes, the infinity norms for orbitalderivatives estimated of typical orbital data were coarsely

    of the order ,

    and . Withthese approximations, the error bound for linear splinewith one minute interval length is 405m with three minuteintervals, while the three minute interval error is boundedby 3cm for cubic Hermite and 14cm for cubic spline. Bothof the cubic results seem to be large compared to the errorsobserved in practice. The quintic position error bound,

    however, is very truthful, giving a bound of m forthree minute interval and only 11cm for the interval of 15minutes length.

    To compare the methods in the special case of orbitapproximation, tests with real orbital data were carried out.The results are given in the following section.

    COMPARISON AND RESULTS

    The purpose of the comparison was to examine thesuitability of the four forms of interpolation to the satelliteorbit application and find out the combination of algorithmand sampling frequency with highest efficiency versussufficient precision. The tests were carried out with realephemeris data, using 12 hour test periods to find out themaximum errors during a whole orbital period.

    Criteria

    The two most important figures of merit for the algorithmswere cost and precision. An additional criterion wasmemory consumption. Cost was evaluated by measuringthe performance time spent by Fortran implementations ofthe algorithms computing 1Hz updates of positions andvelocities of a fixed length orbital stretch. The results aregiven as the ratio to the performance time taken by the

    f p 2 f t( ) p t( )( )2w t( ) td

    t0

    tn

    1 2

    =

    f p max f t( ) p t( ) t0 t tn ( ){ }=

    w t( )

    f p

    a b,[ ] e 0> Nef p e