A Lambert Problem Solver

MontBlanc2012

Active member
Joined
Aug 13, 2017
Messages
138
Reaction score
26
Points
28
Lambert’s problem is concerned with the determination of an orbit from two position vectors - an initial point, [MATH]\mathbf{R}_1[/MATH]; and a final point, [MATH]\mathbf{R}_2[/MATH] with radius [MATH]r_1[/MATH] and [MATH]r_2[/MATH], respectively; a known time-of-flight, [MATH]\Delta T[/MATH]; and a central Keplerian gravitational field of known gravitational parameter, [MATH]\mu[/MATH]. This is a classic dynamical problem and much time and effort has been spent developing sophisticated solutions to the problem.

'Off-the-shelf' Lambert Problem solvers are available (albeit with a bit of snuffling around on the internet) but, to be frank, they are largely presented as 'black box' solutions and written in programming languages that rarely play nice with my own fumbling in astrodynamics. In light of these, I've had a go a developing my own Lambert Problem solver. A short write-up of those efforts is attached to this post as a .pdf file.

Although other publicly available solvers are available, it may be of interest (or of use) to others to have a robust (and moderately fast) algorithm that can be implemented in a variety of programming languages and contexts. In the .pdf, I've set aside details of theory (steeped, as it is, in the Byzantine workings of the Kustaanheimo-Stiefel (KS) regularising transformation) and simply presented the algorithmic steps; a Python implementation (for multi-revolution elliptical case) of that algorithm; and some worked examples based on this Python implementation. The algorithm can be implemented in other languages and the Python code may serve as a template for doing this.

Should anyone really be perverse enough to want to come to grips with mathematical proofs, they should contact me and I'll do my best to oblige.

Enjoy.
 

Attachments

  • Lambert Problem.pdf
    229.2 KB · Views: 32
Last edited:

asbjos

tuanibrO
Addon Developer
Joined
Jun 22, 2011
Messages
696
Reaction score
259
Points
78
Location
This place called "home".
Hi, I just want to say that I really appreciate the effort that went into the typesetting. Really stellar work! I mean, this LaTeX is delicious! It's almost distractingly good. :love:

May I ask what your background is? (education/occupation)
And then also: why are you doing this? Is it for a book or publication? Or do you put all this effort into a single forum post?!

And seeing how much effort you put into this, I feel obligated to let you know that there's a typo on the bottom of page 3 (right bracket inside vector).

In any case: thank you again!

---------- Post added at 19:04 ---------- Previous post was at 18:48 ----------

And quotations should be typeset
Code:
`text'
, by the way.
 

MontBlanc2012

Active member
Joined
Aug 13, 2017
Messages
138
Reaction score
26
Points
28
May I ask what your background is? (education/occupation)
And then also: why are you doing this? Is it for a book or publication? Or do you put all this effort into a single forum post?!

Hi, asbjos

re: education/occupation. As you might have guessed, I have some background in maths and physics. However, for most of my professional life, I've functioned as a business developer, commercial contract negotiator and a regulator. I have no academic affiliations.

re: why am I doing this. No, I have no desire to publish a book or paper. I have two reasons for posting. First, as part of a tidy house policy - corralling a number of disparate thoughts on the subject into some semblance of a structured form. And there is no better way of doing this than to put in the effort to write up a semi-formal note to order and encapsulate those thoughts. And second, of course, to produce something that may be of use to others.

As for the prettiness of the LaTeX, I think we have Edward R. Tufte for that. He devoted much of his life to developing a design style and philosophy for the presentation of technical material in an engaging way. LaTeX implements Tufte's design style via the Tufte-LaTeX document class. And since, let's face it, a note on a Lambert Problem solver falls easily into the category of the 'thoroughly turgid', anything that one can do to make digestion of the material easier is probably a good thing.

Comments re typo and typesetting noted and appreciated.
 
Last edited:
Top