umontreal.iro.lecuyer.hups
Class CycleBasedPointSet
- java.lang.Object
-
- umontreal.iro.lecuyer.hups.PointSet
-
- umontreal.iro.lecuyer.hups.CycleBasedPointSet
-
- Direct Known Subclasses:
- CycleBasedPointSetBase2, LCGPointSet
public abstract class CycleBasedPointSet extends PointSet
This abstract class provides the basic structures for storing and manipulating a highly uniform point set defined by a set of cycles. The s-dimensional points are all the vectors of s successive values found in any of the cycles, from any starting point. Since this is defined for any positive integer s, the points effectively have an infinite number of dimensions. The number of points, n, is the sum of lengths of all the cycles. The cycles of the point set are simply stored as a list of arrays, where each array contains the successive values for a given cycle. By default, the values are stored in double.This structure is convenient for implementing recurrence-based point sets, where the point set in s dimensions is defined as the set of all vectors of s successive values of a periodic recurrence, from all its possible initial states.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description classCycleBasedPointSet.CycleBasedPointSetIterator
-
Constructor Summary
Constructors Constructor and Description CycleBasedPointSet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidaddRandomShift(int d1, int d2, RandomStream stream)Adds a random shift to all the points of the point set, using stream stream to generate the random numbers, for coordinates d1 to d2 - 1.voidclearRandomShift()Erases the current random shift, if any.java.lang.StringformatPoints()Same as invokingformatPoints(n, d) with n and d equal to the number of points and the dimension of this object, respectively.doublegetCoordinate(int i, int j)Returns ui, j, the coordinate j of the point i.intgetDimension()Returns the dimension (number of available coordinates) of the point set.PointSetIteratoriterator()Constructs and returns a point set iterator.java.lang.StringtoString()Formats a string that contains information about the point set.-
Methods inherited from class umontreal.iro.lecuyer.hups.PointSet
addRandomShift, addRandomShift, addRandomShift, formatPoints, formatPoints, formatPoints, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsBase, formatPointsNumbered, formatPointsNumbered, getNumPoints, getStream, randomize, randomize, randomize, randomize, randomize, setStream, unrandomize
-
-
-
-
Method Detail
-
getCoordinate
public double getCoordinate(int i, int j)Description copied from class:PointSetReturns ui, j, the coordinate j of the point i.- Specified by:
getCoordinatein classPointSet- Parameters:
i- index of the point to look forj- index of the coordinate to look for- Returns:
- the value of ui, j
-
addRandomShift
public void addRandomShift(int d1, int d2, RandomStream stream)Adds a random shift to all the points of the point set, using stream stream to generate the random numbers, for coordinates d1 to d2 - 1. This applies an addition modulo 1 of a single random point to all the points.- Overrides:
addRandomShiftin classPointSet- Parameters:
stream- Stream used to generate random numbers
-
clearRandomShift
public void clearRandomShift()
Description copied from class:PointSetErases the current random shift, if any.- Overrides:
clearRandomShiftin classPointSet
-
getDimension
public int getDimension()
Description copied from class:PointSetReturns the dimension (number of available coordinates) of the point set. If the dimension is actually infinite, Integer.MAX_VALUE is returned.- Overrides:
getDimensionin classPointSet- Returns:
- the dimension of the point set or Integer.MAX_VALUE if it is infinite
-
iterator
public PointSetIterator iterator()
Description copied from class:PointSetConstructs and returns a point set iterator. The default implementation returns an iterator that uses the methodgetCoordinate(i,j) to iterate over the points and coordinates, but subclasses can reimplement it for better efficiency.
-
toString
public java.lang.String toString()
Description copied from class:PointSetFormats a string that contains information about the point set.
-
formatPoints
public java.lang.String formatPoints()
Description copied from class:PointSetSame as invokingformatPoints(n, d) with n and d equal to the number of points and the dimension of this object, respectively.- Overrides:
formatPointsin classPointSet- Returns:
- string representation of all the points in the point set
-
-
DMelt 3.0 © DataMelt by jWork.ORG