Skip to main content

Calculation of indices that describe the Madden-Julian-Oscillation (only OMI by now)

Project description

mjoindices - A python package for calculating the Madden-Julian-Oscillation OMI index

DOI

Overview

mjoindices is a Python package relevant for users of the atmospheric sciences. It provides functionality to compute an index of the Madden-Julian-Oscillation (MJO), particularly the OLR-based MJO index (OMI).

Whereas the package name has been chosen to indicate that further MJO indices should be included in future, the implementation is currently limited to the OMI algorithm.

Citation

If you use this software package, you should currently cite at least the Zenodo DOI. It is planned to publish a peer-reviewed software meta paper in the near-future. Please ask us for the status of this paper, if you use mjoindices in published research. The OMI algorithm itself is described in Kiladis (2014), but please don't forget to also cite the software package, which is an independent development.

Requirements

mjoindices is written for Python 3 (version > 3.6) and depends on the packages NumPy, Pandas, SciPy, and Matplotlib. It runs on Linux and Windows. Other operating systems have not been tested.

Installation

mjoindices is available in the Python Package Index (PyPI). It can be installed using, e.g., pip.

pip3 install mjoindices

It can also be installed from the source, which is available on Zenodo and GitHub. Download the source, move into the directory containing the file setup.py and run

python3 setup.py install

API documentation

The API documentation is found on GitHub Pages and also in the docs folder of the source.

Getting started / examples

After you have installed mjoindices, you can download an example from the source, which consists of two files:

  • recalculate_original_omi.py: After downloading some data files, which are mentioned and linked in the source documentation of the example, you can run this example to recalculate the original OMI values. The script will save the computed Empirical Orthogonal Functions (EOFs) and the Principal Components (PCs) in two individual files, which can also be configured in the source code. In addition, it will save a few plots into a directory, which can also be configured in the source. These plots show the agreement with the original OMI values (slight deviations are expected due to numerical differences. This will be detailed in the corresponding software meta paper).

    Note that you can use this example also as a template to calculate OMI values with your own OLR data. In order to do that, you have to adapt only two parts of the code, which are also marked in the code documentation.

    Note also that this script may run for one or two hours on common personal computer systems.

  • evaluate_omi_reproduction.py: This script produces more detailed comparison plots and saves them into a directory. The script recalculate_original_omi.py has to be run before, as the evaluation script is based on the saved results. As for recalculate_original_omi.py, some file and directory names have to be adapted in the beginning of the code.

Both files are also available as Jupyter notebook files.

Automated testing

After you have installed mjoindices, you can also download unit and integration tests from the source to check your installation using pytest.

  • Download the complete test directory to you local file system.

  • Download some external input and reference data files. The files to be downloaded are described in a separate Readme file.

  • Move into your local test directory and run

      pytest
    

Note that the tests may run for a few hours on a common personal computer.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mjoindices-1.0.0.tar.gz (88.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mjoindices-1.0.0-py3-none-any.whl (78.4 kB view details)

Uploaded Python 3

File details

Details for the file mjoindices-1.0.0.tar.gz.

File metadata

  • Download URL: mjoindices-1.0.0.tar.gz
  • Upload date:
  • Size: 88.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.8

File hashes

Hashes for mjoindices-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8e8afa0fce7434af523620b11bc8764f1401a4b7c909ae4e5ef6f82b112eaeda
MD5 2353fbdf56c321aad735323ffd9736b9
BLAKE2b-256 0f15d1d926c13888bd4482c363bbe85a7c4f5438d0496cf9b7624449525cfb96

See more details on using hashes here.

File details

Details for the file mjoindices-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: mjoindices-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 78.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.8

File hashes

Hashes for mjoindices-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5aa0293daec86a60bcf466461fe760725686cd7eda6c4d50913622f9f056c9a3
MD5 336db249fef5cf6fc83a729661f4bdfb
BLAKE2b-256 a347fa20911ab344a9d42c392dacbd02bd7800bac453b2f6051b7ba03dcf9143

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page