uk.ac.leeds.ccg.andyt.grids.core
Class Grid2DSquareCellDoubleChunkMap

java.lang.Object
  extended by uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellChunkAbstract
      extended by uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellDoubleChunkAbstract
          extended by uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellDoubleChunkMap
All Implemented Interfaces:
java.io.Serializable

public class Grid2DSquareCellDoubleChunkMap
extends Grid2DSquareCellDoubleChunkAbstract
implements java.io.Serializable

Grid2DSquareCellDoubleChunkAbstract extension that stores cell values in a TDoubleObjectHashMap.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellChunkAbstract
Grid2DSquareCellChunkAbstract.ChunkCellID
 
Field Summary
 
Fields inherited from class uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellChunkAbstract
chunkID, grid2DSquareCell, isSwapUpToDate
 
Constructor Summary
  Grid2DSquareCellDoubleChunkMap()
          Default constructor.
protected Grid2DSquareCellDoubleChunkMap(Grid2DSquareCellDoubleChunkAbstract grid2DSquareCellDoubleChunk, Grid2DSquareCellAbstract.ChunkID chunkID, double defaultValue)
          Creates a new Grid2DSquareCellDoubleChunkMap
protected Grid2DSquareCellDoubleChunkMap(Grid2DSquareCellDouble grid2DSquareCellDouble, Grid2DSquareCellAbstract.ChunkID chunkID)
          Creates a new Grid2DSquareCellDoubleChunkMap
protected Grid2DSquareCellDoubleChunkMap(Grid2DSquareCellDouble grid2DSquareCellDouble, Grid2DSquareCellAbstract.ChunkID chunkID, double defaultValue)
          Creates a new Grid2DSquareCellDoubleChunkMap
 
Method Summary
protected  void clearData()
          Clears the data associated with this.
protected  double getArithmeticMeanDouble()
          Returns the Arithmetic Mean of all non noDataValues as a double.
protected  double getCell(Grid2DSquareCellChunkAbstract.ChunkCellID chunkCellID, double noDataValue)
          Returns the value of cell with CellID given by chunkCellID.
protected  double getCell(int chunkCellRowIndex, int chunkCellColIndex, double noDataValue)
          Returns the value at position given by: chunk cell row chunkCellRowIndex; chunk cell row chunkCellColIndex.
protected  gnu.trove.TDoubleObjectHashMap getData()
          Returns this.data TODO: This could be made public if a copy is returned!
protected  java.math.BigInteger getDiversityBigInteger()
          For returning the number of different values.
protected  double getMaxDouble()
          Returns the maximum of all non noDataValues as a double
protected  double getMedianDouble()
          For returning the median of all non noDataValues as a double
protected  double getMinDouble()
          Returns the minimum of all non noDataValues as a double.
protected  gnu.trove.TDoubleHashSet getModeTDoubleHashSet()
          For returning the mode of all non noDataValues as a TDoubleHashSet
protected  java.math.BigInteger getNonNoDataValueCountBigInteger()
          Returns the number of cells with non noDataValues as a BigInteger.
protected  double getStandardDeviationDouble()
          For returning the standard deviation of all non noDataValues as a double
protected  java.math.BigDecimal getSumBigDecimal()
          Returns the sum of all non noDataValues as a BigDecimal.
protected  void initCell(Grid2DSquareCellChunkAbstract.ChunkCellID chunkCellID, double valueToInitialise)
          Initialises the value of the chunk referred to by chunkCellID to valueToInitialise.
protected  void initCell(int chunkCellRowIndex, int chunkCellColIndex, double valueToInitialise)
          Initialises the value at position given by: chunk cell row chunkCellRowIndex; chunk cell column chunkCellColIndex.
protected  void initData()
          Initialises the data associated with this.
protected  IteratorAbstract iterator()
          Returns a Grid2DSquareCellDoubleChunkMapIterator for iterating over the cells in this.
protected  double setCell(Grid2DSquareCellChunkAbstract.ChunkCellID chunkCellID, double valueToSet, double noDataValue)
          Returns the value at position given by: chunk cell row chunkCellRowIndex; chunk cell column chunkCellColIndex and sets it to valueToSet
protected  double setCell(int chunkCellRowIndex, int chunkCellColIndex, double valueToSet, double noDataValue)
          Returns the value at position given by: chunk cell row chunkCellRowIndex; chunk cell column chunkCellColIndex and sets it to valueToSet
protected  double[] toArrayIncludingNoDataValues()
          Returns values in row major order as a double[].
