Data viewer
dfvue is a minimal GUI for a quick view of csv files. It uses an input panel similar to Microsoft Excel to check visually that the csv file is read correctly. It provides most options of the pandas.read_csv method to be very versatile on the possible csv format.
dfvue is a Python script that can be called from within Python or as a command line tool. It is not supposed to produce publication-ready plots but rather provide a quick overview of the csv file(s).
ncvue is a minimal GUI for a quick view of netCDF files. It is aiming to be a drop-in replacement for nview and panoply, being slightly more general than ncview targeting maps but providing animations, zooming and panning capabilities unlike panoply. If ncvue is used with maps, it supports mostly structured grids, more precisely the grids supported by cartopy.
ncvue is a Python script that can be called from within Python or as a command line tool. It is not supposed to produce publication-ready plots but rather provide a quick overview of the netCDF file(s).
Visualise ICOS ecosystem data from the ICOS Carbon Portal (ICOS-CP). This is a demonstrator how to access data on the carbon portal from within Python and make some simple interactive plots.
Eddy covariance
hesseflux collects Python functions used for post-processing Eddy covariance data of the ICOS class 1 ecosystem site FR-Hes.
The post-processing functionality for Eddy flux data is similar to the R-package REddyProc and includes basically the steps described in Papale et al. (Biogeosciences, 2006) plus some extensions such as the daytime method of flux partitioning (Lasslop et al., Global Change Biology 2010).
Python tools
mcplot provides a class that combines methods to easily produce publication-ready graphics on light or black background. It includes a large number of colormaps collected from different sources. There are a number of functions that help to position plots, number plot panels, or write text on a graph.
ncio is a Python library that provides functions to copy dimensions, variables, attributes, etc. from one netcdf file to a netcdf output file. Replacements and transformations can be performed on the copied entities such as names can be changed or variables can be replaced with other data. It is a thin wrapper of the netCDF4 Python package that adds no new functionality but rather provides convenience functions to work easily with netcdf files.
partialwrap is a Python library providing easy wrapper functions to use with Python’s functools.partial. Partial’s ingenious mechanism allows to use even very complex functions with many arguments and keyword arguments with routines that need functions in the simple form func(x). This includes Python’s map function, the minimizers in scipy.optimize, and plenty of third-party modules such as emcee or pyeee. partialwrap allows to use any external executable as well as any Python function with arbitrary arguments and keywords to be used with functools.partial. It also allows to use the executables or functions with easy parallelization of code with, for example, the parallel map function of the multiprocessing module or via the Message Passing Interface (MPI).
pyeee is a Python library for performing parameter screening of computational models. It uses Morris’ method of Elementary Effects and its extension, the so-called Efficient or Sequential Elementary Effects published by
- Cuntz, Mai et al. (2015) Computationally inexpensive identification of noninformative model parameters by sequential screening, Water Resources Research 51, 6417-6441, doi: 10.1002/2015WR016907.
pyeee can be used with Python functions but also with external programs, using for example the library partialwrap. Function evaluation can be distributed with Python’s multiprocessing module or via the Message Passing Interface (MPI).
pyjams is a general Python package offering a wide variety of miscellaneous functions in different categories, such as reading different file formats, date conversion routines, or meteorology. It has several subpackages offering constants, special functions, or objective functions to be used with scipy.optimize.
The package modernises and makes available routines of the JAMS Python library, which was created 2009 by Matthias Cuntz while at the Department of Computational Hydrosystems, Helmholtz Centre for Environmental Research - UFZ, Leipzig, Germany, and continued while at Institut National de Recherche pour l’Agriculture, l’Alimentation et l’Environnement (INRAE), Nancy, France.
loggertools is a Python port of the Control File Functions of the Logger Tools Software of Olaf Kolle, MPI-BGC Jena, (c) 2012.
From the Logger Tools Software manual:
“The functions range from simple mathematic operations to more complex and special procedures including functions for checking data. Most of the functions have the following appearance: y = f(x, p1, p2, ..., pn)
where y
is the variable in which the result of the function f
is stored, x
is the input variable of the function and p1
to pn
are parameters (numbers) of the function. An output variable (result of a function) may be the same as an input variable. Some functions need more than one input variable, some functions do not need any parameter and some functions (mean
, mini
, maxi
) may have a variable number of input variables.”
Other tools
Collection of bash command line scripts to batch rename files, replace text in file(s), invert the colours in images, etc.
Install open source packages to work with netCDF and openMPI on Mac OS X and Linux.
The script was initially written to install netCDF4 (hence its name) and all its dependencies to be used with different Fortran compilers, as well as some netCDF tools such as cdo, nco and ncview.
It is also used to install missing packages locally on computing clusters. For example, a cluster might have the netCDF C-library installed but not the Fortran version.
Set parameters in the Setup section as well as the directories to packages that are already installed.
The JAMS Fortran library is a collection of general Fortran modules offering miscellaneous functions in the categories Computational, Date and Time, Input / Output, Math / Numerics, Screening, Sensitivity Analysis and Optimising / Fitting, and Miscellaneous.
The project provides a portable, versatile way of compiling Fortran, C, C++, and mixed projects. cfortran.h can be used for Fortran-C interoperability.
Created November 2011 by Matthias Cuntz while at the Department Computational Hydrosystems, Helmholtz Centre for Environmental Research - UFZ, Permoserstr. 15, 04318 Leipzig, Germany and continued while at Institut National de Recherche en Agriculture, Alimentation et Environnement (INRAE), Nancy, France.