Wiki
Download
Manual
Eggs
API
Tests
Bugs
show
edit
history
You can edit this page using
wiki syntax
for markup.
Article contents:
[[tags:egg]] [[toc:]] == rbf Bindings to Multidimensional Interpolation with Radial Basis Functions by John Burkardt. == Documentation === Datatypes ==== RBFInterpolant A record representing a radial basis function interpolant. Fields: ; {{rank}}: The spatial dimension ; {{basis}}: The type of basis function used ; {{scale}}: The scale factor for the basis functions ; {{npoints}}: The number of data points ; {{xpoints}}: The data points (f64vector) ; {{weights}}: The computed weights (f64vector) === Procedures <procedure>make-interpolant :: basis m scale xpoints ypoints -> RBFInterpolant</procedure> Creates a new RBF interpolant. Parameters: ; {{basis}}: Symbol representing the basis function type: - 'mq or 'multiquadratic: Multiquadratic basis - 'imq or 'inverse-multiquadratic: Inverse multiquadratic basis - 'tp or 'thin-plate: Thin plate spline basis - 'ga or 'gaussian: Gaussian basis ; {{m}}: Integer specifying the spatial dimension ; {{scale}}: Real number specifying the scale factor. Should be larger than the typical separation between points, but smaller than the maximum separation. ; {{xpoints}}: f64vector containing the data points (length should be m × number_of_points) ; {{ypoints}}: f64vector containing the function values at the data points (length should equal number_of_points) Returns a new <RBFInterpolant> record. <procedure>eval-interpolant :: RBFInterpolant ipoints -> f64vector</procedure> Evaluates the interpolant at the specified points. Parameters: ; {{interpolant}} : An {{RBFInterpolant}} record created with {{make-interpolant}} ; {{ipoints}}: f64vector containing the interpolation points (length should be m * number_of_interpolation_points) Returns a f64vector containing the interpolated values at the specified points. == Examples <enscript highlight="scheme"> (import rbf srfi-4) ;; Create a 2D interpolant with 4 data points (define x-data (f64vector 0.0 0.0 0.0 1.0 1.0 0.0 1.0 1.0)) (define y-data (f64vector 0.0 0.0 0.0 1.0)) ;; Create an interpolant using Gaussian basis functions (define interpolant (make-interpolant 'ga 2 0.5 x-data y-data)) ;; Evaluate at a specific point (0.5, 0.5) (define query-point (f64vector 0.5 0.5)) (define result (eval-interpolant interpolant query-point)) ;; Print the result (print (f64vector-ref result 0)) </enscript> == About this egg === Author [[/users/ivan-raikov|Ivan Raikov]] === Repository [[https://github.com/iraikov/chicken-rbf|https://github.com/iraikov/chicken-rbf]] === Version history ; 1.0 : Initial release === License Copyright 2019-2025 Ivan Raikov. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. A full copy of the GPL license can be found at <http://www.gnu.org/licenses/>.
Description of your changes:
I would like to authenticate
Authentication
Username:
Password:
Spam control
What do you get when you add 21 to 21?