CubicPeriodic

Struct CubicPeriodic 

Source
pub struct CubicPeriodic;
Expand description

Cubic Periodic Interpolation type.

Cubic Spline with periodic boundary conditions. The resulting curve is piecewise cubic on each interval, with matching first and second derivatives at the supplied data-points. The derivatives at the first and last points are also matched. Note that the last point in the data must have the same y-value as the first point, otherwise the resulting periodic interpolation will have a discontinuity at the boundary.

§Reference

Numerical Algorithms with C - Gisela Engeln-Mullges, Frank Uhlig - 1996 - Algorithm 10.2, pg 255

Trait Implementations§

Source§

impl<T> InterpType<T> for CubicPeriodic
where T: Num + Lapack,

Source§

fn build( &self, xa: &[T], ya: &[T], ) -> Result<CubicPeriodicInterp<T>, InterpolationError>

Constructs a Cubic Periodic Interpolator.

§Example
let xa = [0.0, 1.0, 2.0];
let ya = [0.0, 2.0, 4.0];
let interp = CubicPeriodic.build(&xa, &ya)?;
Source§

const MIN_SIZE: usize = 3usize

The minimum number of points required by the Interpolator.
Source§

const NAME: &str = "Cubic Periodic"

The name of the Interpolator.
Source§

type Interpolator = CubicPeriodicInterp<T>

The returned Interpolator, containing the calculated coefficients and providing the evaluation methods.
Source§

fn name(&self) -> String

Returns the name of the Interpolator.
Source§

fn min_size(&self) -> usize

Returns the minimum number of points required by the Interpolator.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V