Welcome to pygranule’s documentation!

pygranule is a package for validating, fetching and scheduling satellite data granules. The source code of the package can be found on google code, googlecode


The main purpose is to filter some satellite granule file names,

>>> files = ['/home/msg/archive/AVHRR/avhrr_20140225_133000_noaa19.hrp.bz2',

Using a configuration to describe the file set,

>>> config = {'config_name':"DummySatData",
              'sat_name':"NOAA 19",
>>> gf = OrbitalGranuleFilter(config)

We can now do some on the fly operations on the files, e.g., show all the granules,

>>> gf.show( files )

or filter the granules, allowing only those that match the configuration, returns an iterable file paths container but with a handle back to the parent filter, allowing handy attributes such as, show(),

>>> gf( files ).show()

Filters can also interact with local and remote file systems to access granule file names,

>>> config = {'config_name':"EARS NOAA 19 AVHRR",
              'sat_name':"NOAA 19",
>>> F = OrbitalGranuleFilter(config)
>>> F().show()

Now, if you wanted to turn off area of interest filtering to show all the granules in the source file system, then,

>>> F(with_aoi=False).show()

Targeted granules can also be readily split into chunks (satellite passes),

>>> for chunk in F().split():
>>>     chunk.show()
_images/split1.png _images/split2.png _images/split3.png

... Off course granule filter will be able to do much much more ...


Indices and tables