Class AbstractMatrix1D

All Implemented Interfaces:
Serializable, Cloneable
Direct Known Subclasses:
DoubleMatrix1D, ObjectMatrix1D

public abstract class AbstractMatrix1D extends AbstractMatrix
Abstract base class for 1-d matrices (aka vectors) holding objects or primitive data types such as int, double, etc. First see the package summary and javadoc tree view to get the broad picture.

Note that this implementation is not synchronized.

Version:
1.0, 09/24/99
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected int
    the number of cells this matrix (view) has
    protected int
    the number of indexes between any two elements, i.e.
    protected int
    the index of the first element

    Fields inherited from class cern.colt.matrix.impl.AbstractMatrix

    isNoView

    Fields inherited from class cern.colt.PersistentObject

    serialVersionUID
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Makes this class non instantiable, but still let's others inherit from it.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected int
    _offset(int absRank)
    Returns the position of the given absolute rank within the (virtual or non-virtual) internal 1-dimensional array.
    protected int
    _rank(int rank)
    Returns the absolute rank of the given relative rank.
    protected void
    checkIndex(int index)
    Sanity check for operations requiring an index to be within bounds.
    protected void
    checkIndexes(int[] indexes)
    Checks whether indexes are legal and throws an exception, if necessary.
    protected void
    checkRange(int index, int width)
    Checks whether the receiver contains the given range and throws an exception, if necessary.
    protected void
    checkSize(double[] B)
    Sanity check for operations requiring two matrices with the same size.
    void
    Sanity check for operations requiring two matrices with the same size.
    protected int
    index(int rank)
    Returns the position of the element with the given relative rank within the (virtual or non-virtual) internal 1-dimensional array.
    protected void
    setUp(int size)
    Sets up a matrix with a given number of cells.
    protected void
    setUp(int size, int zero, int stride)
    Sets up a matrix with the given parameters.
    int
    Returns the number of cells.
    protected int
    stride(int dimension)
    Returns the stride of the given dimension (axis, rank).
    Returns a string representation of the receiver's shape.
    Self modifying version of viewFlip().
    vPart(int index, int width)
    Self modifying version of viewPart().
    vStrides(int stride)
    Self modifying version of viewStrides().

    Methods inherited from class cern.colt.matrix.impl.AbstractMatrix

    ensureCapacity, isView, trimToSize

    Methods inherited from class cern.colt.PersistentObject

    clone

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • size

      protected int size
      the number of cells this matrix (view) has
    • zero

      protected int zero
      the index of the first element
    • stride

      protected int stride
      the number of indexes between any two elements, i.e. index(i+1) - index(i).
  • Constructor Details

    • AbstractMatrix1D

      protected AbstractMatrix1D()
      Makes this class non instantiable, but still let's others inherit from it.
  • Method Details

    • _offset

      protected int _offset(int absRank)
      Returns the position of the given absolute rank within the (virtual or non-virtual) internal 1-dimensional array. Default implementation. Override, if necessary.
      Parameters:
      rank - the absolute rank of the element.
      Returns:
      the position.
    • _rank

      protected int _rank(int rank)
      Returns the absolute rank of the given relative rank.
      Parameters:
      rank - the relative rank of the element.
      Returns:
      the absolute rank of the element.
    • checkIndex

      protected void checkIndex(int index)
      Sanity check for operations requiring an index to be within bounds.
      Throws:
      IndexOutOfBoundsException - if index invalid input: '<' 0 || index >= size().
    • checkIndexes

      protected void checkIndexes(int[] indexes)
      Checks whether indexes are legal and throws an exception, if necessary.
      Throws:
      IndexOutOfBoundsException - if ! (0 invalid input: '<'= indexes[i] invalid input: '<' size()) for any i=0..indexes.length()-1.
    • checkRange

      protected void checkRange(int index, int width)
      Checks whether the receiver contains the given range and throws an exception, if necessary.
      Throws:
      IndexOutOfBoundsException - if indexinvalid input: '<'0 || index+width>size().
    • checkSize

      protected void checkSize(double[] B)
      Sanity check for operations requiring two matrices with the same size.
      Throws:
      IllegalArgumentException - if size() != B.size().
    • checkSize

      public void checkSize(AbstractMatrix1D B)
      Sanity check for operations requiring two matrices with the same size.
      Throws:
      IllegalArgumentException - if size() != B.size().
    • index

      protected int index(int rank)
      Returns the position of the element with the given relative rank within the (virtual or non-virtual) internal 1-dimensional array. You may want to override this method for performance.
      Parameters:
      rank - the rank of the element.
    • setUp

      protected void setUp(int size)
      Sets up a matrix with a given number of cells.
      Parameters:
      size - the number of cells the matrix shall have.
      Throws:
      IllegalArgumentException - if sizeinvalid input: '<'0.
    • setUp

      protected void setUp(int size, int zero, int stride)
      Sets up a matrix with the given parameters.
      Parameters:
      size - the number of elements the matrix shall have.
      zero - the index of the first element.
      stride - the number of indexes between any two elements, i.e. index(i+1)-index(i).
      Throws:
      IllegalArgumentException - if sizeinvalid input: '<'0.
    • size

      public int size()
      Returns the number of cells.
      Specified by:
      size in class AbstractMatrix
    • stride

      protected int stride(int dimension)
      Returns the stride of the given dimension (axis, rank).
      Returns:
      the stride in the given dimension.
      Throws:
      IllegalArgumentException - if dimension != 0.
    • toStringShort

      public String toStringShort()
      Returns a string representation of the receiver's shape.
    • vFlip

      protected AbstractMatrix1D vFlip()
      Self modifying version of viewFlip(). What used to be index 0 is now index size()-1, ..., what used to be index size()-1 is now index 0.
    • vPart

      protected AbstractMatrix1D vPart(int index, int width)
      Self modifying version of viewPart().
      Throws:
      IndexOutOfBoundsException - if indexinvalid input: '<'0 || index+width>size().
    • vStrides

      protected AbstractMatrix1D vStrides(int stride)
      Self modifying version of viewStrides().
      Throws:
      IndexOutOfBoundsException - if stride invalid input: '<'= 0.