shxarray.kernels

shxarray.kernels.anisokernel

class shxarray.kernels.anisokernel.AnisoKernel(dsobj, name='aniso', truncate=True)

Bases: object

Provides functionality to work with anisotropic spherical harmonic kernels

attr = {'shtype': 'shaniso'}
static daskeinsumReplace(subscripts, *operands, out=None, dtype=None, order='K', casting='safe', optimize=False)

Mimics the interface of https://numpy.org/doc/stable/reference/generated/numpy.einsum.html, but uses the sparse.COO dot function

property nmax
property nmin
position(lon, lat)

Position this kernel on a specific location of the sphere :param lon: Longitude(s) in degrees of position (list like) :param lat: Latitude(s) in degrees of position (list-like) :return: A xarray.DataArray with the kernel located on the specified locations

shxarray.kernels.axial

class shxarray.kernels.axial.Disk(nmax, psi)

Bases: IsoKernelBase

name = 'shdisk'
class shxarray.kernels.axial.ParabolicCap(nmax, psi)

Bases: IsoKernelBase

name = 'shcap'
class shxarray.kernels.axial.Unit(nmax)

Bases: IsoKernelBase

name = 'shunit'

shxarray.kernels.ddk

shxarray.kernels.ddk.load_catalogue()
shxarray.kernels.ddk.load_ddk(ddkversion, trans=False, nmax=-1, truncate=True)

shxarray.kernels.factory

shxarray.kernels.gauss

class shxarray.kernels.gauss.Gaussian(nmax, halfwidth)

Bases: IsoKernelBase

name = 'gauss'

shxarray.kernels.gravfunctionals

class shxarray.kernels.gravfunctionals.Stokes2TWS(knLove=None, nmax=None)

Bases: IsoKernelBase

Provides an isotropic kernel representing the transformation of Stokes coefficients [-] to equivalent water height [m]

name = 'stokes2tws'
transform = ('stokes', 'tws')
shxarray.kernels.gravfunctionals.gravFunc(fromType, toType, **kwargs)

Computes a kernel to transform of one gravitational function into another

shxarray.kernels.isokernelbase

class shxarray.kernels.isokernelbase.IsoKernelBase

Bases: object

Provides functionality to work with isotropic spherical harmonic kernels

Greensfunc(theta)

Map an isotropic kernel to a 1D Greens function (as a function of distance from the center) :param theta: discretized isotropic distance in degrees :return: A xarray.DataArray with the 1-D Greens function in the spatial domain

attr = {'kernelstate': 'collapsed', 'shtype': 'shiso'}
expanddiag(shindex)
jacobian(shindex)
name = 'shkernel'
property nmax
property nmin
position(lon, lat)

Position this kernel on a specific location of the sphere :param lon: Longitude(s) in degrees of position (list like) :param lat: Latitude(s) in degrees of position (list-like) :return: A xarray.DataArray with the kernel located on the specified locations

transform = None