HALTON
Halton Datasets
HALTON
is a dataset directory which
contains points generated
by the Mdimensional Halton sequence.
The NDIMdimensional Halton sequence is derived from the 1dimensional
van der Corput sequence. Each dimension typically uses a different
prime number as the base of the calculation.
The HALTON_DATASET programs select elements of a "leaped"
subsequence of the Halton sequence. The subsequence elements are
indexed by a quantity called STEP, which starts at 0. The STEPth
subsequence element is simply the Halton sequence element with index
SEED(1:NDIM) + STEP * LEAP(1:NDIM).
The arguments that the user may set include:

NDIM, the spatial dimension,
default: NDIM = 1,
required: 1 <= NDIM;

STEP, the subsequence index.
default: STEP = 0,
required: 0 <= STEP.

SEED(1:NDIM), the Halton sequence index corresponding
to STEP = 0.
default: SEED(1:NDIM) = (0, 0, ... 0),
required: 0 <= SEED(1:NDIM);

LEAP(1:NDIM), the succesive jumps in the Halton sequence.
default: LEAP(1:NDIM) = (1, 1, ..., 1).
required: 1 <= LEAP(1:NDIM).

BASE(1:NDIM), the Halton bases.
default: BASE(1:NDIM) = (2, 3, 5, 7, 11... ),
required: 1 < BASE(1:NDIM).
In some cases, it is recommended that the initial portion of
the sequence be skipped over. A general suggestion is to
let STEP be the first power of 2 that is equal to or
greater than N, the number of points to generate.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Related Data and Programs:
HALTON_DATASET,
a C++ program which
creates a Halton sequence and writes it to a file.
PLOT_POINTS,
a FORTRAN90 program which
can create Encapsulated PostScript
images (EPS) of some of the two dimensional datasets.
TABLE,
a file format which
is used to store the data.
TABLE_TOP
a FORTRAN90 program which
can display pairwise
coordinate plots of higher dimensional datasets.
Example dataset:
A typical (but small) Halton dataset looks like this:
# halton_02_00010.txt
# created by HALTON_WRITE.F90
#
# File generated on July 11 2004 12:58:28.788 PM
#
# NDIM = 2
# N = 10
# STEP = 0
# SEED = 0 0
# LEAP = 1 1
# BASE = 2 3
# EPSILON (unit roundoff ) = 0.222045E15
#
0.000000 0.000000
0.500000 0.333333
0.250000 0.666667
0.750000 0.111111
0.125000 0.444444
0.625000 0.777778
0.375000 0.222222
0.875000 0.555556
0.062500 0.888889
0.562500 0.037037
Reference:

John Halton,
On the efficiency of certain quasirandom sequences of points
in evaluating multidimensional integrals,
Numerische Mathematik,
Volume 2, 1960, pages 8490.

John Halton, GB Smith,
Algorithm 247: RadicalInverse QuasiRandom Point Sequence,
Communications of the ACM,
Volume 7, 1964, pages 701702.

Ladislav Kocis, William Whiten,
Computational Investigations of LowDiscrepancy Sequences,
ACM Transactions on Mathematical Software,
Volume 23, Number 2, June 1997, pages 266294.
Datasets:
Datasets in M = 2 dimensions, with no skipping, include:

halton_02_00010.inp,
input to HALTON_DATASET to create the dataset.

halton_02_00010.txt,
M = 2, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_02_00010.inp2,
commands to make a picture of the dataset using
PLOT_POINTS.

halton_02_00010.png,
a PNG image of
the dataset.

halton_02_00100.inp,
input to HALTON_DATASET to create the dataset.

halton_02_00100.txt,
M = 2, N = 100, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_02_00100.inp2,
commands to make a picture of the dataset using
PLOT_POINTS.

halton_02_00100.png,
a PNG image of
the dataset.

halton_02_01000.inp,
input to HALTON_DATASET to create the dataset.

halton_02_01000.txt,
M = 2, N = 1000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_02_01000.inp2,
commands to make a picture of the dataset using
PLOT_POINTS.

halton_02_01000.png,
a PNG image of
the dataset.

halton_02_10000.txt,
M = 2, N = 10000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 2 dimensions, with power of 2 skipping, include:

halton_02_00010_a.txt,
M = 2, N = 10, STEP = 16, SEED = 0, LEAP = 1, BASE = default;

halton_02_00100_a.txt,
M = 2, N = 100, STEP = 128, SEED = 0, LEAP = 1, BASE = default;

halton_02_01000_a.txt,
M = 2, N = 1000, STEP = 1024, SEED = 0, LEAP = 1, BASE = default;

halton_02_10000_a.txt,
M = 2, N = 10000, STEP = 16384, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 3 dimensions, with no skipping, include:

