[−][src]Struct rand_distr::Exp
The exponential distribution Exp(lambda)
.
This distribution has density function: f(x) = lambda * exp(-lambda * x)
for x > 0
.
Note that Exp1
is an optimised implementation for lambda = 1
.
Example
use rand_distr::{Exp, Distribution}; let exp = Exp::new(2.0).unwrap(); let v = exp.sample(&mut rand::thread_rng()); println!("{} is from a Exp(2) distribution", v);
Methods
impl<N: Float> Exp<N> where
Exp1: Distribution<N>,
[src][−]
Exp1: Distribution<N>,
pub fn new(lambda: N) -> Result<Exp<N>, Error>
[src][−]
Construct a new Exp
with the given shape parameter
lambda
.
Trait Implementations
impl<N: Clone> Clone for Exp<N>
[src][+]
impl<N: Copy> Copy for Exp<N>
[src]
impl<N: Debug> Debug for Exp<N>
[src][+]
impl<N: Float> Distribution<N> for Exp<N> where
Exp1: Distribution<N>,
[src][+]
Exp1: Distribution<N>,
Auto Trait Implementations
impl<N> RefUnwindSafe for Exp<N> where
N: RefUnwindSafe,
N: RefUnwindSafe,
impl<N> Send for Exp<N> where
N: Send,
N: Send,
impl<N> Sync for Exp<N> where
N: Sync,
N: Sync,
impl<N> Unpin for Exp<N> where
N: Unpin,
N: Unpin,
impl<N> UnwindSafe for Exp<N> where
N: UnwindSafe,
N: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,