StableDistributionS0 Type

Represents a stable distribution in Nolan's S0 parametrization.

The characteristic function in Nolan's S0 parametrization is:

            log(phi(t))= -scale^alpha |t|^alpha (1+i beta Sign(t) Tan(pi alpha/2) (|scale t|^(1-alpha)-1)) + i location t              (for alpha not equal to 1)
and
            log(phi(t)) = -scale |t| (1+i beta Sign(t) (2/pi) Log(scale |t|)) + i location t  (for alpha equal to 1)

Reference: J.P.Nolan, Numerical calculation of stable densities and distribution functions. Communication is statistics - Stochastic models, 13, 759-774, 1999

Reference: S.Borak, W.Härdle, R.Weron, Stable distributions. SFB 649 Discussion paper 2005-2008, http://sfb649.wiwi.hu-berlin.de, ISSN 1860-5664

If you are interested in accurate calculations when beta is close to 1 or -1, you should use those functions which allow you to provide the parameter abe. This helps specifying beta with higher accuracy close to +1 or -1. For instance, by using abe=1E-30 and beta=1, it is possible to specify beta=1-1E-30, which is impossible otherwise since with the 64-bit representation of numbers.

Constructors

Constructor Description

StableDistributionS0()

Full Usage: StableDistributionS0()

Creates a new instance of this distribution with default parameters (alpha=1, beta=0) and the default generator.

StableDistributionS0(generator)

Full Usage: StableDistributionS0(generator)

Parameters:
    generator : Generator - Random number generator to be used with this distribution.

Creates a new instance of this distribution with default parameters (alpha=1, beta=0).

generator : Generator

Random number generator to be used with this distribution.

StableDistributionS0(alpha, beta)

Full Usage: StableDistributionS0(alpha, beta)

Parameters:
    alpha : float - Distribution parameter alpha (broadness exponent).
    beta : float - Distribution parameter beta (skew).

Creates a new instance of this distribution with given parameters (alpha, beta) and the default random number generator.

alpha : float

Distribution parameter alpha (broadness exponent).

beta : float

Distribution parameter beta (skew).

StableDistributionS0(alpha, beta, abe)

Full Usage: StableDistributionS0(alpha, beta, abe)

Parameters:
    alpha : float - Distribution parameter alpha (broadness exponent).
    beta : float - Distribution parameter beta (skew).
    abe : float - Parameter to specify beta with higher accuracy around -1 and 1. Is 1-beta for beta>=0 or 1+beta for beta<0.

Creates a new instance of this distribution with given parameters (alpha, beta, abe) and the default random number generator.

alpha : float

Distribution parameter alpha (broadness exponent).

beta : float

Distribution parameter beta (skew).

abe : float

Parameter to specify beta with higher accuracy around -1 and 1. Is 1-beta for beta>=0 or 1+beta for beta<0.

StableDistributionS0(alpha, beta, scale, location)

Full Usage: StableDistributionS0(alpha, beta, scale, location)

Parameters:
    alpha : float - Distribution parameter alpha (broadness exponent).
    beta : float - Distribution parameter beta (skew).
    scale : float - Scaling parameter (broadness of the distribution).
    location : float - Location of the distribution.

Creates a new instance of this distribution with given parameters (alpha, beta, scale, location) and the default random number generator.

alpha : float

Distribution parameter alpha (broadness exponent).

beta : float

Distribution parameter beta (skew).

scale : float

Scaling parameter (broadness of the distribution).

location : float

Location of the distribution.

StableDistributionS0(alpha, beta, scale, location, generator)

Full Usage: StableDistributionS0(alpha, beta, scale, location, generator)

Parameters:
    alpha : float - Distribution parameter alpha (broadness exponent).
    beta : float - Distribution parameter beta (skew).
    scale : float - Scaling parameter (broadness of the distribution).
    location : float - Location of the distribution.
    generator : Generator - Random number generator to be used with this distribution.

Creates a new instance of this distribution with given parameters (alpha, beta, scale, location) and the provided random number generator.

