SSJ
3.3.1
Stochastic Simulation in Java
|
This container class embodies an arbitrary point set and its iterator adds a random shift modulo 1 to all the points, when producing the coordinates. More...
Public Member Functions | |
RandShiftedMod1PointSet (PointSet p, int dimShift, RandomStream stream) | |
Constructs a structure to contain a randomly shifted version of p . More... | |
int | getShiftDimension () |
Returns the number of dimensions of the current random shift. | |
void | addRandomShift (int d1, int d2, RandomStream stream) |
Changes the stream used for the random shifts to stream , then refreshes the shift for coordinates d1 to d2-1 . More... | |
void | addRandomShift (RandomStream stream) |
Changes the stream used for the random shifts to stream , then refreshes all coordinates of the random shift, up to its current dimension. | |
void | addRandomShift (int d1, int d2) |
Refreshes the random shift (generates new uniform values for the random shift coordinates) for coordinates d1 to d2-1 . | |
void | addRandomShift () |
Refreshes all coordinates of the random shift, up to its current dimension. | |
double | getCoordinate (int i, int j) |
Returns the shifted coordinate \(u_{i,j}\). | |
String | toString () |
PointSetIterator | iterator () |
Returns a RandShiftedMod1PointSetIterator for this point set. | |
Public Member Functions inherited from ContainerPointSet | |
PointSet | getOriginalPointSet () |
Returns the (untransformed) point set contained in this container. More... | |
int | getDimension () |
Returns the dimension of the contained point set. More... | |
int | getNumPoints () |
Returns the number of points in the contained point set. More... | |
double | getCoordinate (int i, int j) |
By default, returns the untransformed coordinate \(u_{i,j}\) for the contained point set. More... | |
PointSetIterator | iterator () |
Return an iterator for this ContainerPointSet . More... | |
void | randomize (PointSetRandomization rand) |
Randomizes the contained point set using rand . More... | |
void | addRandomShift (int d1, int d2, RandomStream stream) |
Calls addRandomShift(d1, d2, stream) of the contained point set. More... | |
void | addRandomShift (RandomStream stream) |
Calls addRandomShift(stream) of the contained point set. More... | |
void | clearRandomShift () |
Calls clearRandomShift() of the contained point set. | |
String | toString () |
Public Member Functions inherited from PointSet | |
int | getDimension () |
Returns the dimension (number of available coordinates) of the points. 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 | randomize (PointSetRandomization rand) |
Randomizes this point set using the given rand . More... | |
void | addRandomShift (int d1, int d2, RandomStream stream) |
By default, this method generates a random shift in the protected double[] array shift , to be used eventually for a random shift modulo 1. More... | |
void | addRandomShift (RandomStream stream) |
Same as addRandomShift(0, dim, stream), where dim is the dimension of the point set. More... | |
void | addRandomShift (int d1, int d2) |
Refreshes the random shift (generates new uniform values for the random shift coordinates) for coordinates d1 to d2-1 , using the saved shiftStream . | |
void | addRandomShift () |
Same as addRandomShift(0, dim), where dim is the dimension of the point set. | |
void | clearRandomShift () |
Erases the current random shift, if any. | |
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 | |
double [] | shift |
Protected Attributes inherited from ContainerPointSet | |
PointSet | P |
Protected Attributes inherited from PointSet | |
double | EpsilonHalf = 1.0 / Num.TWOEXP[55] |
To avoid 0 for nextCoordinate when random shifting, we add this to each coordinate. | |
int | dim = 0 |
Dimension of the points. | |
int | numPoints = 0 |
Number of points. | |
int | dimShift = 0 |
Current dimension of the shift. More... | |
int | capacityShift = 0 |
Number of array elements in the shift vector, always >= dimShift. | |
double [] | shift |
This is the shift vector as a double[] array, which contains the current random shift in case we apply a random shift modulo 1. More... | |
RandomStream | shiftStream |
Stream used to generate the random shifts. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from ContainerPointSet | |
void | init (PointSet p0) |
Initializes this container point set so that it will contain the point set p0 . More... | |
Static Protected Attributes inherited from PointSet | |
static final int | MAXBITS = 31 |
Since Java has no unsigned type, the 32nd bit cannot be used efficiently, so we have only 31 bits. More... | |
This container class embodies an arbitrary point set and its iterator adds a random shift modulo 1 to all the points, when producing the coordinates.
The random shift modulo 1 is the same for all the points. This can be used for example to apply a random shift modulo 1 to a DigitalNet, for which a RandomShift would normally perform a random digital shift. Here, calling addRandomShift
generates a new random shift, represented by a vector of \(d\) uniforms over \((0,1)\), where \(d\) is the current dimension of the shift. Then, an iterator for this point set will enumerate the points of the contained point set and apply this random shift modulo 1 to each of them.
RandShiftedMod1PointSet | ( | PointSet | p, |
int | dimShift, | ||
RandomStream | stream | ||
) |
Constructs a structure to contain a randomly shifted version of p
.
The random shifts will be generated in up to dimShift
dimensions, using stream stream
.
p | point set being randomized |
dimShift | dimension of the initial shift |
stream | stream used for generating random shifts |
void addRandomShift | ( | int | d1, |
int | d2, | ||
RandomStream | stream | ||
) |
Changes the stream used for the random shifts to stream
, then refreshes the shift for coordinates d1
to d2-1
.
addRandomShift
. Peut-être faudrait-il en éliminer 2, comme dans PointSet
.