at.tuwien.ifs.somtoolbox.layers
Class AdaptiveCoordinatesVirtualLayer

java.lang.Object
  extended by at.tuwien.ifs.somtoolbox.layers.AdaptiveCoordinatesVirtualLayer

public class AdaptiveCoordinatesVirtualLayer
extends java.lang.Object

Version:
$Id: AdaptiveCoordinatesVirtualLayer.java 3869 2010-10-21 15:56:09Z mayer $
Author:
Rudolf Mayer

Field Summary
static java.lang.String FILE_EXTENSION
           
private  java.util.HashMap<java.lang.Double,java.lang.Integer> startedVirtualAdaptionIn
           
private  double[] thresholds
           
private  java.util.HashMap<java.lang.Double,AdaptiveCoordinatesVirtualUnit[][]> virtualUnits
           
private  int xSize
           
private  int ySize
           
 
Constructor Summary
AdaptiveCoordinatesVirtualLayer(int ySize, int xSize, double... acThreshold)
           
AdaptiveCoordinatesVirtualLayer(java.lang.String fileName)
           
 
Method Summary
 double[] getThresholds()
           
 AdaptiveCoordinatesVirtualUnit getVirtualUnit(double threshold, int x, int y)
           
 int getXSize()
           
 int getYSize()
           
protected  void printAdaptiveCoordinates()
           
 void setDistanceToWinner(int x, int y, double distanceToWinners)
           
 void updateUnitsVirtualSpacePos(Unit[][][] units, DistanceMetric metric, Unit winner, InputDatum input, int curIteration)
          Updates the virtual space position of all map units with respect to the input datum and the according winner unit.
 void writeToFile(java.lang.String fDir, java.lang.String fName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FILE_EXTENSION

public static final java.lang.String FILE_EXTENSION
See Also:
Constant Field Values

virtualUnits

private java.util.HashMap<java.lang.Double,AdaptiveCoordinatesVirtualUnit[][]> virtualUnits

startedVirtualAdaptionIn

private java.util.HashMap<java.lang.Double,java.lang.Integer> startedVirtualAdaptionIn

thresholds

private double[] thresholds

xSize

private int xSize

ySize

private int ySize
Constructor Detail

AdaptiveCoordinatesVirtualLayer

public AdaptiveCoordinatesVirtualLayer(int ySize,
                                       int xSize,
                                       double... acThreshold)

AdaptiveCoordinatesVirtualLayer

public AdaptiveCoordinatesVirtualLayer(java.lang.String fileName)
                                throws java.io.IOException,
                                       SOMToolboxException
Throws:
java.io.IOException
SOMToolboxException
Method Detail

updateUnitsVirtualSpacePos

public void updateUnitsVirtualSpacePos(Unit[][][] units,
                                       DistanceMetric metric,
                                       Unit winner,
                                       InputDatum input,
                                       int curIteration)
Updates the virtual space position of all map units with respect to the input datum and the according winner unit. See Adaptive Coordinates approach.

Parameters:
winner - the winner unit
input - the input datum
curIteration - the current iteration

getVirtualUnit

public AdaptiveCoordinatesVirtualUnit getVirtualUnit(double threshold,
                                                     int x,
                                                     int y)

getXSize

public int getXSize()

getYSize

public int getYSize()

writeToFile

public void writeToFile(java.lang.String fDir,
                        java.lang.String fName)
                 throws java.io.IOException
Throws:
java.io.IOException

printAdaptiveCoordinates

protected void printAdaptiveCoordinates()

setDistanceToWinner

public void setDistanceToWinner(int x,
                                int y,
                                double distanceToWinners)

getThresholds

public double[] getThresholds()
Returns:
Returns the adaptive coordinates thresholds used for this set of virtual layers.