SSJ
3.2.1
Stochastic Simulation in Java
|
Similar to CycleBasedPointSet, except that the successive values in the cycles are stored as integers in the range \(\{0,…,2^k-1\}\), where \(1\le k \le31\). More...
Classes | |
class | CycleBasedPointSetBase2Iterator |
Public Member Functions | |
double | getCoordinate (int i, int j) |
PointSetIterator | iterator () |
void | addRandomShift (int d1, int d2, RandomStream stream) |
Adds a random digital shift in base 2 to all the points of the point set, using stream stream to generate the random numbers, for coordinates d1 to d2 - 1 . More... | |
void | clearRandomShift () |
Erases the current digital random shift, if any. | |
String | formatPoints () |
![]() | |
double | getCoordinate (int i, int j) |
void | addRandomShift (int d1, int d2, RandomStream stream) |
Adds a random shift to all the points of the point set, using stream stream to generate the random numbers, for coordinates d1 to d2 - 1 . More... | |
void | clearRandomShift () |
Erases the current random shift, if any. | |
int | getDimension () |
PointSetIterator | iterator () |
String | toString () |
String | formatPoints () |
![]() | |
int | getDimension () |
Returns the dimension (number of available coordinates) of the point set. More... | |
int | getNumPoints () |
Returns the number of points. More... | |
abstract double | getCoordinate (int i, int j) |
Returns \(u_{i,j}\), the coordinate \(j\) of the point \(i\). More... | |
PointSetIterator | iterator () |
Constructs and returns a point set iterator. More... | |
void | setStream (RandomStream stream) |
Sets the random stream used to generate random shifts to stream . More... | |
RandomStream | getStream () |
Returns the random stream used to generate random shifts. More... | |
void | randomize (PointSetRandomization rand) |
Randomizes the point set using the given rand . More... | |
void | addRandomShift (int d1, int d2, RandomStream stream) |
This method does nothing for this generic class. More... | |
void | addRandomShift (RandomStream stream) |
This method does nothing for this generic class. More... | |
void | addRandomShift (int d1, int d2) |
Similar to addRandomShift(d1, d2, stream) , with the current random stream. | |
void | addRandomShift () |
Similar to addRandomShift(0, d2, stream) with the current random stream and d2 the dimension of the current random shift. | |
void | clearRandomShift () |
Erases the current random shift, if any. | |
void | randomize (int fromDim, int toDim, RandomStream stream) |
By default, this method simply calls addRandomShift (fromDim, toDim, stream) , which does nothing. | |
void | randomize (RandomStream stream) |
By default, this method simply calls randomize(0, dim, stream). | |
void | randomize (int d1, int d2) |
By default, this method simply calls addRandomShift(d1, d2) . | |
void | randomize () |
By default, this method simply calls addRandomShift() . | |
void | unrandomize () |
By default, this method simply calls clearRandomShift() . | |
String | toString () |
Formats a string that contains information about the point set. More... | |
String | formatPoints () |
Same as invoking formatPoints(n, d) with \(n\) and \(d\) equal to the number of points and the dimension of this object, respectively. More... | |
String | formatPoints (int n, int d) |
Formats a string that displays the same information as returned by toString, together with the first \(d\) coordinates of the first \(n\) points. More... | |
String | formatPoints (PointSetIterator iter) |
Same as invoking formatPoints(iter, n, d) with \(n\) and \(d\) equal to the number of points and the dimension, respectively. More... | |
String | formatPoints (PointSetIterator iter, int n, int d) |
Same as invoking formatPoints(n, d), but prints the points by calling iter repeatedly. More... | |
String | formatPointsBase (int b) |
Similar to formatPoints(), but the points coordinates are printed in base \(b\). More... | |
String | formatPointsBase (int n, int d, int b) |
Similar to formatPoints(n, d), but the points coordinates are printed in base \(b\). More... | |
String | formatPointsBase (PointSetIterator iter, int b) |
Similar to formatPoints(iter), but the points coordinates are printed in base \(b\). More... | |
String | formatPointsBase (PointSetIterator iter, int n, int d, int b) |
Similar to formatPoints(iter, n, d), but the points coordinates are printed in base \(b\). More... | |
String | formatPointsNumbered () |
Same as invoking formatPointsNumbered(n, d) with \(n\) and \(d\) equal to the number of points and the dimension, respectively. More... | |
String | formatPointsNumbered (int n, int d) |
Same as invoking formatPoints(n,d), except that the points are numbered. More... | |
Protected Attributes | |
int | numBits |
double | normFactor |
![]() | |
int | numCycles = 0 |
ObjectArrayList | cycles = new ObjectArrayList() |
![]() | |
double | EpsilonHalf = 1.0 / Num.TWOEXP[55] |
int | dim = 0 |
int | numPoints = 0 |
int | dimShift = 0 |
int | capacityShift = 0 |
RandomStream | shiftStream |
Additional Inherited Members | |
![]() | |
void | addCycle (AbstractList c) |
Adds the cycle c to the list of all cycles. More... | |
![]() | |
static final int | MAXBITS = 31 |
Similar to CycleBasedPointSet, except that the successive values in the cycles are stored as integers in the range \(\{0,…,2^k-1\}\), where \(1\le k \le31\).
The output values \(u_{i,j}\) are obtained by dividing these integer values by \(2^k\). Point sets where the successive coordinates of each point are obtained via linear recurrences modulo 2 (e.g., linear feedback shift registers or Korobov-type polynomial lattice rules) are naturally expressed in this form. Storing the integers \(2^k u_{i,j}\) instead of the \(u_{i,j}\) themselves makes it easier to apply randomizations such as digital random shifts in base 2, which are applied to the bits before transforming the value to a real number \(u_{i,j}\). When a random digital shift is performed, it applies a bitwise exclusive-or of all the points with a single random point.
void addRandomShift | ( | int | d1, |
int | d2, | ||
RandomStream | stream | ||
) |
Adds a random digital shift in base 2 to all the points of the point set, using stream stream
to generate the random numbers, for coordinates d1
to d2 - 1
.
This applies a bitwise exclusive-or of all the points with a single random point.