|
SSJ V. labo. |
||||||||
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.DigitalNetBase2
umontreal.iro.lecuyer.hups.DigitalSequenceBase2
umontreal.iro.lecuyer.hups.SobolSequence
public class SobolSequence
SobolSequence
This class implements digital nets or digital sequences in base 2 formed by the first n = 2k points of a Sobol' sequence[#!rSOB67a!#,#!rSOB76b!#]. Values of n up to 230 are allowed.
In Sobol's proposal, the generator matrices Cj are upper triangular matrices defined by a set of direction numbers
For each dimension j, the integers mj, c are defined by selecting a primitive polynomial over F2 of degree cj,
This list of primitive polynomials, as well as default choices for the direction numbers, are stored in precomputed tables. The ordered list of primitive polynomials was taken from Florent Chabaud's web site, at http://fchabaud.free.fr/. Each polynomial fj(z) is stored in the form of the integer 2cj + aj, 12cj-1 + ... + aj, cj, whose binary representation gives the polynomial coefficients.
For the set of direction numbers, there are several possibilities based on different selection criteria. The original values proposed by Sobol' and implemented in the code of Bratley and Fox[#!rBRA88c!#] for j≤40 were selected in terms of his properties A and A', which are equivalent to s-distribution with one and two bits of accuracy, respectively. The default direction numbers used here have been taken from Lemieux et al. For j≤40, they are the same as in Bratley and Fox. Several files of parameters for Sobol sequences are given on F. Kuo's Web site at http://web.maths.unsw.edu.au/~fkuo/sobol/index.html. We should eventually have other choices for the direction numbers.
Constructor Summary | |
---|---|
SobolSequence(int n,
int dim)
. |
|
SobolSequence(int k,
int w,
int dim)
. |
|
SobolSequence(String filename,
int k,
int w,
int dim)
. |
Method Summary | |
---|---|
void |
extendSequence(int k)
Increases the number of points to n = 2k from now on. |
String |
toString()
. |
Methods inherited from class umontreal.iro.lecuyer.hups.DigitalSequenceBase2 |
---|
iteratorShift, iteratorShiftNoGray, toNet, toNetShiftCj |
Methods inherited from class umontreal.iro.lecuyer.hups.DigitalNet |
---|
eraseOriginalGeneratorMatrices, resetGeneratorMatrices, unrandomize |
Methods inherited from class umontreal.iro.lecuyer.hups.PointSet |
---|
addRandomShift, addRandomShift, formatPoints, formatPoints, formatPoints, formatPoints, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsNumbered, formatPointsNumbered, getDimension, getNumPoints, getStream, randomize, randomize, randomize, randomize, randomize, setStream |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public SobolSequence(int k, int w, int dim)
public SobolSequence(int n, int dim)
public SobolSequence(String filename, int k, int w, int dim)
Method Detail |
---|
public String toString()
PointSet
toString
in class DigitalNetBase2
public void extendSequence(int k)
DigitalSequenceBase2
extendSequence
in class DigitalSequenceBase2
k
- there will be 2^k points
|
SSJ V. labo. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |