appl.parallel.spmd.split
Class SplitMap1DVertical

java.lang.Object
  extended by appl.parallel.spmd.split.AbstractSplitMap
      extended by appl.parallel.spmd.split.SplitMap1DVertical
All Implemented Interfaces:
SplitMap, Serializable

public class SplitMap1DVertical
extends AbstractSplitMap
implements SplitMap

Responsible for splitting a 2D Area (e.g a WritableGrid) in a 1D fashion, which means in this case vertical (by cols). This is only a a virtual split (a map of a split). A neighborhood range can be specified to create partitions that overlap each other. This overlapping can be done in two different ways:

Inboxing(default):

Inboxing means, that the neighborhood area is not part of the calculation area.

Outboxing:
Outboxing means that the neighborhood area is part of the calculation area.

Note that this class is flexible. It may also be applied to one dimensional data structures like for example arrays. If u want to do this, simply choose one of the dimensions as 1.

Author:
Dominik Appl
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class appl.parallel.spmd.split.AbstractSplitMap
AbstractSplitMap.NeighborhoodBoxingMode
 
Field Summary
 
Fields inherited from class appl.parallel.spmd.split.AbstractSplitMap
boxingMode, globalBounds, globalHeight, globalWidth, IPs, neighborhoodRange, noOfPartitions, partitionCalculationBounds, partitionNeighborhoodBounds, weights
 
Constructor Summary
SplitMap1DVertical()
          needed for serialization
SplitMap1DVertical(int width, int height, int neighborhoodRange, int noOfPartitions, AbstractSplitMap.NeighborhoodBoxingMode boxingMode)
           
 
Method Summary
 String getDescription()
           
 int[] getNeighborsForPosition(int pos)
          returns an Array of neighbors for that position in the splitmap.
 void makeMap()
          Creates the map
 
Methods inherited from class appl.parallel.spmd.split.AbstractSplitMap
getCount, getGlobalBounds, getGlobalCalculationBounds, getIP, getLocalBounds, getLocalCalculationBounds, getLocalNeighborhoodBounds, getNeighborhoodRange, getPartitionBounds, getPartitionCalculationBounds, getPartitionNeighborhoodBounds, init, setIPs, setParameters, setWeights
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface appl.parallel.spmd.split.SplitMap
getCount, getGlobalBounds, getGlobalCalculationBounds, getIP, getLocalBounds, getLocalCalculationBounds, getLocalNeighborhoodBounds, getNeighborhoodRange, getPartitionBounds, getPartitionCalculationBounds, getPartitionNeighborhoodBounds, setIPs, setParameters, setWeights
 

Constructor Detail

SplitMap1DVertical

public SplitMap1DVertical(int width,
                          int height,
                          int neighborhoodRange,
                          int noOfPartitions,
                          AbstractSplitMap.NeighborhoodBoxingMode boxingMode)

SplitMap1DVertical

public SplitMap1DVertical()
needed for serialization

Method Detail

getDescription

public String getDescription()
Specified by:
getDescription in interface SplitMap
Specified by:
getDescription in class AbstractSplitMap
Returns:
a short description of the type of the Splitting

makeMap

public void makeMap()
Description copied from interface: SplitMap
Creates the map

Specified by:
makeMap in interface SplitMap
Specified by:
makeMap in class AbstractSplitMap

getNeighborsForPosition

public int[] getNeighborsForPosition(int pos)
Description copied from interface: SplitMap
returns an Array of neighbors for that position in the splitmap.

Specified by:
getNeighborsForPosition in interface SplitMap
Specified by:
getNeighborsForPosition in class AbstractSplitMap
Parameters:
pos - position in splitmap
Returns:
the array