public abstract class CycleBasedPointSetBase2 extends CycleBasedPointSet
CycleBasedPointSet, except that the successive
values in the cycles are stored as integers in the range
{0,..., 2k -1}, where
1 <= k <= 31.
The output values ui, j are obtained by dividing these integer
values by 2k. 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
2kui, j instead of the ui, 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 ui, j. When a random digital shift is
performed, it applies a bitwise exclusive-or of all the points with a single
random point.| Modifier and Type | Class and Description |
|---|---|
class |
CycleBasedPointSetBase2.CycleBasedPointSetBase2Iterator |
CycleBasedPointSet.CycleBasedPointSetIterator| Constructor and Description |
|---|
CycleBasedPointSetBase2() |
| Modifier and Type | Method and Description |
|---|---|
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.
|
void |
clearRandomShift()
Erases the current random shift, if any.
|
java.lang.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. |
double |
getCoordinate(int i,
int j)
Returns ui, j, the coordinate j of the point i.
|
PointSetIterator |
iterator()
Constructs and returns a point set iterator.
|
getDimension, toStringaddRandomShift, addRandomShift, addRandomShift, formatPoints, formatPoints, formatPoints, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsNumbered, formatPointsNumbered, getNumPoints, getStream, randomize, randomize, randomize, randomize, randomize, setStream, unrandomizepublic double getCoordinate(int i,
int j)
PointSetgetCoordinate in class CycleBasedPointSeti - index of the point to look forj - index of the coordinate to look forpublic PointSetIterator iterator()
PointSetgetCoordinate (i,j) to iterate over the
points and coordinates, but subclasses can reimplement it
for better efficiency.iterator in class CycleBasedPointSetpublic void addRandomShift(int d1,
int d2,
RandomStream stream)
addRandomShift in class CycleBasedPointSetstream - Stream used to generate random numberspublic void clearRandomShift()
PointSetclearRandomShift in class CycleBasedPointSetpublic java.lang.String formatPoints()
PointSetformatPoints(n, d) with n and d equal to the
number of points and the dimension of this object, respectively.formatPoints in class CycleBasedPointSetTo submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.