NavList:
A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
From: Noah Harris
Date: 2026 Oct 30, 20:49 -0700
Hi all, this is my first post after lurking for a while.
I attended Frank's Advanced Celestial last weekend, and he mentioned a geometric algebra method for calculating the location of where two LOPs intersect without resorting to plotting. I got to thinking about how this might be done using other methods since I don't know anything about Linear/Geometric Algebra, and I think I found a working solution (I know there are other, better solutions, like the one in the Nautical Alamanac).
The basic idea is that you take the usual ABC procedure for inputting a DR_L (latitude) and retrieving and LHA₁ (LHA for the first body), but you convert LHA₁ to longitude, and longitude to LHA₂ (LHA for the second body), then run that though ABCʹ, which is just the ABC procedure reworked so that you input LHA₂ and retrieve the corresponding latitude for that point on the second body's LOP. Then you just rinse and repeat until your coordinates change less than .1ʹ for each iteration. I think this would be in the same family as al-Kashi's procedure for determining sin(1°), the fixed point iteration method. This solution isn't perfect: two bodies exactly mirroring each other along your meridian or prime vertical will not arrive at a solution, and two bodies nearly mirroring each other will give you such tiny increments in position that you'll never get the point of intersection. If my mental model is correct, you'll "only" need two iterations with an ideal sight, one body due N/S, and another due E/W.
Anyway, I wanted to know if this 'solution' had been discussed before or if it even makes sense; I'm trying to build my intuition for celestial navigation and spherical trig, so I'd welcome any input. I have to admit I worked all day on turning the ABC procedure "inside-out" and I'm feeling a little burnt out right now (I haven't done much algebra in a while), and I'm not positive my work came out right. I certainly don't have a very good grasp on what it's "doing", only that it might be derived from from the ABC procedure, if my math isn't wrong.
d = declination
L = latitude
λ = longitude
z = zenith distance
// ABC Procedure
LHA₁ = acos((cos(z₁) / (cos(d₁)cos(L))) - tan(d₁)tan(L))
// (360° - LHA₁) if it's to your east
// Get longitude from LHA
λ = LHA₁ + GHA₁
// sanity check: fiddle with signs and addition/subtraction so it makes sense
// Retrieve your LHA with the second body
LHA₂ = λ + GHA₂
// sanity check: fiddle with signs and addition/subtraction so it makes sense
// Plug LHA₂ into ABCʹ to retrieve a new latitude
L = 2atan[(sin(d₂) ± √(sin²(z₂)-cos²(d₂)sin²(LHA₂))) / (cos(d₂)cos(LHA₂) + cos(z₂))]
// different cases of declination and longitude? You'd have to account for that here, probably by flipping a sign or two
// Plug L into ABC and repeat.