alpha : float

Distribution parameter alpha (broadness exponent).

beta : float

Distribution parameter beta (skew).

scale : float

Scaling parameter (broadness of the distribution).

location : float

Location of the distribution.

generator : Generator

Random number generator to be used with this distribution.

StableDistributionS0(alpha, beta, abe, scale, location)

Full Usage: StableDistributionS0(alpha, beta, abe, scale, location)

Parameters:
    alpha : float - Distribution parameter alpha (broadness exponent).
    beta : float - Distribution parameter beta (skew).
    abe : float - Parameter to specify beta with higher accuracy around -1 and 1. Is 1-beta for beta>=0 or 1+beta for beta<0.
    scale : float - Scaling parameter (broadness of the distribution).
    location : float - Location of the distribution.

Creates a new instance of this distribution with given parameters (alpha, beta, abe, scale, location) and the default random number generator.

alpha : float

Distribution parameter alpha (broadness exponent).

beta : float

Distribution parameter beta (skew).

abe : float

Parameter to specify beta with higher accuracy around -1 and 1. Is 1-beta for beta>=0 or 1+beta for beta<0.

scale : float

Scaling parameter (broadness of the distribution).

location : float

Location of the distribution.

StableDistributionS0(alpha, beta, abe, scale, location, generator)

Full Usage: StableDistributionS0(alpha, beta, abe, scale, location, generator)

Parameters:
    alpha : float - Distribution parameter alpha (broadness exponent).
    beta : float - Distribution parameter beta (skew).
    abe : float - Parameter to specify beta with higher accuracy around -1 and 1. Is 1-beta for beta>=0 or 1+beta for beta<0.
    scale : float - Scaling parameter (broadness of the distribution).
    location : float - Location of the distribution.
    generator : Generator - Random number generator to be used with this distribution.

Creates a new instance of this distribution with given parameters (alpha, beta, abe, scale, location) and the provided random number generator.

alpha : float

Distribution parameter alpha (broadness exponent).

beta : float

Distribution parameter beta (skew).

abe : float

Parameter to specify beta with higher accuracy around -1 and 1. Is 1-beta for beta>=0 or 1+beta for beta<0.

scale : float

Scaling parameter (broadness of the distribution).

location : float

Location of the distribution.

generator : Generator

Random number generator to be used with this distribution.

Instance members

Instance member Description

this.CDF

Full Usage: this.CDF

Parameters:
    x : float

Returns: float
Modifiers: abstract

x : float
Returns: float

this.Initialize

Full Usage: this.Initialize

Parameters:
    alpha : float
    beta : float
    abe : float
    sigma : float
    mu : float

Updates the helper variables that store intermediate results for generation of exponential distributed random numbers.

alpha : float
beta : float
abe : float
sigma : float
mu : float

this.Maximum

Full Usage: this.Maximum

Returns: float
Modifiers: abstract

Returns: float

this.Mean

Full Usage: this.Mean

Returns: float
Modifiers: abstract

Returns: float

this.Median

Full Usage: this.Median

Returns: float
Modifiers: abstract

Returns: float

this.Minimum

Full Usage: this.Minimum

Returns: float
Modifiers: abstract

Returns: float

this.Mode

Full Usage: this.Mode

Returns: float[]
Modifiers: abstract

Returns: float[]

this.NextDouble

Full Usage: this.NextDouble

Returns: float
Modifiers: abstract

Returns: float

this.PDF

Full Usage: this.PDF

Parameters:
    x : float

Returns: float
Modifiers: abstract

x : float
Returns: float

this.Quantile

Full Usage: this.Quantile

Parameters:
    p : float

Returns: float
Modifiers: abstract

p : float
Returns: float

this.Variance

Full Usage: this.Variance

Returns: float
Modifiers: abstract

Returns: float

Static members

Static member Description

StableDistributionS0.CDF(x, alpha, beta)

Full Usage: StableDistributionS0.CDF(x, alpha, beta)

