Class SingleStore<N extends Comparable<N>>

All Implemented Interfaces:
Group, Group.Additive<MatrixStore<N>>, NormedVectorSpace<MatrixStore<N>,N>, Operation, Operation.Addition<MatrixStore<N>>, Operation.Multiplication<MatrixStore<N>>, Operation.Subtraction<MatrixStore<N>>, ScalarOperation, ScalarOperation.Addition<MatrixStore<N>,N>, ScalarOperation.Division<MatrixStore<N>,N>, ScalarOperation.Multiplication<MatrixStore<N>,N>, ScalarOperation.Subtraction<MatrixStore<N>,N>, VectorSpace<MatrixStore<N>,N>, Matrix2D<N,MatrixStore<N>>, ElementsSupplier<N>, MatrixStore<N>, Access1D<N>, Access1D.Aggregatable<N>, Access1D.Sliceable<N>, Access1D.Visitable<N>, Access2D<N>, Access2D.Aggregatable<N>, Access2D.Collectable<N,TransformableRegion<N>>, Access2D.Sliceable<N>, Access2D.Visitable<N>, Operate2D<N,ElementsSupplier<N>>, Structure1D, Structure2D, Structure2D.Logical<Access2D<N>,MatrixStore<N>>, Structure2D.ReducibleTo1D<ElementsSupplier<N>>

final class SingleStore<N extends Comparable<N>> extends FactoryStore<N>
  • Field Details

    • myNumber

      private final N extends Comparable<N> myNumber
    • myValue

      private final double myValue
  • Constructor Details

  • Method Details

    • conjugate

      public MatrixStore<N> conjugate()
      Description copied from interface: MatrixStore
      Returns the conjugate transpose of this matrix. The conjugate transpose is also known as adjoint matrix, adjugate matrix, hermitian adjoint or hermitian transpose. (The conjugate matrix is the complex conjugate of each element. This NOT what is returned here!)
      See Also:
    • doubleValue

      public double doubleValue(int aRow, int aCol)
      Description copied from interface: Access2D
      Extracts one element of this matrix as a double.
      Parameters:
      aRow - A row index.
      aCol - A column index.
      Returns:
      One matrix element
    • doubleValue

      public double doubleValue(long anInd)
    • get

      public N get(int aRow, int aCol)
    • multiply

      public void multiply(Access1D<N> right, TransformableRegion<N> target)
    • multiply

      public MatrixStore<N> multiply(double scalar)
      Returns:
      this * scalarMultiplicand.
    • multiply

      public MatrixStore<N> multiply(MatrixStore<N> right)
      Parameters:
      right - The multiplicand
      Returns:
      this * multiplicand.
    • multiply

      public MatrixStore<N> multiply(N scalar)
      Returns:
      this * multiplicand.
    • multiplyBoth

      public N multiplyBoth(Access1D<N> leftAndRight)
      Description copied from interface: MatrixStore
      Assumes [leftAndRight] is a vector and will calulate [leftAndRight]H[this][leftAndRight]
      Specified by:
      multiplyBoth in interface MatrixStore<N extends Comparable<N>>
      Overrides:
      multiplyBoth in class AbstractStore<N extends Comparable<N>>
      Parameters:
      leftAndRight - The argument vector
      Returns:
      A scalar (extracted from the resulting 1 x 1 matrix)
    • premultiply

      public ElementsSupplier<N> premultiply(Access1D<N> left)
      Description copied from interface: MatrixStore
      The premultiply method differs from multiply in 3 ways:
      1. The matrix positions are swapped - left/right.
      2. It does NOT return a MatrixStore but an ElementsSupplier instead.
      3. It accepts an Access1D as the argument left matrix.
      Parameters:
      left - The left matrix
      Returns:
      The matrix product
    • supplyTo

      public void supplyTo(TransformableRegion<N> receiver)
    • toScalar

      public Scalar<N> toScalar(int row, int col)
      Description copied from interface: Matrix2D
      Extracts one element of this matrix as a Scalar.
      Parameters:
      row - A row index.
      col - A column index.
      Returns:
      One matrix element as a Scalar.
    • transpose

      public MatrixStore<N> transpose()
      Returns:
      A transposed matrix instance.