[][src]Struct statrs::distribution::LogNormal

pub struct LogNormal { /* fields omitted */ }

Implements the Log-normal distribution

Examples

use statrs::distribution::{LogNormal, Continuous};
use statrs::statistics::Mean;
use statrs::prec;

let n = LogNormal::new(0.0, 1.0).unwrap();
assert_eq!(n.mean(), (0.5f64).exp());
assert!(prec::almost_eq(n.pdf(1.0), 0.3989422804014326779399, 1e-16));

Methods

impl LogNormal[src]

pub fn new(location: f64, scale: f64) -> Result<LogNormal>[src]

Constructs a new log-normal distribution with a location of location and a scale of scale

Errors

Returns an error if location or scale are NaN. Returns an error if scale <= 0.0

Examples

use statrs::distribution::LogNormal;

let mut result = LogNormal::new(0.0, 1.0);
assert!(result.is_ok());

result = LogNormal::new(0.0, 0.0);
assert!(result.is_err());

Trait Implementations

impl Univariate<f64, f64> for LogNormal[src]

fn cdf(&self, x: f64) -> f64[src]

Calculates the cumulative distribution function for the log-normal distribution at x

Formula

This example is not tested
(1 / 2) + (1 / 2) * erf((ln(x) - μ) / sqrt(2) * σ)

where μ is the location, σ is the scale, and erf is the error function

impl Continuous<f64, f64> for LogNormal[src]

fn pdf(&self, x: f64) -> f64[src]

Calculates the probability density function for the log-normal distribution at x

Formula

This example is not tested
(1 /  * sqrt()) * e^(-((ln(x) - μ)^2) / ^2)

where μ is the location and σ is the scale

fn ln_pdf(&self, x: f64) -> f64[src]

Calculates the log probability density function for the log-normal distribution at x

Formula

This example is not tested
ln((1 /  * sqrt()) * e^(-((ln(x) - μ)^2) / ^2))

where μ is the location and σ is the scale

impl Min<f64> for LogNormal[src]

fn min(&self) -> f64[src]

Returns the minimum value in the domain of the log-normal distribution representable by a double precision float

Formula

This example is not tested
0

impl Max<f64> for LogNormal[src]

fn max(&self) -> f64[src]

Returns the maximum value in the domain of the log-normal distribution representable by a double precision float

Formula

This example is not tested
INF

impl Mean<f64> for LogNormal[src]

fn mean(&self) -> f64[src]

Returns the mean of the log-normal distribution

Formula

This example is not tested
e^(μ + σ^2 / 2)

where μ is the location and σ is the scale

impl Variance<f64> for LogNormal[src]

fn variance(&self) -> f64[src]

Returns the variance of the log-normal distribution

Formula

This example is not tested
(e^(σ^2) - 1) * e^( + σ^2)

where μ is the location and σ is the scale

fn std_dev(&self) -> f64[src]

Returns the standard deviation of the log-normal distribution

Formula

This example is not tested
sqrt((e^(σ^2) - 1) * e^( + σ^2))

where μ is the location and σ is the scale

impl Entropy<f64> for LogNormal[src]

fn entropy(&self) -> f64[src]

Returns the entropy of the log-normal distribution

Formula

This example is not tested
ln(σe^(μ + 1 / 2) * sqrt())

where μ is the location and σ is the scale

impl Skewness<f64> for LogNormal[src]

fn skewness(&self) -> f64[src]

Returns the skewness of the log-normal distribution

Formula

This example is not tested
(e^(σ^2) + 2) * sqrt(e^(σ^2) - 1)

where μ is the location and σ is the scale

impl Median<f64> for LogNormal[src]

fn median(&self) -> f64[src]

Returns the median of the log-normal distribution

Formula

This example is not tested
e^μ

where μ is the location

impl Mode<f64> for LogNormal[src]

fn mode(&self) -> f64[src]

Returns the mode of the log-normal distribution

Formula

This example is not tested
e^(μ - σ^2)

where μ is the location and σ is the scale

impl Copy for LogNormal[src]

impl PartialEq<LogNormal> for LogNormal[src]

impl Clone for LogNormal[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for LogNormal[src]

impl Distribution<f64> for LogNormal[src]

fn sample_iter<R>(&'a self, rng: &'a mut R) -> DistIter<'a, Self, R, T> where
    R: Rng
[src]

Create an iterator that generates random values of T, using rng as the source of randomness. Read more

Auto Trait Implementations

impl Send for LogNormal

impl Sync for LogNormal

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]