Package org.ojalgo.matrix.decomposition
Class BidiagonalDecomposition<N extends java.lang.Comparable<N>>
- java.lang.Object
-
- org.ojalgo.matrix.decomposition.AbstractDecomposition<N>
-
- org.ojalgo.matrix.decomposition.GenericDecomposition<N>
-
- org.ojalgo.matrix.decomposition.InPlaceDecomposition<N>
-
- org.ojalgo.matrix.decomposition.BidiagonalDecomposition<N>
-
- All Implemented Interfaces:
Bidiagonal<N>
,MatrixDecomposition<N>
,MatrixDecomposition.EconomySize<N>
,Structure1D
,Structure2D
- Direct Known Subclasses:
BidiagonalDecomposition.C128
,BidiagonalDecomposition.H256
,BidiagonalDecomposition.Q128
,BidiagonalDecomposition.R064
,BidiagonalDecomposition.R128
abstract class BidiagonalDecomposition<N extends java.lang.Comparable<N>> extends InPlaceDecomposition<N> implements Bidiagonal<N>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
BidiagonalDecomposition.C128
(package private) static class
BidiagonalDecomposition.H256
(package private) static class
BidiagonalDecomposition.Q128
(package private) static class
BidiagonalDecomposition.R064
(package private) static class
BidiagonalDecomposition.R128
-
Nested classes/interfaces inherited from interface org.ojalgo.matrix.decomposition.Bidiagonal
Bidiagonal.Factory<N extends java.lang.Comparable<N>>
-
Nested classes/interfaces inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition
MatrixDecomposition.Determinant<N extends java.lang.Comparable<N>>, MatrixDecomposition.EconomySize<N extends java.lang.Comparable<N>>, MatrixDecomposition.Factory<D extends MatrixDecomposition<?>>, MatrixDecomposition.Hermitian<N extends java.lang.Comparable<N>>, MatrixDecomposition.Ordered<N extends java.lang.Comparable<N>>, MatrixDecomposition.Pivoting<N extends java.lang.Comparable<N>>, MatrixDecomposition.RankRevealing<N extends java.lang.Comparable<N>>, MatrixDecomposition.Solver<N extends java.lang.Comparable<N>>, MatrixDecomposition.Values<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.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>
-
-
Field Summary
Fields Modifier and Type Field Description private DiagonalStore<N,Array1D<N>>
myDiagonal
private boolean
myFullSize
private Array1D<N>
myInitDiagLQ
private Array1D<N>
myInitDiagRQ
private DecompositionStore<N>
myLQ
private DecompositionStore<N>
myRQ
-
Fields inherited from interface org.ojalgo.matrix.decomposition.Bidiagonal
C128, H256, Q128, R064, R128
-
Fields inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition
TYPICAL
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
BidiagonalDecomposition(PhysicalStore.Factory<N,? extends DecompositionStore<N>> factory, boolean fullSize)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
decompose(Access2D.Collectable<N,? super PhysicalStore<N>> matrix)
(package private) DiagonalStore<N,Array1D<N>>
doGetDiagonal()
(package private) DecompositionStore<N>
doGetLQ()
(package private) DecompositionStore<N>
doGetRQ()
MatrixStore<N>
getD()
MatrixStore<N>
getLQ()
MatrixStore<N>
getRQ()
boolean
isFullSize()
boolean
isUpper()
private DiagonalStore<N,Array1D<N>>
makeDiagonal()
private DecompositionStore<N>
makeLQ()
(package private) abstract Array1D<N>[]
makeReal()
private DecompositionStore<N>
makeRQ()
void
reset()
Delete computed results, and resets attributes to default valuesprivate void
solve(PhysicalStore<N> aMtrxV, MatrixStore<N> aMtrxD, DiagonalStore<N,?> aMtrxSimilar)
Will solve the equation system [aMtrxV][aMtrxD][X]=[aMtrxSimilar]T and overwrite the solution [X] to [aV].private DecompositionStore<N>
solve2(PhysicalStore<N> aMtrxV, MatrixStore<N> aMtrxD, DiagonalStore<N,?> aMtrxSimilar)
-
Methods inherited from class org.ojalgo.matrix.decomposition.InPlaceDecomposition
getColDim, getInPlace, getInverse, getInverse, getRowDim, setInPlace
-
Methods inherited from class org.ojalgo.matrix.decomposition.GenericDecomposition
aggregator, allocate, collect, copy, function, makeArray, makeDiagonal, makeEye, makeHouseholder, makeIdentity, makeRotation, makeRotation, makeZero, makeZero, scalar, wrap
-
Methods inherited from class org.ojalgo.matrix.decomposition.AbstractDecomposition
checkSolvability, computed, countColumns, countRows, getDimensionalEpsilon, isAspectRatioNormal, isComputed, isSolvable
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ojalgo.matrix.decomposition.Bidiagonal
reconstruct
-
Methods inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition
isComputed
-
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
-
-
-
-
Field Detail
-
myDiagonal
private transient DiagonalStore<N extends java.lang.Comparable<N>,Array1D<N extends java.lang.Comparable<N>>> myDiagonal
-
myFullSize
private final boolean myFullSize
-
myLQ
private transient DecompositionStore<N extends java.lang.Comparable<N>> myLQ
-
myRQ
private transient DecompositionStore<N extends java.lang.Comparable<N>> myRQ
-
-
Constructor Detail
-
BidiagonalDecomposition
protected BidiagonalDecomposition(PhysicalStore.Factory<N,? extends DecompositionStore<N>> factory, boolean fullSize)
-
-
Method Detail
-
decompose
public boolean decompose(Access2D.Collectable<N,? super PhysicalStore<N>> matrix)
- Specified by:
decompose
in interfaceMatrixDecomposition<N extends java.lang.Comparable<N>>
- Parameters:
matrix
- A matrix to decompose- Returns:
- true if decomposition suceeded; false if not
-
getD
public MatrixStore<N> getD()
- Specified by:
getD
in interfaceBidiagonal<N extends java.lang.Comparable<N>>
-
getLQ
public MatrixStore<N> getLQ()
- Specified by:
getLQ
in interfaceBidiagonal<N extends java.lang.Comparable<N>>
-
getRQ
public MatrixStore<N> getRQ()
- Specified by:
getRQ
in interfaceBidiagonal<N extends java.lang.Comparable<N>>
-
isFullSize
public boolean isFullSize()
- Specified by:
isFullSize
in interfaceMatrixDecomposition.EconomySize<N extends java.lang.Comparable<N>>
- Returns:
- True if it will generate a full sized decomposition.
-
isUpper
public boolean isUpper()
- Specified by:
isUpper
in interfaceBidiagonal<N extends java.lang.Comparable<N>>
-
reset
public void reset()
Description copied from interface:MatrixDecomposition
Delete computed results, and resets attributes to default values- Specified by:
reset
in interfaceMatrixDecomposition<N extends java.lang.Comparable<N>>
- Overrides:
reset
in classAbstractDecomposition<N extends java.lang.Comparable<N>>
-
makeDiagonal
private DiagonalStore<N,Array1D<N>> makeDiagonal()
-
makeLQ
private DecompositionStore<N> makeLQ()
-
makeRQ
private DecompositionStore<N> makeRQ()
-
solve
private void solve(PhysicalStore<N> aMtrxV, MatrixStore<N> aMtrxD, DiagonalStore<N,?> aMtrxSimilar)
Will solve the equation system [aMtrxV][aMtrxD][X]=[aMtrxSimilar]T and overwrite the solution [X] to [aV].
-
solve2
private DecompositionStore<N> solve2(PhysicalStore<N> aMtrxV, MatrixStore<N> aMtrxD, DiagonalStore<N,?> aMtrxSimilar)
-
doGetDiagonal
DiagonalStore<N,Array1D<N>> doGetDiagonal()
-
doGetLQ
DecompositionStore<N> doGetLQ()
-
doGetRQ
DecompositionStore<N> doGetRQ()
-
-