geocat.comp.spherical.decomposition

Contents

geocat.comp.spherical.decomposition#

geocat.comp.spherical.decomposition(data, scale, theta, phi, max_harm=23, chunk_size='auto')#

Calculate the spherical harmonics of a dataset.

Parameters:
  • data (numpy.ndarray, xarray.DataArray) – 2-dimensional dataset

  • scale (numpy.ndarray, xarray.DataArray) – 2-dimensional array containing the weighting of each point in the data. This is usually the area of the voronoi cell centered on the corresponding datapoint. the geocat.comp.spherical.scale_voronoi(theta,phi) function can provide a scale array.

  • theta (numpy.ndarray, xarray.DataArray) – 2-dimensional array containing the theta (longitude in radians) values for each datapoint in data.

  • phi (numpy.ndarray, xarray.DataArray) – 2-dimensional array containing the theta (latitude in radians) values for each datapoint in data. Phi is zero at the top of the sphere and pi at the bottom, phi = (lat_degrees-90)*(-1)*pi/180

  • max_harm (int, optional) – The maximum harmonic value for both m and n. The total of harmonics calculated is (max_harm+1)*(max_harm+2)/2 Defaults to 23, for 300 total harmonics.

  • chunk_size (int, optional) – The size of each edge of the dask chunks if using xarray.DataArray inputs. Some arrays will be 2d, and others 1d, and the final calculation operates on a 3d array. thus the chunks used in the largest calculation scale at chunk_size^3 A chunk size of 256 is recommended. Defaults to ‘auto’

Returns:

decomposition (numpy.ndarray, xarray.DataArray) – The spherical harmonic decomposition of the input data