Welcome to the NavList Message Boards.

NavList:

A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding

Compose Your Message

Message:αβγ
Message:abc
Add Images & Files
    Name or NavList Code:
    Email:
       
    Reply
    Missing messages again: was [NAV-L] Position from crossing two circles
    From: George Huxtable
    Date: 2006 Jun 12, 09:21 +0100

    An interesting posting in the thread  "Position from crossing two
    circles : was [NAV-L] Reality check"
    
    was sent: Thursday, June 08, 2006 7:48 AM, by Andres Ruiz.
    
    It included, within the text of the message I received, a diagram of a
    sphere with two intersecting circles drawn on it. That in itself is
    unusual for Nav-l messages, which are usually sent, as requested, in
    text-only mode; but I am not opening that question. Presumably the
    message must have been sent in HTML; but if a plain-text version
    accompanied it, perhaps I would be unaware.
    
    What interests me more is that following a reply to that message,
    Frank Reed wrote, on that same day,
    
    "I didn't receive this message  and there's no evidence of it in the
    irbs
    archive that I can find --possibly it  was a private message-- but I
    would be
    interested in receiving a copy. Could  someone forward a copy to me?
    Thanks."
    
    This seems to me to be worth following-up, for any light it may throw
    on the question of missing messages, which seem to be still plaguing
    the list.
    
    I looked into responding to Frank's request, but when I tried to
    forward a copy, it had that diagram stripped out, perhaps because my
    own emailer program is set to send in plain-text only. So I gave up on
    that. Later, Frank informed us that a copy had been forwarded to him
    from another member, so all was well. I wonder if that forwarded copy
    included the original diagram.
    
    On request, Andres resent his original posting on 9 June. In fact,
    there were 3 resends on that day, so altogether 4 such postings were
    sent altogether. There may possibly have been more, of course, but
    those were what reached me. All included that diagram. There were, in
    addition, shorter postings from him around that time on that same
    topic, which do not concern me.
    
    I wonder how many (if any) copies of that original Andes Ruiz posting
    arrived in Frank's mailbox, not counting any forwarded copies that
    arrived from elsewhere. Did they include that diagram? From those that
    keep an eye on the i-DEADLINK-com archive, how many copies of Andres'
    original posting appeared? Did they include the diagram? Did other
    members fail to receive all four copies of that message, with its
    diagram? If less than four, how many?
    
    Only by collating such evidence do we have any hope of discovering
    what's going wrong.
    
    George.
    
    contact George Huxtable at george@huxtable.u-net.com
    or at +44 1865 820222 (from UK, 01865 820222)
    or at 1 Sandy Lane, Southmoor, Abingdon, Oxon OX13 5HX, UK.
    
    
    
    
    
    
    
    Geoge, the method is not impossible for n observations or running fix.
    
    Mike, here you have the math for a fix from two circles of position
    (COP)
    
    Enjoy.
    
    
    
    1. Position from two circles of equal altitude
    
    
    
    The equation of the plane containing a COP in rectangular coordinates
    is:  ax+by+cz-p = 0
    
    For the two bodies you have two equations, two planes intersect in a
    line.
    
    The two possible solutions for the observer's position, P and P', are
    the intersections of that line with the unit sphere  x2+y2+z2 = 1
    
    
    
    the math, (in C++):
    
    
    
    /*
    
                File: fix2circulosAltura.cpp
    
    
    
                This file contains proprietary information of Andr?s Ruiz
    Gonzalez
    
                Open source
    
    
    
                Andr?s Ruiz. San Sebastian - Donostia. Gipuzkoa
    
                Copyright (c) 2006
    
    */
    
    
    
    #include "stdafx.h"
    
    #include 
    
    #include "..\LSfix\mathlib.hpp"
    
    
    
    
    
    double raiz1 = 0;
    
    double raiz2 = 0;
    
    
    
    
    
    void Ecuacion2grado( double a, double b, double c )
    
    {
    
     double f = b*b-4.0*a*c;
    
     raiz1 = (-b+sqrt(f))/2.0/a;
    
     raiz2 = (-b-sqrt(f))/2.0/a;
    
    }
    
    
    
    
    
    // Inputs
    
    double GHA1, dec1, HO1;
    
    double GHA2, dec2, HO2;
    
    // Outputs
    
    double B1, L1;
    
    double B2, L2;
    
    
    
    void PosicionPorInterseccion2circulosAltura()
    
    {
    
     double a1 = COS(360.0-GHA1) * COS(dec1);
    
     double b1 = SIN(360.0-GHA1) * COS(dec1);
    
     double c1 = SIN(dec1);
    
     double p1 = COS(90.0-HO1);
    
    
    
     double a2 = COS(360.0-GHA2) * COS(dec2);
    
     double b2 = SIN(360.0-GHA2) * COS(dec2);
    
     double c2 = SIN(dec2);
    
     double p2 = COS(90.0-HO2);
    
    
    
     double A = a1*b2 - a2*b1;
    
     double B = b2*c1 - b1*c2;
    
     double C = b2*p1 - b1*p2;
    
     double D = a1*c2 - a2*c1;
    
     double E = b1*c2 - b2*c1;
    
     double F = c2*p1 - c1*p2;
    
    
    
     double K = F/E;
    
     double J = D/E;
    
     double G = C/B;
    
     double H = A/B;
    
    
    
     double alpha = 1.0+J*J+H*H;
    
     double beta  = -2.0*K*J-2.0*G*H;
    
     double gamma = K*K+G*G-1.0;
    
    
    
     Ecuacion2grado( alpha, beta, gamma );
    
    
    
     double x1 = raiz1;
    
     double y1 = K-J*x1;
    
     double z1 = G-H*x1;
    
    
    
     double x2 = raiz2;
    
     double y2 = K-J*x2;
    
     double z2 = G-H*x2;
    
    
    
     B1 = ATAN( z1/sqrt(x1*x1+y1*y1) );
    
     L1 = ATAN( y1/x1 );
    
    
    
     B2 = ATAN( z2/sqrt(x2*x2+y2*y2) );
    
     L2 = ATAN( y2/x2 );
    
    }
    
    
    
    void CAstroLSDlg::OnCalcular()
    
    {
    
     UpdateData();
    
    /*
    
     GHA1 = 347.78;
    
     dec1 = -16.72;
    
     HO1 = 19.55;
    
    
    
     GHA2 = 334.23;
    
     dec2 = 5.22;
    
     HO2 = 28.5;
    
    */
    
    
    
     GHA1 = 20.06;
    
     dec1 = 16.52;
    
     HO1  = 90-26.87;
    
    
    
     GHA2 = 332.71;
    
     dec2 = 28.02;
    
     HO2  = 90-48.02;
    
    
    
     PosicionPorInterseccion2circulosAltura();
    
    
    
     CString tmp = "";
    
     tmp.Format( "1(%.4lf ?, %.4lf ?)  2(%.4lf ?, %.4lf ?)", B1, L1, B2,
    L2 );
    
     m_output = tmp;
    
    
    
     UpdateData( FALSE );
    
    }
    
    
    
    
    
    2. Position from n circles of equal altitude
    
    Here the problem is there are a lot of crossings between the circles.
    Metcalf & Metcalf, (On the overdetermined celestial fix - Refer to the
    Bibliography section at the link below), developed a method based on
    Lagrange Least-Squares minimization of the equation:
    
    S ( Sin Ho - [ sin Dec  sin Lat + cos Dec  cos Lat cos(GHA+Lon)  ]2 )
    
    
    
    The result is the MPP(Lat, Lon) for n circles of position. No initial
    position is needed. Also support a running fix.
    
    
    
    
    
    MIKE:
    
    What is the C++ application you refer for calculate and plot the COP?,
    where can I found it?
    
    Thanks.
    
    
    
    http://www.geocities.com/CapeCanaveral/Runway/3568/index.html
    
    Andr?s
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    -----Mensaje original-----
    
    De: Navigation Mailing List
    [mailto:NAVIGATION-L@LISTSERV.WEBKAHUNA.COM] En nombre de Michael Dorl
    
    Enviado el: mi?rcoles, 07 de junio de 2006 13:39
    
    Para: NAVIGATION-L@LISTSERV.WEBKAHUNA.COM
    
    Asunto: Re: [NAV-L] Position from crossing two circles : was [NAV-L]
    Reality check
    
    
    
    At 06:10 AM 6/7/2006, George Huxtable wrote:
    
    
    
    >I have written a program in bastard-Basic which runs on my 1980s
    >Casio
    
    >programmable calculator (FX 730P or FX 795P), and if anyone is
    
    >interested would be happy to send it or post it up. It would be
    >simple
    
    >to adapt it to another machine. It takes the 6 quantities, dec, GHA,
    
    >and altitude for each of two bodies, and returns two possible
    
    >positions in terms of lat and long, for the user to choose the
    
    >appropriate one. It does not require a DR or AP, and provides an
    >exact
    
    >result without going through an iteration process.
    
    >
    
    >It's not original, in that versions of the method have been described
    
    >previously beforehand. For example, in an article by George Bennett
    >in
    
    >the journal "Navigation"  (which is, I think, the American one) Issue
    
    >no. 4, vol 26, winter 1979/80, titled " General conventions and
    
    >solutions- their use in celestial navigation", and to the book
    
    >"Practical navigation with your calculator", by Gerry Keys, (Stanford
    
    >maritime, 1984), section 11.12. The method has also been described in
    
    >"The K-Z position solution for the double sight", in European Journal
    
    >of Navigation, vol.1 no, 3, December 2003, pages 43-49, but that
    
    >article was bedevilled by printing errors that render it more-or-less
    
    >unintelligible, which were corrected in a later issue. Not to mention
    
    >several serious errors and misunderstandings by the author, which
    >have
    
    >never been acknowldged or corrected in that journal.
    
    
    
    George:
    
    
    
    Do any of these sources spell out the math in detail?  I've searched
    in
    
    vain for a complete algorithm so a long time ago, I sat down and
    worked out
    
    the math.  One of the tricky things is determining what quadrant
    angles lie
    
    in when doing a inverse trig function.  I have a c++ windows
    application
    
    which will find all the equal altitude circle intersections for a set
    of
    
    observations.  It also can plot the equal altitude circles on a world
    map.
    
    
    
    Mike
    
    
    

       
    Reply
    Browse Files

    Drop Files

    NavList

    What is NavList?

    Get a NavList ID Code

    Name:
    (please, no nicknames or handles)
    Email:
    Do you want to receive all group messages by email?
    Yes No

    A NavList ID Code guarantees your identity in NavList posts and allows faster posting of messages.

    Retrieve a NavList ID Code

    Enter the email address associated with your NavList messages. Your NavList code will be emailed to you immediately.
    Email:

    Email Settings

    NavList ID Code:

    Custom Index

    Subject:
    Author:
    Start date: (yyyymm dd)
    End date: (yyyymm dd)

    Visit this site
    Visit this site
    Visit this site
    Visit this site
    Visit this site
    Visit this site