Install packages

Required dependencies

osdyn requires python>3.6.7 and depends on the following packages:

Basic requirements

netCDF4 (1.5.8)

netCDF4 provides an object-oriented python interface to the netCDF version 4 library

xarray (>0.20.2)

Xarray is an open source project and Python package that makes working with labelled multi-dimensional arrays simple, efficient, and fun!

dask (2021.12.0)

Dask is a flexible library for parallel computing in Python.

configobj (>5.0)

ConfigObj is a simple but powerful config file reader and writer: an ini file round tripper.

Requirements for treatments

xesmf (>0.6.2)

xESMF is a powerful, easy-to-use and fast Python package for regridding.

esmpy: (=7.1.0) (=8.2.0)

ESMPy is a Python interface to the Earth System Modeling Framework (ESMF) regridding utility.

xgcm: (0.6.0)

xgcm is a python packge for working with the datasets produced by numerical General Circulation Models (GCMs)

Requirements for oceanic estimates

gsw (3.4.0)

This Python implementation of the Thermodynamic Equation of Seawater 2010 (TEOS-10).

cf-units (3.0.1)

Units of measure as required by the Climate and Forecast (CF) metadata conventions.

Requirements for plotting

cartopy (0.20.1)

Cartopy is a Python package designed for geospatial data processing in order to produce maps and other geospatial data analyses.

nc-time-axis (1.4.0)

nc-time-axis supports for cftime.datetime axis in matplotlib.

seaborn

Seaborn is a Python data visualization library based on matplotlib.

Requirements for accelerating xarray

bottleneck (1.3.2)

Bottleneck is a collection of fast NumPy array functions written in C and allows to speeds up NaN-skipping and rolling window aggregations by a large factor

Optional dependencies

IDE requirements

jupyter

The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text.

nbdime

nbdime provides tools for diffing and merging Jupyter notebooks.

spyder (5.2.1)

Spyder is a powerful scientific environment written in Python, for Python, and designed by and for scientists, engineers and data analysts.

Testing

pytest (6.2.5)

Pytest is a testing framework which allows us to write test codes using python.

Formatting

black (2021.12b0)

Black is the uncompromising Python code formatter.

flake8 (4.0.1)

Flake8 is a great toolkit for checking your code base against coding style and programming errors

Documentation

sphinx (>2.3)

Sphinx is a tool that makes it easy to create intelligent and beautiful documentation.

sphinx_rtd_theme (>=0.5.0rc1)

Sphinx theme for readthedocs.org

nbsphinx (>=0.8.6)

Jupyter Notebook Tools for Sphinx

sphinx-copybutton (>=0.4.0)

A small sphinx extension to add a “copy” button to code blocks

sphinx-gallery (>=0.9.0)

Sphinx extension for automatic generation of an example gallery

Create python environment

osdyn library is available from osdyn project

As under progress, it is a private project at the moment. Feel free to ask Valerie Garnier from Ifremer institute to any information.

osdyn is not a pure Python package but its dependencies are. The easiest way to get all the packages installed is to use conda (conda 4.8.2 or later) from conda distribution.

From scratch

From .yaml osdyn environment

Add packages unvailable from conda

A few packages are not available from conda, so install them into osdyn environment from pip install command. .. (but never mix pip and conda installation !)

Load osdyn environment and then add packages from their respective cloned or remote projects.

source PATH/Anaconda3-2019.10/etc/profile.d/conda.csh [or sh...]
conda activate osdyn  [or myname]

eo_harvest library

For user-friendly downloads from CMEMS and other databases, feel free to add eo_harvest.

The package can be downloaded at ifremer eo_harvest and then add it to osdyn environment

cd path_to_eo_harvest
python setup.py install

datarmor usage

To speed up access to your dataset of interest (or a subset), the user is encouraged to use intake datarmor catalogues. To do so, install dask-hpconfig package:

python -m pip install git+https://extranetlogin@gitlab.ifremer.fr/iaocea/dask-hpcconfig.git

osdyn library

First, get the package. At the moment, you need to register to the project and then

git clone https://gitlab.ifremer.fr/vg056b7/osdyn.git

Second, install osdyn library into your python environment:

python -m pip install .

Warning

You need a fortran compiler to install osdyn.

You are ready ! Have a look at Quick overview and at all the notebooks under Tutorials.

Have fun !