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.
Complex
The 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.
double
The Airy function Ai.
AiryAiPrime(z) is defined as d/dz AiryAi(z).
Complex
zThe value to compute the derivative of the Airy function of.
Complex
The 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.
double
The 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.
Complex
The 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.
double
The 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.
Complex
The 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.
double
The 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.
double
The 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.
Complex
The Airy function Bi.
AiryBiPrime(z) is defined as d/dz AiryBi(z).
Complex
zThe value to compute the derivative of the Airy function of.
Complex
The 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.
double
The 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.
Complex
The 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.
double
The 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.
double
The 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.
Complex
The 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.
double
The 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.
Complex
The 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.
Complex
The 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.
double
The 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.
Complex
The 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.
double
The 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.
double
The 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.
Complex
The 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.
Complex
The 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.
double
The 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.
double
The 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.
Complex
The 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.
double
The 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.
Complex
The 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.
Complex
The 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.
double
The 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.
double
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.
double
The lower incomplete (unregularized) beta function.
double
zThe first Beta parameter, a positive real number.
double
wThe second Beta parameter, a positive real number.
double
The 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.
double
The regularized lower incomplete beta function.
int
nA nonnegative value n.
int
kA nonnegative value h.
double
The binomial coefficient: n choose k.
int
nA nonnegative value n.
int
kA nonnegative value h.
double
The logarithmic binomial coefficient: ln(n choose k).
double
xThe argument of the digamma function.
double
The 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.
double
The positive solution to the inverse DiGamma function at p.
double
xThe value to evaluate.
double
the error function evaluated at given value.
double
xThe value to evaluate.
double
the 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.
double
The complementary inverse error function evaluated at given value.
double
zvalue to evaluate.
double
The inverse error function evaluated at given value.
x -> exp(x)-1
double
powerA number specifying a power.
double
Returns 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.
double
The value of the Exponential Integral function.
x -> exp(x)-1
double
powerA number specifying a power.
double
Returns 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.
double
A value value! for value > 0
double
A value value! for value > 0
double
The 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.
double
The 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.
double
The logarithm of the gamma function.
double
aThe argument for the gamma function.
double
xThe upper integral limit.
double
The lower incomplete gamma function.
double
aThe argument for the gamma function.
double
xThe upper integral limit.
double
The lower incomplete gamma function.
double
aThe argument for the gamma function.
double
xThe lower integral limit.
double
The upper incomplete gamma function.
double
aThe argument for the gamma function.
double
xThe lower integral limit.
double
The upper incomplete regularized gamma function.
int
nThe order parameter.
double
mThe power parameter.
double
General 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
double
The 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.
Complex
The 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.
Complex
The 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.
Complex
The 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.
Complex
The exponentially scaled Hankel function of the second kind.
int
tThe Harmonic number which needs to be computed.
double
The 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.
double
Returns 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.
float
Returns 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.
Complex
Returns 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.
Complex
The 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.
double
The 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.
double
The Kelvin function bei.
double
xThe value to compute the derivative of the Kelvin function of.
double
The 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.
double
the 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.
double
The 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.
double
The Kelvin function ber.
double
nuThe order of the Kelvin function.
double
xThe value to compute the derivative of the Kelvin function of.
double
the derivative of the Kelvin function ber
double
xThe value to compute the derivative of the Kelvin function of.
double
The 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.
double
The 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.
double
The Kelvin function kei.
double
xThe value to compute the derivative of the Kelvin function of.
double
The 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.
double
The 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.
double
The 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.
double
The 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.
double
The derivative of the Kelvin function ker.
double
xThe value to compute the derivative of the Kelvin function of.
double
The 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.
double
The logistic function of p.
double
pThe parameter for which to compute the logit function. This number should be between 0 and 1.
double
The 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
double
The Marcum Q-function Q[ν](a,b)
int
nA nonnegative value n.
Int32[]
niAn array of nonnegative values that sum to n.
double
The multinomial coefficient.
double
The 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.
Complex
The 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.
double
The 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.
Complex
The 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.
double
The spherical Bessel function of the second kind.
double
xThe value to compute the function of.
double
xThe value to compute the function of.