AiryAi(z) is a solution to the Airy equation, y'' - y * z = 0.
Parameters
Complex z
The value to compute the Airy function of.
Return
Complex
The Airy function Ai.
Type SpecialFunctions
Namespace MathNet.Numerics
AiryAi(z) is a solution to the Airy equation, y'' - y * z = 0.
Complex zThe value to compute the Airy function of.
ComplexThe Airy function Ai.
AiryAi(z) is a solution to the Airy equation, y'' - y * z = 0.
double zThe value to compute the Airy function of.
doubleThe Airy function Ai.
AiryAiPrime(z) is defined as d/dz AiryAi(z).
Complex zThe value to compute the derivative of the Airy function of.
ComplexThe derivative of the Airy function Ai.
AiryAiPrime(z) is defined as d/dz AiryAi(z).
double zThe value to compute the derivative of the Airy function of.
doubleThe derivative of the Airy function Ai.
ScaledAiryAiPrime(z) is given by Exp(zta) * AiryAiPrime(z), where zta = (2/3) * z * Sqrt(z).
Complex zThe value to compute the derivative of the Airy function of.
ComplexThe exponentially scaled derivative of Airy function Ai.
ScaledAiryAiPrime(z) is given by Exp(zta) * AiryAiPrime(z), where zta = (2/3) * z * Sqrt(z).
double zThe value to compute the derivative of the Airy function of.
doubleThe exponentially scaled derivative of the Airy function Ai.
ScaledAiryAi(z) is given by Exp(zta) * AiryAi(z), where zta = (2/3) * z * Sqrt(z).
Complex zThe value to compute the Airy function of.
ComplexThe exponentially scaled Airy function Ai.
ScaledAiryAi(z) is given by Exp(zta) * AiryAi(z), where zta = (2/3) * z * Sqrt(z).
double zThe value to compute the Airy function of.
doubleThe exponentially scaled Airy function Ai.
AiryBi(z) is a solution to the Airy equation, y'' - y * z = 0.
double zThe value to compute the Airy function of.
doubleThe Airy function Bi.
AiryBi(z) is a solution to the Airy equation, y'' - y * z = 0.
Complex zThe value to compute the Airy function of.
ComplexThe Airy function Bi.
AiryBiPrime(z) is defined as d/dz AiryBi(z).
Complex zThe value to compute the derivative of the Airy function of.
ComplexThe derivative of the Airy function Bi.
AiryBiPrime(z) is defined as d/dz AiryBi(z).
double zThe value to compute the derivative of the Airy function of.
doubleThe derivative of the Airy function Bi.
ScaledAiryBiPrime(z) is given by Exp(-Abs(zta.Real)) * AiryBiPrime(z) where zta = (2 / 3) * z * Sqrt(z).
Complex zThe value to compute the derivative of the Airy function of.
ComplexThe exponentially scaled derivative of the Airy function Bi.
ScaledAiryBiPrime(z) is given by Exp(-Abs(zta.Real)) * AiryBiPrime(z) where zta = (2 / 3) * z * Sqrt(z).
double zThe value to compute the derivative of the Airy function of.
doubleThe exponentially scaled derivative of the Airy function Bi.
ScaledAiryBi(z) is given by Exp(-Abs(zta.Real)) * AiryBi(z) where zta = (2 / 3) * z * Sqrt(z).
double zThe value to compute the Airy function of.
doubleThe exponentially scaled Airy function Bi.
ScaledAiryBi(z) is given by Exp(-Abs(zta.Real)) * AiryBi(z) where zta = (2 / 3) * z * Sqrt(z).
Complex zThe value to compute the Airy function of.
ComplexThe exponentially scaled Airy function Bi(z).
BesselI(n, z) is a solution to the modified Bessel differential equation.
double nThe order of the modified Bessel function.
double zThe value to compute the modified Bessel function of.
doubleThe modified Bessel function of the first kind.
BesselI(n, z) is a solution to the modified Bessel differential equation.
double nThe order of the modified Bessel function.
Complex zThe value to compute the modified Bessel function of.
ComplexThe modified Bessel function of the first kind.
double xThe value to compute the Bessel function of.
double xThe value to compute the function of.
double xThe value to compute the Bessel function of.
double xThe value to compute the function of.
ScaledBesselI(n, z) is given by Exp(-Abs(z.Real)) * BesselI(n, z).
double nThe order of the modified Bessel function.
Complex zThe value to compute the modified Bessel function of.
ComplexThe exponentially scaled modified Bessel function of the first kind.
ScaledBesselI(n, z) is given by Exp(-Abs(z.Real)) * BesselI(n, z).
double nThe order of the modified Bessel function.
double zThe value to compute the modified Bessel function of.
doubleThe exponentially scaled modified Bessel function of the first kind.
BesselJ(n, z) is a solution to the Bessel differential equation.
double nThe order of the Bessel function.
Complex zThe value to compute the Bessel function of.
ComplexThe Bessel function of the first kind.
BesselJ(n, z) is a solution to the Bessel differential equation.
double nThe order of the Bessel function.
double zThe value to compute the Bessel function of.
doubleThe Bessel function of the first kind.
ScaledBesselJ(n, z) is given by Exp(-Abs(z.Imaginary)) * BesselJ(n, z).
double nThe order of the Bessel function.
double zThe value to compute the Bessel function of.
doubleThe exponentially scaled Bessel function of the first kind.
ScaledBesselJ(n, z) is given by Exp(-Abs(z.Imaginary)) * BesselJ(n, z).
double nThe order of the Bessel function.
Complex zThe value to compute the Bessel function of.
ComplexThe exponentially scaled Bessel function of the first kind.
BesselK(n, z) is a solution to the modified Bessel differential equation.
double nThe order of the modified Bessel function.
Complex zThe value to compute the modified Bessel function of.
ComplexThe modified Bessel function of the second kind.
BesselK(n, z) is a solution to the modified Bessel differential equation.
double nThe order of the modified Bessel function.
double zThe value to compute the modified Bessel function of.
doubleThe modified Bessel function of the second kind.
double xThe value to compute the Bessel function of.
double xThe value to compute the Bessel function of.
double xThe value to compute the Bessel function of.
double xThe value to compute the Bessel function of.
ScaledBesselK(n, z) is given by Exp(z) * BesselK(n, z).
double nThe order of the modified Bessel function.
double zThe value to compute the modified Bessel function of.
doubleThe exponentially scaled modified Bessel function of the second kind.
ScaledBesselK(n, z) is given by Exp(z) * BesselK(n, z).
double nThe order of the modified Bessel function.
Complex zThe value to compute the modified Bessel function of.
ComplexThe exponentially scaled modified Bessel function of the second kind.
BesselY(n, z) is a solution to the Bessel differential equation.
double nThe order of the Bessel function.
double zThe value to compute the Bessel function of.
doubleThe Bessel function of the second kind.
BesselY(n, z) is a solution to the Bessel differential equation.
double nThe order of the Bessel function.
Complex zThe value to compute the Bessel function of.
ComplexThe Bessel function of the second kind.
ScaledBesselY(n, z) is given by Exp(-Abs(z.Imaginary)) * Y(n, z).
double nThe order of the Bessel function.
Complex zThe value to compute the Bessel function of.
ComplexThe exponentially scaled Bessel function of the second kind.
ScaledBesselY(n, z) is given by Exp(-Abs(z.Imaginary)) * BesselY(n, z).
double nThe order of the Bessel function.
double zThe value to compute the Bessel function of.
doubleThe exponentially scaled Bessel function of the second kind.
double zThe first Beta parameter, a positive real number.
double wThe second Beta parameter, a positive real number.
doubleThe Euler Beta function evaluated at z,w.
double aThe first Beta parameter, a positive real number.
double bThe second Beta parameter, a positive real number.
double xThe upper limit of the integral.
doubleThe lower incomplete (unregularized) beta function.
double zThe first Beta parameter, a positive real number.
double wThe second Beta parameter, a positive real number.
doubleThe logarithm of the Euler Beta function evaluated at z,w.
double aThe first Beta parameter, a positive real number.
double bThe second Beta parameter, a positive real number.
double xThe upper limit of the integral.
doubleThe regularized lower incomplete beta function.
int nA nonnegative value n.
int kA nonnegative value h.
doubleThe binomial coefficient: n choose k.
int nA nonnegative value n.
int kA nonnegative value h.
doubleThe logarithmic binomial coefficient: ln(n choose k).
double xThe argument of the digamma function.
doubleThe value of the DiGamma function at x.
Computes the inverse Digamma function: this is the inverse of the logarithm of the gamma function. This function will only return solutions that are positive.
This implementation is based on the bisection method.
double pThe argument of the inverse digamma function.
doubleThe positive solution to the inverse DiGamma function at p.
double xThe value to evaluate.
doublethe error function evaluated at given value.
double xThe value to evaluate.
doublethe complementary error function evaluated at given value.
We have tested this implementation against the arbitrary precision mpmath library and found cases where we can only guarantee 9 significant figures correct.
double zvalue to evaluate.
doubleThe complementary inverse error function evaluated at given value.
double zvalue to evaluate.
doubleThe inverse error function evaluated at given value.
x -> exp(x)-1
double powerA number specifying a power.
doubleReturns exp(power)-1.
This implementation of the computation of the Exponential Integral function follows the derivation in "Handbook of Mathematical Functions, Applied Mathematics Series, Volume 55", Abramowitz, M., and Stegun, I.A. 1964, reprinted 1968 by Dover Publications, New York), Chapters 6, 7, and 26. AND "Advanced mathematical methods for scientists and engineers", Bender, Carl M.; Steven A. Orszag (1978). page 253
for x > 1 uses continued fraction approach that is often used to compute incomplete gamma. for 0 < x <= 1 uses Taylor series expansion
Our unit tests suggest that the accuracy of the Exponential Integral function is correct up to 13 floating point digits.
double xThe argument of the Exponential Integral function.
int nInteger power of the denominator term. Generalization index.
doubleThe value of the Exponential Integral function.
x -> exp(x)-1
double powerA number specifying a power.
doubleReturns exp(power)-1.
If you need to multiply or divide various such factorials, consider using the logarithmic version FactorialLn instead so you can add instead of multiply and subtract instead of divide, and then exponentiate the result using Exp. This will also circumvent the problem that factorials become very large even for small parameters.
doubleA value value! for value > 0
doubleA value value! for value > 0
doubleThe real value of the Falling Factorial for x and n
This implementation of the computation of the gamma and logarithm of the gamma function follows the derivation in "An Analysis Of The Lanczos Gamma Approximation", Glendon Ralph Pugh, 2004. We use the implementation listed on p. 116 which should achieve an accuracy of 16 floating point digits. Although 16 digit accuracy should be sufficient for double values, improving accuracy is possible (see p. 126 in Pugh).
Our unit tests suggest that the accuracy of the Gamma function is correct up to 13 floating point digits.
double zThe argument of the gamma function.
doubleThe logarithm of the gamma function.
This implementation of the computation of the gamma and logarithm of the gamma function follows the derivation in "An Analysis Of The Lanczos Gamma Approximation", Glendon Ralph Pugh, 2004. We use the implementation listed on p. 116 which achieves an accuracy of 16 floating point digits. Although 16 digit accuracy should be sufficient for double values, improving accuracy is possible (see p. 126 in Pugh).
Our unit tests suggest that the accuracy of the Gamma function is correct up to 14 floating point digits.
double zThe argument of the gamma function.
doubleThe logarithm of the gamma function.
double aThe argument for the gamma function.
double xThe upper integral limit.
doubleThe lower incomplete gamma function.
double aThe argument for the gamma function.
double xThe upper integral limit.
doubleThe lower incomplete gamma function.
double aThe argument for the gamma function.
double xThe lower integral limit.
doubleThe upper incomplete gamma function.
double aThe argument for the gamma function.
double xThe lower integral limit.
doubleThe upper incomplete regularized gamma function.
int nThe order parameter.
double mThe power parameter.
doubleGeneral Harmonic number.
Double[] aThe list of coefficients in the numerator
Double[] bThe list of coefficients in the denominator
int zThe variable in the power series
doubleThe value of the Generalized HyperGeometric Function.
HankelH1(n, z) is defined as BesselJ(n, z) + j * BesselY(n, z).
double nThe order of the Hankel function.
Complex zThe value to compute the Hankel function of.
ComplexThe Hankel function of the first kind.
ScaledHankelH1(n, z) is given by Exp(-z * j) * HankelH1(n, z) where j = Sqrt(-1).
double nThe order of the Hankel function.
Complex zThe value to compute the Hankel function of.
ComplexThe exponentially scaled Hankel function of the first kind.
HankelH2(n, z) is defined as BesselJ(n, z) - j * BesselY(n, z).
double nThe order of the Hankel function.
Complex zThe value to compute the Hankel function of.
ComplexThe Hankel function of the second kind.
ScaledHankelH2(n, z) is given by Exp(z * j) * HankelH2(n, z) where j = Sqrt(-1).
double nThe order of the Hankel function.
Complex zThe value to compute the Hankel function of.
ComplexThe exponentially scaled Hankel function of the second kind.
int tThe Harmonic number which needs to be computed.
doubleThe t'th Harmonic number.
(a,b) -> sqrt(a^2 + b^2)
double aThe length of side a of the triangle.
double bThe length of side b of the triangle.
doubleReturns sqrt(a2 + b2) without underflow/overflow.
(a,b) -> sqrt(a^2 + b^2)
float aThe length of side a of the triangle.
float bThe length of side b of the triangle.
floatReturns sqrt(a2 + b2) without underflow/overflow.
(a,b) -> sqrt(a^2 + b^2)
Complex aThe length of side a of the triangle.
Complex bThe length of side b of the triangle.
ComplexReturns sqrt(a2 + b2) without underflow/overflow.
KelvinBe(nu, x) is given by BesselJ(0, j * sqrt(j) * x) where j = sqrt(-1).
KelvinBer(nu, x) and KelvinBei(nu, x) are the real and imaginary parts of the KelvinBe(nu, x)
double nuthe order of the the Kelvin function.
double xThe value to compute the Kelvin function of.
ComplexThe Kelvin function of the first kind.
KelvinBei(nu, x) is given by the imaginary part of BesselJ(nu, j * sqrt(j) * x) where j = sqrt(-1).
double nuthe order of the the Kelvin function.
double xThe value to compute the Kelvin function of.
doubleThe Kelvin function bei.
KelvinBei(x) is given by the imaginary part of BesselJ(0, j * sqrt(j) * x) where j = sqrt(-1).
KelvinBei(x) is equivalent to KelvinBei(0, x).
double xThe value to compute the Kelvin function of.
doubleThe Kelvin function bei.
double xThe value to compute the derivative of the Kelvin function of.
doubleThe derivative of the Kelvin function bei.
double nuThe order of the Kelvin function.
double xThe value to compute the derivative of the Kelvin function of.
doublethe derivative of the Kelvin function bei.
KelvinBer(nu, x) is given by the real part of BesselJ(nu, j * sqrt(j) * x) where j = sqrt(-1).
double nuthe order of the the Kelvin function.
double xThe value to compute the Kelvin function of.
doubleThe Kelvin function ber.
KelvinBer(x) is given by the real part of BesselJ(0, j * sqrt(j) * x) where j = sqrt(-1).
KelvinBer(x) is equivalent to KelvinBer(0, x).
double xThe value to compute the Kelvin function of.
doubleThe Kelvin function ber.
double nuThe order of the Kelvin function.
double xThe value to compute the derivative of the Kelvin function of.
doublethe derivative of the Kelvin function ber
double xThe value to compute the derivative of the Kelvin function of.
doubleThe derivative of the Kelvin function ber.
KelvinKe(nu, x) is given by Exp(-nu * pi * j / 2) * BesselK(nu, x * sqrt(j)) where j = sqrt(-1).
KelvinKer(nu, x) and KelvinKei(nu, x) are the real and imaginary parts of the KelvinBe(nu, x)
double nuThe order of the Kelvin function.
double xThe value to calculate the kelvin function of,
KelvinKei(x) is given by the imaginary part of Exp(-nu * pi * j / 2) * BesselK(0, sqrt(j) * x) where j = sqrt(-1).
KelvinKei(x) is equivalent to KelvinKei(0, x).
double xThe non-negative real value to compute the Kelvin function of.
doubleThe Kelvin function kei.
KelvinKei(nu, x) is given by the imaginary part of Exp(-nu * pi * j / 2) * BesselK(nu, sqrt(j) * x) where j = sqrt(-1).
double nuthe order of the the Kelvin function.
double xThe non-negative real value to compute the Kelvin function of.
doubleThe Kelvin function kei.
double xThe value to compute the derivative of the Kelvin function of.
doubleThe derivative of the Kelvin function kei.
double nuThe order of the Kelvin function.
double xThe value to compute the derivative of the Kelvin function of.
doubleThe derivative of the Kelvin function kei.
KelvinKer(nu, x) is given by the real part of Exp(-nu * pi * j / 2) * BesselK(nu, sqrt(j) * x) where j = sqrt(-1).
double nuthe order of the the Kelvin function.
double xThe non-negative real value to compute the Kelvin function of.
doubleThe Kelvin function ker.
KelvinKer(x) is given by the real part of Exp(-nu * pi * j / 2) * BesselK(0, sqrt(j) * x) where j = sqrt(-1).
KelvinKer(x) is equivalent to KelvinKer(0, x).
double xThe non-negative real value to compute the Kelvin function of.
doubleThe Kelvin function ker.
double nuThe order of the Kelvin function.
double xThe non-negative real value to compute the derivative of the Kelvin function of.
doubleThe derivative of the Kelvin function ker.
double xThe value to compute the derivative of the Kelvin function of.
doubleThe derivative of the Kelvin function ker.
double xThe parameter for which to compute the log1p function. Range: x > 0.
double pThe parameter for which to compute the logistic function.
doubleThe logistic function of p.
double pThe parameter for which to compute the logit function. This number should be between 0 and 1.
doubleThe logarithm of p divided by 1.0 - p.
References: A. Gil, J. Segura and N.M. Temme. Efficient and accurate algorithms for the computation and inversion of the incomplete gamma function ratios. SIAM J Sci Comput. (2012) 34(6), A2965-A2981
double nuThe order of generalized Marcum Q-function. Range: 1≦ν≦10000
double aThe value to compute the Marcum Q-function of. Range: 0≦a≦10000
double bThe value to compute the Marcum Q-function of. Range: 0≦b≦10000
doubleThe Marcum Q-function Q[ν](a,b)
int nA nonnegative value n.
Int32[] niAn array of nonnegative values that sum to n.
doubleThe multinomial coefficient.
doubleThe real value of the Rising Factorial for x and n
SphericalBesselJ(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselJ(n + 1/2, z).
double nThe order of the spherical Bessel function.
Complex zThe value to compute the spherical Bessel function of.
ComplexThe spherical Bessel function of the first kind.
SphericalBesselJ(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselJ(n + 1/2, z).
double nThe order of the spherical Bessel function.
double zThe value to compute the spherical Bessel function of.
doubleThe spherical Bessel function of the first kind.
SphericalBesselY(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselY(n + 1/2, z).
double nThe order of the spherical Bessel function.
Complex zThe value to compute the spherical Bessel function of.
ComplexThe spherical Bessel function of the second kind.
SphericalBesselY(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselY(n + 1/2, z).
double nThe order of the spherical Bessel function.
double zThe value to compute the spherical Bessel function of.
doubleThe spherical Bessel function of the second kind.
double xThe value to compute the function of.
double xThe value to compute the function of.