halton_03_00010.txt,
M = 3, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_03_00100.txt,
M = 3, N = 100, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_03_01000.txt,
M = 3, N = 1000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_03_10000.txt,
M = 3, N = 10000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 4 dimensions, with no skipping, include:

halton_04_00010.txt,
M = 4, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_04_00100.txt,
M = 4, N = 100, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_04_01000.txt,
M = 4, N = 1000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_04_10000.txt,
M = 4, N = 10000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 5 dimensions, with no skipping, include:

halton_05_00010.txt,
M = 5, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_05_00100.txt,
M = 5, N = 100, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_05_01000.txt,
M = 5, N = 1000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_05_10000.txt,
M = 5, N = 10000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 6 dimensions, with no skipping:
(number of points in datasets were chosen to match the growth
in size of a 6D sparse grid based on Clenshaw Curtis points)

halton_06_00001.txt,
M = 6, N = 1, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_06_00013.txt,
M = 6, N = 13, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_06_00085.txt,
M = 6, N = 85, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_06_00389.txt,
M = 6, N = 389, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_06_01457.txt,
M = 6, N = 1457, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_06_04865.txt,
M = 6, N = 4865, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 7 dimensions, with no skipping include:

halton_07_00010.txt,
M = 7, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_07_00100.txt,
M = 7, N = 100, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_07_01000.txt,
M = 7, N = 1000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_07_10000.txt,
M = 7, N = 10000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 7 dimensions, with power of 2 skipping, include:

halton_07_00010_a.txt,
M = 7, N = 10, STEP = 16, SEED = 0, LEAP = 1, BASE = default;

halton_07_00100_a.txt,
M = 7, N = 100, STEP = 128, SEED = 0, LEAP = 1, BASE = default;

halton_07_01000_a.txt,
M = 7, N = 1000, STEP = 1024, SEED = 0, LEAP = 1, BASE = default;

halton_07_10000_a.txt,
M = 7, N = 10000, STEP = 16384, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 10 dimensions, with no skipping:
(number of points in datasets were chosen to match the growth
in size of a 10D sparse grid based on Clenshaw Curtis points)

halton_10_00001.txt,
M = 10, N = 1, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_10_00021.txt,
M = 10, N = 21, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_10_00221.txt,
M = 10, N = 221, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_10_01581.txt,
M = 10, N = 1581, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_10_08801.txt,
M = 10, N = 8801, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_10_41265.txt,
M = 10, N = 41265, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 16 dimensions, with no skipping include:

halton_16_00010.txt,
M = 16, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_16_00100.txt,
M = 16, N = 100, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_16_01000.txt,
M = 16, N = 1000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_16_10000.txt,
M = 16, N = 10000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 16 dimensions, with power of 2 skipping, include:

halton_16_00010_a.txt,
M = 16, N = 10, STEP = 16, SEED = 0, LEAP = 1, BASE = default;

halton_16_00100_a.txt,
M = 16, N = 100, STEP = 128, SEED = 0, LEAP = 1, BASE = default;

halton_16_01000_a.txt,
M = 16, N = 1000, STEP = 1024, SEED = 0, LEAP = 1, BASE = default;

halton_16_10000_a.txt,
M = 16, N = 10000, STEP = 16384, SEED = 0, LEAP = 1, BASE = default;
Datasets in M = 40 dimensions, with no skipping, include:

halton_40_00010.txt,
M = 40, N = 10, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_40_02000.inp,
input to HALTON_DATASET to create the dataset.

halton_40_02000.txt,
M = 40, N = 2000, STEP = 0, SEED = 0, LEAP = 1, BASE = default;

halton_40_02000_3940.txt,
Columns 39 and 40 of halton_40_02000.txt, extracted by
the COLUMNS program.

halton_40_02000_3940.inp2,
commands to make a picture of the 39th and 40th dimensions of
the dataset using
PLOT_POINTS.

halton_40_02000_3940.png,
a PNG image of
the dataset.
Datasets in M = 40 dimensions, a nonunit LEAP, include:

halton_40_02000_a.inp,
input to HALTON_DATASET to create the dataset.

halton_40_02000_a.txt,
M = 40, N = 2000, STEP = 0, SEED = 0, LEAP = 179, BASE = default;

halton_40_02000_3940_a.txt,
Columns 39 and 40 of halton_40_02000_a.txt, extracted by
the COLUMNS program.

halton_40_02000_3940_a.inp2,
commands to make a picture of the 39th and 40th dimensions of
the dataset using
PLOT_POINTS.

halton_40_02000_3940_a.png,
a PNG image of
the dataset.
You can go up one level to
the DATASETS directory.
Last revised on 01 August 2007.