Special.ZernikeZExpansion(Func<Int32, Int32, Int32>, Vector<Double>, Boolean, Double, Double, Int32) Method

Evaluates an expansion of Zernike polynomials up to the specified radial degree.

Definition

Namespace: Extreme.Mathematics
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
C#
public static double ZernikeZExpansion(
	Func<int, int, int> scheme,
	Vector<double> coefficients,
	bool normalize,
	double x,
	double angle,
	int maxRadialDegree
)

Parameters

scheme  Func<Int32, Int32, Int32>
A delegate that maps radial degree and azimuthal frequency to a linear index.
coefficients  Vector<Double>
A matrix containing the coefficients in the lower triangular part.
normalize  Boolean
Specifies whether the Zernike polynomial should be normalized.
x  Double
A real number that specifies the radial argument.
angle  Double
A real number that specifies the angular argument.
maxRadialDegree  Int32
The highest radial degree of the polynomials to include in the series.

Return Value

Double
The sum of the Zernike polynomials with radial degree up to maxRadialDegree evaluated at x and angle and multiplied by the corresponding element of coefficients.

Remarks

If maxRadialDegree is less than zero, then zero is returned.

Exceptions

ArgumentNullException

scheme is null.

-or-

coefficients is null.

See Also