SSJ
V. 2.6.

## umontreal.iro.lecuyer.hups Class KorobovLattice

```java.lang.Object umontreal.iro.lecuyer.hups.PointSet umontreal.iro.lecuyer.hups.Rank1Lattice umontreal.iro.lecuyer.hups.KorobovLattice
```
Direct Known Subclasses:
KorobovLatticeSequence

`public class KorobovLatticeextends Rank1Lattice`

This class implements Korobov lattices, which represents the same point sets as in class `LCGPointSet`, but implemented differently. The parameters are the modulus n and the multiplier a, for an arbitrary integer 1 <= a < n. [When a is outside the interval [1, n), then we replace a by (a mod n) in all calculations.] The number of points is n, their dimension is s, and they are defined by

ui = (i/n)(1, a, a2,…, as-1) mod 1

for i = 0,..., n - 1.

It is also possible to build a ``shifted'' Korobov lattice with the first t coordinates rejected. The s-dimensionnal points are then defined as

ui = (i/n)(at, at+1, at+2,…, at+s-1) mod 1

for i = 0,..., n - 1 and fixed t.

Constructor Summary
```KorobovLattice(int n, int a, int s)```
Instantiates a Korobov lattice point set with modulus n and multiplier a in dimension s.
```KorobovLattice(int n, int a, int s, int t)```
Instantiates a shifted Korobov lattice point set with modulus n and multiplier a in dimension s.

Method Summary
` int` `getA()`
Returns the multiplier a of the lattice.
` void` `setNumPoints(int n)`
Resets the number of points of the lattice to n.
` String` `toString()`
Formats a string that contains information about the point set.

Methods inherited from class umontreal.iro.lecuyer.hups.Rank1Lattice
`addRandomShift, clearRandomShift, getAs, getCoordinate, 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

### KorobovLattice

```public KorobovLattice(int n,
int a,
int s)```
Instantiates a Korobov lattice point set with modulus n and multiplier a in dimension s.

### KorobovLattice

```public KorobovLattice(int n,
int a,
int s,
int t)```
Instantiates a shifted Korobov lattice point set with modulus n and multiplier a in dimension s. The first t coordinates of a standard Korobov lattice are dropped as described above. The case t = 0 corresponds to the standard Korobov lattice.

Method Detail

### setNumPoints

`public void setNumPoints(int n)`
Resets the number of points of the lattice to n. The values of s, a and t are unchanged.

Overrides:
`setNumPoints` in class `Rank1Lattice`

### getA

`public int getA()`
Returns the multiplier a of the lattice. (The original one before it is reset to a mod n).

### toString

`public String toString()`
Description copied from class: `PointSet`
Formats a string that contains information about the point set.

Overrides:
`toString` in class `Rank1Lattice`
Returns:
string representation of the point set information

SSJ
V. 2.6.

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