SSJ
3.3.1
Stochastic Simulation in Java
|
Extends the class ContinuousDistribution for the lognormal distribution [99] . More...
Public Member Functions | |
LognormalDist () | |
Constructs a LognormalDist object with default parameters \(\mu= 0\) and \(\sigma= 1\). | |
LognormalDist (double mu, double sigma) | |
Constructs a LognormalDist object with parameters \(\mu\) = mu and \(\sigma\) = sigma . | |
double | density (double x) |
double | cdf (double x) |
Returns the distribution function \(F(x)\). More... | |
double | barF (double x) |
Returns \(\bar{F}(x) = 1 - F(x)\). More... | |
double | inverseF (double u) |
Returns the inverse distribution function \(F^{-1}(u)\), defined in ( inverseF ). More... | |
double | getMean () |
Returns the mean of the distribution function. | |
double | getVariance () |
Returns the variance of the distribution function. | |
double | getStandardDeviation () |
Returns the standard deviation of the distribution function. | |
double | getMu () |
Returns the parameter \(\mu\) of this object. | |
double | getSigma () |
Returns the parameter \(\sigma\) of this object. | |
void | setParams (double mu, double sigma) |
Sets the parameters \(\mu\) and \(\sigma\) of this object. | |
double [] | getParams () |
Returns a table containing the parameters of the current distribution, in the order: [ \(\mu\), \(\sigma\)]. | |
String | toString () |
Returns a String containing information about the current distribution. | |
Public Member Functions inherited from ContinuousDistribution | |
abstract double | density (double x) |
Returns \(f(x)\), the density evaluated at \(x\). More... | |
double | barF (double x) |
Returns the complementary distribution function. More... | |
double | inverseBrent (double a, double b, double u, double tol) |
Computes the inverse distribution function \(x = F^{-1}(u)\), using the Brent-Dekker method. More... | |
double | inverseBisection (double u) |
Computes and returns the inverse distribution function \(x = F^{-1}(u)\), using bisection. More... | |
double | inverseF (double u) |
Returns the inverse distribution function \(x = F^{-1}(u)\). More... | |
double | getMean () |
Returns the mean. More... | |
double | getVariance () |
Returns the variance. More... | |
double | getStandardDeviation () |
Returns the standard deviation. More... | |
double | getXinf () |
Returns \(x_a\) such that the probability density is 0 everywhere outside the interval \([x_a, x_b]\). More... | |
double | getXsup () |
Returns \(x_b\) such that the probability density is 0 everywhere outside the interval \([x_a, x_b]\). More... | |
void | setXinf (double xa) |
Sets the value \(x_a=\) xa , such that the probability density is 0 everywhere outside the interval \([x_a, x_b]\). More... | |
void | setXsup (double xb) |
Sets the value \(x_b=\) xb , such that the probability density is 0 everywhere outside the interval \([x_a, x_b]\). More... | |
Static Public Member Functions | |
static double | density (double mu, double sigma, double x) |
Computes the lognormal density function \(f(x)\) in ( flognormal ). | |
static double | cdf (double mu, double sigma, double x) |
Computes the lognormal distribution function, using NormalDist.cdf01. | |
static double | barF (double mu, double sigma, double x) |
Computes the lognormal complementary distribution function \(\bar{F}(x)\), using NormalDist.barF01. | |
static double | inverseF (double mu, double sigma, double u) |
Computes the inverse of the lognormal distribution function, using NormalDist.inverseF01. | |
static double [] | getMLE (double[] x, int n) |
Estimates the parameters \((\mu, \sigma)\) of the lognormal distribution using the maximum likelihood method, from the \(n\) observations \(x[i]\), \(i = 0, 1,…, n-1\). More... | |
static LognormalDist | getInstanceFromMLE (double[] x, int n) |
Creates a new instance of a lognormal distribution with parameters \(\mu\) and \(\sigma\) estimated using the maximum likelihood method based on the \(n\) observations \(x[i]\), \(i = 0, 1, …, n-1\). More... | |
static double | getMean (double mu, double sigma) |
Computes and returns the mean \(E[X] = e^{\mu+ \sigma^2/2}\) of the lognormal distribution with parameters \(\mu\) and \(\sigma\). More... | |
static double | getVariance (double mu, double sigma) |
Computes and returns the variance \(\mbox{Var}[X] = e^{2\mu+ \sigma^2}(e^{\sigma^2} - 1)\) of the lognormal distribution with parameters \(\mu\) and \(\sigma\). More... | |
static double | getStandardDeviation (double mu, double sigma) |
Computes and returns the standard deviation of the lognormal distribution with parameters \(\mu\) and \(\sigma\). More... | |
Additional Inherited Members | |
Public Attributes inherited from ContinuousDistribution | |
int | decPrec = 15 |
Protected Attributes inherited from ContinuousDistribution | |
double | supportA = Double.NEGATIVE_INFINITY |
double | supportB = Double.POSITIVE_INFINITY |
Static Protected Attributes inherited from ContinuousDistribution | |
static final double | XBIG = 100.0 |
static final double | XBIGM = 1000.0 |
static final double [] | EPSARRAY |
Extends the class ContinuousDistribution for the lognormal distribution [99] .
(See also the Johnson \(S_L\) distribution JohnsonSLDist
in this package.) It has scale parameter \(\mu\) and shape parameter \(\sigma> 0\). The density is
\[ f(x) = \frac{1}{\sqrt{2\pi}\sigma x} e^{-(\ln(x) - \mu)^2/(2\sigma^2)} \qquad\mbox{for } x>0, \tag{flognormal} \]
and 0 elsewhere. The distribution function is
\[ F(x) = \Phi\left({(\ln(x) - \mu)/\sigma}\right) \qquad\mbox{for } x>0, \]
where \(\Phi\) is the standard normal distribution function. Its inverse is given by
\[ F^{-1}(u) = e^{\mu+ \sigma\Phi^{-1} (u)} \qquad\mbox{for } 0 \le u < 1. \]
If \(\ln(Y)\) has a normal distribution, then \(Y\) has a lognormal distribution with the same parameters.
This class relies on the methods NormalDist.cdf01 and NormalDist.inverseF01 of NormalDist to approximate \(\Phi\) and \(\Phi^{-1}\).
double barF | ( | double | x | ) |
Returns \(\bar{F}(x) = 1 - F(x)\).
x | value at which the complementary distribution function is evaluated |
x
Implements Distribution.
double cdf | ( | double | x | ) |
Returns the distribution function \(F(x)\).
x | value at which the distribution function is evaluated |
x
Implements Distribution.
|
static |
Creates a new instance of a lognormal distribution with parameters \(\mu\) and \(\sigma\) estimated using the maximum likelihood method based on the \(n\) observations \(x[i]\), \(i = 0, 1, …, n-1\).
x | the list of observations to use to evaluate parameters |
n | the number of observations to use to evaluate parameters |
|
static |
Computes and returns the mean \(E[X] = e^{\mu+ \sigma^2/2}\) of the lognormal distribution with parameters \(\mu\) and \(\sigma\).
|
static |
Estimates the parameters \((\mu, \sigma)\) of the lognormal distribution using the maximum likelihood method, from the \(n\) observations \(x[i]\), \(i = 0, 1,…, n-1\).
The estimates are returned in a two-element array, in regular order: [ \(\mu\), \(\sigma\)]. The maximum likelihood estimators are the values \((\hat{\mu}, \hat{\sigma})\) that satisfy the equations:
\begin{align*} \hat{\mu} & = \frac{1}{n} \sum_{i=1}^n \ln(x_i) \\ \hat{\sigma} & = \sqrt{\frac{1}{n} \sum_{i=1}^n (\ln(x_i) - \hat{\mu})^2}. \end{align*}
See [99] (page 220).
x | the list of observations used to evaluate parameters |
n | the number of observations used to evaluate parameters |
|
static |
Computes and returns the standard deviation of the lognormal distribution with parameters \(\mu\) and \(\sigma\).
|
static |
Computes and returns the variance \(\mbox{Var}[X] = e^{2\mu+ \sigma^2}(e^{\sigma^2} - 1)\) of the lognormal distribution with parameters \(\mu\) and \(\sigma\).
double inverseF | ( | double | u | ) |
Returns the inverse distribution function \(F^{-1}(u)\), defined in ( inverseF ).
u | value in the interval \((0,1)\) for which the inverse distribution function is evaluated |
u
Implements Distribution.