.. RBF documentation master file, created by sphinx-quickstart on Tue Oct 18 17:39:42 2016. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. RBF +++ Python package containing tools for radial basis function (RBF) applications. Applications include interpolating scattered data and solving partial differential equations (PDEs) over irregular domains. Much of this package was inspired by the books "A Primer on Radial Basis Functions with Applications to the Geosciences" by Bengt Fornberg and Natasha Flyer and "Meshfree Approximation Methods with Matlab" by Gregory Fasshauer. RBF is developed by Trever Hines (hinest@umich.edu), University of Michigan, and the source code for this project can be found `here `_. Features ======== * The `RBF` class, which is used to evaluate RBFs and their exact derivatives * The `RBFInterpolant` class, which is used to interpolate scattered and potentially noisy N-dimensional data. One can also evaluate the exact derivatives of the interpolant * The `weight_matrix` function, which generates radial basis function finite difference (RBF-FD) weights. This is used for solving large scale PDEs over irregular domains * Node generation functions, such as `min_energy_nodes` and `poisson_disc_nodes`, which are used for solving PDEs with the spectral RBF method or the RBF-FD method * Computational geometry functions (e.g. point in polygon testing) for two and three spatial dimensions * The `GaussianProcess` class, which is used for Gaussian process regression (GPR). GPR is similar to RBF interpolation, except it has a Bayesian statistical foundation Table of contents ================= .. toctree:: :maxdepth: 2 installation basis interpolate gproc pde linalg poly utils sputils Quick demo ========== Interpolating scattered data ---------------------------- .. literalinclude:: ../scripts/interpolate.a.py .. figure:: ../figures/interpolate.a.png This plot was generated by the above code. Observations are shown as scatter points and the smoothed interpolant is the color field. Solving PDEs ------------ There are two methods for solving PDEs with RBFs: the spectral method and the RBF-FD method. The spectral method has been touted as having remarkable accuracy; however it is only applicable for small scale problems and requires a good choice for a shape parameter. The RBF-FD method is appealing because it can be used for large scale problems, there is no need to tune a shape parameter (assuming you use polyharmonic splines to generate the weights), and higher order accuracy can be attained by simply increasing the stencil size or increasing the order of the polynomial used to generate the weights. In short, the RBF-FD method should always be preferred over the spectral RBF method. An example of the two methods is provided below. .. literalinclude:: ../scripts/basis.a.py .. figure:: ../figures/basis.a.png .. literalinclude:: ../scripts/fd.i.py .. figure:: ../figures/fd.i.png Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`