Class: RandomVariateGenerator::BinomialVariate

Inherits:
RandomVariate show all
Defined in:
lib/random_variate_generator/binomial_variate.rb

Instance Method Summary collapse

Methods inherited from RandomVariate

create

Constructor Details

#initialize(params = {}) ⇒ BinomialVariate

Returns a new instance of BinomialVariate.



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/random_variate_generator/binomial_variate.rb', line 4

def initialize(params = {})
   if params[:probability_of_success]
     @probability_of_success = params[:probability_of_success] 
   else
     raise InvalidParameterException.new "Parameter :probability_of_success no specified"
   end
   raise InvalidParameterException.new "Parameter :probability_of_success must be greater than 0" if @probability_of_success <= 0
   if params[:number_of_trials]
     @number_of_trials = params[:number_of_trials] 
   else
     raise InvalidParameterException.new "Parameter :number_of_trials no specified"
   end
   raise InvalidParameterException.new "Parameter :number_of_trials must be greater than 0" if @number_of_trials <= 0
end

Instance Method Details

#generate_valueObject



19
20
21
22
# File 'lib/random_variate_generator/binomial_variate.rb', line 19

def generate_value
  Random.binomial(:probability_of_success => @probability_of_success,
                            :number_of_trials => @number_of_trials)
end