Interface PhysicalStore<N extends java.lang.Comparable<N>>
-
- All Superinterfaces:
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>,java.util.function.Consumer<Access2D<?>>,ElementsSupplier<N>,Group,Group.Additive<MatrixStore<N>>,Matrix2D<N,MatrixStore<N>>,MatrixStore<N>,Mutate1D,Mutate1D.Fillable<N>,Mutate1D.Modifiable<N>,Mutate2D,Mutate2D.Exchangeable,Mutate2D.Fillable<N>,Mutate2D.Modifiable<N>,Mutate2D.ModifiableReceiver<N>,Mutate2D.Receiver<N>,NormedVectorSpace<MatrixStore<N>,N>,Operate2D<N,ElementsSupplier<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>,Structure1D,Structure2D,Structure2D.Logical<Access2D<N>,MatrixStore<N>>,Structure2D.ReducibleTo1D<ElementsSupplier<N>>,TransformableRegion<N>,VectorSpace<MatrixStore<N>,N>
- All Known Subinterfaces:
DecompositionStore<N>
- All Known Implementing Classes:
GenericStore,R032Store,R064Store,RawStore
public interface PhysicalStore<N extends java.lang.Comparable<N>> extends MatrixStore<N>, TransformableRegion<N>, Access1D.Collectable<N,Mutate1D>
PhysicalStore:s, as opposed to MatrixStore:s, are mutable. The vast majority of the methods defined here return void and none return PhysicalStore or MatrixStore.
This interface and its implementations are central to ojAlgo.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfacePhysicalStore.Factory<N extends java.lang.Comparable<N>,I extends PhysicalStore<N> & Factory2D.Builder<I>>-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Access2D
Access2D.Aggregatable<N extends java.lang.Comparable<N>>, Access2D.Collectable<N extends java.lang.Comparable<N>,R extends Mutate2D>, Access2D.ColumnView<N extends java.lang.Comparable<N>>, Access2D.ElementView<N extends java.lang.Comparable<N>>, Access2D.RowView<N extends java.lang.Comparable<N>>, Access2D.SelectionView<N extends java.lang.Comparable<N>>, Access2D.Sliceable<N extends java.lang.Comparable<N>>, Access2D.Visitable<N extends java.lang.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.structure.Mutate1D
Mutate1D.Fillable<N extends java.lang.Comparable<N>>, Mutate1D.Mixable<N extends java.lang.Comparable<N>>, Mutate1D.Modifiable<N extends java.lang.Comparable<N>>, Mutate1D.ModifiableReceiver<N extends java.lang.Comparable<N>>, Mutate1D.Receiver<N extends java.lang.Comparable<N>>, Mutate1D.Sortable
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Mutate2D
Mutate2D.Exchangeable, Mutate2D.Fillable<N extends java.lang.Comparable<N>>, Mutate2D.Mixable<N extends java.lang.Comparable<N>>, Mutate2D.Modifiable<N extends java.lang.Comparable<N>>, Mutate2D.ModifiableReceiver<N extends java.lang.Comparable<N>>, Mutate2D.Receiver<N extends java.lang.Comparable<N>>
-
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 java.lang.Comparable<N>>, ScalarOperation.Division<T,N extends java.lang.Comparable<N>>, ScalarOperation.Multiplication<T,N extends java.lang.Comparable<N>>, ScalarOperation.Subtraction<T,N extends java.lang.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>
-
Nested classes/interfaces inherited from interface org.ojalgo.matrix.store.TransformableRegion
TransformableRegion.FillByMultiplying<N extends java.lang.Comparable<N>>
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.util.List<N>asList()An (immutable)Listdelegating to thisAccess1D.default intindexOfLargestInColumn(int row, int col)default intindexOfLargestInRow(int row, int col)default intindexOfLargestOnDiagonal(int row, int col)default voidmodifyAny(Transformation2D<N> modifier)voidsubstituteBackwards(Access2D<N> body, boolean unitDiagonal, boolean conjugated, boolean hermitian)Will solve the equation system [A][X]=[B] where: [body][this]=[this] is [A][X]=[B] ("this" is the right hand side, and it will be overwritten with the solution). [A] is upper/right triangularvoidsubstituteForwards(Access2D<N> body, boolean unitDiagonal, boolean conjugated, boolean identity)Will solve the equation system [A][X]=[B] where: [body][this]=[this] is [A][X]=[B] ("this" is the right hand side, and it will be overwritten with the solution). [A] is lower/left triangulardefault voidsupplyTo(TransformableRegion<N> receiver)voidtransformLeft(Householder<N> transformation, int firstColumn)voidtransformLeft(Rotation<N> transformation)As inMatrixStore.premultiply(Access1D)where the left/parameter matrix is a plane rotation.voidtransformRight(Householder<N> transformation, int firstRow)voidtransformRight(Rotation<N> transformation)As inMatrixStore.multiply(MatrixStore)where the right/parameter matrix is a plane rotation.-
Methods inherited from interface org.ojalgo.structure.Access1D
asCollectable1D, asKeyed1D, axpy, dot, select, supplyTo, toList, toRawCopy1D
-
Methods inherited from interface org.ojalgo.structure.Access1D.Collectable
collect
-
Methods inherited from interface org.ojalgo.structure.Access1D.Visitable
visitAll, visitRange
-
Methods 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, toRawCopy2D
-
Methods inherited from interface org.ojalgo.structure.Access2D.Aggregatable
aggregateColumn, aggregateDiagonal, aggregateRow, reduceColumns, reduceRows
-
Methods inherited from interface org.ojalgo.structure.Access2D.Collectable
collect
-
Methods inherited from interface org.ojalgo.structure.Access2D.Sliceable
sliceColumn, sliceDiagonal, sliceRow
-
Methods inherited from interface org.ojalgo.structure.Access2D.Visitable
visitColumn, visitColumn, visitDiagonal, visitDiagonal, visitOne, visitRow, visitRow
-
Methods inherited from interface org.ojalgo.matrix.store.ElementsSupplier
onAny, onColumns, onColumns, onMatching, onMatching, onRows, onRows
-
Methods 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, doubleValue, equals, get, get, get, hermitian, hessenberg, indexOfLargest, isHermitian, isNormal, isSmall, isSmall, left, left, left, limits, logical, multiply, multiply, multiply, multiply, multiplyBoth, negate, norm, offsets, onAll, operate, physical, 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, toScalar, transpose, triangular, tridiagonal, visitOne
-
Methods inherited from interface org.ojalgo.structure.Mutate1D.Fillable
fillAll, fillAll, fillCompatible, fillMatching, fillMatching, fillMatching, fillMatching, fillRange, fillRange
-
Methods inherited from interface org.ojalgo.structure.Mutate1D.Modifiable
add, add, add, add, add, modifyAll, modifyMatching, modifyMatching, modifyRange
-
Methods inherited from interface org.ojalgo.structure.Mutate2D
set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set
-
Methods inherited from interface org.ojalgo.structure.Mutate2D.Fillable
fillColumn, fillColumn, fillColumn, fillColumn, fillColumn, fillColumn, fillCompatible, fillDiagonal, fillDiagonal, fillDiagonal, fillDiagonal, fillDiagonal, fillDiagonal, fillRow, fillRow, fillRow, fillRow, fillRow, fillRow
-
Methods inherited from interface org.ojalgo.structure.Mutate2D.Modifiable
add, add, add, add, add, add, add, add, add, add, add, add, add, add, add, add, modifyColumn, modifyColumn, modifyDiagonal, modifyDiagonal, modifyMatchingInColumns, modifyMatchingInColumns, modifyMatchingInRows, modifyMatchingInRows, modifyOne, modifyOne, modifyRow, modifyRow
-
Methods inherited from interface org.ojalgo.structure.Mutate2D.ModifiableReceiver
modifyCompatible, modifyCompatible
-
Methods inherited from interface org.ojalgo.structure.Mutate2D.Receiver
accept, isAcceptable
-
Methods inherited from interface org.ojalgo.structure.Operate2D
onAll, onAll, onAll, onAll, onAll, onCompatible, onCompatible
-
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Addition
add
-
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Division
divide
-
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Multiplication
multiply
-
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Subtraction
subtract
-
Methods inherited from interface org.ojalgo.structure.Structure2D
count, countColumns, countRows, firstInColumn, firstInRow, getColDim, getMaxDim, getMinDim, getRowDim, isEmpty, isFat, isScalar, isSquare, isTall, isVector, limitOfColumn, limitOfRow, size
-
Methods inherited from interface org.ojalgo.matrix.store.TransformableRegion
exchangeColumns, exchangeRows, fillByMultiplying, regionByColumns, regionByLimits, regionByOffsets, regionByRows, regionByTransposing, synchronised
-
-
-
-
Method Detail
-
asList
java.util.List<N> asList()
Description copied from interface:Access1DAn (immutable)Listdelegating to thisAccess1D.- Specified by:
asListin interfaceAccess1D<N extends java.lang.Comparable<N>>- Returns:
- The elements of the physical store as a fixed size (1 dimensional) list. The elements may be accessed either row or colomn major.
- See Also:
Access1D.toList()
-
indexOfLargestInColumn
default int indexOfLargestInColumn(int row, int col)
-
indexOfLargestInRow
default int indexOfLargestInRow(int row, int col)
-
indexOfLargestOnDiagonal
default int indexOfLargestOnDiagonal(int row, int col)
-
modifyAny
default void modifyAny(Transformation2D<N> modifier)
- Specified by:
modifyAnyin interfaceMutate2D.ModifiableReceiver<N extends java.lang.Comparable<N>>- Specified by:
modifyAnyin interfaceTransformableRegion<N extends java.lang.Comparable<N>>
-
substituteBackwards
void substituteBackwards(Access2D<N> body, boolean unitDiagonal, boolean conjugated, boolean hermitian)
Will solve the equation system [A][X]=[B] where:- [body][this]=[this] is [A][X]=[B] ("this" is the right hand side, and it will be overwritten with the solution).
- [A] is upper/right triangular
-
substituteForwards
void substituteForwards(Access2D<N> body, boolean unitDiagonal, boolean conjugated, boolean identity)
Will solve the equation system [A][X]=[B] where:- [body][this]=[this] is [A][X]=[B] ("this" is the right hand side, and it will be overwritten with the solution).
- [A] is lower/left triangular
-
supplyTo
default void supplyTo(TransformableRegion<N> receiver)
- Specified by:
supplyToin interfaceAccess2D.Collectable<N extends java.lang.Comparable<N>,TransformableRegion<N extends java.lang.Comparable<N>>>- Specified by:
supplyToin interfaceMatrixStore<N extends java.lang.Comparable<N>>
-
transformLeft
void transformLeft(Householder<N> transformation, int firstColumn)
-
transformLeft
void transformLeft(Rotation<N> transformation)
As in
MatrixStore.premultiply(Access1D)where the left/parameter matrix is a plane rotation.Multiplying by a plane rotation from the left means that [this] gets two of its rows updated to new combinations of those two (current) rows.
There are two ways to transpose/invert a rotation. Either you negate the angle or you interchange the two indeces that define the rotation plane.
- See Also:
transformRight(Rotation)
-
transformRight
void transformRight(Householder<N> transformation, int firstRow)
-
transformRight
void transformRight(Rotation<N> transformation)
As in
MatrixStore.multiply(MatrixStore)where the right/parameter matrix is a plane rotation.Multiplying by a plane rotation from the right means that [this] gets two of its columns updated to new combinations of those two (current) columns.
There result is undefined if the two input indeces are the same (in which case the rotation plane is undefined).
- See Also:
transformLeft(Rotation)
-
-