GridSim
v4.0

eduni.simjava.distributions
Class Sim_random_obj

Object
  extended byeduni.simjava.distributions.Sim_random_obj
All Implemented Interfaces:
ContinuousGenerator, Generator

public class Sim_random_obj
extends Object
implements ContinuousGenerator

A random number generator producing pseudorandom numbers based on the value of a specific seed. The generator is a multiplicative linear congruential generator. It generates numbers through the following structure:

Y[1] = (742938285*Y[0]) mod (231-1)

The seed (Y[0]) provided is used to generate a sequence of pseudorandom numbers uniformly distributed between 0 and 1. The cycle of the generator is 231-2.

Version:
1.0, 13 May 2002
Author:
Costas Simatos

Constructor Summary
Sim_random_obj(String name)
          Constructor with which Sim_system is allowed to set the random number generator's seed
Sim_random_obj(String name, long seed)
          The constructor with which a specific seed is set for the random number generator
 
Method Summary
 String get_name()
          Get the random number generator's name.
 long get_seed()
          Get the random number generator's seed.
 double sample()
          Generate a new random number.
 void set_seed(long seed)
          Set the random number generator's seed.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Sim_random_obj

public Sim_random_obj(String name)
Constructor with which Sim_system is allowed to set the random number generator's seed

Parameters:
name - The name to be associated with this instance

Sim_random_obj

public Sim_random_obj(String name,
                      long seed)
The constructor with which a specific seed is set for the random number generator

Parameters:
name - The name to be associated with this instance
seed - The initial seed for the generator, two instances with the same seed will generate the same sequence of numbers
Method Detail

sample

public double sample()
Generate a new random number.

Specified by:
sample in interface ContinuousGenerator
Returns:
The next random number in the sequence

set_seed

public void set_seed(long seed)
Set the random number generator's seed.

Specified by:
set_seed in interface Generator
Parameters:
seed - The new seed for the generator

get_seed

public long get_seed()
Get the random number generator's seed.

Specified by:
get_seed in interface Generator
Returns:
The generator's seed

get_name

public String get_name()
Get the random number generator's name.

Specified by:
get_name in interface Generator
Returns:
The generator's name

GridSim
v4.0

The University of Melbourne, Australia, 2006