Boost: Map-Airy distribution#
The Map-Airy distribution (or Airy distribution of the ’Map’-type) is a stable distribution (see Wikipedia [1330]) with the shape parameters \(\alpha = 3/2, \beta = 1\), which describes the probability distribution of the area under a Brownian excursion over a unit interval. For simplicity of numerical computation, this paper evaluates as follows assuming location parameter \(\mu = 0\), scale parameter \(c = 1 / \sqrt[3]{18}\), i.e. \(p(x) = p(x; \alpha = 3/2, \beta = 1, \mu = 0, c = 1 / \sqrt[3]{18})\). The Map-Airy distribution is linear with respect to the location parameter \(\mu\) and scale parameter \(c\).
The support interval is \((-\infty,+\infty)\) :
!!! The following references need to be updated: !!!
See also: https://mathworld.wolfram.com/Map-AiryDistribution.html
- Ctx.mapairy_pdf(x, a=0, b=1)#
where
CtxisMath53orCtxBoost.Returns \(\text{pdf}(x)\), the value of the probability density function (Pdf) of the MapAiry distribution:
Boost:
\[\text{pdf}(x) = 2 e^{-2x^3 / 3} \left( x \text{Ai}(x^2) - \text{Ai}'(x^2)\right).\]Wolfram:
\[\text{pdf}(x) = 2 e^{2x^3 / 3} \left( -x \text{Ai}(x^2) - \text{Ai}'(x^2)\right).\]The following example shows both forms of the syntax:
>>> from mpfebnet import * >>> a = 0; b = 1; t = 0.3; x = 0.6; >>> print ("StudentTPdf(x, a, b): ", StudentTPdf(x, a, b)) >>> print ("dist_student_t(a, b).pdf(x): ", dist_student_t(a, b).pdf(x)) 6.3563523462564525615615615614561356E+00
- Ctx.mapairy_cdf(x, a=0, b=1)#
where
CtxisMath53orCtxBoost.Returns \(\text{cdf}(x)\), the value of the cumulative distribution function (Cdf) of the MapAiry distribution:
The following example shows both forms of the syntax:
>>> from mpfebnet import * >>> a = 0; b = 1; t = 0.3; x = 0.6; >>> print ("StudentTCdf(x, a, b): ", StudentTCdf(x, a, b)) >>> print ("dist_student_t(a, b).cdf(x): ", dist_student_t(a, b).cdf(x)) 6.3563523462564525615615615614561356E+00
- Ctx.mapairy_qtf(q, a=0, b=1)#
where
CtxisMath53orCtxBoost.Returns \(\text{qtf}(q)\), the value of the quantile function (Qtf) of the MapAiry distribution:
The following example shows both forms of the syntax:
>>> from mpfebnet import * >>> a = 0; b = 1; t = 0.3; q = 0.6; >>> print ("StudentTQtf(q, a, b): ", StudentTQtf(q, a, b)) >>> print ("dist_student_t(a, b).qtf(q): ", dist_student_t(a, b).qtf(q)) 6.3563523462564525615615615614561356E+00
- CtxBoost.dist_mapairy(a=0, b=1)#
Returns an
dist_mapairyobject, which gives access to the functions descibed below:>>> from mpfebnet import SReal, FReal, XReal, QReal, CReal, OReal >>> a = 0; b = 1; >>> Ctx = SReal >>> dist_student_t = Ctx.dist_student_t(a, b) >>> print ("Dist.qtf(q=0.5): ", Dist.qtf(q=0.5)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.pdf(x)#
Returns \(\text{pdf}(x)\), the value of the probability density function of the Map-Airy distribution. See Ctx.mapairy_pdf for formulas and examples.
- dist_mapairy.cdf(x)#
Returns \(\text{cdf}(x)\), the value of the cumulative distribution function of the Map-Airy distribution. See Ctx.mapairy_cdf for formulas and examples.
- dist_mapairy.qtf(q)#
Returns \(\text{qtf}(q)\), the value of the quantile function of the Map-Airy distribution. See Ctx.mapairy_qtf for formulas and examples.
- dist_mapairy.sf(x)#
Returns \(\text{sf}(x)\), the value of the survival function (Sf) of the Map-Airy distribution.
\[\text{sf}(x) = \text{cdf}_X(-x)\]>>> # continued from above >>> print ("Dist.sf(x=0.5): ", Dist.qtf(x=0.5)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.isf(q)#
Returns \(\text{isf}(q)\), the value of the inverse survival function (Isf) of the Map-Airy distribution.
\[\text{isf}(q) = -\text{qtf}(q).\]>>> # continued from above >>> print ("Dist.isf(x=0.5): ", Dist.isf(x=0.5)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.hf(x)#
Returns \(\text{hazard}(x)\), the value of the hazard function (Hf) of the Map-Airy distribution.
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.chf(x)#
Returns \(\text{chf}(x)\), the value of the cumulative hazard function (Chf) of the Map-Airy distribution.
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.mode()#
Returns the mode of the Map-Airy distribution. Since there is not one unique mode,
Nanis returned.>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.median()#
Returns the median of the Map-Airy distribution. Calculated as \(\displaystyle \tfrac{1}{2}(a+b)\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.mean()#
Returns the mean (expected value) of the Map-Airy distribution. Calculated as \(\displaystyle \tfrac{1}{2}(a+b)\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.variance()#
Returns the variance of the Map-Airy distribution. Calculated as \(\displaystyle \tfrac{1}{8}(b-a)^2\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.stdev()#
Returns the standard deviation of the Map-Airy distribution. Calculated as \(\displaystyle \sqrt{ \tfrac{1}{8}(b-a)^2}\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.skewness()#
Returns the skewness of the Map-Airy distribution. Calculated as \(\displaystyle 0\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.kurtosis()#
Returns the ‘proper’ kurtosis (normalized fourth moment) of the Map-Airy distribution. Calculated as \(\displaystyle 3/2\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.kurtosis_excess()#
Returns the kurtosis excess of the Map-Airy distribution. Calculated as \(\displaystyle -3/2\).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.support_lower_endpoint()#
Returns the support of the Map-Airy distribution as a tuple (left, right).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00
- dist_mapairy.support_upper_endpoint()#
Returns the support of the Map-Airy distribution as a tuple (left, right).
>>> from mpfebnet import * >>> mp.dps = 30 >>> mu = 0; sigma = 1; t = 0.3; >>> print ("c_x: ", chi_squared(mu, sigma).c_x(t)) 6.3563523462564525615615615614561356E+00