GPS::SpaceTrack is a package for calculating the position of GPS satellites.
SYNOPSIS
use GPS::SpaceTrack;
my $obj=GPS::SpaceTrack->new(filename=>"gps.tle");
print join("t", qw{Count PRN ELEV Azim SNR USED}), "n";
foreach ($obj->getsatellitelist({lat=>38.870997, lon=>-77.05596})) {
print join("t", $_->prn, $_->elev, $_->azim, $_->snr, $_->used), "n";
}
This package can calculates the location of the GPS satellite constellation given the position of the receiver and a time which can be in the future.
CONVENTIONS
Function naming convention is "format of the return" underscore "format of the parameters."
CONSTRUCTOR
new
The new() constructor passes paramaters to the filename() method.
my $obj = GPS::SpaceTrack->new(filename=>$filename);
METHODS
getsatellitelist
The getsatellitelist() method returns a list of Net::GPSD::Satellite objects. The getsatellitelist() method is a wrapper around getsatellitelist_rad() for data formatted in degrees instead of radians.
my $list=$obj->getsatellitelist({lat=>$lat, lon=>$lon, alt=>$hae, time=>$time}); #degrees, degrees, meters, seconds from epoch
my @list=$obj->getsatellitelist({lat=>$lat, lon=>$lon, alt=>$hae, time=>$time}); #degrees, degrees, meters, seconds from epoch
getsatellitelist_rad
The getsatellitelist_rad() method returns a list of Net::GPSD::Satellite objects. This method is basically a wrapper around Astro::Coord::ECI::TLE.
my $list=$obj->getsatellitelist_rad({lat=>$lat, lon=>$lon, alt=>$hae, time=>$time}); #radians, radians, meters, seconds from epoch
my @list=$obj->getsatellitelist_rad({lat=>$lat, lon=>$lon, alt=>$hae, time=>$time}); #radians, radians, meters, seconds from epoch
filename
Method to get or set the filename of the TLE data.
my $filename=$obj->filename;
my $filename=$obj->filename(filename=>$filename);
Product's homepage
Requirements:
· Perl