Package org.ojalgo.matrix.decomposition
Class GeneralisedEvD<N extends Comparable<N>>
java.lang.Object
org.ojalgo.matrix.decomposition.AbstractDecomposition<N>
org.ojalgo.matrix.decomposition.GenericDecomposition<N>
org.ojalgo.matrix.decomposition.EigenvalueDecomposition<N>
org.ojalgo.matrix.decomposition.GeneralisedEvD<N>
- All Implemented Interfaces:
Eigenvalue<N>
,Eigenvalue.Generalised<N>
,MatrixDecomposition<N>
,MatrixDecomposition.Determinant<N>
,MatrixDecomposition.Hermitian<N>
,MatrixDecomposition.Ordered<N>
,MatrixDecomposition.Values<N>
,Provider2D
,Provider2D.Determinant<N>
,Provider2D.Eigenpairs
,DeterminantTask<N>
,MatrixTask<N>
,Structure1D
,Structure2D
final class GeneralisedEvD<N extends Comparable<N>>
extends EigenvalueDecomposition<N>
implements Eigenvalue.Generalised<N>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.ojalgo.matrix.decomposition.Eigenvalue
Eigenvalue.Eigenpair, Eigenvalue.Factory<N extends Comparable<N>>, Eigenvalue.Generalisation, Eigenvalue.Generalised<N extends Comparable<N>>
Nested classes/interfaces inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition
MatrixDecomposition.Determinant<N extends Comparable<N>>, MatrixDecomposition.EconomySize<N extends Comparable<N>>, MatrixDecomposition.Factory<D extends MatrixDecomposition<?>>, MatrixDecomposition.Hermitian<N extends Comparable<N>>, MatrixDecomposition.Ordered<N extends Comparable<N>>, MatrixDecomposition.Pivoting<N extends Comparable<N>>, MatrixDecomposition.RankRevealing<N extends Comparable<N>>, MatrixDecomposition.Solver<N extends Comparable<N>>, MatrixDecomposition.Values<N extends Comparable<N>>
Nested classes/interfaces inherited from interface org.ojalgo.matrix.Provider2D
Provider2D.Condition, Provider2D.Determinant<N extends Comparable<N>>, Provider2D.Eigenpairs, Provider2D.Hermitian, Provider2D.Inverse<M>, Provider2D.Rank, Provider2D.Solution<M>, Provider2D.Symmetric, Provider2D.Trace<N extends 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
FieldsModifier and TypeFieldDescriptionprivate final Eigenvalue
<N> private final PhysicalStore.Factory
<N, ? extends DecompositionStore<N>> private PhysicalStore
<N> private PhysicalStore
<N> Cprivate final Eigenvalue.Generalisation
Fields inherited from interface org.ojalgo.matrix.decomposition.Eigenvalue
C128, DESCENDING_NORM, H256, Q128, R064, R128
Fields inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition
TYPICAL
-
Constructor Summary
ConstructorsConstructorDescriptionGeneralisedEvD
(PhysicalStore.Factory<N, ? extends DecompositionStore<N>> factory, Cholesky<N> cholesky, Eigenvalue<N> eigenvalue, Eigenvalue.Generalisation type) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
doDecompose
(Access2D.Collectable<N, ? super PhysicalStore<N>> matrix, boolean valuesOnly) A matrix' determinant is the product of its eigenvalues.getEigenpair
(int index) getTrace()
A matrix' trace is the sum of the diagonal elements.boolean
If [A] is hermitian then [V][D][V]-1 becomes [Q][D][Q]H...boolean
The eigenvalues in D (and the eigenvectors in V) are not necessarily ordered.protected MatrixStore
<N> makeD()
protected Array1D
<ComplexNumber> protected MatrixStore
<N> makeV()
boolean
prepare
(Access2D.Collectable<N, ? super PhysicalStore<N>> matrixB) (package private) MatrixStore
<N> recover
(MatrixStore<N> reduced) (package private) PhysicalStore
<N> reduce
(Access2D.Collectable<N, ? super PhysicalStore<N>> original) void
reset()
Delete computed results, and resets attributes to default valuesMethods inherited from class org.ojalgo.matrix.decomposition.EigenvalueDecomposition
calculateDeterminant, computeValuesOnly, decompose, getColDim, getD, getEigenvalues, getMaxDim, getMinDim, getRowDim, getV, setD, setEigenvalues, setV, sort
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.task.DeterminantTask
calculateDeterminant
Methods inherited from interface org.ojalgo.matrix.decomposition.Eigenvalue
getD, getEigenpairs, getEigenvalues, getEigenvalues, getEigenvectors, getV
Methods inherited from interface org.ojalgo.matrix.decomposition.Eigenvalue.Generalised
computeValuesOnly, decompose
Methods inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition
decompose, isComputed
Methods inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition.Determinant
toDeterminantProvider
Methods inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition.Hermitian
checkAndDecompose
Methods inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition.Values
computeValuesOnly
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 Details
-
myCholesky
-
myEigenvalue
-
myFactory
private final PhysicalStore.Factory<N extends Comparable<N>,? extends DecompositionStore<N extends Comparable<N>>> myFactory -
myRecovered
-
myReduced
C -
myType
-
-
Constructor Details
-
GeneralisedEvD
GeneralisedEvD(PhysicalStore.Factory<N, ? extends DecompositionStore<N>> factory, Cholesky<N> cholesky, Eigenvalue<N> eigenvalue, Eigenvalue.Generalisation type)
-
-
Method Details
-
getDeterminant
Description copied from interface:MatrixDecomposition.Determinant
A matrix' determinant is the product of its eigenvalues.
- Specified by:
getDeterminant
in interfaceMatrixDecomposition.Determinant<N extends Comparable<N>>
- Specified by:
getDeterminant
in interfaceProvider2D.Determinant<N extends Comparable<N>>
- Returns:
- The matrix' determinant
-
getEigenpair
- Specified by:
getEigenpair
in interfaceEigenvalue<N extends Comparable<N>>
-
getTrace
Description copied from interface:Eigenvalue
A matrix' trace is the sum of the diagonal elements. It is also the sum of the eigenvalues. This method should return the sum of the eigenvalues.- Specified by:
getTrace
in interfaceEigenvalue<N extends Comparable<N>>
- Returns:
- The matrix' trace
-
isHermitian
public boolean isHermitian()Description copied from interface:Eigenvalue
If [A] is hermitian then [V][D][V]-1 becomes [Q][D][Q]H...- Specified by:
isHermitian
in interfaceEigenvalue<N extends Comparable<N>>
-
isOrdered
public boolean isOrdered()Description copied from interface:Eigenvalue
The eigenvalues in D (and the eigenvectors in V) are not necessarily ordered. This is a property of the algorithm/implementation, not the data.- Specified by:
isOrdered
in interfaceEigenvalue<N extends Comparable<N>>
- Specified by:
isOrdered
in interfaceMatrixDecomposition.Ordered<N extends Comparable<N>>
- Returns:
- true if they are ordered
-
prepare
- Specified by:
prepare
in interfaceEigenvalue.Generalised<N extends Comparable<N>>
-
reconstruct
- Specified by:
reconstruct
in interfaceEigenvalue<N extends Comparable<N>>
- Specified by:
reconstruct
in interfaceMatrixDecomposition<N extends 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 Comparable<N>>
- Overrides:
reset
in classEigenvalueDecomposition<N extends Comparable<N>>
-
doDecompose
protected boolean doDecompose(Access2D.Collectable<N, ? super PhysicalStore<N>> matrix, boolean valuesOnly) - Specified by:
doDecompose
in classEigenvalueDecomposition<N extends Comparable<N>>
-
makeD
- Specified by:
makeD
in classEigenvalueDecomposition<N extends Comparable<N>>
-
makeEigenvalues
- Specified by:
makeEigenvalues
in classEigenvalueDecomposition<N extends Comparable<N>>
-
makeV
- Specified by:
makeV
in classEigenvalueDecomposition<N extends Comparable<N>>
-
recover
-
reduce
-