| 1 | ;; Interpolation types |
|---|
| 2 | ;; Liam Healy, Sun Nov 4 2007 - 17:41 |
|---|
| 3 | ;; Time-stamp: <2008-02-17 17:47:53EST types.lisp> |
|---|
| 4 | ;; $Id$ |
|---|
| 5 | |
|---|
| 6 | (in-package :gsl) |
|---|
| 7 | |
|---|
| 8 | (defmpar *linear-interpolation* "gsl_interp_linear" |
|---|
| 9 | ;; FDL |
|---|
| 10 | "Linear interpolation. This interpolation method does not require any |
|---|
| 11 | additional memory.") |
|---|
| 12 | |
|---|
| 13 | (defmpar *polynomial-interpolation* "gsl_interp_polynomial" |
|---|
| 14 | ;; FDL |
|---|
| 15 | "Polynomial interpolation. This method should only be used for |
|---|
| 16 | interpolating small numbers of points because polynomial interpolation |
|---|
| 17 | introduces large oscillations, even for well-behaved datasets. The |
|---|
| 18 | number of terms in the interpolating polynomial is equal to the number |
|---|
| 19 | of points.") |
|---|
| 20 | |
|---|
| 21 | (defmpar *cubic-spline-interpolation* "gsl_interp_cspline" |
|---|
| 22 | ;; FDL |
|---|
| 23 | "Cubic spline with natural boundary conditions. The resulting curve is |
|---|
| 24 | piecewise cubic on each interval, with matching first and second |
|---|
| 25 | derivatives at the supplied data-points. The second derivative is |
|---|
| 26 | chosen to be zero at the first point and last point.") |
|---|
| 27 | |
|---|
| 28 | (defmpar *periodic-cubic-spline-interpolation* "gsl_interp_cspline_periodic" |
|---|
| 29 | ;; FDL |
|---|
| 30 | "Cubic spline with periodic boundary conditions. The resulting curve |
|---|
| 31 | is piecewise cubic on each interval, with matching first and second |
|---|
| 32 | derivatives at the supplied data-points. The derivatives at the first |
|---|
| 33 | and last points are also matched. Note that the last point in the |
|---|
| 34 | data must have the same y-value as the first point, otherwise the |
|---|
| 35 | resulting periodic interpolation will have a discontinuity at the |
|---|
| 36 | boundary.") |
|---|
| 37 | |
|---|
| 38 | (defmpar *akima-interpolation* "gsl_interp_akima" |
|---|
| 39 | ;; FDL |
|---|
| 40 | "Non-rounded Akima spline with natural boundary conditions. This method |
|---|
| 41 | uses the non-rounded corner algorithm of Wodicka.") |
|---|
| 42 | |
|---|
| 43 | (defmpar *periodic-akima-interpolation* "gsl_interp_akima_periodic" |
|---|
| 44 | ;; FDL |
|---|
| 45 | "Non-rounded Akima spline with periodic boundary conditions. This method |
|---|
| 46 | uses the non-rounded corner algorithm of Wodicka.") |
|---|
| 47 | |
|---|
| 48 | (defmfun interpolation-name (interpolation) |
|---|
| 49 | "gsl_interp_name" |
|---|
| 50 | ((interpolation :pointer)) |
|---|
| 51 | :c-return :string |
|---|
| 52 | :documentation ; FDL |
|---|
| 53 | "The name of the interpolation type.") |
|---|
| 54 | |
|---|
| 55 | (defmfun interpolation-minimum-size (interpolation) |
|---|
| 56 | "gsl_interp_min_size" |
|---|
| 57 | ((interpolation :pointer)) |
|---|
| 58 | :c-return :uint |
|---|
| 59 | :documentation ; FDL |
|---|
| 60 | "The minimum number of points required by the |
|---|
| 61 | interpolation. For example, Akima spline interpolation |
|---|
| 62 | requires a minimum of 5 points.") |
|---|
| 63 | |
|---|
| 64 | (defmfun spline-name (interpolation) |
|---|
| 65 | "gsl_spline_name" |
|---|
| 66 | ((interpolation :pointer)) |
|---|
| 67 | :c-return :string |
|---|
| 68 | :documentation ; FDL |
|---|
| 69 | "The name of the interpolation type.") |
|---|
| 70 | |
|---|
| 71 | (defmfun spline-minimum-size (interpolation) |
|---|
| 72 | "gsl_spline_min_size" |
|---|
| 73 | ((interpolation :pointer)) |
|---|
| 74 | :c-return :uint |
|---|
| 75 | :documentation ; FDL |
|---|
| 76 | "The minimum number of points required by the |
|---|
| 77 | interpolation. For example, Akima spline interpolation |
|---|
| 78 | requires a minimum of 5 points.") |
|---|