rbf

1.1.5 • Public • Published

rbf

Radial Basis Function (RBF) interpolation

Builds Radial Basis Functions for input and output values of arbitrary dimensionality using standard or custom distance functions.

Installation

$ npm install rbf

Usage

var RBF = require('rbf');

var points = [
  [0, 0],
  [0, 100]
];

// values could be vectors of any dimensionality.
// The computed interpolant function will return values or vectors accordingly.
var values = [
  0.0,
  1.0
]

// RBF accepts a distance function as a third parameter :
// either one of the following strings or a custom distance function (defaults to 'linear').
//
// - linear: r
// - cubic: r**3
// - quintic: r**5
// - thin-plate: r**2 * log(r)
// - gaussian: exp(-(r/epsilon) ** 2)
// - multiquadric: sqrt((r/epsilon) ** 2 + 1)
// - inverse-multiquadric: 1 / sqrt((r/epsilon) ** 2 + 1)
//
// epsilon can be provided as a 4th parameter. Defaults to the average 
// euclidean distance between points.
//
var rbf = RBF(points, values /*, distanceFunction, epsilon */);

console.log(rbf([0, 50])); // => 0.5

Examples

Partial derivative of a gaussian, original and interpolated with 25 random samples (linear distance function).

Lena, original and interpolated with 4000 random samples (about 6% of the original pixels, linear distance function).

Readme

Keywords

none

Package Sidebar

Install

npm i rbf

Weekly Downloads

228

Version

1.1.5

License

MIT

Last publish

Collaborators

  • thibauts