Parameters:
    x : float
    alpha : float
    beta : float

Returns: float

x : float
alpha : float
beta : float
Returns: float

StableDistributionS0.CDF(x, alpha, beta, scale, location)

Full Usage: StableDistributionS0.CDF(x, alpha, beta, scale, location)

Parameters:
    x : float
    alpha : float
    beta : float
    scale : float
    location : float

Returns: float

x : float
alpha : float
beta : float
scale : float
location : float
Returns: float

StableDistributionS0.CDF(x, alpha, beta, tempStorage, precision)

Full Usage: StableDistributionS0.CDF(x, alpha, beta, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.CDF(x, alpha, beta, scale, location, tempStorage, precision)

Full Usage: StableDistributionS0.CDF(x, alpha, beta, scale, location, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    scale : float
    location : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
scale : float
location : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.CDF(x, alpha, beta, abe)

Full Usage: StableDistributionS0.CDF(x, alpha, beta, abe)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float

Returns: float

x : float
alpha : float
beta : float
abe : float
Returns: float

StableDistributionS0.CDF(x, alpha, beta, abe, scale, location)

Full Usage: StableDistributionS0.CDF(x, alpha, beta, abe, scale, location)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    scale : float
    location : float

Returns: float

x : float
alpha : float
beta : float
abe : float
scale : float
location : float
Returns: float

StableDistributionS0.CDF(x, alpha, beta, abe, scale, location, tempStorage, precision)

Full Usage: StableDistributionS0.CDF(x, alpha, beta, abe, scale, location, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    scale : float
    location : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
abe : float
scale : float
location : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.CDFMethodAlphaOne(x, beta, abe, tempStorage, precision)

Full Usage: StableDistributionS0.CDFMethodAlphaOne(x, beta, abe, tempStorage, precision)

Parameters:
    x : float
    beta : float
    abe : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
beta : float
abe : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.GetAgt1GnParameter(x, alpha, beta, abe, factorp, factorw, dev, logPrefactor)

Full Usage: StableDistributionS0.GetAgt1GnParameter(x, alpha, beta, abe, factorp, factorw, dev, logPrefactor)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    factorp : byref<float>
    factorw : byref<float>
    dev : byref<float>
    logPrefactor : byref<float>

x : float
alpha : float
beta : float
abe : float
factorp : byref<float>
factorw : byref<float>
dev : byref<float>
logPrefactor : byref<float>

StableDistributionS0.GetAgt1GpParameter(x, alpha, beta, abe, factorp, factorw, dev, logPrefactor)

Full Usage: StableDistributionS0.GetAgt1GpParameter(x, alpha, beta, abe, factorp, factorw, dev, logPrefactor)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    factorp : byref<float>
    factorw : byref<float>
    dev : byref<float>
    logPrefactor : byref<float>

x : float
alpha : float
beta : float
abe : float
factorp : byref<float>
factorw : byref<float>
dev : byref<float>
logPrefactor : byref<float>

StableDistributionS0.GetAlt1GnParameter(x, alpha, beta, abe, factorp, facdiv, dev, logPdfPrefactor)

Full Usage: StableDistributionS0.GetAlt1GnParameter(x, alpha, beta, abe, factorp, facdiv, dev, logPdfPrefactor)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    factorp : byref<float>
    facdiv : byref<float>
    dev : byref<float>
    logPdfPrefactor : byref<float>

x : float
alpha : float
beta : float
abe : float
factorp : byref<float>
facdiv : byref<float>
dev : byref<float>
logPdfPrefactor : byref<float>

StableDistributionS0.GetAlt1GpParameter(x, alpha, beta, abe, factorp, facdiv, dev, logPdfPrefactor)

Full Usage: StableDistributionS0.GetAlt1GpParameter(x, alpha, beta, abe, factorp, facdiv, dev, logPdfPrefactor)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    factorp : byref<float>
    facdiv : byref<float>
    dev : byref<float>
    logPdfPrefactor : byref<float>

x : float
alpha : float
beta : float
abe : float
factorp : byref<float>
facdiv : byref<float>
dev : byref<float>
logPdfPrefactor : byref<float>

StableDistributionS0.IsValidAlpha(alpha)

Full Usage: StableDistributionS0.IsValidAlpha(alpha)

Parameters:
    alpha : float

Returns: bool

alpha : float
Returns: bool

StableDistributionS0.IsValidBeta(beta)

Full Usage: StableDistributionS0.IsValidBeta(beta)

Parameters:
    beta : float

Returns: bool

beta : float
Returns: bool

StableDistributionS0.IsValidMu(mu)

Full Usage: StableDistributionS0.IsValidMu(mu)

Parameters:
    mu : float

Returns: bool

mu : float
Returns: bool

StableDistributionS0.IsValidSigma(sigma)

Full Usage: StableDistributionS0.IsValidSigma(sigma)

Parameters:
    sigma : float

Returns: bool

sigma : float
Returns: bool

StableDistributionS0.PDF(x, alpha, beta)

Full Usage: StableDistributionS0.PDF(x, alpha, beta)

Parameters:
    x : float
    alpha : float
    beta : float

Returns: float

x : float
alpha : float
beta : float
Returns: float

StableDistributionS0.PDF(x, alpha, beta, sigma, mu)

Full Usage: StableDistributionS0.PDF(x, alpha, beta, sigma, mu)

Parameters:
    x : float
    alpha : float
    beta : float
    sigma : float
    mu : float

Returns: float

x : float
alpha : float
beta : float
sigma : float
mu : float
Returns: float

StableDistributionS0.PDF(x, alpha, beta, sigma, mu, tempStorage, precision)

Full Usage: StableDistributionS0.PDF(x, alpha, beta, sigma, mu, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    sigma : float
    mu : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
sigma : float
mu : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.PDF(x, alpha, beta, abe, sigma, mu, tempStorage, precision)

Full Usage: StableDistributionS0.PDF(x, alpha, beta, abe, sigma, mu, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    sigma : float
    mu : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
abe : float
sigma : float
mu : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.PDF(x, alpha, beta, tempStorage, precision)

Full Usage: StableDistributionS0.PDF(x, alpha, beta, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.PDF(x, alpha, beta, abe, tempStorage, precision)

Full Usage: StableDistributionS0.PDF(x, alpha, beta, abe, tempStorage, precision)

Parameters:
    x : float
    alpha : float
    beta : float
    abe : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
alpha : float
beta : float
abe : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.PDFMethodAlphaOne(x, beta, abe, tempStorage, precision)

Full Usage: StableDistributionS0.PDFMethodAlphaOne(x, beta, abe, tempStorage, precision)

Parameters:
    x : float
    beta : float
    abe : float
    tempStorage : byref<obj>
    precision : float

Returns: float

x : float
beta : float
abe : float
tempStorage : byref<obj>
precision : float
Returns: float

StableDistributionS0.Quantile(p, alpha, beta)

Full Usage: StableDistributionS0.Quantile(p, alpha, beta)

Parameters:
    p : float
    alpha : float
    beta : float

Returns: float

p : float
alpha : float
beta : float
Returns: float

StableDistributionS0.Quantile(p, alpha, beta, abe)

Full Usage: StableDistributionS0.Quantile(p, alpha, beta, abe)

Parameters:
    p : float
    alpha : float
    beta : float
    abe : float

Returns: float

p : float
alpha : float
beta : float
abe : float
Returns: float

StableDistributionS0.Quantile(p, alpha, beta, abe, tempStorage, precision)

Full Usage: StableDistributionS0.Quantile(p, alpha, beta, abe, tempStorage, precision)

Parameters:
    p : float
    alpha : float
    beta : float
    abe : float
    tempStorage : byref<obj>
    precision : float

Returns: float

p : float
alpha : float
beta : float
abe : float
tempStorage : byref<obj>
precision : float
Returns: float