|
| 1 | +# Functions |
| 2 | +Here the *Special Functions* are listed according to the structure of [NIST Digital Library of Mathematical Functions](https://dlmf.nist.gov/). |
| 3 | + |
| 4 | +## Error Functions, Dawson’s and Fresnel Integrals |
| 5 | + |
| 6 | +| Function | Description | |
| 7 | +|:-------- |:----------- | |
| 8 | +| [`erf(x)`](@ref SpecialFunctions.erf) | [error function](https://en.wikipedia.org/wiki/Error_function) at ``x`` | |
| 9 | +| [`erfc(x)`](@ref SpecialFunctions.erfc) | complementary error function, i.e. the accurate version of ``1-\operatorname{erf}(x)`` for large ``x`` | |
| 10 | +| [`erfcinv(x)`](@ref SpecialFunctions.erfcinv) | inverse function to [`erfc()`](@ref SpecialFunctions.erfc) | |
| 11 | +| [`erfcx(x)`](@ref SpecialFunctions.erfcx) | scaled complementary error function, i.e. accurate ``e^{x^2} \operatorname{erfc}(x)`` for large ``x`` | |
| 12 | +| [`erfi(x)`](@ref SpecialFunctions.erfi) | imaginary error function defined as ``-i \operatorname{erf}(ix)`` | |
| 13 | +| [`erfinv(x)`](@ref SpecialFunctions.erfinv) | inverse function to [`erf()`](@ref SpecialFunctions.erf) | |
| 14 | +| [`dawson(x)`](@ref SpecialFunctions.dawson) | scaled imaginary error function, a.k.a. Dawson function, i.e. accurate ``\frac{\sqrt{\pi}}{2} e^{-x^2} \operatorname{erfi}(x)`` for large ``x`` | |
| 15 | + |
| 16 | + |
| 17 | +## Elliptic Integrals |
| 18 | + |
| 19 | +| Function | Description | |
| 20 | +|:-------- |:----------- | |
| 21 | +| [`ellipk(m)`](@ref SpecialFunctions.ellipk) | [complete elliptic integral of 1st kind](https://en.wikipedia.org/wiki/Elliptic_integral#Notational_variants) ``K(m)`` | |
| 22 | +| [`ellipe(m)`](@ref SpecialFunctions.ellipe) | [complete elliptic integral of 2nd kind](https://en.wikipedia.org/wiki/Elliptic_integral#Complete_elliptic_integral_of_the_second_kind) ``E(m)`` | |
| 23 | + |
| 24 | +## Trigonometric Integrals |
| 25 | +| Function | Description | |
| 26 | +|:-------- |:----------- | |
| 27 | +| [`sinint(x)`](@ref SpecialFunctions.sinint) | [sine integral](https://en.wikipedia.org/wiki/Trigonometric_integral#Sine_integral) ``Si(x)`` | |
| 28 | +| [`cosint(x)`](@ref SpecialFunctions.cosint) | [cosine integral](https://en.wikipedia.org/wiki/Trigonometric_integral#Cosine_integral) ``Ci(x)`` | |
| 29 | + |
| 30 | +## Airy, Bessel and Hankel Functions |
| 31 | +| Function | Description | |
| 32 | +|:-------- |:----------- | |
| 33 | +| [`airyai(z)`](@ref SpecialFunctions.airyai) | [Airy Ai function](https://en.wikipedia.org/wiki/Airy_function) at `z` | |
| 34 | +| [`airyaiprime(z)`](@ref SpecialFunctions.airyaiprime) | derivative of the Airy Ai function at `z` | |
| 35 | +| [`airybi(z)`](@ref SpecialFunctions.airybi) | [Airy Bi function](https://en.wikipedia.org/wiki/Airy_function) at `z` | |
| 36 | +| [`airybiprime(z)`](@ref SpecialFunctions.airybiprime) | derivative of the Airy Bi function at `z` | |
| 37 | +| [`airyaix(z)`](@ref SpecialFunctions.airyaix), [`airyaiprimex(z)`](@ref SpecialFunctions.airyaiprimex), [`airybix(z)`](@ref SpecialFunctions.airybix), [`airybiprimex(z)`](@ref SpecialFunctions.airybiprimex) | scaled Airy Ai function and `k`th derivatives at `z` | |
| 38 | +| [`besselj(nu,z)`](@ref SpecialFunctions.besselj) | [Bessel function](https://en.wikipedia.org/wiki/Bessel_function) of the first kind of order `nu` at `z` | |
| 39 | +| [`besselj0(z)`](@ref SpecialFunctions.besselj0) | `besselj(0,z)` | |
| 40 | +| [`besselj1(z)`](@ref SpecialFunctions.besselj1) | `besselj(1,z)` | |
| 41 | +| [`besseljx(nu,z)`](@ref SpecialFunctions.besseljx) | scaled Bessel function of the first kind of order `nu` at `z` | |
| 42 | +| [`bessely(nu,z)`](@ref SpecialFunctions.bessely) | [Bessel function](https://en.wikipedia.org/wiki/Bessel_function) of the second kind of order `nu` at `z` | |
| 43 | +| [`bessely0(z)`](@ref SpecialFunctions.bessely0) | `bessely(0,z)` | |
| 44 | +| [`bessely1(z)`](@ref SpecialFunctions.bessely1) | `bessely(1,z)` | |
| 45 | +| [`besselyx(nu,z)`](@ref SpecialFunctions.besselyx) | scaled Bessel function of the second kind of order `nu` at `z` | |
| 46 | +| [`besselh(nu,k,z)`](@ref SpecialFunctions.besselh) | [Bessel function](https://en.wikipedia.org/wiki/Bessel_function) of the third kind (a.k.a. Hankel function) of order `nu` at `z`; `k` must be either `1` or `2` | |
| 47 | +| [`hankelh1(nu,z)`](@ref SpecialFunctions.hankelh1) | `besselh(nu, 1, z)` | |
| 48 | +| [`hankelh1x(nu,z)`](@ref SpecialFunctions.hankelh1x) | scaled `besselh(nu, 1, z)` | |
| 49 | +| [`hankelh2(nu,z)`](@ref SpecialFunctions.hankelh2) | `besselh(nu, 2, z)` | |
| 50 | +| [`hankelh2x(nu,z)`](@ref SpecialFunctions.hankelh2x) | scaled `besselh(nu, 2, z)` | |
| 51 | +| [`besseli(nu,z)`](@ref SpecialFunctions.besseli) | modified [Bessel function](https://en.wikipedia.org/wiki/Bessel_function) of the first kind of order `nu` at `z` | |
| 52 | +| [`besselix(nu,z)`](@ref SpecialFunctions.besselix) | scaled modified Bessel function of the first kind of order `nu` at `z` | |
| 53 | +| [`besselk(nu,z)`](@ref SpecialFunctions.besselk) | modified [Bessel function](https://en.wikipedia.org/wiki/Bessel_function) of the second kind of order `nu` at `z` | |
| 54 | +| [`besselkx(nu,z)`](@ref SpecialFunctions.besselkx) | scaled modified Bessel function of the second kind of order `nu` at `z` | |
| 55 | + |
| 56 | +## Gamma and related functions |
| 57 | +| Function | Description | |
| 58 | +|:-------- |:----------- | |
| 59 | +| [`gamma(z)`](@ref SpecialFunctions.gamma) | [gamma function](https://en.wikipedia.org/wiki/Gamma_function) ``\Gamma(z)`` | |
| 60 | +| [`digamma(x)`](@ref SpecialFunctions.digamma) | [digamma function](https://en.wikipedia.org/wiki/Digamma_function) (i.e. the derivative of `lgamma` at `x`) | |
| 61 | +| [`invdigamma(x)`](@ref SpecialFunctions.invdigamma) | [invdigamma function](http://bariskurt.com/calculating-the-inverse-of-digamma-function/) (i.e. inverse of `digamma` function at `x` using fixed-point iteration algorithm) | |
| 62 | +| [`trigamma(x)`](@ref SpecialFunctions.trigamma) | [trigamma function](https://en.wikipedia.org/wiki/Trigamma_function) (i.e the logarithmic second derivative of `gamma` at `x`) | |
| 63 | +| [`polygamma(m,x)`](@ref SpecialFunctions.polygamma) | [polygamma function](https://en.wikipedia.org/wiki/Polygamma_function) (i.e the (m+1)-th derivative of the `lgamma` function at `x`) | |
| 64 | +| [`gamma_inc(a,x,IND)`](@ref SpecialFunctions.gamma_inc) | [incomplete gamma function ratio P(a,x) and Q(a,x)](https://en.wikipedia.org/wiki/Incomplete_gamma_function) (i.e evaluates P(a,x) and Q(a,x)for accuracy specified by IND and returns tuple (p,q)) | |
| 65 | +| [`beta_inc(a,b,x,y)`](@ref SpecialFunctions.beta_inc) | [incomplete beta function ratio Ix(a,b) and Iy(a,b)](https://en.wikipedia.org/wiki/Beta_function#Incomplete_beta_function) (i.e evaluates Ix(a,b) and Iy(a,b) and returns tuple (p,q)) | |
| 66 | +| [`gamma_inc_inv(a,p,q)`](@ref SpecialFunctions.gamma_inc_inv) | [inverse of incomplete gamma function ratio P(a,x) and Q(a,x)](https://en.wikipedia.org/wiki/Incomplete_gamma_function) (i.e evaluates x given P(a,x)=p and Q(a,x)=q | |
| 67 | +| [`loggamma(x)`](@ref SpecialFunctions.loggamma) | accurate `log(gamma(x))` for large `x` | |
| 68 | +| [`logabsgamma(x)`](@ref SpecialFunctions.logabsgamma) | accurate `log(abs(gamma(x)))` for large `x` | |
| 69 | +| [`lgamma(x)`](@ref SpecialFunctions.lgamma) | accurate `log(gamma(x))` for large `x` | |
| 70 | +| [`logfactorial(x)`](@ref SpecialFunctions.logfactorial) | accurate `log(factorial(x))` for large `x`; same as `lgamma(x+1)` for `x > 1`, zero otherwise | |
| 71 | +| [`beta(x,y)`](@ref SpecialFunctions.beta) | [beta function](https://en.wikipedia.org/wiki/Beta_function) at `x,y` | |
| 72 | +| [`logbeta(x,y)`](@ref SpecialFunctions.logbeta) | accurate `log(beta(x,y))` for large `x` or `y` | |
| 73 | +| [`logabsbeta(x,y)`](@ref SpecialFunctions.logabsbeta) | accurate `log(abs(beta(x,y)))` for large `x` or `y` | |
| 74 | +| [`logabsbinomial(x,y)`](@ref SpecialFunctions.logabsbinomial) | accurate `log(abs(beta(x,y)))` for large `x` or `y` | |
| 75 | + |
| 76 | +## Riemann Zeta and related functions |
| 77 | +| Function | Description | |
| 78 | +|:-------- |:----------- | |
| 79 | +| [`eta(x)`](@ref SpecialFunctions.eta) | [Dirichlet eta function](https://en.wikipedia.org/wiki/Dirichlet_eta_function) at `x` | |
| 80 | +| [`zeta(x)`](@ref SpecialFunctions.zeta) | [Riemann zeta function](https://en.wikipedia.org/wiki/Riemann_zeta_function) at `x` | |
0 commit comments