Predicting Satellites’ Visibility

The orbital parameters of most satellites (the TLE data) are freely available, and we can use them to predict the visibility of the satellites. The following is a very simple Python script to predict the visibility of the ISS for the next few weeks.

Flat-Earthers invented many “explanations” about the visibility of satellites. By studying the satellites’ orbital parameters and how they can be used to predict the visibility of the satellites, we know that flat-Earthers’ claims are just nonsense.

The Python script works by continuously calculating the sun’s and the satellite’s positions every 10 seconds. Then if all of the following conditions are true, there will be a reasonable probability that we can see the satellite:

  • The satellite is not eclipsed  (it is sunlit)
  • The satellite’s altitude is at least 10° above the horizon.
  • The sun is at least 6° below the horizon (and therefore, the sky should be dark enough).

These conditions appear to be the same conditions used by Heaven’s Above, a website & an app that provides information about the visibility of satellites. Therefore, the results should be similar.

The algorithm used in the script can only work with the spherical Earth model. It cannot possibly work if Earth is flat.