class RandomVariateGenerator::TriangularVariate

Public Class Methods

new(params = {}) click to toggle source
# File lib/random_variate_generator/triangular_variate.rb, line 4
def initialize(params = {})
   if params[:min] && params[:mode] && params[:max]
     @min = params[:min] 
     @mode = params[:mode]
     @max = params[:max]   
   else
     raise InvalidParameterException.new "Parameter :min, :mode or :max no specified"
   end 
   raise InvalidParameterException.new "Parameter :max must be greater than :mode" if @mode >= @max
   raise InvalidParameterException.new "Parameter :max must be greater than :min" if @min >= @max
   raise InvalidParameterException.new "Parameter :mode must be greater than :min" if @min >= @mode             
end

Public Instance Methods

generate_value() click to toggle source
# File lib/random_variate_generator/triangular_variate.rb, line 17
def generate_value
  Random.triangular(:min => @min, :mode => @mode, :max => @max)
end