Class: RandomVariateGenerator::TriangularVariate
- Inherits:
-
RandomVariate
- Object
- RandomVariate
- RandomVariateGenerator::TriangularVariate
- Defined in:
- lib/random_variate_generator/triangular_variate.rb
Instance Method Summary collapse
- #generate_value ⇒ Object
-
#initialize(params = {}) ⇒ TriangularVariate
constructor
A new instance of TriangularVariate.
Methods inherited from RandomVariate
Constructor Details
#initialize(params = {}) ⇒ TriangularVariate
Returns a new instance of TriangularVariate.
4 5 6 7 8 9 10 11 12 13 14 15 |
# 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 |
Instance Method Details
#generate_value ⇒ Object
17 18 19 |
# File 'lib/random_variate_generator/triangular_variate.rb', line 17 def generate_value Random.triangular(:min => @min, :mode => @mode, :max => @max) end |