ILNumerics Ultimate VS

CubicInterpolatorFComplexApply Method

ILNumerics Ultimate VS Documentation
ILNumerics - Technical Application Development
Computes interpolated values using this cubic interpolator for new query points Xn.

[ILNumerics Interpolation Toolbox]

Namespace:  ILNumerics.Toolboxes
Assembly:  ILNumerics.Toolboxes.Interpolation (in ILNumerics.Toolboxes.Interpolation.dll) Version: 5.5.0.0 (5.5.7503.3146)
Syntax

public override RetArray<fcomplex> Apply(
	InArray<float> Xn,
	InCell arguments = null
)

Parameters

Xn
Type: ILNumericsInArraySingle
Query points, specified as a scalar, vector or n-dim array of real numbers.
arguments (Optional)
Type: ILNumericsInCell
(Ignored)

Return Value

Type: RetArrayfcomplex
Interpolated data, see remarks for size details.
Exceptions

ExceptionCondition
ArgumentNullExceptionIf an input parameters are NULL
InvalidOperationExceptionIf Interpolation object has been disposed before Apply() calls
Remarks

Xn defines new positions for the interpolation based on the trained object state. The shape of Xn is not taken into account. Values of Xn are read in sequential, column-major order.

Interpolation values are computed from the original values V used to train this interpolator object. The array returned will have the same shape as V, except the working dimension of V is replaced with n interpolated values, n = Xn.S.NumberOfElements. The 'working dimension' index of V is 1 if V is a row vector, 0 otherwise.

[ILNumerics Interpolation Toolbox]

Examples

// Define some sample points as a function: f(x) = sin(x);
Array<fcomplex> X = linspace<fcomplex>(-pi, pi, 10);
Array<fcomplex> V = sin(X);

// Create Interpolator Object order 5
using (var interp = new CubicInterpolatorSingle(V, X)) 
{ 
    // Get some random scalar values
    fcomplex val1 = (fcomplex)interp.Apply(0.024);
    fcomplex val2 = (fcomplex)interp.Apply(-0.21);

    // Get 10 linear spaced values defined on range (-0.5, 1.25)
    Array<fcomplex> valRange = interp.Apply(linspace<fcomplex>(-0.5, 1.25, 10));

    // Get 30 interpolated values using Xn query points defined as array[3 x 2 x 5]
    Array<fcomplex> Xn = counter(0.0, 0.1, 3, 2, 5);
    Array<fcomplex> Vn = interp.Apply(Xn);
}

See Also

Reference