SIFT Open Source Package Dependencies
This table lists the SIFT open source package dependencies.
| Name | Purpose | SIFT Usage | Reference |
| numpy | Efficient array and matrix math | Data array container and efficient calculations; fast memory-mapped data caching and access | Travis E, Oliphant. A guide to NumPy, USA: Trelgol Publishing, (2006). |
| vispy | High level OpenGL python library | Map and data visualization | http://vispy.org/ |
| numba | Numerical expression compiler | Efficient probe area extraction and data transforms | https://doi.org/10.1145/2833157.2833162 |
| satpy | Meteorological satellite data processing python library | Read GRIB and other satellite data formats | https://satpy.readthedocs.io/en/latest/ |
| xarray | High level data and metadata container | Combined data array and metadata container when loading GRIB and satellite data | http://xarray.pydata.org
http://doi.org/10.5334/jors.148 http://xarray.pydata.org/en/stable/faq.html#how-should-i-cite-xarray |
| dask | Parallel and lazy-evaluated array handling | Lazily load satellite data from files on disk using multiple threads when possible | https://dask.org/
Dask Development Team (2016). Dask: Library for dynamic task scheduling |
| rasterio | High level handling of geospatial raster data | Converting selected map regions to data array locations for probing | https://github.com/mapbox/rasterio/blob/master/CITATION.txt |
| shapely | Geometric shape calculations | Point and polygon shape representation when doing data probing | https://github.com/Toblerity/Shapely/blob/master/CITATION.txt |
| netCDF4 | NetCDF4 data file format tools | Reading GOES-R PUG-compatible imagery | http://doi.org/10.5065/D6H70CW6 |
| pygrib | GRIB/GRIB2 data file format tools for Numerical Weather Prediction and other scientific content | Load cross-sections and imagery for display and contouring | https://jswhit.github.io/pygrib/docs/ |
| SQLAlchemy | Object-oriented SQL database operations | Metadata caching and querying | |
| PyQt4 | Portable application development framework | Support Linux, Mac, Windows with one code base | |
| PyInstaller | Multi-platform python application bundler | Create distributable python bundles and installers for Linux, Mac, and Windows | |
| Inno Setup | Windows installation wizard creator | Create Windows installer wizard for Windows bundles | |
| Conda | Python software package management | Conda package generation and distribution through a custom conda channel | |
| Conda-forge | Community conda package repository | Access newest versions of scientific python packages | |
| GDAL | Geospatial Data Abstraction Library | Reading certain data file formats | |
| pyproj | Geographical Information System (GIS) map projection math | Coordinate systems transforms | |
| pyqtgraph | Extended PyQt4 widget set | Color map editor | |
| imageio | Easy pythonic image and video generation | Export animations and images using ffmpeg and pillow | |
| ffmpeg | Video conversion | Exporting animations | |
| pillow | Image generation | Exporting images | |
| pyyaml | Python library for reading the YAML file format | Reading configuration files | |
| pyshp | GIS Shapefile support library | Reading border and coastline shapefiles | |
| appdirs | System-specific directory locations | Default cache and settings file locations | |
| quamash | Python co-routine support for PyQt4 | (not yet used) background task scheduling | |
| setuptools | Software build / package / install tools | Software packaging | |
| scikit-image | Collection of image processing algorithms | Generate contour lines from image data | https://scikit-image.org/ |
| matplotlib | Interactive scientific plotting | Probe graphics | John D. Hunter. Matplotlib: A 2D Graphics Environment, Computing in Science & Engineering, 9, 90-95 (2007), DOI:10.1109/MCSE.2007.55 (publisher link) |
| NaturalEarth | Community reviewed shapefiles | Border and coastline shapefiles |

