Module ojalgo
Package org.ojalgo.matrix.store
Class DiagonalStore<N extends Comparable<N>,D extends Access1D<?>>
java.lang.Object
org.ojalgo.matrix.store.DiagonalStore<N,D>
- 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.Collectable<N,,Mutate1D> 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>>
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classDiagonalStore.Builder<N extends Comparable<N>,D extends Access1D<?>> Nested classes/interfaces inherited from interface org.ojalgo.structure.Access2D
Access2D.Aggregatable<N extends Comparable<N>>, Access2D.Collectable<N extends Comparable<N>,R extends Mutate2D>, Access2D.ColumnView<N extends Comparable<N>>, Access2D.ElementView<N extends Comparable<N>>, Access2D.RowView<N extends Comparable<N>>, Access2D.SelectionView<N extends Comparable<N>>, Access2D.Sliceable<N extends Comparable<N>>, Access2D.Visitable<N extends Comparable<N>> Nested classes/interfaces inherited from interface org.ojalgo.algebra.Group
Group.Additive<T>, Group.Multiplicative<T>Nested classes/interfaces inherited from interface org.ojalgo.algebra.Operation
Operation.Addition<T>, Operation.Division<T>, Operation.Multiplication<T>, Operation.Subtraction<T>Nested classes/interfaces inherited from interface org.ojalgo.algebra.ScalarOperation
ScalarOperation.Addition<T,N extends Comparable<N>>, ScalarOperation.Division<T, N extends Comparable<N>>, ScalarOperation.Multiplication<T, N extends Comparable<N>>, ScalarOperation.Subtraction<T, N extends Comparable<N>> Nested classes/interfaces inherited from interface org.ojalgo.structure.Structure1D
Structure1D.BasicMapper<T>, Structure1D.IndexMapper<T>, Structure1D.IntIndex, Structure1D.Logical<S extends Structure1D,B extends Structure1D.Logical<S, B>>, Structure1D.LongIndex, Structure1D.LoopCallback Nested classes/interfaces inherited from interface org.ojalgo.structure.Structure2D
Structure2D.IntRowColumn, Structure2D.Logical<S extends Structure2D,B extends Structure2D.Logical<S, B>>, Structure2D.LongRowColumn, Structure2D.ReducibleTo1D<R extends Structure1D>, Structure2D.Reshapable, Structure2D.RowColumnKey<R, C>, Structure2D.RowColumnMapper<R, C> -
Method Summary
Modifier and TypeMethodDescriptionstatic <N extends Comparable<N>,D extends Access1D<?>>
DiagonalStore.Builder<N, D> builder(PhysicalStore.Factory<N, ?> factory, D mainDiagonal) longOnly need to implement if the structure may contain more than Integer.MAX_VALUE elements.longOnly need to implement if the structure may contain more than Integer.MAX_VALUE elements.doubledoubleValue(int row, int col) Extracts one element of this matrix as a double.booleanintfirstInColumn(int col) The default value is simply0, and if all elements are zeros thenthis.countRows().intfirstInRow(int row) The default value is simply0, and if all elements are zeros thenthis.countColumns().get(int row, int col) final intintfinal intfinal intfinal intinthashCode()protected final booleanintlimitOfColumn(int col) The default value is simplythis.countRows(), and if all elements are zeros then0.intlimitOfRow(int row) The default value is simplythis.countColumns(), and if all elements are zeros then0.multiplyBoth(Access1D<N> leftAndRight) Assumes [leftAndRight] is a vector and will calulate [leftAndRight]H[this][leftAndRight]final PhysicalStore.Factory<N, ?> physical()voidsupplyMainDiagonalTo(double[] receiver) voidsupplySubdiagonalTo(double[] receiver) voidsupplySuperdiagonalTo(double[] receiver) voidsupplyTo(TransformableRegion<N> consumer) toScalar(int row, int col) Extracts one element of this matrix as a Scalar.final StringtoString()static DiagonalStore<Double, Primitive1D> wrap(double... mainDiagonal) Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.ojalgo.structure.Access1D
asCollectable1D, asKeyed1D, asList, axpy, dot, select, supplyTo, toList, toRawCopy1DMethods inherited from interface org.ojalgo.structure.Access1D.Collectable
collectMethods inherited from interface org.ojalgo.structure.Access1D.Visitable
visitAll, visitRangeMethods inherited from interface org.ojalgo.structure.Access2D
asCollectable2D, asKeyed2D, byteValue, byteValue, byteValue, byteValue, columns, doubleValue, doubleValue, doubleValue, elements, floatValue, floatValue, floatValue, floatValue, get, intValue, intValue, intValue, intValue, longValue, longValue, longValue, longValue, nonzeros, rows, shortValue, shortValue, shortValue, shortValue, toRawCopy2DMethods inherited from interface org.ojalgo.structure.Access2D.Aggregatable
aggregateColumn, aggregateDiagonal, aggregateRow, reduceColumns, reduceRowsMethods inherited from interface org.ojalgo.structure.Access2D.Collectable
collectMethods inherited from interface org.ojalgo.structure.Access2D.Sliceable
sliceColumn, sliceDiagonal, sliceRowMethods inherited from interface org.ojalgo.structure.Access2D.Visitable
visitColumn, visitColumn, visitDiagonal, visitDiagonal, visitOne, visitRow, visitRowMethods inherited from interface org.ojalgo.matrix.store.ElementsSupplier
onAny, onColumns, onColumns, onMatching, onMatching, onRows, onRowsMethods inherited from interface org.ojalgo.matrix.store.MatrixStore
above, above, above, add, add, add, aggregateAll, aggregateColumn, aggregateDiagonal, aggregateRange, aggregateRow, below, below, below, bidiagonal, column, column, columns, columns, conjugate, copy, diagonal, diagonally, divide, divide, equals, get, get, hermitian, hessenberg, indexOfLargest, isHermitian, isNormal, isSmall, isSmall, left, left, left, limits, logical, multiply, multiply, multiply, multiply, negate, norm, offsets, onAll, operate, power, premultiply, reduceColumns, reduceRows, repeat, right, right, right, row, row, rows, rows, select, select, signum, sliceColumn, sliceDiagonal, sliceRange, sliceRow, subtract, subtract, subtract, superimpose, superimpose, supplyTo, symmetric, transpose, triangular, tridiagonal, visitOneMethods inherited from interface org.ojalgo.structure.Operate2D
onAll, onAll, onAll, onAll, onAll, onCompatible, onCompatibleMethods inherited from interface org.ojalgo.algebra.ScalarOperation.Addition
addMethods inherited from interface org.ojalgo.algebra.ScalarOperation.Division
divideMethods inherited from interface org.ojalgo.algebra.ScalarOperation.Multiplication
multiplyMethods inherited from interface org.ojalgo.algebra.ScalarOperation.Subtraction
subtract
-
Method Details
-
builder
public static <N extends Comparable<N>,D extends Access1D<?>> DiagonalStore.Builder<N,D> builder(PhysicalStore.Factory<N, ?> factory, D mainDiagonal) -
wrap
-
doubleValue
public double doubleValue(int row, int col) Description copied from interface:Access2DExtracts one element of this matrix as a double.- Parameters:
row- A row index.col- A column index.- Returns:
- One matrix element
-
firstInColumn
public int firstInColumn(int col) Description copied from interface:Structure2DThe default value is simply0, and if all elements are zeros thenthis.countRows().- Parameters:
col- The column index- Returns:
- The row index of the first non-zero element in the specified column
-
firstInRow
public int firstInRow(int row) Description copied from interface:Structure2DThe default value is simply0, and if all elements are zeros thenthis.countColumns().- Returns:
- The column index of the first non-zero element in the specified row
-
get
-
getDimension
public int getDimension()- Returns:
- The main diagonal length
-
getMainDiagonal
-
getSubdiagonal
-
getSuperdiagonal
-
limitOfColumn
public int limitOfColumn(int col) Description copied from interface:Structure2DThe default value is simplythis.countRows(), and if all elements are zeros then0.- Specified by:
limitOfColumnin interfaceStructure2D- Returns:
- The row index of the first zero element, after all non-zeros, in the specified column (index of the last non-zero + 1)
-
limitOfRow
public int limitOfRow(int row) Description copied from interface:Structure2DThe default value is simplythis.countColumns(), and if all elements are zeros then0.- Specified by:
limitOfRowin interfaceStructure2D- Returns:
- The column index of the first zero element, after all non-zeros, in the specified row (index of the last non-zero + 1)
-
supplyMainDiagonalTo
public void supplyMainDiagonalTo(double[] receiver) -
supplySubdiagonalTo
public void supplySubdiagonalTo(double[] receiver) -
supplySuperdiagonalTo
public void supplySuperdiagonalTo(double[] receiver) -
supplyTo
-
toScalar
Description copied from interface:Matrix2DExtracts one element of this matrix as a Scalar.- Parameters:
row- A row index.col- A column index.- Returns:
- One matrix element as a Scalar.
-
equals
-
hashCode
public int hashCode() -
physical
-
countColumns
public long countColumns()Description copied from interface:Structure2DOnly need to implement if the structure may contain more than Integer.MAX_VALUE elements.- Specified by:
countColumnsin interfaceStructure2D- Returns:
- The number of columns
-
countRows
public long countRows()Description copied from interface:Structure2DOnly need to implement if the structure may contain more than Integer.MAX_VALUE elements.- Specified by:
countRowsin interfaceStructure2D- Returns:
- The number of rows
-
getColDim
public final int getColDim()- Specified by:
getColDimin interfaceStructure2D- Returns:
- The number of columns
-
getMaxDim
public final int getMaxDim()- Specified by:
getMaxDimin interfaceStructure2D
-
getMinDim
public final int getMinDim()- Specified by:
getMinDimin interfaceStructure2D
-
getRowDim
public final int getRowDim()- Specified by:
getRowDimin interfaceStructure2D- Returns:
- The number of rows
-
multiplyBoth
Description copied from interface:MatrixStoreAssumes [leftAndRight] is a vector and will calulate [leftAndRight]H[this][leftAndRight]- Specified by:
multiplyBothin interfaceMatrixStore<N extends Comparable<N>>- Parameters:
leftAndRight- The argument vector- Returns:
- A scalar (extracted from the resulting 1 x 1 matrix)
-
toString
-
isPrimitive
protected final boolean isPrimitive()
-