A "satellite" is defined herein to mean a man-made object or vehicle intended to orbit a celestial body (e.g., Earth). A "constellation" is defined herein to mean an ensemble of satellites arranged in orbits for providing specified coverage (e.g., radio communication, photogrammetry, etc.) of portion(s) or all of the celestial body. A constellation typically includes multiple rings (or planes) of satellites and may have equal numbers of satellites in each plane, although this is not essential. Calculation of satellite visibility at a particular location on Earth's surface (e.g., at a "terrestrial station") is necessary, for example, to schedule communication between the terrestrial station and one or more of the satellites comprising the constellation. A "visibility time interval" is defined herein to mean that period of time during which a particular satellite is in communication view (e.g., typically line-of-sight) of a particular terrestrial station. References describing satellite communications practices include "Communications Satellite Handbook", by W. L. Morgan and G. D. Gordon (Wiley-Interscience, John Wiley and Sons, 1989) and "Methods of Orbit Determination" by P. R. Escobal (Robert E. Krieger Publishing Co., Malabar, Fla., 1976).
Typically, visibilities of non-geostationary satellites from a terrestrial station having fixed or slowly varying position are calculated by advancing the satellite orbital positions by a fixed time increment and then checking satellite visibility with respect to a particular terrestrial station of interest. This "step-then-check" method is commonly used in the space industry. Once it is determined that a satellite is in view of the particular terrestrial station, further visibility data points may be collected over some time interval while the satellite remains in view. Interpolation methods are then used to determine satellite "rise" (time of first visibility during a visibility time interval) and "set" (time of last visibility during a visibility time interval) times with respect to the particular terrestrial station of interest.
The step-then-check approach is computationally inefficient and thus is poorly suited to determining visibility of constellations having large numbers of satellites intersecting multiple terrestrial stations spread out over the Earth. This is especially true for constellations including satellites in polar or near-polar orbits, because such satellites are infrequently visible to terrestrial stations located near the equator. Thus, it is desirable to rapidly compute all possible satellite visibility time intervals for each terrestrial station. Rapid, computationally efficient methods for satellite visibility determination are needed.
Improved methods and apparatus are needed to rapidly pre-determine when satellite visibility time intervals occur for any given terrestrial station. It is especially important that these provide rapid determination of the visibility of satellites having near-polar orbits from near-equatorial terrestrial stations in a computationally efficient fashion, so that communication can be readily established therebetween.