umontreal.iro.lecuyer.hups
Class F2wCycleBasedPolyLCG
java.lang.Object
umontreal.iro.lecuyer.hups.PointSet
umontreal.iro.lecuyer.hups.CycleBasedPointSet
umontreal.iro.lecuyer.hups.CycleBasedPointSetBase2
umontreal.iro.lecuyer.hups.F2wCycleBasedPolyLCG
public class F2wCycleBasedPolyLCG
- extends CycleBasedPointSetBase2
This class creates a point set based upon
a linear congruential sequence in the finite field
F2w[z]/P(z).
The recurrence is
qn(z) = zsqn-1(z) mod P(z)
where
P(z)∈F2w[z] has degree r and
qn(z) = qn, 1zr-1 + ... + qn, r∈F2w[z]/P(z).
The parameter s is
called the stepping parameter of the recurrence.
The polynomial P(z) is not necessarily the characteristic polynomial
of this recurrence, but it can still be used to store the parameters of
the recurrence.
In the implementation, it is stored in an object of the class
F2wStructure
. See the description
of this class for more details on how the polynomial
is stored.
Let
x = (x(0),…, x(p-1))∈F2p be a p-bit vector.
Let us define the function
φ(x) = ∑i=1p2-ix(i-1).
The point set in t dimensions produced by this class is
{(φ(y0), φ(y1),…, φ(yt-1) : (q0, 1,…,q0, r-1)∈F2rw}
where
yn = (qn, 1,…,qn, r),
qn, i
is the representation of qn, i under the polynomial basis of
F2w over
F2.
Constructor Summary |
F2wCycleBasedPolyLCG(int w,
int r,
int modQ,
int step,
int nbcoeff,
int[] coeff,
int[] nocoeff)
Constructs a point set with 2rw points. |
F2wCycleBasedPolyLCG(String filename,
int no)
Constructs a point set after reading its parameters from
file filename; the parameters are located at line numbered no
of filename. |
Method Summary |
String |
toString()
Formats a string that contains information about the point set. |
Methods inherited from class umontreal.iro.lecuyer.hups.PointSet |
addRandomShift, addRandomShift, addRandomShift, formatPoints, formatPoints, formatPoints, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsNumbered, formatPointsNumbered, getNumPoints, getStream, randomize, randomize, randomize, randomize, randomize, setStream, unrandomize |
F2wCycleBasedPolyLCG
public F2wCycleBasedPolyLCG(int w,
int r,
int modQ,
int step,
int nbcoeff,
int[] coeff,
int[] nocoeff)
- Constructs a point set with 2rw points. See the description of the class
F2wStructure
for the meaning of the parameters.
F2wCycleBasedPolyLCG
public F2wCycleBasedPolyLCG(String filename,
int no)
- Constructs a point set after reading its parameters from
file filename; the parameters are located at line numbered no
of filename. The available files are listed in the description of class
F2wStructure
.
toString
public String toString()
- Description copied from class:
PointSet
- Formats a string that contains information about the point set.
- Overrides:
toString
in class CycleBasedPointSet
- Returns:
- string representation of the point set information
To submit a bug or ask questions, send an e-mail to
Pierre L'Ecuyer.