protected  double[] toArrayNotIncludingNoDataValues()
          Returns non noDataValue in row major order as a double[].
 
Methods inherited from class uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellDoubleChunkAbstract
getArithmeticMeanBigDecimal, getArithmeticMeanBigDecimal, getArithmeticMeanDouble, getCell, getCellBigDecimal, getGrid2DSquareCellDouble, getGrid2DSquareCellDouble, getMaxDouble, getMedianDouble, getMinDouble, getModeTDoubleHashSet, getNonNoDataValueCountBigInteger, getNonNoDataValueCountInt, getNonNoDataValueCountInt, getStandardDeviationDouble, getSumBigDecimal, initCell, initCells, initCells, setCell, sort1, toArrayIncludingNoDataValues, toArrayNotIncludingNoDataValues
 
Methods inherited from class uk.ac.leeds.ccg.andyt.grids.core.Grid2DSquareCellChunkAbstract
getChunkID, getChunkID, getDescription, getGrid2DSquareCell, getGrid2DSquareCell, getIsSwapUpToDate, getIsSwapUpToDate, getName, getName, inChunk, inChunk, initChunkID, initGrid2DSquareCell, iterator, setIsSwapUpToDate, setIsSwapUpToDate, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Grid2DSquareCellDoubleChunkMap

public Grid2DSquareCellDoubleChunkMap()
Default constructor.


Grid2DSquareCellDoubleChunkMap

protected Grid2DSquareCellDoubleChunkMap(Grid2DSquareCellDouble grid2DSquareCellDouble,
                                         Grid2DSquareCellAbstract.ChunkID chunkID)
Creates a new Grid2DSquareCellDoubleChunkMap

Parameters:
grid2DSquareCellDouble -
chunkID - Default: default value to grid2DSquareCellDouble.getNoDataValue()

Grid2DSquareCellDoubleChunkMap

protected Grid2DSquareCellDoubleChunkMap(Grid2DSquareCellDouble grid2DSquareCellDouble,
                                         Grid2DSquareCellAbstract.ChunkID chunkID,
                                         double defaultValue)
Creates a new Grid2DSquareCellDoubleChunkMap

Parameters:
grid2DSquareCellDouble -
chunkID -
defaultValue -

Grid2DSquareCellDoubleChunkMap

protected Grid2DSquareCellDoubleChunkMap(Grid2DSquareCellDoubleChunkAbstract grid2DSquareCellDoubleChunk,
                                         Grid2DSquareCellAbstract.ChunkID chunkID,
                                         double defaultValue)
Creates a new Grid2DSquareCellDoubleChunkMap

Parameters:
grid2DSquareCellDoubleChunk -
chunkID - Default: default value to grid2DSquareCellDouble.getNoDataValue() TODO: Optimise for different types.
Method Detail

initData

protected void initData()
Initialises the data associated with this.

Specified by:
initData in class Grid2DSquareCellDoubleChunkAbstract

getData

protected gnu.trove.TDoubleObjectHashMap getData()
Returns this.data TODO: This could be made public if a copy is returned!


clearData

protected void clearData()
Clears the data associated with this.

Specified by:
clearData in class Grid2DSquareCellDoubleChunkAbstract

toArrayIncludingNoDataValues

protected double[] toArrayIncludingNoDataValues()
Returns values in row major order as a double[].

Overrides:
toArrayIncludingNoDataValues in class Grid2DSquareCellDoubleChunkAbstract

toArrayNotIncludingNoDataValues

protected double[] toArrayNotIncludingNoDataValues()
Returns non noDataValue in row major order as a double[].

Overrides:
toArrayNotIncludingNoDataValues in class Grid2DSquareCellDoubleChunkAbstract

getCell

protected double getCell(int chunkCellRowIndex,
                         int chunkCellColIndex,
                         double noDataValue)
Returns the value at position given by: chunk cell row chunkCellRowIndex; chunk cell row chunkCellColIndex.

Specified by:
getCell in class Grid2DSquareCellDoubleChunkAbstract
Parameters:
chunkCellRowIndex - the row index of the cell w.r.t. the origin of this chunk
chunkCellColIndex - the column index of the cell w.r.t. the origin of this chunk
noDataValue - the noDataValue of this.grid2DSquareCellDouble

getCell

protected double getCell(Grid2DSquareCellChunkAbstract.ChunkCellID chunkCellID,
                         double noDataValue)
Returns the value of cell with CellID given by chunkCellID.

