NavList:
A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
Re: lunars with and without altitudes
From: Dave Walden
Date: 2006 Nov 25, 22:19 -0800
From: Dave Walden
Date: 2006 Nov 25, 22:19 -0800
LOP via azimuth-intercept without horizon
Since the lunar distance with GMT method still seems to be of interest,
I'll mention a little calculation I've done for my own amusement.
After carrying out quite a few calculations, (including a clearing of
lunar distance via the fundamental equation with log tables---only
takes 14 table look ups!) (thanks to Frank for bringing up the topic
and for his calculator which I've used to confirm my results) and doing
a few plots, I began to realize it would be possible to avoid the
interpolations and iterations if one were willing to do some (well
quite a lot actually) algebra.
One sets up the equation for cleared lunar distance retaining the
dependencies on latitude and longitude. If one then takes the partial
derivatives of this equation with respect to latitude and to latitude,
the ratio of these partials gives the azimuth. The difference between
true and cleared lunar distances divided by the magnitude of a partial
then gives the intercept.
Below is a session using a CA (computer algebra) program called maxima.
(Freeware, available for Linux and windows.) It can be seen that
I've used the example from Frank with Nautical Almanac data. The
Zn's are in degrees CW from North. The intercepts are in degrees, so
multiply by 60 to get minutes.
batching #p/mnt/auto/floppy/lunarGEN.mac
(%i2) diff : true
(%o2) true
(%i3) fpprec : 7
(%o3) 7
%pi x
(%i4) sind(x) := sin(-----)
180
%pi x
(%o4) sind(x) := sin(-----)
180
%pi x
(%i5) cosd(x) := cos(-----)
180
%pi x
(%o5) cosd(x) := cos(-----)
180
(%i6) LDtrue(gha1, dec1, gha2, dec2) :=
180 acos(cosd(dec1) cosd(dec2) cosd(gha1 - gha2) + sind(dec1)
sind(dec2))
-------------------------------------------------------------------------
%pi
(%i7) ALTtrue(LAT, LONG, GHA, DEC) :=
180 asin(cosd(LAT) cosd(DEC) cosd(GHA - LONG) + sind(LAT)
sind(DEC))
--------------------------------------------------------------------
%pi
sind(HP) cosd(ALT)
180 atan(----------------------)
1 - sind(HP) sind(ALT)
(%i8) ALTPARALLAX(HP, ALT) := --------------------------------
%pi
%pi (90 - ALT)
58.276 tan(--------------)
180
(%i9) REFRAC(ALT) := --------------------------
60
(%i10) LDclear(LDobs, A, a, H, h) :=
(cosd(LDobs) - sind(a) sind(h)) cosd(A)
cosd(H)
180 acos(sind(A) sind(H) +
-----------------------------------------------)
cosd(a) cosd(h)
---------------------------------------------------------------------------
%pi
(%i11) LATAP : 38
(%o11) 38
(%i12) LONGAP : 70
(%o12) 70
6.0
(%i13) GHAmoon1 : --- + 47
60
(%o13) 47.1
38.9
(%i14) DECmoon1 : ---- + 27
60
(%o14) 27.64833
58.4
(%i15) HPmoon1 : ----
60
(%o15) 0.97333
2.1
(%i16) GHAstar1 : --- + 3
60
(%o16) 3.035
0.7
(%i17) DECstar1 : --- + 28
60
(%o17) 28.01167
29.2
(%i18) LDobs1 : ---- + 38
60
(%o18) 38.48667
(%i19) LDtrue1 : ev(LDtrue(GHAmoon1, DECmoon1, GHAstar1, DECstar1),
numer)
(%o19) 38.75083
(%i20) A1 : ALTtrue(LAT, LONG, GHAmoon1, DECmoon1)
REFRAC(A1)
(%i21) a1 : - ALTPARALLAX(HPmoon1, A1) + ---------- + A1
60
(%i22) H1 : ALTtrue(LAT, LONG, GHAstar1, DECstar1)
REFRAC(H1)
(%i23) h1 : ---------- + H1
60
(%i24) LDclear1 : ev(LDclear(LDobs1, A1, a1, H1, h1), LAT : LATAP,
LONG :
LONGAP, numer)
(%o24) 38.76112
(%i25) diffLAT : diff(LDclear(LDobs1, A1, a1, H1, h1), LAT)
(%i26) dLDcleardLAT : ev(diffLAT, LAT : LATAP, LONG : LONGAP, numer)
(%o26) - 0.00742
(%i27) diffLONG : diff(LDclear(LDobs1, A1, a1, H1, h1), LONG)
(%i28) dLDcleardLONG : ev(diffLONG, LAT : LATAP, LONG : LONGAP, numer)
(%o28) 0.0119
dLDcleardLONG
--------------
- dLDcleardLAT
180 atan(--------------)
cosd(LATAP)
(%i29) Zn1 : ev(------------------------, numer)
%pi
(%o29) 63.83353
(LDtrue1 - LDclear1) cosd(Zn1)
(%i30) Int1 : ev(------------------------------, numer)
dLDcleardLAT
(%o30) 0.61094
22.8
(%i31) GHAmoon2 : ---- + 46
60
(%o31) 46.38
38.7
(%i32) DECmoon2 : ---- + 27
60
(%o32) 27.645
58.4
(%i33) HPmoon2 : ----
60
(%o33) 0.97333
38.1
(%i34) GHAstar2 : ---- + 49
60
(%o34) 49.635
31.5
(%i35) DECstar2 : ---- + 16
60
(%o35) 16.525
23.7
(%i36) LDobs2 : ---- + 11
60
(%o36) 11.395
(%i37) LDtrue2 : ev(LDtrue(GHAmoon2, DECmoon2, GHAstar2, DECstar2),
numer)
(%o37) 11.51992
(%i38) A2 : ALTtrue(LAT, LONG, GHAmoon2, DECmoon2)
REFRAC(A2)
(%i39) a2 : - ALTPARALLAX(HPmoon2, A2) + ---------- + A2
60
(%i40) H2 : ALTtrue(LAT, LONG, GHAstar2, DECstar2)
REFRAC(H2)
(%i41) h2 : ---------- + H2
60
(%i42) LDclear2 : ev(LDclear(LDobs2, A2, a2, H2, h2), LAT : LATAP,
LONG :
LONGAP, numer)
(%o42) 11.50826
(%i43) diffLAT : diff(LDclear(LDobs2, A2, a2, H2, h2), LAT)
(%i44) dLDcleardLAT : ev(diffLAT, LAT : LATAP, LONG : LONGAP, numer)
(%o44) 0.01669
(%i45) diffLONG : diff(LDclear(LDobs2, A2, a2, H2, h2), LONG)
(%i46) dLDcleardLONG : ev(diffLONG, LAT : LATAP, LONG : LONGAP, numer)
(%o46) - 0.00133
dLDcleardLONG
--------------
- dLDcleardLAT
180 atan(--------------)
cosd(LATAP)
(%i47) Zn2 : ev(------------------------, numer)
%pi
(%o47) 5.789598
(LDtrue2 - LDclear2) cosd(Zn2)
(%i48) Int2 : ev(------------------------------, numer)
dLDcleardLAT
(%o48) 0.69511
(%i49)
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to NavList@navlist.net
To , send email to NavList-@navlist.net
-~----------~----~----~----~------~----~------~--~---






