Programming Reference for VirtualLab Fusion
2025.1
|
This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
ComplexFieldPointInterpolation is a class with static members that are able to interpolated pointwise between different sampling points of a ComplexField. Additionally a non static-optimized version is supported for most interpolation methods. These functions are optimized for an interpolation on an equidistant grid. Different interpolation methods are supported. For more information see [Lehmann1999].
More...
Public Member Functions | |
ComplexFieldPointInterpolation () | |
Default constructor for all optimized interpolations. | |
Complex | Cubic4PointInterpolationOpt (ComplexField cf, double coord_x, double coord_y, ExtrapolationInfo extrapolation) |
Performs an optimized cubic 4 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point. | |
Complex | Cubic6PointInterpolationOpt (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs an optimized cubic 6 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point. | |
Complex | Cubic8PointInterpolationOpt (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs an optimized cubic 8 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 8 neighbouring points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point. | |
Complex | InterpolationMethodDelegate (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Delegate for the complex field point interpolation methods of this class. | |
Complex | InterpolationOpt (ComplexField cf, VectorD point, InterpolationMethod interpolationMethod, ExtrapolationInfo extrapolation) |
Performs an interpolation of a ComplexField on a specific point (x,y) using the specified interpolation method. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point. | |
void | ReInitialize () |
Deletes all temporarily stored interpolation data. Use this function if you plan to interpolate a different ComplexField with the same interpolation method. Not reinitialzing the interpolation object can case numerical errors in such cases. | |
Complex | SincInterpolationOpt (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done by adding the sinc-functions of every pixel of the field. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point. | |
Complex | TruncatedSincInterpolationOpt (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a truncated sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point. | |
Static Public Member Functions | |
static Complex | Cubic4PointInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a cubic 4 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static double | Cubic4PointInterpolationKernel (double dx) |
This function calculates the one-dimensional interpolation kernel of the cubic 4 point interpolation. | |
static Complex | Cubic6PointInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a cubic 6 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | Cubic6PointInterpolationWithDerivatives (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation, out Complex derivX, out Complex derivY) |
Performs a cubic 6 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighboring points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | Cubic8PointInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a cubic 8 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | Interpolation (ComplexField cf, VectorD point, InterpolationMethod interpolationMethod, bool periodicExtrapolation) |
Performs a interpolation of a ComplexField on a specific point (x,y) using the specified interpolation method. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | Interpolation (ComplexField cf, VectorD point, InterpolationMethod interpolationMethod, ExtrapolationInfo extrapolation) |
Performs a interpolation of a ComplexField on a specific point (x,y) using the specified interpolation method. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | LinearInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a linear interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The function interpolates the phase by interpolating real and imaginary part of the points. The amplitude is interpolated separately. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | LinearInterpolation_RealAndImaginaryPart (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a linear interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The function interpolates the real and the imaginary part. There is no separate interpolation of amplitude and phase! | |
static Complex | LinearInterpolationPhysical (ComplexField cf, VectorD samplingDistance, VectorD point, ExtrapolationInfo extrapolation, bool interpolatePhaseAndAmplitude) |
Performs a linear interpolation of a ComplexField on a specific physical coordinate (x,y). The interpolation is done between 4 neighbor points. The function interpolates the phase by interpolating real and imaginary part of the points. The amplitude is interpolated separately. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | NearestNeighbourInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Nearest neighbour interpolation of a ComplexField on a specific point (x,y). The interpolation is looking for the nearest neighbour pixel and return its value. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | SincInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done by adding the sinc-functions of every pixel of the field. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
static Complex | TruncatedSincInterpolation (ComplexField cf, VectorD point, ExtrapolationInfo extrapolation) |
Performs a truncated sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. | |
This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
ComplexFieldPointInterpolation is a class with static members that are able to interpolated pointwise between different sampling points of a ComplexField. Additionally a non static-optimized version is supported for most interpolation methods. These functions are optimized for an interpolation on an equidistant grid. Different interpolation methods are supported. For more information see [Lehmann1999].
|
static |
Performs a cubic 4 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
This function calculates the one-dimensional interpolation kernel of the cubic 4 point interpolation.
dx | Distance from the interpolation point in pixels. |
Complex Cubic4PointInterpolationOpt | ( | ComplexField | cf, |
double | coord_x, | ||
double | coord_y, | ||
ExtrapolationInfo | extrapolation | ||
) |
Performs an optimized cubic 4 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point.
cf | ComplexField. |
coord_x | X coordinate of the position to interpolate for |
coord_y | Y coordinate of the position to interpolate for |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a cubic 6 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
Complex Cubic6PointInterpolationOpt | ( | ComplexField | cf, |
VectorD | point, | ||
ExtrapolationInfo | extrapolation | ||
) |
Performs an optimized cubic 6 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point.
cf | ComplexField. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a cubic 6 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighboring points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
derivX | Out parameter giving the derivative in x-direction. |
derivY | Out parameter giving the derivative in y-direction. |
|
static |
Performs a cubic 8 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
Complex Cubic8PointInterpolationOpt | ( | ComplexField | cf, |
VectorD | point, | ||
ExtrapolationInfo | extrapolation | ||
) |
Performs an optimized cubic 8 point interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 8 neighbouring points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point.
cf | ComplexField. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a interpolation of a ComplexField on a specific point (x,y) using the specified interpolation method. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
interpolationMethod | Interpolation method. |
periodicExtrapolation | If true , the part will be treated as periodic outside the actual definition area. Otherwise the outer range will be assumed to be constant zero. |
|
static |
Performs a interpolation of a ComplexField on a specific point (x,y) using the specified interpolation method. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
interpolationMethod | Interpolation method. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
System.ArgumentException | Interpolation method not supported. |
Complex InterpolationMethodDelegate | ( | ComplexField | cf, |
VectorD | point, | ||
ExtrapolationInfo | extrapolation | ||
) |
Delegate for the complex field point interpolation methods of this class.
cf | |
point | |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
Complex InterpolationOpt | ( | ComplexField | cf, |
VectorD | point, | ||
InterpolationMethod | interpolationMethod, | ||
ExtrapolationInfo | extrapolation | ||
) |
Performs an interpolation of a ComplexField on a specific point (x,y) using the specified interpolation method. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
interpolationMethod | Interpolation method. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a linear interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The function interpolates the phase by interpolating real and imaginary part of the points. The amplitude is interpolated separately. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField to interpolate. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a linear interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 4 neighbour points. The function interpolates the real and the imaginary part. There is no separate interpolation of amplitude and phase!
cf | ComplexField to interpolate. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a linear interpolation of a ComplexField on a specific physical coordinate (x,y). The interpolation is done between 4 neighbor points. The function interpolates the phase by interpolating real and imaginary part of the points. The amplitude is interpolated separately. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField to interpolate. |
samplingDistance | The sampling distance of the field. |
point | Physical position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
interpolatePhaseAndAmplitude | If true, phase and amplitude is interpolated at point. if false, real part and imaginary part is interpolated at point. |
|
static |
Nearest neighbour interpolation of a ComplexField on a specific point (x,y). The interpolation is looking for the nearest neighbour pixel and return its value. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField to interpolate. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done by adding the sinc-functions of every pixel of the field. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
Complex SincInterpolationOpt | ( | ComplexField | cf, |
VectorD | point, | ||
ExtrapolationInfo | extrapolation | ||
) |
Performs a sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done by adding the sinc-functions of every pixel of the field. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point.
cf | ComplexField to interpolate. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
|
static |
Performs a truncated sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1.
cf | ComplexField for interpolation. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |
Complex TruncatedSincInterpolationOpt | ( | ComplexField | cf, |
VectorD | point, | ||
ExtrapolationInfo | extrapolation | ||
) |
Performs a truncated sinc interpolation of a ComplexField on a specific point (x,y). The interpolation is done between 6 neighbour points. The coordinate system runs from 0 to SamplingPoints.X - 1 and 0 to SamplingPoints.Y - 1. The interpolation is optimized for interpolations that work row by row and from the left sampling point to the right sampling point.
cf | ComplexField. |
point | Position to interpolate. |
extrapolation | The mode of extrapolation used if point lies outside the definition area of the ComplexField. |