Positional Astronomy: Spherical trigonometry

Posted: August 18, 2011 in Android, Java, Mapping

Positional Astronomy:
Spherical trigonometry

A great-circle arc, on the sphere, is the analogue of a straight line, on the plane.

Where two such arcs intersect, we can define the spherical angle
either as angle between the tangents to the two arcs, at the point of intersection,
or as the angle between the planes of the two great circles where they intersect at the centre of the sphere.
(Spherical angle is only defined where arcs of great circles meet.)

A spherical triangle is made up of three arcs of great circles, all less than 180°.
The sum of the angles is not fixed, but will always be greater than 180°.
If any side of the triangle is exactly 90°, the triangle is called quadrantal.

There are many formulae relating the sides and angles of a spherical triangle.
In this course we use only two: the sine rule and the cosine rule.

diagramConsider a triangle ABC on the surface of a sphere with radius = 1.

(See note)

We use the capital letters A, B, C to denote the angles at these corners;
we use the lower-case letters a, b, c to denote the opposite sides.
(Remember that, in spherical geometry, the side of a triangle is the arc of a great circle,
so it is also an angle.)

Turn the sphere so that A is at the “north pole”,
and let arc AB define the “prime meridian”.

Set up a system of rectangular axes OXYZ:
O is at the centre of the sphere;
OZ passes through A;
OX passes through arc AB (or the extension of it);
OY is perpendicular to both.
Find the coordinates of C in this system:
x = sin(b) cos(A)
y = sin(b) sin(A)
z = cos(b)


Now create a new set of axes,
keeping the y-axis fixed and moving the “pole” from A to B
(i.e. rotating the x,y-plane through angle c).
The new coordinates of C are
x’ = sin(a) cos(180-B) = – sin(a) cos(B)
y’ = sin(a) sin(180-B) =    sin(a) sin(B)
z’ = cos(a)

The relation between the old and new systems
is simply a rotation of the x,z-axes through angle c:
x’ = x cos(c) – z sin(c)
y’ = y
z’ = x sin(c) + z cos(c)

That is:
– sin(a) cos(B) = sin(b) cos(A) cos(c) – cos(b) sin(c)
sin(a) sin(B)  = sin(b) sin(A)
cos(a) = sin(b) cos(A) sin(c) + cos(b) cos(c)

These three equations give us the formulae for solving spherical triangles.

The first equation is the transposed cosine rule,
which is sometimes useful but need not be memorised.

The second equation gives the sine rule. Rearrange as:
   sin(a)/sin(A) = sin(b)/sin(B)
sin(b)/sin(B) = sin(c)/sin(C), etc.

So the sine rule is usually expressed as:
   sin(a)/sin(A) = sin(b)/sin(B) = sin(c)/sin(C)

The third equation gives the cosine rule:
cos(a) = cos(b) cos(c) + sin(b) sin(c) cos(A)
and similarly:
cos(b) = cos(c) cos(a) + sin(c) sin(a) cos(B)
cos(c) = cos(a) cos(b) + sin(a) sin(b) cos(C)

Here they are together:

sine rule:
   sin(a)/sin(A) = sin(b)/sin(B) = sin(c)/sin(C)

cosine rule:
cos(a) = cos(b) cos(c) + sin(b) sin(c) cos(A)
cos(b) = cos(c) cos(a) + sin(c) sin(a) cos(B)
cos(c) = cos(a) cos(b) + sin(a) sin(b) cos(C)

The cosine rule will solve almost any triangle if it is applied often enough.
The sine rule is simpler to remember but not always applicable.

Note that both formulae can suffer from ambiguity:
E.g. if the sine rule yields
sin(x) = 0.5,
then x may be 30° or 150°.
Or, if the cosine rule yields
cos(x) = 0.5,
then x may be 60° or 300° (-60°).
In this case, there is no ambiguity if x is a side of the triangle, as it must be less than 180°,
but there could still be uncertainty if an angle of the triangle was positive or negative.

So, when applying either formula, check to see if the answer is sensible.
If in doubt, recalculate using the other formula, as a check.


Alderney, in the Channel Islands, has longitude 2°W, latitude 50°N.
Winnipeg, in Canada, has longitude 97°W, latitude 50°N.
How far apart are they, in nautical miles, along a great-circle arc?

If you set off from Alderney on a great-circle route to Winnipeg,
in what direction (towards what azimuth) would you head?

Click here for the answer.




  1. Fantastic website. Lots of useful information here. I am sending it to some buddies ans additionally sharing in delicious.
    And naturally, thank you on your sweat!

  2. We are a gaggle of volunteers and opening a brand new scheme in our community.
    Your site offered us with valuable information to work on.
    You’ve done an impressive activity and our whole community will likely be grateful to you.

  3. What’s up Dear, are you genuinely visiting this web site daily, if so afterward you will definitely get good experience.

  4. I all the time used to read article in news papers but now as I am a user of internet so
    from now I am using net for posts, thanks to web.

  5. Good day! This is kind of off topic but I need some advice from an established blog.

    Is it very hard to set up your own blog? I’m not very techincal but I can figure things out pretty fast. I’m thinking
    about making my own but I’m not sure where to start. Do you have any points or suggestions? Cheers

  6. For latest information you have to pay a visit world wide web and on web I found this site as a
    finest web site for newest updates.

  7. I all the time emailed this blog post page to all
    my contacts, because if like to read it then my friends will

  8. Charles says:

    Your style is unique in comparison to other people I’ve read stuff from. Thank you for posting when you’ve got the opportunity, Guess I will just bookmark
    this blog.

  9. My coder is trying to convince me to move to .

    net from PHP. I have always disliked the idea because of
    the expenses. But he’s tryiong none the less. I’ve been using WordPress on several websites for about a year
    and am concerned about switching to another platform.
    I have heard very good things about blogengine.
    net. Is there a way I can transfer all my wordpress content into it?

    Any kind of help would be really appreciated!

  10. Carlo says:

    Unquestionably believe that which you said. Your favorite reason
    seemed to be on the internet the simplest thing to be aware of.
    I say to you, I certainly get annoyed while people consider worries that they plainly do not know about.
    You managed to hit the nail upon the top as well as defined out the
    whole thing without having side-effects , people can
    take a signal. Will probably be back to get
    more. Thanks

  11. I am curious to find out what blog platform you happen to be
    working with? I’m experiencing some minor security issues with my latest website and I would like to find something more safeguarded. Do you have any recommendations?

  12. Heather says:

    It appears u really know a lot pertaining to this particular issue and
    this shows by means of this specific blog, given the name “Positional Astronomy: Spherical trigonometry | Android based
    Tracking System for Moving Objects”. Thank you -Tracey

  13. Dante says:

    I personally ponder exactly why you branded this blog, “Positional Astronomy: Spherical trigonometry | Android based
    Tracking System for Moving Objects”. Anyway I really admired the post!I appreciate it,

  14. This site was… how do you say it? Relevant!! Finally I have found something that helped me.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s