Parameters:
chunkCellID - The chunk CellID of cell thats value is returned.
noDataValue - The noDataValue of this.grid2DSquareCellDouble.

initCell

protected void initCell(int chunkCellRowIndex,
                        int chunkCellColIndex,
                        double valueToInitialise)
Initialises the value at position given by: chunk cell row chunkCellRowIndex; chunk cell column chunkCellColIndex. Utility method for constructor.

Specified by:
initCell in class Grid2DSquareCellDoubleChunkAbstract
Parameters:
chunkCellRowIndex - the row index of the cell w.r.t. the origin of this chunk
chunkCellColIndex - the column index of the cell w.r.t. the origin of this chunk
valueToInitialise - the value with which the cell is initialised

initCell

protected void initCell(Grid2DSquareCellChunkAbstract.ChunkCellID chunkCellID,
                        double valueToInitialise)
Initialises the value of the chunk referred to by chunkCellID to valueToInitialise. Utility method for constructor.

Parameters:
chunkCellID - the Grid2DSquareCellDoubleChunkAbstract.ChunkCellID of the cell to be initialised
valueToInitialise - the value with which the cell is initialised

setCell

protected double setCell(int chunkCellRowIndex,
                         int chunkCellColIndex,
                         double valueToSet,
                         double noDataValue)
Returns the value at position given by: chunk cell row chunkCellRowIndex; chunk cell column chunkCellColIndex and sets it to valueToSet

Specified by:
setCell in class Grid2DSquareCellDoubleChunkAbstract
Parameters:
chunkCellRowIndex - the row index of the cell w.r.t. the origin of this chunk
chunkCellColIndex - the column index of the cell w.r.t. the origin of this chunk
valueToSet - the value the cell is to be set to
noDataValue - the noDataValue of this.grid2DSquareCellDouble

setCell

protected double setCell(Grid2DSquareCellChunkAbstract.ChunkCellID chunkCellID,
                         double valueToSet,
                         double noDataValue)
Returns the value at position given by: chunk cell row chunkCellRowIndex; chunk cell column chunkCellColIndex and sets it to valueToSet

Parameters:
chunkCellID - the Grid2DSquareCellDoubleChunkAbstract.ChunkCellID of the cell to be initialised
valueToSet - the value the cell is to be set to
noDataValue - the noDataValue of this.grid2DSquareCellDouble

getNonNoDataValueCountBigInteger

protected java.math.BigInteger getNonNoDataValueCountBigInteger()
Returns the number of cells with non noDataValues as a BigInteger.

Overrides:
getNonNoDataValueCountBigInteger in class Grid2DSquareCellDoubleChunkAbstract

getSumBigDecimal

protected java.math.BigDecimal getSumBigDecimal()
Returns the sum of all non noDataValues as a BigDecimal.

Overrides:
getSumBigDecimal in class Grid2DSquareCellDoubleChunkAbstract

getMinDouble

protected double getMinDouble()
Returns the minimum of all non noDataValues as a double.

Overrides:
getMinDouble in class Grid2DSquareCellDoubleChunkAbstract

getMaxDouble

protected double getMaxDouble()
Returns the maximum of all non noDataValues as a double

Overrides:
getMaxDouble in class Grid2DSquareCellDoubleChunkAbstract

getArithmeticMeanDouble

protected double getArithmeticMeanDouble()
Returns the Arithmetic Mean of all non noDataValues as a double. Using BigDecimal this should be as precise as possible with doubles.

Overrides:
getArithmeticMeanDouble in class Grid2DSquareCellDoubleChunkAbstract

getModeTDoubleHashSet

protected gnu.trove.TDoubleHashSet getModeTDoubleHashSet()
For returning the mode of all non noDataValues as a TDoubleHashSet

Overrides:
getModeTDoubleHashSet in class Grid2DSquareCellDoubleChunkAbstract

getMedianDouble

protected double getMedianDouble()
For returning the median of all non noDataValues as a double

Overrides:
getMedianDouble in class Grid2DSquareCellDoubleChunkAbstract

getStandardDeviationDouble

protected double getStandardDeviationDouble()
For returning the standard deviation of all non noDataValues as a double

Overrides:
getStandardDeviationDouble in class Grid2DSquareCellDoubleChunkAbstract

getDiversityBigInteger

protected java.math.BigInteger getDiversityBigInteger()
For returning the number of different values.


iterator

protected IteratorAbstract iterator()
Returns a Grid2DSquareCellDoubleChunkMapIterator for iterating over the cells in this.

Specified by:
iterator in class Grid2DSquareCellChunkAbstract