SSJ
V. labo.

umontreal.iro.lecuyer.discrepancy
Class DiscShift1Lattice

java.lang.Object
  extended by umontreal.iro.lecuyer.discrepancy.Discrepancy
      extended by umontreal.iro.lecuyer.discrepancy.DiscShift1
          extended by umontreal.iro.lecuyer.discrepancy.DiscShift1Lattice

public class DiscShift1Lattice
extends DiscShift1

DiscShift1Lattice

This class computes the same discrepancy for randomly shifted points of a set L as given in eq. for class DiscShift1, but for the special case when the points are the nodes of an integration lattice[#!vHIC02a!#, eq. 16]. It is given by

[D(L)]2 = - 1 + $\displaystyle {\frac{{1}}{{n}}}$$\displaystyle \htsum_{{i=1}}^{n}$$\displaystyle \htprod_{{r=1}}^{s}$[1 + γr2B2(xir)],

where n is the number of points of L, s is the dimension of the points, xir is the r-th coordinate of point i, and the γr are arbitrary positive weights. B2(x) is the Bernoulli polynomials[#!mABR70a!#, chap. 23] of degree 2. For a 1-dimensional lattice, the discrepancy becomes

[D(L)]2 = [tex2html_wrap_indisplay227][tex2html_wrap_indisplay228]B2(xi).

Computing the discrepancy for a lattice is much faster than for a general point set.


Constructor Summary
DiscShift1Lattice()
          .
DiscShift1Lattice(double[][] points, int n, int s)
          .
DiscShift1Lattice(double[][] points, int n, int s, double[] gamma)
          .
DiscShift1Lattice(int n, int s, double[] gamma)
          .
DiscShift1Lattice(Rank1Lattice set)
          .
 
Method Summary
 double compute(double[][] points, int n, int s)
          .
 double compute(double[][] points, int n, int s, double[] gamma)
          .
 double compute(double[] T, int n)
          .
 
Methods inherited from class umontreal.iro.lecuyer.discrepancy.Discrepancy
compute, compute, compute, compute, compute, compute, compute, formatPoints, getDimension, getGamma, getName, getNumPoints, setGamma, setPoints, setPoints, sort, toArray, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DiscShift1Lattice

public DiscShift1Lattice(double[][] points,
                         int n,
                         int s)
. \begin{tabb}Constructor with the $n$\ points \texttt{points[i]} in $s$
 dimension...
 ...te of point \texttt{i}. Indices \texttt{i} and \texttt{j} start at 0.
 \end{tabb}


DiscShift1Lattice

public DiscShift1Lattice(double[][] points,
                         int n,
                         int s,
                         double[] gamma)
. \begin{tabb}Constructor with the $n$\ points \texttt{points[i]} in $s$
 dimension...
 ...te of point
 \texttt{i}. Indices \texttt{i} and \texttt{j} start at 0.
 \end{tabb}


DiscShift1Lattice

public DiscShift1Lattice(int n,
                         int s,
                         double[] gamma)
. \begin{tabb}The number of points is $n$, the dimension $s$, and the $s$
 weight f...
 ...j$]}, $j = 0, 1, \ldots, (s-1)$. The $n$
 points will be chosen later.
 \end{tabb}


DiscShift1Lattice

public DiscShift1Lattice(Rank1Lattice set)
. \begin{tabb}Constructor with the lattice \texttt{set}.
 All the points are copied in an internal array.
 \end{tabb}


DiscShift1Lattice

public DiscShift1Lattice()
. \begin{tabb}Empty constructor. The points and parameters \emph{must} be
 defined before calling methods of this class.
 \end{tabb}

Method Detail

compute

public double compute(double[][] points,
                      int n,
                      int s)
. \begin{tabb}Computes the discrepancy for the
 $s$-dimensional points of lattice \texttt{points}, containing $n$\ points.
 All weights $\gamma_r = 1$.
 \end{tabb}

Overrides:
compute in class DiscShift1

compute

public double compute(double[][] points,
                      int n,
                      int s,
                      double[] gamma)
. \begin{tabb}Computes the discrepancy for the
 $s$-dimensional points of lattice ...
 ...aining $n$\ points,
 with weights $\gamma_r = $\ \texttt{gamma[r-1]}.
 \end{tabb}

Overrides:
compute in class DiscShift1

compute

public double compute(double[] T,
                      int n)
. \begin{tabb}Computes the discrepancy
 for the 1-dimensional lattice of $n$\ points $T$.
 \end{tabb}

Overrides:
compute in class DiscShift1

SSJ
V. labo.

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