24package umontreal.ssj.hups;
26import umontreal.ssj.rng.RandomStream;
63 for (
int j = 0; j <
dim; j++) {
82 for (
int j = 0; j <
dim; j++) {
85 delta[j] = 1.0 / (double) k;
102 int[] current =
new int[
dim];
104 for (
int j = 0; j <
dim; j++)
107 for (
int b = 0; b < numBoxes; b++) {
111 for (
int j = 0; j <
dim; j++) {
113 x[i][j] = (current[j] + u) *
delta[j];
114 x[i + 1][j] = (current[j] + 1.0 - u) *
delta[j];
117 for (
int l = 0; l <
dim; l++) {
119 if (current[l] >=
numDiv[l])
145 return "StratifiedUnitCubeAnti: locally antithetic stratified point set over the unit cube in " +
dim
int numPoints
Number of points.
int dim
Dimension of the points.
void randomize(RandomStream stream)
This randomization generates one point randomly in its corresponding box, and the compute a locally a...
void addRandomShift(int fromDim, int toDim, RandomStream stream)
Random shifts and partial randomizations are irrelevant here, so this method is redefined to be equiv...
StratifiedUnitCubeAnti(int[] k, int dim)
Builds a stratified points set in dim dimensions, with k[j] intervals in dimension j.
double[] delta
Size of divisions in each dimension, delta[j] = 1/numDiv[j].
StratifiedUnitCubeAnti(int k, int dim)
Same as StratifiedUnitCube (int[] k, int dim) with all coordinates of the vector k equal to the integ...
void randomize(PointSetRandomization rand)
Randomizes the points using the locally antithetic stratification, regardless of what rand is.
String toString()
Formats a string that contains information about the point set.
int[] numDiv
Number of divisions in each dimension, numDiv[j] for coordinate j.
This interface is for a randomization that can be used to randomize a umontreal.ssj....
RandomStream getStream()
Returns the internal umontreal.ssj.rng.RandomStream.
This interface defines the basic structures to handle multiple streams of uniform (pseudo)random numb...
double nextDouble()
Returns a (pseudo)random number from the uniform distribution over the interval , using this stream,...