SSJ
V. labo.

umontreal.iro.lecuyer.hups
Class KorobovLatticeSequence

java.lang.Object
  extended by umontreal.iro.lecuyer.hups.PointSet
      extended by umontreal.iro.lecuyer.hups.Rank1Lattice
          extended by umontreal.iro.lecuyer.hups.KorobovLattice
              extended by umontreal.iro.lecuyer.hups.KorobovLatticeSequence

public class KorobovLatticeSequence
extends KorobovLattice

This class implements Korobov lattice sequences, defined as follows. One selects a basis b and a (large) multiplier a. For each integer k >=  0, we may consider the n-point Korobov lattice with modulus n = bk and multiplier ã = a mod n. Its points have the form

ui = (ai(1, a, a2,…) modn)/n = (ãi(1,ã,ã2,…) modn)/n

for i = 0,..., n - 1. For k = 0, 1,..., we have an increasing sequence of lattices contained in one another.

These embedded lattices contain an infinite sequence of points that can be enumerated as follows:

ui = ψb(i)(1, a, a2,…) mod 1.

where ψb(i) is the radical inverse function in base b, defined in RadicalInverse. The first n = bk points in this sequence are exactly the same as the n points in, for each k >=  0.


Constructor Summary
KorobovLatticeSequence(int b, int a)
          Constructs a new lattice sequence with base b and generator = a.
 
Method Summary
 double getCoordinate(int i, int j)
          .
 
Methods inherited from class umontreal.iro.lecuyer.hups.KorobovLattice
getA, setNumPoints, toString
 
Methods inherited from class umontreal.iro.lecuyer.hups.Rank1Lattice
addRandomShift, clearRandomShift, getAs, iterator
 
Methods inherited from class umontreal.iro.lecuyer.hups.PointSet
addRandomShift, addRandomShift, addRandomShift, formatPoints, formatPoints, formatPoints, formatPoints, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsNumbered, formatPointsNumbered, getDimension, getNumPoints, getStream, randomize, randomize, randomize, randomize, randomize, setStream, unrandomize
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

KorobovLatticeSequence

public KorobovLatticeSequence(int b,
                              int a)
Constructs a new lattice sequence with base b and generator = a.

Parameters:
b - number of points (modulus) is a power of b
a - multiplier a of this lattice sequence
Method Detail

getCoordinate

public double getCoordinate(int i,
                            int j)
Description copied from class: PointSet
. \begin{tabb}
 Returns $u_{i,j}$, the coordinate $j$\ of the point $i$.
 \richard{...
 ...xttt{getCoordinate} impl\'ementent le random shift
 quand il existe?}
 \end{tabb}
iindex of the point to look for jindex of the coordinate to look for the value of ui, j

Overrides:
getCoordinate in class Rank1Lattice

SSJ
V. labo.

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.