A Ruby Gem for calculating bearings of geostationary satellites
Add this line to your application's Gemfile:
And then execute:
Or install it yourself as:
$ gem install gstatsat
>> require 'gstatsat' => True >> base_station = Gstatsat::BaseStation.new(latitude: 45.425533, longitude: -75.692482) >> satellite = Gstatsat::Satellite.new(longitude: -98) >> bearing = Gstatsat::SatelliteBearing.new(satellite: satellite, base_station: base_station) >> bearing.azimuth => 209.9 >> bearing.elevation => 33.2 >> bearing.visible? => True
visible? method on
SatelliteBearing is based on an elevation greater than 0. This simplified model assumes the earth is a perfect sphere and that the base station is at sea level. A satellites actual visibility may be affected by natural features such as mountains. It may also be possible to sight a satellite at a bearing less than 0 if the base station is at orbital altitudes.