Algorithm
Development Kit 1.0

algs.model.data.points
Class UnusualGenerator

java.lang.Object
  extended by algs.model.data.Generator<IPoint>
      extended by algs.model.data.points.UnusualGenerator

public class UnusualGenerator
extends Generator<IPoint>

Divide the size into n/4 and create uniform clusters of [0,1] way apart along the +/- X-axis and Y-axis. This data set tests the way how errors caused by floating point arithmetic can alter the result of an algorithm

Since:
1.0
Version:
1.0, 6/15/08
Author:
George Heineman

Field Summary
 double maxValue
          Store the max value.
 
Constructor Summary
UnusualGenerator(double maxValue)
          Construct the generator given a maximum distance between four clusters.
 
Method Summary
 Generator<IPoint> construct(java.lang.String[] args)
          Provide reflective behavior to construct instance of generator given an array of string arguments.
 IPoint[] generate(int size)
          Generate a set of |size| points all clustered into four regions, each located at the corners of a rectangle of width and height of maxValue.
 java.lang.String[] parameters()
          Declares the name of the parameters used when constructing the generator in order from left to right.
 
Methods inherited from class algs.model.data.Generator
toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

maxValue

public final double maxValue
Store the max value.

Constructor Detail

UnusualGenerator

public UnusualGenerator(double maxValue)
Construct the generator given a maximum distance between four clusters.

Parameters:
maxValue - the distance between clusters.
Method Detail

parameters

public java.lang.String[] parameters()
Description copied from class: Generator
Declares the name of the parameters used when constructing the generator in order from left to right.

Specified by:
parameters in class Generator<IPoint>

construct

public Generator<IPoint> construct(java.lang.String[] args)
Provide reflective behavior to construct instance of generator given an array of string arguments.

Specified by:
construct in class Generator<IPoint>

generate

public IPoint[] generate(int size)
Generate a set of |size| points all clustered into four regions, each located at the corners of a rectangle of width and height of maxValue.

Each cluster is going to be within a unit square [0,1] that is offset appropriately with maxValue to place these clusters at each corner.

Specified by:
generate in class Generator<IPoint>
Parameters:
size - number of points to generate.

Algorithm Development Kit 1.0

This code supports the Algorithms in a Nutshell book, published by O'Reilly Media, Inc. in November 2008. Please visit the book web page to learn of any changes to the code repository or to record a potential defect.