Click or drag to resize

StableDistributionS1 Class

Represents a stable distribution in Nolan's S1 parametrization.
Inheritance Hierarchy

Namespace: Altaxo.Calc.Probability
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public class StableDistributionS1 : StableDistributionBase

The StableDistributionS1 type exposes the following members.

Constructors
 NameDescription
Public methodStableDistributionS1 Creates a new instance of the stable distribution in Nolan's parametrization with default parameters (alpha=1, beta=0) and the default generator.
Public methodStableDistributionS1(Generator) Creates a new instance of he stable distribution in Nolan's parametrization with default parameters (alpha=1, beta=0).
Public methodStableDistributionS1(Double, Double) Creates a new instance of he stable distribution in Nolan's parametrization with given parameters (alpha, beta) and the default random number generator.
Public methodStableDistributionS1(Double, Double, Double) Creates a new instance of he stable distribution in Nolan's parametrization with given parameters (alpha, beta, abe) and the default random number generator.
Public methodStableDistributionS1(Double, Double, Double, Double) Creates a new instance of he stable distribution in Nolan's parametrization with given parameters (alpha, beta, scale, location) and the default random number generator.
Public methodStableDistributionS1(Double, Double, Double, Double, Generator) Creates a new instance of he stable distribution in Nolan's parametrization with given parameters (alpha, beta, scale, location) and the provided random number generator.
Public methodStableDistributionS1(Double, Double, Double, Double, Double) Creates a new instance of the stable distribution in Nolan's parametrization with given parameters (alpha, beta, abe, scale, location) and the default random number generator.
Public methodStableDistributionS1(Double, Double, Double, Double, Double, Generator) Creates a new instance of he stable distribution in Nolan's parametrization with given parameters (alpha, beta, abe, scale, location) and the provided random number generator.
Top
Properties
 NameDescription
Public propertyCanReset Gets a value indicating whether the random number distribution can be reset, so that it produces the same random number sequence again.
(Inherited from Distribution)
Public propertyGenerator Gets or sets a Generator object that can be used as underlying random number generator.
(Inherited from Distribution)
Public propertyMaximumGets the maximum possible value of distributed random numbers.
(Overrides StableDistributionBaseMaximum)
Public propertyMeanGets the mean of distributed random numbers. For alpha<=1, it is not defined. For alpha>1, it is the _location parameter.
(Overrides StableDistributionBaseMean)
Public propertyMedianGets the median of distributed random numbers. If beta=0, it is _location. For beta!=0, it is also defined, but not analytically expressable, and is not calcuated here (TODO, please help!).
(Overrides StableDistributionBaseMedian)
Public propertyMinimumGets the minimum possible value of distributed random numbers.
(Overrides StableDistributionBaseMinimum)
Public propertyModeGets the mode of distributed random numbers.
(Overrides StableDistributionBaseMode)
Public propertyVarianceGets the variance of distributed random numbers. Is finite only for alpha=2.
(Overrides StableDistributionBaseVariance)
Top
Methods
 NameDescription
Public methodCDF(Double)Calculates the cumulative distribution function.
(Overrides ContinuousDistributionCDF(Double))
Public methodStatic memberCDF(Double, Double, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodStatic memberCDF(Double, Double, Double, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodStatic memberCDF(Double, Double, Double, Double, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodStatic memberCDF(Double, Double, Double, Object, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodStatic memberCDF(Double, Double, Double, Double, Double, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodStatic memberCDF(Double, Double, Double, Double, Double, Object, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodStatic memberCDF(Double, Double, Double, Double, Double, Double, Object, Double)Calculates the cumulative distribution function of the stable distribution in S1 parametrization.
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Protected methodGenerateAsymmetricCaseS1 Generates random variates in S1 Parametrization
(Inherited from StableDistributionBase)
Protected methodGenerateAsymmetricCaseS1_AEq1
(Inherited from StableDistributionBase)
Protected methodGenerateAsymmetricCaseS1_ANe1
(Inherited from StableDistributionBase)
Protected methodGenerateSymmetricCase
(Inherited from StableDistributionBase)
Public methodStatic memberGetAgt1GnParameter 
Public methodStatic memberGetAlt1GnParameter 
Public methodStatic memberGetAlt1GpParameter 
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodInitialize Initializes this instance of the distribution with the distribution parameters.
Public methodStatic memberIsValidAlpha 
Public methodStatic memberIsValidBeta 
Public methodStatic memberIsValidLocation 
Public methodStatic memberIsValidScale 
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Public methodNextDoubleReturns a distributed floating point random number.
(Overrides StableDistributionBaseNextDouble)
Public methodPDF(Double)Calculates the probability density function.
(Overrides ContinuousDistributionPDF(Double))
Public methodStatic memberPDF(Double, Double, Double)Calculates the probability density function of the stable distribution in S1 parametrization.
Public methodStatic memberPDF(Double, Double, Double, Double, Double)Calculates the probability density function of the stable distribution in S1 parametrization.
Public methodStatic memberPDF(Double, Double, Double, Double, Double, Object, Double)Calculates the probability density function of the stable distribution in S1 parametrization.
Public methodStatic memberPDF(Double, Double, Double, Double, Double, Double, Object, Double)Calculates the probability density function of the stable distribution in S1 parametrization.
Public methodQuantile(Double)Calculates the quantile of the distribution function.
(Overrides ContinuousDistributionQuantile(Double))
Public methodStatic memberQuantile(Double, Double, Double)Calculates the quantile of the stable distribution in S1 parametrization.
Public methodStatic memberQuantile(Double, Double, Double, Double)Calculates the quantile of the stable distribution in S1 parametrization.
Public methodStatic memberQuantile(Double, Double, Double, Double, Object, Double)Calculates the quantile of the stable distribution in S1 parametrization.
Public methodReset Resets the random number distribution, so that it produces the same random number sequence again.
(Inherited from Distribution)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Fields
 NameDescription
Protected field_gen_BHelper variables used for generating the random values.
(Inherited from StableDistributionBase)
Protected field_gen_SHelper variables used for generating the random values.
(Inherited from StableDistributionBase)
Protected field_gen_ScaleHelper variables used for generating the random values.
(Inherited from StableDistributionBase)
Protected field_gen_tHelper variables used for generating the random values.
(Inherited from StableDistributionBase)
Protected fieldgenerator Stores a Generator object that can be used as underlying random number generator.
(Inherited from Distribution)
Top
Remarks
The characteristic function in Nolan's S1 parametrization is:
C#
log(phi(t))= -scale^alpha |t|^alpha (1-i beta Sign(t) Tan(pi alpha/2)) + i location t    (for alpha not equal to 1)
and
C#
log(phi(t)) = -scale |t| (1+i beta Sign(t) (2/pi) Log(|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.

See Also