umontreal.iro.lecuyer.rng
Class AntitheticStream
- java.lang.Object
-
- umontreal.iro.lecuyer.rng.AntitheticStream
-
- All Implemented Interfaces:
- RandomStream
public class AntitheticStream extends java.lang.Object implements RandomStream
This container class allows the user to force anyRandomStreamto return antithetic variates. That is,nextDoublereturns 1 - u instead of u and the corresponding change is made innextInt. Any instance of this class behaves exactly like aRandomStream, except that it depends on another random number generator stream, called the base stream, to generate its numbers. Any call to one of the next... methods of this class will modify the state of the base stream.
-
-
Constructor Summary
Constructors Constructor and Description AntitheticStream(RandomStream stream)Constructs a new antithetic stream, using the random numbers from the base stream stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidnextArrayOfDouble(double[] u, int start, int n)Calls nextArrayOfDouble (u, start, n) for the base stream, then replaces each u[i] by 1.0 - u[i].voidnextArrayOfInt(int i, int j, int[] u, int start, int n)Calls nextArrayOfInt (i, j, u, start, n) for the base stream, then replaces each u[i] by j - i - u[i].doublenextDouble()Returns 1.0 - s.nextDouble() where s is the base stream.intnextInt(int i, int j)Returns j - i - s.nextInt(i, j) where s is the base stream.voidresetNextSubstream()Reinitializes the stream to the beginning of its next substream: Ng is computed, and Cg and Bg are set to Ng.voidresetStartStream()Reinitializes the stream to its initial state Ig: Cg and Bg are set to Ig.voidresetStartSubstream()Reinitializes the stream to the beginning of its current substream: Cg is set to Bg.java.lang.StringtoString()Returns a string starting with "Antithetic of " and finishing with the result of the call to the toString method of the generator.
-
-
-
Constructor Detail
-
AntitheticStream
public AntitheticStream(RandomStream stream)
Constructs a new antithetic stream, using the random numbers from the base stream stream.
-
-
Method Detail
-
resetStartStream
public void resetStartStream()
Description copied from interface:RandomStreamReinitializes the stream to its initial state Ig: Cg and Bg are set to Ig.- Specified by:
resetStartStreamin interfaceRandomStream
-
resetStartSubstream
public void resetStartSubstream()
Description copied from interface:RandomStreamReinitializes the stream to the beginning of its current substream: Cg is set to Bg.- Specified by:
resetStartSubstreamin interfaceRandomStream
-
resetNextSubstream
public void resetNextSubstream()
Description copied from interface:RandomStreamReinitializes the stream to the beginning of its next substream: Ng is computed, and Cg and Bg are set to Ng.- Specified by:
resetNextSubstreamin interfaceRandomStream
-
toString
public java.lang.String toString()
Returns a string starting with "Antithetic of " and finishing with the result of the call to the toString method of the generator.- Specified by:
toStringin interfaceRandomStream- Overrides:
toStringin classjava.lang.Object- Returns:
- the state of the generator formated as a string
-
nextDouble
public double nextDouble()
Returns 1.0 - s.nextDouble() where s is the base stream.- Specified by:
nextDoublein interfaceRandomStream- Returns:
- the next generated uniform
-
nextInt
public int nextInt(int i, int j)Returns j - i - s.nextInt(i, j) where s is the base stream.- Specified by:
nextIntin interfaceRandomStream- Parameters:
i- smallest integer that can be generatedj- greatest integer that can be generated- Returns:
- the generated integer
-
nextArrayOfDouble
public void nextArrayOfDouble(double[] u, int start, int n)Calls nextArrayOfDouble (u, start, n) for the base stream, then replaces each u[i] by 1.0 - u[i].- Specified by:
nextArrayOfDoublein interfaceRandomStream- Parameters:
u- the array in which the numbers will be storedstart- the first index of u to be usedn- the number of random numbers to put in u
-
nextArrayOfInt
public void nextArrayOfInt(int i, int j, int[] u, int start, int n)Calls nextArrayOfInt (i, j, u, start, n) for the base stream, then replaces each u[i] by j - i - u[i].- Specified by:
nextArrayOfIntin interfaceRandomStream- Parameters:
i- the smallest possible integer to put in uj- the largest possible integer to put in uu- the array in which the numbers will be storedstart- the first index of u to be usedn- the number of random numbers to put in u
-
-
DMelt 3.0 © DataMelt by jWork.ORG