ILNumerics Ultimate VS

NearestInterpolatorFComplexApply Method

ILNumerics Ultimate VS Documentation
ILNumerics - Technical Application Development
method returns linear interpolated values at specific query points X.

[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> X,
	InCell arguments = null
)

Parameters

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

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

X defines new positions for the interpolation based on the trained object state. The shape of X is not taken into account. If X is not a vector, its values are read in sequential order.

Interpolation values are computed from the original values V used to train this interpolator objects. The array returned will have the same shape as V, except the working dimension of V is replaced with n interpolated values, n = X.S.NumberOfElements. The 'working dimension' 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 NearestInterpolatorSingle(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