This question is a bit of a mix between satellite knowledge and math.

Suppose I have the "look angles" (elevation and azimuth) for an otherwise unidentified geostationary satellite, and I would like to use that, plus my ground latitude and longitude to calculate the longitude coordinate of the satellite. How would I go about doing that?

The solution might be written as the following function:

$$lon_{Sat} = f(lon, \ lat, \ el, \ az)$$

Ideally I'd like an equation that I could use for this. If not, at least a procedure for solving for the geostationary satellite's longitude.

  • 1
    $\begingroup$ Such a formula exists for stars and other distant objects with near constant right ascension and declination. However, it wouldn't be super accurate for the moon, because the moon's apparent RA/dec varies based on location due to parallax. It would be much more inaccurate for near-Earth satellites. So, unless you're talking about Ganymede or something, I'm afraid not :) $\endgroup$
    – user7073
    Sep 1, 2017 at 23:12

2 Answers 2


$lon_{Sat}=f(lon, lat, ht, el, az)$


  • $lon$ Receiver longitude
  • $lat$ Receiver latitude
  • $ht$ Receiver height in metres (does not have a major effect but adding for completeness)
  • $el$ Satellite elevation in degrees
  • $az$ Satellite azimuth in degrees

$a = 6377.301243$ (Semi-Major Axis of Earth in Kilometres)

$f = \frac{1}{ 298.257223563}$ (Flattening of Earth)

$\rho = \frac{a \times (1 - f)}{\sqrt{1 - (2 - f) \times f \times \cos^{2}lat}}$

$x = 90 - el - \arcsin\left(\frac{(\rho + \frac{ht}{1000})}{42164^*}\right) \times \cos(el)$

Note: * The orbital radius in Kilometres

$y = \arccos\bigl(\cos(x) \times \cos(90 - lat) + \sin(90 - lat) \times \sin(x) \times \cos(az)\bigl)$

$z = \arcsin\left(\sin(x) \times \frac{\sin(az)}{\sin(y)}\right)$

$lon_{Sat} = (z + lon + 540) \bmod 360 - 180$ (Can be simplified to '$z + lon$', but this normalizes the values of longitude)

Gives me correct location of GNSS satellites (with the azimuth/elevation of satellites reported by Android GNSS sensor) when checked from https://in-the-sky.org/satmap.php.

Web based calculator using these formulas available here: https://deeppradhan.heliohost.org/misc/satellite-calculator.htm

  • $\begingroup$ The satellite is in GEO (geostationary orbit). GNSS are all in MEO. Do you think you could also rewrite your function as an equation, using readable math? $\endgroup$
    – uhoh
    Sep 3, 2017 at 8:45
  • 1
    $\begingroup$ There are certain GNSS satellites in GEO: BeiDou (PRN 201 to 210 IIRC). The function is accurate for them too. I'll rewrite it as equation though my maths may not be that good... $\endgroup$
    – Kanchu
    Sep 3, 2017 at 8:48
  • $\begingroup$ You are right! I forgot about them. I can help with the equations if you get stuck. The sizalbe MathJax for Stackexchange tutorial may be helpful. $\endgroup$
    – uhoh
    Sep 3, 2017 at 9:03
  • $\begingroup$ @uhoh, hope I got the equations right... $\endgroup$
    – Kanchu
    Sep 3, 2017 at 9:44
  • 1
    $\begingroup$ Checked it myself and the equations seems to be correct... $\endgroup$
    – Kanchu
    Sep 4, 2017 at 9:47

No, you would need to know the range to the satellite as well. Think of it this way - if you draw a diagram of what you describe above, the vector representing the line of sight from your ground position to the satellite (az, el) would cross a swath of longitudes, except for the trivial case where el=90

  • $\begingroup$ but knowing that the satellite is above the equator and knowing the elevation I think is enough to get the distance. $\endgroup$
    – Mour_Ka
    Aug 31, 2017 at 22:04
  • $\begingroup$ @Mour_Ka You still need to know the distance/altitude/how high the satellite is above the ground since that affects the calculation. There is (almost) and infinite range of distances. Perhaps you are asking about geostationary satellites. If this is the case, you should add that fact to your question. $\endgroup$
    – JohnHoltz
    Sep 1, 2017 at 17:08
  • 1
    $\begingroup$ You didn't say that the satellite was above the equator. If the satellite lies on the equatorial plane you can solve it. Just find the intersection of the az el vector with the equatorial plane and you can have the whole position vector. $\endgroup$ Sep 2, 2017 at 0:34
  • $\begingroup$ What does "longitude of a satellite" mean? Is it the longitude of the satellite's ground track projected onto the Earth? @Mour_Ka you should go back and edit your question and add that information about the satellite being in an equatorial orbit. If the observer is not on the equator and the orbital plane is equatorial, then the problem can be solved. If you will allow the Earth to be spherical, then it's fairly easy. But first please update your question. We don't leave important information in comments because they should be considered temporary. Thanks! $\endgroup$
    – uhoh
    Sep 2, 2017 at 11:29
  • $\begingroup$ my problem is lack of knowledge of satellites, I know that it is a mobile communication satellite that is always on the equator so this means it is geostationary always? (I edited the question in all cases) $\endgroup$
    – Mour_Ka
    Sep 2, 2017 at 18:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.