SSJ
V. labo.

umontreal.iro.lecuyer.discrepancy
Class DiscShiftBaker1Lattice

java.lang.Object
  extended by umontreal.iro.lecuyer.discrepancy.Discrepancy
      extended by umontreal.iro.lecuyer.discrepancy.DiscShiftBaker1
          extended by umontreal.iro.lecuyer.discrepancy.DiscShiftBaker1Lattice

public class DiscShiftBaker1Lattice
extends DiscShiftBaker1

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

[D(L)]2 = -1 + $\displaystyle {\frac{{1}}{{n}}}$i=1nr=1s[1 - $\displaystyle {\frac{{4\gamma_r^2}}{{3}}}$[B4(xir) - B4({xir -1/2})] -  
     *-1cm$\displaystyle {\frac{{\gamma_r^4}}{{9}}}$[7B4(xir) - 2B4({xir -1/2})] - $\displaystyle {\frac{{16\gamma_r^4}}{{45}}}$[B6(xir) - B6({xir -1/2})]],  

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. The Bα(x) are the Bernoulli polynomials of degree α. The discrepancy is much faster to calculate for a lattice than for a general point set. For a 1-dimensional lattice, the discrepancy becomes
[D(L)]2 = - [tex2html_wrap_indisplay274]∑i=1n[$\displaystyle {\frac{{4\gamma^2}}{{3}}}$[B4(xi) - B4({xi -1/2})] +  
     *-1cm$\displaystyle {\frac{{\gamma^4}}{{9}}}$[7B4(xi) - 2B4({xi -1/2})] + $\displaystyle {\frac{{16\gamma^4}}{{45}}}$[B6(xi) - B6({xi -1/2})]],  


Constructor Summary
DiscShiftBaker1Lattice()
          Empty constructor.
DiscShiftBaker1Lattice(double[][] points, int n, int s)
          Constructor with the n points points[i] in s dimensions, and with all weights γr = 1.
DiscShiftBaker1Lattice(double[][] points, int n, int s, double[] gamma)
          Constructor with the n points points[i] in s dimensions, with weights γr = gamma[r-1].
DiscShiftBaker1Lattice(int n, int s, double[] gamma)
          The number of points is n, the dimension s, and the s weight factors are gamma[r], r = 0, 1,…,(s - 1).
DiscShiftBaker1Lattice(Rank1Lattice set)
          Constructor with the point set set.
 
Method Summary
 double compute(double[][] points, int n, int s)
          Computes the discrepancy for the s-dimensional points of lattice points, containing n points.
 double compute(double[][] points, int n, int s, double[] gamma)
          Computes the discrepancy for the s-dimensional points of lattice points, containing n points, with weights γr = gamma[r-1].
 double compute(double[] T, int n)
          Computes the discrepancy with weight γ = 1 for the 1-dimensional lattice of n points T.
 double compute(double[] T, int n, double gamma)
          Computes the discrepancy for the 1-dimensional lattice of n points T, with weight γ = gamma.
 
Methods inherited from class umontreal.iro.lecuyer.discrepancy.Discrepancy
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

DiscShiftBaker1Lattice

public DiscShiftBaker1Lattice(double[][] points,
                              int n,
                              int s)
Constructor with the n points points[i] in s dimensions, and with all weights γr = 1. points[i][r] is the r-th coordinate of point i. Indices i and r start at 0.


DiscShiftBaker1Lattice

public DiscShiftBaker1Lattice(double[][] points,
                              int n,
                              int s,
                              double[] gamma)
Constructor with the n points points[i] in s dimensions, with weights γr = gamma[r-1]. points[i][r] is the r-th coordinate of point i. Indices i and r start at 0.


DiscShiftBaker1Lattice

public DiscShiftBaker1Lattice(int n,
                              int s,
                              double[] gamma)
The number of points is n, the dimension s, and the s weight factors are gamma[r], r = 0, 1,…,(s - 1). The n points will be chosen later.


DiscShiftBaker1Lattice

public DiscShiftBaker1Lattice(Rank1Lattice set)
Constructor with the point set set. All the points are copied in an internal array.


DiscShiftBaker1Lattice

public DiscShiftBaker1Lattice()
Empty constructor. The points and parameters must be defined before calling methods of this class.

Method Detail

compute

public double compute(double[][] points,
                      int n,
                      int s)
Computes the discrepancy for the s-dimensional points of lattice points, containing n points. All weights γr = 1.

Overrides:
compute in class DiscShiftBaker1

compute

public double compute(double[][] points,
                      int n,
                      int s,
                      double[] gamma)
Computes the discrepancy for the s-dimensional points of lattice points, containing n points, with weights γr = gamma[r-1].

Overrides:
compute in class DiscShiftBaker1

compute

public double compute(double[] T,
                      int n)
Computes the discrepancy with weight γ = 1 for the 1-dimensional lattice of n points T.

Overrides:
compute in class DiscShiftBaker1

compute

public double compute(double[] T,
                      int n,
                      double gamma)
Computes the discrepancy for the 1-dimensional lattice of n points T, with weight γ = gamma.

Overrides:
compute in class DiscShiftBaker1

SSJ
V. labo.

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