| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer(kind=int32), | public, | parameter | :: | SPLINE_CONTINUOUS_THIRD_DERIVATIVE | = | 1003 |
Indicates a continuous third derivative at either the beginning or ending point. |
| integer(kind=int32), | public, | parameter | :: | SPLINE_KNOWN_FIRST_DERIVATIVE | = | 1001 |
Indicates a known first derivative at either the beginning or ending point. |
| integer(kind=int32), | public, | parameter | :: | SPLINE_KNOWN_SECOND_DERIVATIVE | = | 1002 |
Indicates a known second derivative at either the beginning or ending point. |
| integer(kind=int32), | public, | parameter | :: | SPLINE_QUADRATIC_OVER_INTERVAL | = | 1000 |
Indicates that the spline is quadratic over the interval under consideration (beginning or ending interval). |
Performs a single interpolation.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(base_interpolator), | intent(inout) | :: | this |
The base_interpolator object. |
||
| real(kind=real64), | intent(in) | :: | x |
The value at which to compute the interpolation. |
The interpolated result.
A base object for interpolation.
| procedure , public :: interpolate => bi_interp Subroutine | |
| procedure (interp_routine) , public , pass :: interpolate_value |
Defines a type meant for performing Hermite-type interpolation. The interpolating polynomial constructed by this object is a global polynomial, not a piecewise polynomial. Given N data points, the polynoial will be of degree 2 * N - 1. As N increases, the interpolating polynomial may be liable to oscillations that do not properly represent the data. For large data sets, a piecewise polynomial approach is recommended. See either the polynomial_interpolator or spline_interpolator types.
| procedure , public :: initialize => hi_init Subroutine | |
| procedure , public :: interpolate => hi_interp Subroutine | |
| procedure , public :: interpolate_value => hi_raw_interp Function | |
| procedure , public :: interpolate_with_derivative => hi_interp_all Subroutine |
Defines a type meant for performing piecewise linear interpolation.
| procedure , public :: initialize => li_init Subroutine | |
| procedure , public :: interpolate => bi_interp Subroutine | |
| procedure , public :: interpolate_value => li_raw_interp Function |
Defines a type meant for performing piecewise polynomial interpolation.
| procedure , public :: initialize => pi_init Subroutine | |
| procedure , public :: interpolate => bi_interp Subroutine | |
| procedure , public :: interpolate_value => pi_raw_interp Function |
Defines a type meant for performing cubic spline interpolation.
| procedure , public :: initialize => si_init Subroutine | |
| procedure , public :: interpolate => bi_interp Subroutine | |
| procedure , public :: interpolate_value => si_raw_interp Function |