sph_radial_basis

  • Interpolates data over a sphere using radial basis functions

  • QR factorization option to eliminate ill-conditioning

Calling Sequence

import spatial_interpolators as spi
output = spi.sph_radial_basis(lon, lat, data, longitude, latitude, method='inverse')

Source code

spatial_interpolators.sph_radial_basis(lon, lat, data, longitude, latitude, smooth=0.0, epsilon=None, method='inverse', QR=False, norm='euclidean')[source]

Interpolates a sparse grid over a sphere using radial basis functions with QR factorization option

Parameters
lon: float

input longitude

lat: float

input latitude

data: float

input data

longitude: float

output longitude

latitude: float

output latitude

smooth: float, default 0.0

smoothing weights

epsilon: float or NoneType, default None

adjustable constant for distance functions

method: str, default ‘inverse’

compactly supported radial basis function

  • 'multiquadric' 1

  • 'inverse_multiquadric' 1 or 'inverse' 1

  • 'inverse_quadratic' 1

  • 'gaussian' 1

  • 'linear'

  • 'cubic'

  • 'quintic'

  • 'thin_plate'

QR: bool, default False

use QR factorization algorithm of [Fornsberg2007]

norm: str, default ‘euclidean’

Distance function for radial basis functions

  • 'euclidean': Euclidean Distance with distance_matrix

  • 'GCD': Great-Circle Distance using n-vectors with angle_matrix

Returns
output: float

interpolated data grid

References

Fornsberg2007

B. Fornberg and C. Piret, “A stable algorithm for flat radial basis functions on a sphere,” SIAM Journal on Scientific Computing, 30(1), 60–80, (2007). doi: 10.1137/060671991

Fornsberg2011

B. Fornberg, E. Larsson, and N. Flyer, “Stable Computations with Gaussian Radial Basis Functions,” SIAM Journal on Scientific Computing, 33(2), 869–892, (2011). doi: 10.1137/09076756X

1(1,2,3,4,5)

has option for QR factorization method