LatNet Builder Manual
2.0.1-11
Software Package for Constructing Highly Uniform Point Sets
|
LatNet Builder can handle two main point set types:
The switch between these two types of points can be operated using the option –set-type
which can take the following values:
–set-type lattice
to search for lattice rules; or–set-type net
to search for digital nets.Two types of lattice rules are supported by LatNet Builder:
The switch between these two types of lattices can be operated using the option –construction
which can take the following values:
–construction ordinary
to search for ordinary lattice rules; or–construction polynomial
to search for polynomial lattice rules.The option –size-parameter
can be used to specify the size (number of points) of a lattice rule.
Recall that for ordinary lattice rules, the modulus is exactly the number of points. In this case, we directly specify the modulus. For instance, to specify an ordinary lattice rule with 6977 points, use –size-parameter 6977
. It is also possible to specify the number of points as a power of a base. For instance –size-parameter 3^10
is also a valid expression.
For polynomial lattice rules, the number of points equals two to the power of the degree of its modulus. The number of points will thus always be a power of two. In the case of unilevel point sets, one can specify the number of points of the polynomial lattice rule to equal \(2^k\) with –size-parameter 2^k
. In this case, a predefined polynomial with degree \(k\) will be chosen as modulus for the lattice. All the predefined polynomials are irreducible so that they can be used with the fast-CBC exploration method. These polynomials are from Arash Partow .
Otherwise, one can also specify a custom polynomial modulus. The number of points will be two to the power of its degree. Polynomials are specified as a sequence of coefficients (ordered by increasing degree). For instance \( 1 + z^2 + z^5 \) can be specified by 101001
. Additionally, one can raise the polynomial to an integer power. For instance –size-parameter 01^8
tells LatNet Builder that the modulus of the polynomial lattice is \(z^8\). Note that it is always necessary to specify a custom modulus (as a power of a base modulus) when one constructs an embedded polynomial lattice rule.
To construct a specific lattice rule, for instance to evaluate its merit value or to extend it, one must specify its generating vector. LatNet Builder uses the following convention: a generating vector is described by a dash-separated list of integers or polynomials, depending on whether the lattice is ordinary or polynomial.
In the Command-Line Tutorial, any occurrence of genVec
or point-set-description
with –set-type lattice
can be replaced by such a list. For instance to specify an ordinary lattice with generating vector \((1, 2, 3, 5, 7, 11)\), replace genVec
with 1-2-3-5-7-11
.
Three constructions of digital nets are supported by LatNet Builder:
The switch between these three constructions can be operated using the option –construction
which can take the following values:
–construction sobol
to search for Sobol' nets;–construction polynomial
to search for polynomial lattice rules; or–construction explicit
to search for with digital nets with explicit generating matrices.Recall that the number of points of a digital net in base 2 is always a power of two. The option –size-parameter
can be used to specify the number of points of the digital net. For instance, to specify a net with \(2^8\) points, use –size-parameter 2^8
. For polynomial lattice rules, a default (irreducible) modulus corresponding to this number of points will be chosen; to choose a specific modulus, one can use –size-parameter
as they would specify a modulus for a polynomial lattice rule.
Constructing a specific digital net depends on its construction method. In the Command-Line Tutorial, any occurence of point-set-description
or net-description
can be replaced as follows:
0-1-1,1
stands for the Sobol' net in dimension 3 with direction numbers \(((0), (1), (1,1))\). Note that a dummy direction number equal to zero must be specified for the first coordinate.for explicit digital nets:
a dash-separated list of comma-separated lists of rows. Each comma-separated list correspond to a generating matrix. The rows are specified as a binary sequence without separators. For instance, 001,010,111-110,001,111-100,110,001
stands for the following generating matrices :
\[ \begin{pmatrix} 0 & 0 & 1 \\ 0 & 1 & 0 \\ 1 & 1 & 1 \end{pmatrix}, \begin{pmatrix} 1 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 1 & 1 \end{pmatrix}, \begin{pmatrix} 1 & 0 & 0 \\ 1 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix}. \]