Module: Distribution::Exponential::Ruby_
- Defined in:
- lib/distribution/exponential/ruby.rb
Class Method Summary collapse
- .cdf(x, l) ⇒ Object
- .pdf(x, l) ⇒ Object
- .quantile(pr, l) ⇒ Object (also: p_value)
- .rng(l, opts = {}) ⇒ Object
Class Method Details
.cdf(x, l) ⇒ Object
15 16 17 18 |
# File 'lib/distribution/exponential/ruby.rb', line 15 def cdf(x, l) return 0 if x < 0 1 - Math.exp(-l * x) end |
.pdf(x, l) ⇒ Object
10 11 12 13 |
# File 'lib/distribution/exponential/ruby.rb', line 10 def pdf(x, l) return 0 if x < 0 l * Math.exp(-l * x) end |
.quantile(pr, l) ⇒ Object Also known as: p_value
20 21 22 |
# File 'lib/distribution/exponential/ruby.rb', line 20 def quantile(pr, l) (-Math.log(1 - pr)).quo(l) end |
.rng(l, opts = {}) ⇒ Object
5 6 7 8 |
# File 'lib/distribution/exponential/ruby.rb', line 5 def rng(l, opts = {}) rng = opts[:random] || Random -> { p_value(rng.rand, l) } end |