goescalibration 0.0.11
A python library that allow to calibrate netcdf images of the NOAA CLASS (Comprehensive Large Array-Data Stewardship System).
License: MIT

goescalibration
===============

[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/gersolar/goescalibration?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

[![License](https://img.shields.io/pypi/l/goescalibration.svg)](https://raw.githubusercontent.com/limiear/goescalibration/master/LICENSE) [![Downloads](https://img.shields.io/pypi/dm/goescalibration.svg)](https://pypi.python.org/pypi/goescalibration/) [![Build Status](https://travis-ci.org/gersolar/goescalibration.svg?branch=master)](https://travis-ci.org/gersolar/goescalibration) [![Coverage Status](https://coveralls.io/repos/gersolar/goescalibration/badge.png)](https://coveralls.io/r/gersolar/goescalibration) [![Code Health](https://landscape.io/github/gersolar/goescalibration/master/landscape.png)](https://landscape.io/github/gersolar/goescalibration/master) [![PyPI version](https://badge.fury.io/py/goescalibration.svg)](http://badge.fury.io/py/goescalibration)
[![Stories in Ready](https://badge.waffle.io/gersolar/goescalibration.png?label=ready&title=Ready)](https://waffle.io/gersolar/goescalibration)

A python library that allow to automate the calibration of the GOES Images.


Requirements
============

If you want to use this library on any GNU/Linux or OSX system you just need to execute:

    $ pip install goescalibration

If you want to improve this library, you should download the [github repository](https://github.com/gersolar/goescalibration) and execute:

    $ make deploy

On Ubuntu Desktop there are some other libraries not installed by default (zlibc curl libssl0.9.8 libbz2-dev libxslt-dev libxml-dev) which may need to be installed to use these library. Use the next command to automate the installation of the additional C libraries:

    $ make ubuntu deploy


Testing
=======

To test all the project you should use the command:

    $ make test

If you want to help us or report an issue join to us through the [GitHub issue tracker](https://github.com/gersolar/goescalibration/issues).


Example
=======

There are 3 methods to obtain the calibration parameters: 

1. calibration
1. calibration_to
1. calibrate

The **calibration** method accepts 2 parameters the satellite and a datetime object:

```python
    from goescalibration import instrument 
    from datetime import datetime

    params = instrument.calibration('goes13', datetime(2014, 11, 10))
```

Next, the **calibration_to** method needs a standard NOAA CLASS netcdf filename to parse:

```python
    from goescalibration import instrument 
    from datetime import datetime

    params = instrument.calibration_to('data/goes13.2014.124.123422.BAND_01.nc')
```

Last, the **calibrate** method needs a standard NOAA CLASS netcdf filename to save the variables:

```python
    from goescalibration import instrument 
    from datetime import datetime
    from netcdf import netcdf as nc

    instrument.calibrate('data/goes13.2014.124.123422.BAND_01.nc')
    with nc.loader('data/goes13.2014.124.123422.BAND_01.nc') as root:
        print nc.getvar(root, 'postlaunch')[:]
```


About
=====

This software is developed by [GERSolar](http://www.gersol.unlu.edu.ar/). You can contact us to [gersolar.dev@gmail.com](mailto:gersolar.dev@gmail.com).