revisiting lambert’s problem - dario izzo

Upload: alvaroroman92

Post on 05-Jul-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    1/17

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    2/17

    2 Dario Izzo

    to function for a wide set of conditions led to revisit the Lambert’s problemduring the space era. Among the many contributions made during that pe-riod, the work of Lancaster and Blanchard [Lancaster and Blanchard(1969) ]is to be highlighted as it reduced the solution to Lambert’s problem to per-

    forming iterations each one requiring the computation of one only inversetrigonometric or hyperbolic function. Later, Gooding [ Gooding(1990) ] builtupon these results and published a procedure achieving high precision inonly three iterations for all geometries. Gooding’s algorithm makes use of Halley’s iterations sided to well designed heuristics to set the initial guessof the iterated variable. His methodology to reconstruct the terminal veloc-ity vectors is also remarkable as it is purely algebraic. The resulting pro-cedure is extremely efficient having low computational cost and high accu-racy. A number of studies [Peterson and et al.(1991) ], [Klumpp(1991) ] and[Parrish(2012) ] have tested Gooding approach extensively, suggesting its su-periority with respect to other Lambert solvers. His procedure is most accu-rate and considered as the fastest existing approach to solve Lambert’s prob-lem [Arora and Russell(2013) ]. Aside from Gooding’s algorithm, many otherproposal have been put forward to design Lambert solvers, they all differ inthe details of at least one of three fundamental ingredients: a) the iterationvariable (directly connected to the time of ight equation), b) the iterationalgorithm c) the initial guess and d) the reconstruction of the terminal veloc-ity vectors. More recently iimprovements on the original Gooding algorithmwere also claimed [Arora and Russell(2013) ] making use of the universal vari-able formulation [Bate et al(1971)Bate, Mueller, and White ] and an originalcosine transformation. At the same time, a number of works recently ad-dressed the possibility of deploying a large number of Lambert’s algorithmson modern GPU architectures [Parrish(2012) ], [Arora and Russell(2010) ] and[Wagner and Wie(2011) ]. Interestingly, in the rst of these works, a compari-son is also made between Gooding procedure, a universal variable Lambert’s

    solver and an early (slow) version of the algorithm here described (unpublishedat that time) showing already its promising nature.

    In this paper, we build upon Lancaster and Blanchard work, rst derivingsome new results, and then proposing and testing a new algorithm. The newalgorithm a) iterates on the Lancaster-Blanchard variable x using b) a House-holder iteration scheme c) feeded by a simple initial guess found exploitingnew analytical results found. The resulting procedure is simple to implement,does not make use of heuristics for the initial guess generation and is able toconverge, on average, in only 2 iterations for the single revolution case and 3in the multirevolution case, introducing a signicant reduction in the overallsolver complexity.

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    3/17

    Revisiting Lambert’s Problem 3

    2 Background

    2.1 From Lambert to Gauss

    Lambert’s theorem states that the time of ight t to travel along a keplerianorbit from r 1 to r 2 is a function of the orbit semi-major axis a, of the sumr 1 + r 2 and of the chord c of the triangle having r 1 and r 2 as sides. Thecomplete formal proof was rst delivered by Lagrange and is here sketchedbriey in the form reported by Battin [Battin(1999) ] as some of the quantitiesand equations involved will prove to be useful in our later developments. Westart introducing the eccentric anomaly E and the hyperbolic anomaly H viathe corresponding Sundmann transformations rdE = ndt rdH = Ndt . Themean motion n = µ/a 3 and its hyperbolic equivalent N = −µ/a 3 are alsointroduced. As we do not make use of universal variables we will be forced togive all our arguments twice: one for the elliptic case a > 0 and one for thehyperbolic case a < 0. To this purpose some of the equations will be split intwo lines, in which case the line above holds for the elliptic case and the linebelow holds in the hyperbolic case. We also make use of the reduced eccentricanomaly E r ∈[0, 2π] so that when M̃ full revolutions are made E = E r +2 M̃π .To ease the notation, in the following, we will drop the subscript r so that E will be the reduced eccentric anomaly. The following relations are then validfor an elliptic orbit ( a > 0):

    r = a(1 −e cos E )nt = E −e sin E + 2 M̃πr cos f = a(cos E −e)

    r sin f = a (1 −e2)sin E (1)

    The rst one relates the orbital radius r to the eccentric anomaly E , thesecond one is the famous Kepler’s equation relating the eccentric anomaly to

    the time of ight and the following two relation dene the relations betweentrue anomaly f and eccentric anomaly E . Similar equations hold in the caseof hyperbolic motion:

    r = a(1 −e cosh H )Nt = e sinh H −H r cos f = a(cosh H −e)r sin f = −a (e2 −1) sinh H

    (2)

    The above equations are valid along a Keplerian orbit, including r 1 and r 2 .The time of ight can thus be written as:

    √ µ(t2 −t1) =a3/ 2 (E 2 −E 1 + e cos E 1 −e cos E 2 + 2 Mπ )−a3/ 2 (e cosh H 2 −e cosh H 1 −(H 2 −H 1))

    (3)

    where M = M̃ 2 − M̃ 1 is the number of complete revolutions made during thetransfer from r 1 to r 2 . We may then dene two new quantities such that:ψ =

    E 2 − E 12

    H 2 − H 12

    , cosϕ = e cos E 2 + E 1

    2e cosh H 2 + H 12

    (4)

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    4/17

    4 Dario Izzo

    so that, by construction, in both the elliptic and hyperbolic motion case ψ ∈[0, π ]. We also restrict ϕ ∈ [0, π ] (elliptc case) and ϕ ≥ 0 (hyperbolic case)as to avoid ambiguity in the denition of the new angle. The time of ightequation is then written as:

    √ µ(t2 −t1) =2a3/ 2 (ψ −cosϕ sin ψ + Mπ )−2a3/ 2 (cosh ϕ sinh ψ −ψ)

    (5)

    The two new quantities introduced, ϕ and ψ only depend on the problemgeometry and the sami-major axis a as can be easily found by computingc2 = ( r 2 cos f 2 −r 1 cos f 1)2 −(r 2 sin f 2 −r 1 sin f 1)2 and r1 + r2 from Eq.( 1)and Eq.( 2), holding:

    r 1 + r2 =2a(1 −cos ψ cosϕ)2a(1 −cosh ψ cosh ϕ)

    (6)

    c = 2a sin ψ sin ϕ

    −2a sinh ψ sinh ϕ (7)

    Thus, one can conclude that the time of ight, given in Eq.( 5), is a functionof a, c and r1 + r2 . To further investigate the functional relation of the timeof ight to these quantities it is convenient to introduce two new angles:

    α = ϕ + ψ, β = ϕ−ψ (8)Clearly, in the elliptic case α∈[0.2π] and β ∈[−π, π ] while for the hyperboliccase α ≥ 0 and β ≥ −π. These bounds are very important, as we shall see,in solving a quadrant ambiguity of the newly dened quantities. The time of ight equation now takes the elegant form:

    √ µ(t2 −t1) =a3/ 2 ((α −sin α ) −(β −sin β ) + 2 Mπ )

    −2a3/ 2 ((sinh α

    −α)

    −(sinh β

    −β )) (9)

    and computing r 1 + r2 ±c from Eq.( 6) and Eq.( 7) one easily nds:s

    2a = sin

    2 α2

    −sinh 2 α2(10)

    s −c2a

    = sin2 β

    2

    −sinh2 β2(11)

    These last three equations were rst derived by Lagrange and used in hisproof of the Lambert’s theorem. The angles α and β cannot be determinedunivoquely from the equations above as their quadrant is not dened. Wethus appear to have two possible solutions for α and β . The quadrant of β can

    actually be resolved by expanding cos θ/ 2 = cos( f 2 −f 1)/ 2 using trigonometricidentities and eventaully showing that the following holds:√ r 1r 2 cos θ2 =

    2a sin α2 sin β2

    −2a sinh α2 sinh β2(12)

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    5/17

    Revisiting Lambert’s Problem 5

    since sin α2 , sinh α2 ≥0 the above equations dictate that sin β2 , sinh β2 have the

    same sign as cos θ2 , thus β ∈ [−π, 0] when θ ≥ π and β > 0 when θ ∈ [0, π ].The ambiguity on the α angle, instead, cannot be resolved as it derives fromthe fact that exactly two different ellipses, having the same semi-major axis a,

    link r 1 and r 2 and thus two different time of ights exist that satisfy Eq.( 9).From Eq.( 10) and Eq.( 11) one can also derive the useful relation:

    sin α2

    = λ sin β 2

    (13)

    2.2 The Lambert’s problem revival

    During the 18th-19th century, the work on the orbital boundary value problemculminated with Gauss masterpiece “Theoria Motus Corporum Coelestium inSectionibus Conicis Solem Ambientium” [Gauss(1857) ] where the “prince of mathematicians” conceives was is probably the rst procedure able to accu-

    rately solve the Lambert’s problem (see Battin [Battin(1999) ] for an excellentaccount of Gauss method). In the following years science drifted slowly awaythis topic, only to revisit it in the second half of the 20th century when the or-bital boundary value problem received more attention in the context of Moonexploration. Hence, the work of Lancaster, Blanchard, Battin, Bate and manyothers introduced several advances on the topic. We here follow the approachfrom Lancaster and Blanchard that inspred most of our developments and wewill thus rederive some of their relations which are needed to explain our newideas. Consider the parameter λ dened as:

    sλ = √ r 1r 2 cos θ2using Eq.( 12) and substituting the expressions in Eq.( 10) and Eq.( 11) it issimple to show that:

    λ2 = s −c

    sThe parameter λ ∈ [−1, 1] is positive when θ ∈ [0, π ] and negative whenθ ∈[π, 2π]. Values of λ2 close to unity indicate a chord of zero length, a casewhich is indeed extremely interesting in interplanetary trajectory design as it islinked to the design of resonant transfers. We also introduce a non dimensionaltime-of-ight dened as:

    T = 12 µa3m (t2 −t1) = 2 µs3 (t2 −t1)

    where am

    = s/ 2 is the minimum energy ellipse semi-major axis [Battin(1999) ].The advantage of using λ and T derives from the fact that T is a function of a/a m and λ alone, which allows to greatly simplify the taxonomy of possibleLambert’s problems. In Gooding’s words [Gooding(1990) ], all the triangleshaving equal c/s ratio form a large equivalence class and can be described as

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    6/17

    6 Dario Izzo

    Fig. 1 Non-dimensional time of ight curve for λ =

    −0.9 parametrized using a/a m .

    L-similar. For them, all Lambert solutions are the same in terms of a/a m andT .

    If we now plot the time of ight given by Eq.( 9) as a function of the ratiobetween the semi-major axis and the minimum energy ellipse semi-major axis,for a particular value of λ and for single and multiple revolution cases, we getFigure 1. It is evident how, in order to invert the time of ight relation iteratingover a/a m , while possible, is not a good choice. To avoid these problems wefollow Lancaster and Blanchard in some further derivations introducing thenew quantities:

    x =cos α2cosh α2 , y =

    cos β2cosh β2 (14)

    which imply:

    √ 1 −x2 = sin α2√ x2 −1 = sinh α2, λ

    √ 1 −x2 = sin β2λ√ x2 −1 = sinh β2

    (15)

    and y = 1 −λ2(1 −x2). Using these relations it is possible to relate theauxiliary angles ϕ and ψ directly to x:cosϕ = xy −λ(1 −x2)cosh ϕ = xy + λ(x2

    −1) ,

    sinϕ = ( y + xλ )√ 1 −x2sinh ϕ = ( y + xλ )√ x2

    −1

    (16)

    and,

    cos ψ = xy + λ(1 −x2)cosh ψ = xy −λ(x2 −1), sin ψ = ( y −xλ )√ 1 −x2

    sinh ψ = ( y −xλ )√ x2 −1 (17)

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    7/17

    Revisiting Lambert’s Problem 7

    which allows to derive the relations cos ϕ sin ψ = ( x−λy)√ 1 −x2 , cosh ϕ sinh ψ =(x −λy)√ x2 −1 and thus have the following time of ight equation valid inall cases:T =

    1

    1 −x2

    ψ + Mπ

    |1 −x2| −x + λy (18)

    where we must set M = 0 in the case of hyperbolic motion where unboundedmotion prevents complete revolutions to happen. The auxiliary angle ψ iscomputed using Eq.( 17) by the appropriate inverse function and thus, thetime of ight evaluation is reduced to one only inverse function computation.Given the bounds on α , from the denition of x, we can see how x∈[−1, ∞].Also, x > 1 implies hyperbolic motion, while x < 1 elliptic motion. Since1 −x2 = sin 2 α2 = s2a = a ma , we see how x = 0 corresponds to the minimumenergy ellipse. Note that different Lambert’s problems having identical λ values(i.e. same c/s ), result in the same x, we then say that x is a Lambert invariantparameter.

    Computing Eq.( 18) in x = 0 we get:

    T (x = 0) = T 0M = arccos λ + λ 1 −λ2 + Mπ = T 00 + Mπ (19)where we have introduced T 0 as the value of T in x = 0 and T 00 as the valuein the single revolution case M = 0.

    When computing Eq.( 18) in the single revolution case, a loss of precisionis encountered due to numerical cancellation for values of x ≈ 1 where both1−x2 and ψ tend to zero. In these cases we compute the time of ight equationby series expansion using the elegant result from Battin [Battin(1999) ] setting:

    η = y −λxS 1 = 12 (1 −λ −xη)Q = 43 1F 2(3, 1, 52 , S 1)2T = η3Q + 4 λη

    (20)

    where 1F 2(a,b,c,d ) is the Gaussian or ordinary hypergeometric function. Thiscan be evaluated by direct computation of the associated hypergeometric se-ries. Noting that S 1 → 0 when x → 1 the number of terms to retain in theseries is small whenever the series is used in the neighbourhood of x = 1.Departing from Battin, we study the parabolic case substituting x = 1 , y = 1into Eq.( 20) and thus obtaining the following remarkable expression:

    T (x = 1) = T 1 = 23

    (1 −λ3) (21)relating the geometry of the triangle created by two different observations of an object on a parabolic keplerian orbit to the non-dimensional time elapsedbetween them. It is also possible to derive the following formulas for the time

    of ight derivatives:(1 −x2) dT dx = 3T x −2 + 2 λ3 xy(1 −x2) d

    2 T dx 2 = 3 T + 5x

    dT dx + 2(1 −λ2) λ

    3

    y 3

    (1 −x2) d3 T

    dx 3 = 7 xd 2 T dx 2 + 8

    dT dx −6(1 −λ2)λ5 xy 5

    (22)

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    8/17

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    9/17

    Revisiting Lambert’s Problem 9

    Fig. 3 Time of ight curves ( τ ) parametrized using ξ for 30 λ values equally spaced in[−0.9, 0.9].

    3 A new Lambert invariant variable

    Let us consider the following new variables:

    ξ =log(1 + x), M = 0log( 1+ x1− x ), M > 0

    , τ = log( T ) (24)

    The domain of the time-of ight curve is now extended to [ −∞, ∞]. In thecase of M = 0 the co-domain is also extended similarly. Let us study theresulting time of ight equation τ (ξ,λ,M ). In Figure 3 we plot τ against ξ for M = 0 and M = 1 and thirty equally spaced values of λ ∈ [−0.9, 0.9]. Inthe case M = 0 the curves appear to have two asymptotes having negativeinclination coefficient. For the multiple revolution case ( M > 0) the curveshave two symmetric asymptotes. The new introduced parameter ξ is Lambertinvariant according to Gooding’s denition [Gooding(1990) ] as it essentially isa transformation of the Lambert invariant variable x. We study the differentialproperties of the new curves, we have:

    dξ = 11+ x dx, M = 0

    21− x 2 dx, M > 0

    , dτ = 1T

    dT (25)

    Substituting these relations into Eq.( 22), after some manipulations we mayderive the following hybrid expressions for the derivatives in the case M = 0:

    dτ dξ =

    1+ xT

    dT dx

    d2 τ

    dξ2 = (x +1)

    2

    T

    d2 T

    dx2 + dτ

    dξ −dτ

    2

    d3 τ dξ 3 =

    (1+ x ) 3

    T d3 T dx 3 +

    d 2 τ dξ 2 − dτ dξ + dτ dξ

    22 − dτ dξ + d

    2 τ dξ 2 −2 dτ dξ d

    2 τ dξ 2

    (26)

    Note that these expressions can be computed, sequentially, after Eq.( 22). The

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    10/17

    10 Dario Izzo

    Fig. 4 Time of ight curves parametrized using ξ for different λ and M values.

    following holds for the M = 0 case:

    limξ →∞ τ = −ξ + log(1 −λ|λ|)limξ →−∞ τ = −32 ξ + log π4 √ 2

    (27)

    which describes the asymptotic behaviour of the time of ight as visualized inFigure 3. The two asymptotes are thus revealed to have negative coefficients

    −1 and −3/ 2. For the multirevolution cases the derivatives are found to be:dτ dξ =

    1− x 22T

    dT dx

    d2 τ dξ 2 =

    (1 − x 2 ) 2

    4T d2 T dx 2 −x dτ dξ − dτ dξ

    2

    d3τ dξ 3

    = (1 −x2)3

    8T d3T dx3 −

    d2τ dξ 2

    + xdτ dξ

    +dτ dξ

    2

    2x + dτ dξ −

    −1 −x2

    2dτ dξ −x

    d2τ ξ 2 −2

    dτ dξ

    d2τ dξ 2

    (28)

    again computable in cascade and the following asymptotic behavior can bederived:

    limξ →−∞ τ = log π + Mπ8 − 32 ξ limξ →∞ τ = log Mπ8 + 32 ξ (29)revealing two symmetric asymptotes having inclination ±3/ 2. In Figure 4 wereport the time of ight curves in the new variables for different values of λ and

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    11/17

    Revisiting Lambert’s Problem 11

    M . The reader can then compare this ξ -τ plane to the x-T plane visualised inFigure 2.

    4 Lambert Solver

    A Lambert solver can be dened as a procedure that returns, for a gravitationaleld of strength µ, all the possible velocity vectors v 1 and v 2 along keplerianorbits linking r 1 , r 2 in a transfer time T ∗ . The ingredient of such an algorithmare, essentially a) the choice of a variable to iterate upon and thus invert thetime of ight curve, b) the iteration method, c) the starting guess to use withthe iteration method and d) the reconstruction methodology to compute v1and v 2 from the value returned by the iterations. As we will detail, our Lambertsolver a) iterates on the Lancaster-Blanchard variable x using b) a Householderiteration scheme c) feeded by initial guesses found exploiting the curve shapein the τ -ξ plane and the new analytical results found above. Eventually thevelocity vectors are reconstructed following, again, the methodology proposedby Gooding [Gooding(1990) ]. The nal pseudo-code of the proposed Lambertsolver is reported in Algorithm 1, 2. Note how we detect the maximum numberof revolutions M max at the beginning by computing T min in one case. Allother cases (i.e. M < = M max ) will not require the evaluation of a T min viaan iterative procedure. By doing so we do not bound the roots (short andlong period) and thus risk cases where the solution jumps between the longand short period branches. While this did not happen in our tests of the newroutine, it is a possibility we are not safeguarding against.

    The code, written in C++ and exposed to python, is made available as partof the open source project PyKEP from the European Space Agency githubrepository https://github.com/esa/pykep/ . The nal algorithm is the nalresult of many different trials to exploit the newly found results detailed above,

    and in particular the T 0 , T 1 expressions (and their derivatives) and the ξ -τ plane. It is worth reporting how one very robust set-up, not selected as ournal proposed algorithm, was that of iterating directly with a simple derivativefree method (regula-falsi) on the ξ -τ plane using constant initial guesses (i.ex l = −0.7, x r = 0.7). We ended up choosing a different set-up (Algorithm 1,2) which turned up to be faster in our computational tests.

    4.1 The Householder iterations

    One of the main differences of the proposed Lamber solver with respect toprevious work is the use of the Householder iterative scheme as a root nderfor the time-of-ight curves T (x)

    −T ∗ = 0. Householder iterations are not used

    widely as the added computational effort of computing higher order derivativesis not worth the gain whenever these request further function evaluations. Inour case, as the derivatives computation is done using equations 22, House-holder iterations are able to provide a signicant benet. We report the exact

    https://github.com/esa/pykep/https://github.com/esa/pykep/https://github.com/esa/pykep/

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    12/17

    12 Dario Izzo

    form used to implement the iterations as it is known how different numeri-cal form can produce different behaviours. After experimenting with differentimplementations the following was used:

    xn +1 = xn −f (xn ) f 2(xn ) −f (xn )f (xn )/ 2f (xn )(f 2(xn ) −f (xn )f (xn )) + f (xn )f 2(xn )/ 6

    where f is, in our case, T (x)−T ∗ and the derivatives are indicated as f , f , f .

    4.2 Initial Guess

    To generate an initial guess for x we use the newly introduced ξ -τ variablesand the values T 0 and T 1 as computed from Eq.( 19) and Eq,( 21). Our initialguess is obtained inverting the following linear approxmation to the time of ight curves:

    τ = cξ + d

    where we vary the c and d values according to the value of τ and M .

    4.2.1 Single revolution

    Let us start form the single revolution case. Clearly, for high values of τ , wemust set c = −1.0, while for low values c = −3/ 2 so that the asymptoticbehavior derived in Eq.( 27) is reproduced. We then consider the followingpiece-wise linear approximation:

    τ = −32 ξ + τ 0 , T ≥T 0τ = −ξ + log 2 + τ 1 , T < T 1τ = τ 0 + ξlog 2 (τ 1

    −τ 0) T 1 < T < T 0

    where τ 1 = log T 1 and τ 0 = log T 0 . We have basically enforced the lines topass through the points ( x0 , T 0) and ( x1 , T 1) and have the desired asymptoticbehaviour.

    The above relation is easily inverted and thus the following simple starterξ 0 is derived:

    ξ 0 = 23 (τ 0 −τ ), T ≥T 0ξ 0 = log2 + τ 1 −τ, T < T 1ξ 0 = τ − τ 0τ 1 − τ 0 log2 T 1 < T < T 0Transforming these relations back to the x-T plane we nd the following ex-pression for the starter x0 :

    x0 = T 0T 2

    3 −1, T ≥T 0x0 = 2 T 1T −1, T < T 1x0 = T 0T

    log 2T 1T 0 −1 T 1 < T < T 0

    (30)

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    13/17

    Revisiting Lambert’s Problem 13

    Fig. 5 Absolute errors introduced by the Gooding initial guess (left) and the proposedinitial guess (right) for the single revolution M = 0 case. Each line correspond to a differentλ value ranging from -0.99 to 0.99

    having an extremely low computational cost also in view of the fact log 2 admitsefficient implementaions. We can improve the expression for the T < T 1 casemaking use of the newly found result expressed in Eq.( 23). We thus set

    x0 = T 0T 23 −1, T ≥T 0

    x0 = 52T 1 (T 1 − T )T (1 − λ 5 ) + 1 , T < T 1

    x0 = T 0T log 2

    T 1T 0 −1 T 1 < T < T 0

    where we enforced the derivatives and values at x = 1 and x = ∞. We reportthe error introduced by using these expressions in Figure 5 where we also show,for comparison, the same plot relative to the Gooding initial guess. The erroris dened by the difference between the initial guess computed for a given T ∗

    and the actual value of x resulting in a time of ight T ∗

    .

    4.2.2 Multiple revolutions

    For the multiple revolution case, assuming a solution exists, there are twopossible values of x and thus we will need two starters. We obtain these bydirect inversion of Eq.( 29) that dene the two asymptotes.

    ξ 0l = 23 (log π + Mπ

    8 −τ )ξ 0r = 23 (τ −log M π8 )The above equations may then be transformed back to the x-T plane so thatthe following simple starters are derived:

    x0l = (Mπ + π

    8 T ) 23 − 1( Mπ + π8 T )

    23 +1

    x0r = ( 8 T Mπ )

    23 − 1

    ( 8 T Mπ )23 +1

    (31)

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    14/17

    14 Dario Izzo

    Algorithm 1 Lambert solver: inputs, r 1 = [r 11 , r 12 , r 13 ], r 2 = [r 21 , r 22 , r 23 ], tand µRequire: t > 0, µ > 0

    c = r 2 −r 1c =|c

    |, r 1 =

    |r 1

    |, r 2 =

    |r 2

    |s = 12 (r 1 + r 2 + c)î r, 1 = r 1 /r 1 , î r, 2 = r 2 /r 2îh = î r, 1 × î r, 2λ 2 = 1 −c/s , λ = √ λ 2if (r 11 r 22 −r 12 r 21 ) < 0 thenλ = −λî t, 1 = î r, 1 × îh , î t, 2 = î r, 2 × î r, 2else

    î t, 1 = îh × î r, 1 , î t, 2 = îh × îhend if T = 2 µs 3 tx list , y list =ndxy( λ , T )γ = µs2 , ρ = r 1 − r 2c , σ = (1 −ρ2 )for each x, y in x list , ylist do

    V r, 1 = γ [(λy −x) −ρ(λy + x)]/r 1V r, 2 = −γ [(λy −x) + ρ(λy + x)]/r 2V t, 1 = γσ (y + λx )/r 1V t, 2 = γσ (y + λx )/r 2v 1 = V r, 1 î r, 1 + V t, 1 î t, 1v 2 = V r, 2 î r, 2 + V t, 2 î t, 2

    end for

    The above expressions approximate well the time of ight curves as |x| → 1.A great advantage of these expressions is that they do not make use of T min ,xmin (i.e. the minimum of the time of ight curve and its extremal value) whichwould require a distinct set of iterations to be found. We then avoid to passto the root solver solution bounds at each M , at the risk of allowing, duringthe iterations, switches between short and long period solutions, a theoreticaloccurence, though, that was never encountered in our experimental tests.

    5 New solver performances

    To test the performances of our new algorithm we start by assessing its ac-curacy. We consider, for an assigned M , a random λ ∈ [−0.999, 0.999] and arandom xtrue ∈ [−0.99, 3] (or xtrue ∈ [−0.999, 0.999] whenever M > 0) andwe compute the resulting time of ight T . We then use Housholder iterationsstarting from the appropriate initial guess to nd back the x value. We ndthat stopping the iterations whenever the difference between the x value com-puted at two successive iterations is less than 10 − 5 (10− 8 whenever M > 0)is a good setting. We record, for each of such trials, the number of iterationsmade by the Householder method it , and the error dened as = |x true −x|.This is repeated 1,000,000 times for M = 0 and then 100,000 times for eachM = 1 , 2, ...., 50. The result is shown in Figure 6. In the vast majority of

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    15/17

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    16/17

    16 Dario Izzo

    Fig. 6 Absolute error = |x − x true | of our Lambert solver as a function of λ. This isachieved, on average over the M = 0 cases, in 2 iterations

    iterations, while we make use of Householder iterative scheme. While Halley’smethod has a slighlty lower complexity and does not need to compute alsothe third derivative from Eq.( 22), our iterative scheme reaches, in the caseM = 0, a comparable accuracy in only 2 iterations on average compared tothe 3 iterations needed for the Gooding case. For M > 0 the number of re-

    quired iterations is comparable in both cases but the initial Guess used inGooding algorithm has, in general, a higher complexity as it makes use of ahigher number of square roots and exponentiations. In the M > 0 case Good-ing initial guess also requires the determination of xmin , T min via a furtherHalley iterative scheme, while the initial guess we use does not make use of any particular value, while still allowing the Householder method to convergewithin a few iterations and in all cases. We must, though, note once more thatas we do not compute xmin , T min we also cannot bound the solution during theroot solver iterations and thus allow for the theoretical possibilty of a switchbetween short and long period solutions. Such a rare event never appeared inour extensive testing of the new routine

    Finally, we measure the error also in terms of the computed terminal ve-locities by comparing all v

    2, returned by our Lambert solver, to the same

    values as computed via numerical propagation (using Lagrange coefficients)from r 1 , v 1 . We do this by instantiating at random r 1 , r 2 with each compo-nent in the range [ −4, 4] and t ∈ [0.1, 100]. For the purpose of this test weconsider µ = 1 and we measure the norm of the resulting vector of the ve-

  • 8/16/2019 Revisiting Lambert’s Problem - Dario Izzo

    17/17

    Revisiting Lambert’s Problem 17

    locity difference. Repeating this experiment for a total cumulative 10,000,000Lambert’s Problems, an average error of 10 − 13 is obtained, with a maximumerror measured to be 10 − 8 .

    6 Conclusion

    We revisit Lambert’s problem building upon the results of Lancaster and Blan-chard and nding some new properties of the time of ight curves. We pro-pose a new transformation of such curves able to further simplify the problemsuggesting efficient approximations to the nal solution. Using our results todesign a new procedure to solve the Lambert problem we are able to build alow complexity algorithm that we nd able to provide accurate solutions in ashorter time when compared to the state of the art Gooding’s algorithm.

    References

    Arora and Russell(2013). Arora N, Russell R (2013) A fast and robust multiple revolutionlambert algorithm using a cosine transformation. In: Paper AAS 13-728, AAS/AIAAAstrodynamics Specialist Conference 2

    Arora and Russell(2010). Arora N, Russell RP (2010) A gpu accelerated multiple revolutionlambert solver for fast mission design. In: AAS/AIAA Space Flight Mechanics Meeting,San Diego, CA, No. AAS, pp 10–198 2

    Bate et al(1971)Bate, Mueller, and White. Bate R, Mueller D, White J (1971) Fundamen-tals of Astrodynamics. Courier Dover Publications 2

    Battin(1999). Battin RH (1999) An introduction to the mathematics and methods of as-trodynamics. AIAA 2, 5, 7

    Gauss(1857). Gauss C (1857) Theory of the motion of the heavenly bodies moving aboutthe sun in conic sections: a translation of Carl Frdr. Gauss” Theoria motus”: With anappendix. By Ch. H. Davis. Little, Brown and Comp. 5

    Gooding(1990). Gooding R (1990) A procedure for the solution of lambert’s orbitalboundary-value problem. Celestial Mechanics and Dynamical Astronomy 48(2):145–1652, 5, 8, 11

    Izzo(2006). Izzo D (2006) Lambert’s problem for exponential sinusoids. Journal of guidance,control, and dynamics 29(5):1242–1245 1

    Klumpp(1991). Klumpp A (1991) Relative Performance of Lambert Solvers 1: Zero Revo-lution Methods. Tech. rep., Jet Propulsion Laboratory, No. 19930013090 2

    Lancaster and Blanchard(1969). Lancaster E, Blanchard R (1969) A unied form of Lam-bert’s theorem. National Aeronautics and Space Administration 2, 8

    Luo et al(2011)Luo, Meng, and Han. Luo Q, Meng Z, Han C (2011) Solution algorithm of aquasi-lamberts problem with xed ight-direction angle constraint. Celestial Mechanicsand Dynamical Astronomy 109(4):409–427 1

    Parrish(2012). Parrish NL (2012) Accelerating lamberts problem on the gpu in matlab.PhD thesis, California Polytechnic State University 2

    Peterson and et al.(1991). Peterson G, et al (1991) Relative Performance of Lam-bert Solvers 1: Zero Revolution Methods. Advances in the Astronautical Sciences136(1):14951510 2

    Rauh and Parisi(2014). Rauh A, Parisi J (2014) Near distance approximation in astrody-namical applications of lamberts theorem. Celestial Mechanics and Dynamical Astron-omy 118(1):49–74 1

    Wagner and Wie(2011). Wagner S, Wie B (2011) GPU Accelerated Lambert Solution Meth-ods for the Orbital Targeting Problem. Spaceight Mechanics 140 2