Lambert's problem
≈ 11 min read
Names in other languages
No names in other languages are held for this entry yet.
Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.
In celestial mechanics, Lambert's problem is concerned with the determination of an orbit from two position vectors and the time of flight, posed in the 18th century by Johann Heinrich Lambert and formally solved with mathematical proof by Joseph-Louis Lagrange. It has important applications in the areas of rendezvous, targeting, guidance, and preliminary orbit determination. Suppose a body under the influence of a central gravitational force is observed to travel from point P 1 on its conic trajectory, to a point P 2 in a time T. The time of flight is related to other variables by Lambert's theorem, which states: :The transfer time of a body moving between two points on a conic trajectory is a function only of the sum of the distances of the two points from the origin of the force, the linear distance between the points, and the semimajor axis of the conic. Stated another way, Lambert's problem is the boundary value problem for the differential equation \ddot {\mathbf r } = -\mu \frac {\hat \mathbf r } {r^2} of the two-body problem when the mass of one body is infinitesimal; this subset of the two-body problem is known as the Kepler orbit. The precise formulation of Lambert's problem is as follows: Two different times t_1 ,\, t_2 and two position vectors \mathbf r_1 = r_1 \hat \mathbf r_1 ,\, \mathbf r_2 = r_2 \hat \mathbf r_2 are given.…
In celestial mechanics, Lambert's problem is concerned with the determination of an orbit from two position vectors and the time of flight, posed in the 18th century by Johann Heinrich Lambert and formally solved with mathematical proof by Joseph-Louis Lagrange. It has important applications in the areas of rendezvous, targeting, guidance, and preliminary orbit determination. Suppose a body under the influence of a central gravitational force is observed to travel from point P 1 on its conic trajectory, to a point P 2 in a time T. The time of flight is related to other variables by Lambert's theorem, which states: The transfer time of a body moving between two points on a conic trajectory is a function only of the sum of the distances of the two points from the origin of the force, the linear distance between the points, and the semimajor axis of the conic. Stated another way, Lambert's problem is the boundary value problem for the differential equation \ddot {\mathbf r } = -\mu \frac {\hat \mathbf r } {r^2} of the two-body problem when the mass of one body is infinitesimal; this subset of the two-body problem is known as the Kepler orbit. The precise formulation of Lambert's problem is as follows: Two different times t_1 ,\, t_2 and two position vectors \mathbf r_1 = r_1 \hat \mathbf r_1 ,\, \mathbf r_2 = r_2 \hat \mathbf r_2 are given. Find the solution \mathbf r(t) satisfying the differential equation above for which \begin{align} \mathbf r(t_1) = \mathbf r_1 \\ \mathbf r(t_2) = \mathbf r_2 \end{align}
Initial geometrical analysis
The three points F_1 , the centre of attraction, P_1 , the point corresponding to vector \bar r_1 , P_2 , the point corresponding to vector \bar r_2 , form a triangle in the plane defined by the vectors \bar r_1 and \bar r_2 as illustrated in figure 1. The distance between the points P_1 and P_2 is 2d , the distance between the points P_1 and F_1 is r_1 = r_m-A and the distance between the points P_2 and F_1 is r_2 = r_m+A . The value A is positive or negative depending on which of the points P_1 and P_2 that is furthest away from the point F_1 . The geometrical problem to solve is to find all ellipses that go through the points P_1 and P_2 and have a focus at the point F_1 The points F_1 , P_1 and P_2 define a hyperbola going through the point F_1 with foci at the points P_1 and P_2 . The point F_1 is either on the left or on the right branch of the hyperbola depending on the sign of A . The semi-major axis of this hyperbola is |A| and the eccentricity E is \frac{d} . This hyperbola is illustrated in figure 2. Relative the usual canonical coordinate system defined by the major and minor axis of the hyperbola its equation is with For any point on the same branch of the hyperbola as F_1 the difference between the distances r_2 to point P_2 and r_1 to point P_1 is For any point F_2 on the other branch of the hyperbola corresponding relation is i.e. But this means that the points P_1 and P_2 both are on the ellipse having the focal points F_1 and F_2 and the semi-major axis The ellipse corresponding to an arbitrary selected point F_2 is displayed in figure 3. {{NumBlk|| d = \frac{\sqrt{ {r_1}^2 + {r_2}^2 - 2 r_1 r_2 \cos \alpha}}{2} | }} and the semi-major axis (with sign!) of the hyperbola discussed above is The eccentricity (with sign!) for the hyperbola is and the semi-minor axis is The coordinates of the point F_1 relative the canonical coordinate system for the hyperbola are (note that E has the sign of r_2 - r_1 ) {{NumBlk|| y_0 = B \sqrt{{ \left(\frac{x_0}{A}\right) } ^2 - 1} | }} where Using the y-coordinate of the point F_2 on the other branch of the hyperbola as free parameter the x-coordinate of F_2 is (note that A has the sign of r_2 - r_1 ) {{NumBlk|| x = A \sqrt{1+ {\left(\frac{y}{B}\right)}^2} | }} The semi-major axis of the ellipse passing through the points P_1 and P_2 having the foci F_1 and F_2 is The distance between the foci is {{NumBlk|| \sqrt{ {(x_0 - x)}^2 + {(y_0 - y)}^2} | }} and the eccentricity is consequently {{NumBlk|| e = \frac { \sqrt{{(x_0 - x)}^2 + {(y_0 - y)}^2}} {2 a} | }} The true anomaly \theta_1 at point P_1 depends on the direction of motion, i.e. if \sin \alpha is positive or negative. In both cases one has that where {{NumBlk|| f_x = \frac{x_0 - x }{\sqrt{{(x_0 - x)}^2 + {(y_0 - y)}^2} } | }} {{NumBlk|| f_y = \frac{y_0 - y }{\sqrt{{(x_0 - x)}^2 + {(y_0 - y)}^2} } | }} is the unit vector in the direction from F_2 to F_1 expressed in the canonical coordinates. If \sin \alpha is positive then If \sin \alpha is negative then With semi-major axis eccentricity initial true anomaly being known functions of the parameter y the time for the true anomaly to increase with the amount \alpha is also a known function of y. If t_2 -t_1 is in the range that can be obtained with an elliptic Kepler orbit corresponding y value can then be found using an iterative algorithm. In the special case that r_1 = r_2 (or very close) A = 0 and the hyperbola with two branches deteriorates into one single line orthogonal to the line between P_1 and P_2 with the equation Equations ( ) and ( ) are then replaced with {{NumBlk|| y_0 = \sqrt {{r_m}^2 - d^2} | }} ( ) is replaced by and ( ) is replaced by {{NumBlk|| a = \frac{r_m + \sqrt {d^2 + y^2}}{2} | }}
Numerical example
Assume the following values for an Earth centered Kepler orbit r 1 = 10000 km r 2 = 16000 km α = 100° These are the numerical values that correspond to figures 1, 2, and 3. Selecting the parameter y as 30000 km one gets a transfer time of 3072 seconds assuming the gravitational constant to be \mu = 398603 km 3 /s 2 . Corresponding orbital elements are semi-major axis = 23001 km eccentricity = 0.566613 true anomaly at time t 1 = −7.577° true anomaly at time t 2 = 92.423° This y-value corresponds to Figure 3. With r 1 = 10000 km r 2 = 16000 km α = 260° one gets the same ellipse with the opposite direction of motion, i.e. true anomaly at time t 1 = 7.577° true anomaly at time t 2 = 267.577° = 360° − 92.423° and a transfer time of 31645 seconds. The radial and tangential velocity components can then be computed with the formulas (see the Kepler orbit article) V_r = \sqrt{\frac {\mu}{p}} \, e \sin (\theta) V_t = \sqrt{\frac {\mu}{p}} \left(1 + e \cos \theta\right). The transfer times from P 1 to P 2 for other values of y are displayed in Figure 4.
Practical applications
The most typical use of this algorithm to solve Lambert's problem is certainly for the design of interplanetary missions. A spacecraft traveling from the Earth to for example Mars can in first approximation be considered to follow a heliocentric elliptic Kepler orbit from the position of the Earth at the time of launch to the position of Mars at the time of arrival. By comparing the initial and the final velocity vector of this heliocentric Kepler orbit with corresponding velocity vectors for the Earth and Mars a quite good estimate of the required launch energy and of the maneuvers needed for the capture at Mars can be obtained. This approach is often used in conjunction with the patched conic approximation. This is also a method for orbit determination. If two positions of a spacecraft at different times are known with good precision (for example by GPS fix) the complete orbit can be derived with this algorithm, i.e. an interpolation and an extrapolation of these two position fixes is obtained.
Parametrization of the transfer trajectories
It is possible to parametrize all possible orbits passing through the two points \mathbf r_1 and \mathbf r_2 using a single parameter \gamma . The semi-latus rectum p is given by p = \frac{\left(\left|\mathbf{r}_1\right| + \left|\mathbf{r}_2\right|\right)\left(\left|\mathbf{r}_1\right|\left|\mathbf{r}_2\right|-\mathbf{r}_1\cdot\mathbf{r}_2 +\gamma \hat\mathbf{N}\cdot(\mathbf{r}_1\times\mathbf{r}_2)\right)}{\left|\mathbf{r}_2-\mathbf{r}_1\right|^2} The eccentricity vector \mathbf e is given by \mathbf{e} = \frac{\left(\left(|\mathbf{r}_1| - |\mathbf{r}_2|\right)\left(\mathbf{r}_2 - \mathbf{r}_1\right)-\gamma \left(r_1 + r_2\right) \hat\mathbf{N}\times(\mathbf{r}_2-\mathbf{r}_1)\right)} is the normal to the orbit. Two special values of \gamma exists The extremal \gamma : \gamma_0 = - \frac{\left|\mathbf r_1\right|\left|\mathbf r_2\right| - \mathbf r_1 \cdot \mathbf r_2}{\hat\mathbf{N} \cdot (\mathbf r_1 \times \mathbf r_2)} The \gamma that produces a parabola: \gamma_p = \frac{\sqrt{2\left(\left|\mathbf r_1\right|\left|\mathbf r_2\right| - \mathbf r_1 \cdot \mathbf r_2\right)}}{\left|\mathbf r_1 + \mathbf r_2\right|}
Open source code
From MATLAB central PyKEP a Python library for space flight mechanics and astrodynamics (contains a Lambert's solver, implemented in C++ and exposed to python via boost python) A simple two-dimensional Lambert solver/orbit plotter in Microsoft Excel
References
External links
Lambert's theorem through an affine lens. Paper by Alain Albouy containing a modern discussion of Lambert's problem and a historical timeline. Lambert's problem in orbital dynamics: a self-contained introduction. Paper by Lenox Baloglou, Parneet Gill and Tonatiuh Sánchez-Vizuet that presents a thorough description of the problem leading to Lagrange's solution algorithm. This expository text assumes a minimal background in physics and mathematics. (Journal version) Connect the dots...finding all possible orbits between two points. Eur. J. Phys. 46, 045004 (2025). Paper by P. R. Blanco that simplifies orbit fitting in the plane and suggests a numerical search on semi-latus rectum to solve the Lambert problem for direct, prograde transfers. With supplementary materials including a 2D orbit solver/plotter in MS Excel. Revisiting Lambert's Problem. Paper by Dario Izzo containing an algorithm for providing an accurate guess for the householder iterative method that is as accurate as Gooding's Procedure while computationally more efficient. Lambert's Theorem - A Complete Series Solution. Paper by James D. Thorne with a direct algebraic solution based on hypergeometric series reversion of all hyperbolic and elliptic cases of the Lambert Problem.
Text derived from https://en.wikipedia.org/w/index.php?oldid=1363971699 under CC BY-SA 4.0; modifications have been made.