Skip to content

Tools for analysis of LLC4320 datasets using Python scientific libraries

License

Notifications You must be signed in to change notification settings

kaipak/xrsigproc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xrsigproc - Data and Signal Processing Tools for Xarray Datasets

Package primarily focuses on filtering signals into large and small-scale components using convolution kernels of various types (currently 2D tophat, 2D boxcar, 2D cone, and Gaussian). This package is created specifically for processing of model output of physical oceanography simulation model output---in particular from LLC4320 MITgcm---so there are tools related to processing these datasets.

Installation

Install with pip:

pip install xrsigproc

plot_spectrum

Wrapper for matplotlib with commonly used options for plotting spectra.

d2k_tangent_plane

LLC4320 data has uneven grids and xrft will complain about this. This function takes an input grid dataset and evens out the spacing calculating latitude distance by taking the midpoint of the plane and calculating a common arc length from there.

Examples on applying a convolution kernel

There's a variety of kernels included in this package including:

  • gaussian_smooth
  • boxcar2D_smooth
  • cone2D_smooth
  • tophat2D_smooth

Simply choose the size of the kernel and apply it to your dataset:

import xrsigproc as sp

sp.gaussian_smooth(dataset, scale=5)

For the boxcar kernel, scale refers to the total width, for the round kernels, it refers to the radius, and for the gaussian kernel, it refers to sigma. The functions will use Dask parallelization where it can.

There's a helper function to compute small-scale variance according to M. Germano's 1990 paper, Turbulence: the filtering approach, where he defines small-scale variance as tau_ss = <f*g> - <f> * <g>. Angle brackets here denote a convolution operator.

sp.germano_tau(dataset, dataset, gaussian_smooth, scale=5)

About

Tools for analysis of LLC4320 datasets using Python scientific libraries

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages