RBF Scalar Field
================

Dependencies
------------

This node optionally uses SciPy_ library to work.

.. _SciPy: https://scipy.org/

Functionality
-------------

This node generates a Scalar Field for given set of points in 3D space and
corresponding scalar field values, by use of RBF_ method. Depending on node
parameters, the field can be interpolating, i.e. have exactly the provided
values in the provided points, or only approximating.

.. _RBF: http://www.scholarpedia.org/article/Radial_basis_function

Inputs
------

This node has the following inputs:

* **Vertices**. The set of points where the values of scalar fields are known.
  This input is mandatory.
* **Values**. Values of the scalar field in the specified points. This input is
  mandatory.
* **Epsilon**. Epsilon parameter of used RBF function; it affects the shape of
  generated field. The default value is 1.0.
* **Smooth**. Smoothness parameter of used RBF function. If this is zero, then
  the field will have exactly the specified values in all provided points;
  otherwise, it will be only an approximating field. The default value is 0.0.

Parameters
----------

This node has the following parameter:

* **Function**. The specific function used by the node. The available values are:

  * Multi Quadric
  * Inverse
  * Gaussian
  * Cubic
  * Quintic
  * Thin Plate

  The default function is Multi Quadric.

Outputs
-------

This node has the following output:

* **Field**. The generated scalar field.

Example of usage
----------------

The field is generated by following data:

* In the origin, it has value of 0;
* In eight vertices of 2x2x2 cube, it has the value of 2;
* In the vertices of 4x4x4 cube, it has the value of 4.

.. image:: https://user-images.githubusercontent.com/284644/87240833-7f39e480-c436-11ea-9706-d7e55849c136.png

Let's move the smaller cube slightly and generate an iso-surface instead of iso-curves:

.. image:: https://user-images.githubusercontent.com/284644/87240927-4ea67a80-c437-11ea-9b36-04b56a6ae696.png

