Class edu.cornell.lassp.houle.RngPack.Ranmar
All Packages Class Hierarchy This Package Previous Next Index
Class edu.cornell.lassp.houle.RngPack.Ranmar
java.lang.Object

+edu.cornell.lassp.houle.RngPack.RandomElement

+edu.cornell.lassp.houle.RngPack.RandomSeedable

+edu.cornell.lassp.houle.RngPack.Ranmar
 public class Ranmar
 extends RandomSeedable
RANMAR is a lagged Fibonacci generator proposed by Marsaglia and
Zaman and is a good research grade generator. This version of
RANMAR is based on the paper by James, which is a good
reference for the properties of RANMAR and several other
generators.
REFERENCES:
F. James, Comp. Phys. Comm. 60 (1990) p 329344
and was originally described in
G. Marsaglia, A. Zaman and W.W Tsang, Stat. Prob. Lett 9 (1990) p 35.
Source code is available.
 Version:
 1.0
 Author:
 Paul Houle (Email: houle@msc.cornell.edu)

BIG_PRIME
 The 46,009,220nd prime number,
he largest prime less than 9*10^{8}.

DEFSEED
 Default seed.

Ranmar(int)

Initialize Ranmar with a specified integer seed

Ranmar(long)

Initialize Ranmar with a specified long seed

Ranmar()

Initialize Ranmar with a default seed taken from Marsaglia and
Zaman's paper.

Ranmar(Date)

Seed RANMAR from the clock.

raw()
 The generator

raw(double[], int)

A version of the generator for filling arrays, inlined for speed
DEFSEED
public static int DEFSEED
 Default seed.
DEFSEED=54217137
BIG_PRIME
public static int BIG_PRIME
 The 46,009,220nd prime number,
he largest prime less than 9*10^{8}. Used as a modulus
because this version of RANMAR needs a seed between 0
and 9*10^{8} and
BIG_PRIME
isn't commensurate
with any regular period.
BIG_PRIME= 899999963
Ranmar
public Ranmar(int ijkl)
 Initialize Ranmar with a specified integer seed
 Parameters:
 ijkl  seed integer; Ranmar(int ijkl) takes uses
ijkl modulus BIG_PRIME as a seed for RANMAR.
Ranmar
public Ranmar(long ijkl)
 Initialize Ranmar with a specified long seed
 Parameters:
 ijkl  seed long; Ranmar(long ijkl) takes uses
ijkl modulus BIG_PRIME as a seed for RANMAR.
Ranmar
public Ranmar()
 Initialize Ranmar with a default seed taken from Marsaglia and
Zaman's paper. Equivalent to
Ranmar(54217137).
Ranmar
public Ranmar(Date d)
 Seed RANMAR from the clock.
RandomElement e=new Ranmar(new Date());
 Parameters:
 d  a Date object to seed Ranmar with, typically
new Date()
raw
public final double raw()
 The generator
 Returns:
 a pseudo random number
 Overrides:
 raw in class RandomElement
raw
public final void raw(double d[],
int n)
 A version of the generator for filling arrays, inlined for speed
 Parameters:
 d  an array of doubles to be filled
 n  size of the array
 Overrides:
 raw in class RandomElement
All Packages Class Hierarchy This Package Previous Next Index