Python tools for (some) SCIAMACHY data
Project description
SCIAMACHY data tools
Overview
These SCIAMACHY tools are provided as convenience tools for handling SCIAMACHY level 1c limb spectra and retrieved level 2 trace-gas densities.
More extensive documentation is provided on sciapy.rtfd.io.
Level 1c tools
The sciapy.level1c
submodule provides a few
conversion tools for SCIAMACHY
level 1c calibrated spectra, to be used as input for trace gas retrieval with
scia_retrieval_2d.
Note that this is not a level 1b to level 1c calibration tool.
For calibrating level 1b spectra (for example SCI_NL__1P version 8.02
provided by ESA via the
ESA data browser)
to level 1c spectra, use the
SciaL1C
command line tool or the free software
nadc_tools.
The first produces .child
files, the second can output to HDF5 (.h5
).
Further note: .child
files are currently not supported.
Level 2 tools
The sciapy.level2
submodule provides
post-processing tools for trace-gas densities retrieved from SCIAMACHY limb scans.
Support simple operations as combining files into netcdf, calculating and noting
local solar time at the retrieval grid points, geomagnetic latitudes, etc.
The level 2 tools also include a simple binning algorithm.
Regression
The sciapy.regress
submodule can be used for regression analysis of SCIAMACHY
level 2 trace gas density time series, either directly or as daily zonal means.
The regression tools support various parameter fitting methods using
scipy.optimize
and uncertainty evaluation using Markov-Chain Monte-Carlo sampling with
emcee
.
Further supports covariance modelling via
celerite
and george
.
Install
Prerequisites
Sciapy uses features from a lot of different packages.
All dependencies will be automatically installed when using
pip install
or python setup.py
, see below.
However, to speed up the install or for use
within a conda
environment, it may be advantageous to
install some of the important packages beforehand:
numpy
at least version 1.13.0 for general numerics,scipy
at least version 0.17.0 for scientific numerics,matplotlib
at least version 2.2 for plotting,netCDF4
for the low level netcdf4 interfaces,h5py
for the low level hdf5 interfaces,dask
,toolz
,pandas
andxarray
for the higher level data interfaces,astropy
for (astronomical) time conversions,parse
for ASCII text parsing inlevel1c
,pybind11
C++ interface needed bycelerite
celerite
at least version 0.3.0 andgeorge
for Gaussian process modelling,emcee
for MCMC sampling andcorner
for the sample histogram plots.
Out of these packages, numpy
is probably the most important one
to be installed first because at least celerite
needs it for setup.
It may also be a good idea to install
pybind11
because both celerite
and george
use its interface,
and both may fail to install without pybind11
.
Depending on the setup, numpy
and pybind11
can be installed
via pip
:
pip install numpy pybind11
or conda
:
conda install numpy pybind11
sciapy
There is no pip
package yet, but
sciapy can be installed with pip
directly
from github (see https://pip.pypa.io/en/stable/reference/pip_install/#vcs-support
and https://pip.pypa.io/en/stable/reference/pip_install/#git):
$ pip install [-e] git+https://github.com/st-bender/sciapy.git
The other option is to use a local clone:
$ git clone https://github.com/st-bender/sciapy.git
$ cd sciapy
and then using pip
(optionally using -e
, see
https://pip.pypa.io/en/stable/reference/pip_install/#install-editable):
$ pip install [-e] .
or using setup.py
:
$ python setup.py install
Usage
The whole module as well as the individual submodules can be loaded as usual:
>>> import sciapy
>>> import sciapy.level1c
>>> import sciapy.level2
>>> import sciapy.regress
Basic class and method documentation is accessible via pydoc
:
$ pydoc sciapy
The submodules' documentation can be accessed with pydoc
as well:
$ pydoc sciapy.level1c
$ pydoc sciapy.level2
$ pydoc sciapy.regress
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sciapy-0.0.7.tar.gz
.
File metadata
- Download URL: sciapy-0.0.7.tar.gz
- Upload date:
- Size: 4.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/0.0.0 pkginfo/1.8.2 readme-renderer/27.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.4.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ebfe5c14e147b6db4d796d427d3a6e676f79b620ed608df3badffdb785cc88ba |
|
MD5 | 879d5f06e4aea128a65e7778da4df6d9 |
|
BLAKE2b-256 | a800752da0d6599c3bb2082ab50f3d7447e32ef3d3135d5f367d31d7089914cb |
File details
Details for the file sciapy-0.0.7-py2.py3-none-any.whl
.
File metadata
- Download URL: sciapy-0.0.7-py2.py3-none-any.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/0.0.0 pkginfo/1.8.2 readme-renderer/27.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.4.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02ef7eab7045f061edac7daaabc5d247de52a92a076d37a8385e8565b77a367a |
|
MD5 | 137e2d20342e226d03d217ee2a020b06 |
|
BLAKE2b-256 | 56b470b725e6356285003f5a49eb4524ce2f7603394592a74075e80a2e9baccf |