Associated Topics || Dr. Math Home || Search Dr. Math

### Finding Where Planets are Rising/Setting

```
Date: 03/12/2002 at 01:15:56
From: Robert
Subject: How to find where (long/lat) planets are rising/setting

Dear Dr. Math,

I'm trying to come up with a formula to calculate where (in longitude
and latitude) the different celestial bodies are on the horizon,
either setting or rising.

I want to be able to plot a line (with increments of 5 degrees or so)
on an equidistant world map, showing where the rising and setting is
taking place on earth.

I have two possible approaches:

Approach 1:
Using the equitorial coordinates for the planets (right ascension/
declination), I need a formula to plot where on earth at a frozen
moment these coordinates are on the horizon.

Approach 2:
I can calculate where on earth the planet is on the zenith (in a 90
degree angle to Earth's surface) by taking the meridian longitude of
the planet and its declination (which corresponds to the earth
latitude). This means that if I plot a circle (in longitude and
latitude) 90 degrees away from that zenith point, I should come up
with the planet's position on the Earth's horizon.

I hope you can answer either or both of these problems. If you see a
third solution, it would be welcome.

Best regards,
Robert
```

```
Date: 03/12/2002 at 09:00:55
From: Doctor Rick
Subject: Re: How to find where (long/lat) planets are rising/setting

Hi, Robert.

Your second approach seems best to me.

Let's establish a cartesian coordinate system such that the longitude
where the planet is at the zenith is in the x-z plane, on the
positive-x side. Then we consider the plane perpendicular to the line
from the center of the earth to the planet. At points on the earth
that are in this plane, the planet is on the horizon.

The projection of this plane into the x-z plane is a line inclined
from the vertical by an angle equal to the declination of the planet.
Thus, in this plane,

z/x = -1/tan(dec)

The cartesian coordinates of a point on the earth's surface are
related to its latitude and longitude as follows:

x = R*cos(lat)*cos(lon-plon)
y = R*cos(lat)*sin(long-plon)
z = R*sin(lat)

where R is the earth's radius, lat and lon are the latitude and
longitude of the point, and plon is the longitude of the planet.
Plugging these formulas into the equation of the plane, we get

sin(lat)/(cos(lat)*cos(lon-plon)) = -1/tan(dec)

tan(lat) = -cos(lon-plon)/tan(dec)

lat = arctan(-cos(lon-plon)/tan(dec))

Using this formula, you can take any longitude and find the latitude
of the point at this longitude where the planet is on the horizon.
This should be just what you want; I used the formula to plot the
curve using a spreadsheet, and it looks reasonable.

Practically speaking, there may be other issues depending on what you
want to do with this information. Observationally, the planet may
still appear above the horizon at these locations, because of
refraction by the atmosphere: light from celestial objects that are
below the horizon is bent over the horizon so that they appear to be
above the horizon. I am not competent to calculate this effect.

- Doctor Rick, The Math Forum
http://mathforum.org/dr.math/
```

```
Date: 03/13/2002 at 23:50:04
From: Robert
Subject: How to find where (long/lat) planets are rising/setting

Dear Doctor Rick,

Thank you so much for your help. After putting your formula into code
I got the desired results.

I am very grateful ...
Best regards,
Robert
```
Associated Topics:
High School Geometry
High School Higher-Dimensional Geometry

Search the Dr. Math Library:

 Find items containing (put spaces between keywords):   Click only once for faster results: [ Choose "whole words" when searching for a word like age.] all keywords, in any order at least one, that exact phrase parts of words whole words

Submit your own question to Dr. Math
Math Forum Home || Math Library || Quick Reference || Math Forum Search