NAME

GPS::SpaceTrack - 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";
  }

DESCRIPTION

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);

TODO

BUGS

Please send to the gpsd email list.

LIMITS

AUTHOR

Michael R. Davis qw/perl michaelrdavis com/

LICENSE

Copyright (c) 2006 Michael R. Davis (mrdvt92)

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Astro::Coord::ECI::TLE Geo::Functions GPS::PRN Net::GPSD::Satellite