|
SSJ V. 1.2.5. |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectumontreal.iro.lecuyer.hups.PointSet
umontreal.iro.lecuyer.hups.DigitalNet
umontreal.iro.lecuyer.hups.DigitalSequence
umontreal.iro.lecuyer.hups.FaureSequence
public class FaureSequence
This class implements digital nets or digital sequences formed by the first n = bk points of the Faure sequence in base b. Values of n up to 231 are allowed. One has r = k. The generator matrices are
| xj, c, c | = | 1 | for c = 0,..., k - 1, |
| xj, 0, c | = | jxj, 0, c-1 | for c = 1,..., k - 1, |
| xj, l, c | = | xj, l-1, c-1 + jxj, l, c-1 | for 2 <= c < l <= k - 1, |
| xj, l, c | = | 0 | for c > l or l >= k. |
For any integer m > 0 and ν >= 0, if we look at the vector (ui, j, 1,..., ui, j, m) (the first m digits of coordinate j of the output) when i goes from νbm to (ν +1)bm - 1, this vector takes each of its bm possible values exactly once. In particular, for ν = 0, ui, j visits each value in the set {0, 1/bm, 2/bm,...,(bm -1)/bm} exactly once, so all one-dimensional projections of the point set are identical. However, the values are visited in a different order for the different values of j (otherwise all coordinates would be identical). For j = 0, they are visited in the same order as in the van der Corput sequence in base b.
An important property of Faure nets is that for any integers m > 0 and ν >= 0, the point set {ui for i = νbm,...,(ν +1)bm -1} is a (0, m, s)-net in base b. In particular, for n = bk, the first n points form a (0, k, s)-net in base b. The Faure nets are also projection-regular and dimension-stationary.
To obtain digital nets from the generalized Faure sequence
, where
Pj is left-multiplied by some
invertible matrix
Aj, it suffices to apply an appropriate
matrix scramble (e.g., via leftMatrixScramble).
This changes the order in which ui, j visits its different
values, for each coordinate j, but does not change the set of values
that are visited. The (0, m, s)-net property stated above remains valid.
| Constructor Summary | |
|---|---|
FaureSequence(int n,
int dim)
Same as FaureSequence(b, k, w, w, dim)
with base b equal to the smallest prime larger or equal to dim,
and with at least n points. |
|
FaureSequence(int b,
int k,
int r,
int w,
int dim)
Constructs a digital net in base b, with n = bk points and w output digits, in dim dimensions. |
|
| Method Summary | |
|---|---|
void |
extendSequence(int k)
Increases the number of points to n = bk from now on. |
String |
toString()
Formats a string that contains the information about the point set. |
| Methods inherited from class umontreal.iro.lecuyer.hups.DigitalSequence |
|---|
iteratorShift, iteratorShiftNoGray, toNet, toNetShiftCj |
| Methods inherited from class umontreal.iro.lecuyer.hups.PointSet |
|---|
addRandomShift, addRandomShift, formatPoints, formatPoints, getDimension, getNumPoints, randomize, randomize, randomize, randomize |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public FaureSequence(int b,
int k,
int r,
int w,
int dim)
b - basek - there will be b^k pointsr - number of rows in the generator matricesw - number of output digitsdim - dimension of the point set
public FaureSequence(int n,
int dim)
FaureSequence(b, k, w, w, dim)
with base b equal to the smallest prime larger or equal to dim,
and with at least n points.
The values of k, r, and w are taken as
k = ceil(logbn) and
r = w = max(k, floor(30/log2b)).
n - minimal number of pointsdim - dimension of the point set| Method Detail |
|---|
public String toString()
PointSet
toString in class DigitalNetpublic void extendSequence(int k)
DigitalSequence
extendSequence in class DigitalSequencek - there will be b^k points
|
SSJ V. 1.2.5. |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||