Module ojalgo
Package org.ojalgo.matrix.decomposition
Class GeneralisedEvD<N extends java.lang.Comparable<N>>
- java.lang.Object
-
- org.ojalgo.matrix.decomposition.AbstractDecomposition<N,DecompositionStore<N>>
-
- org.ojalgo.matrix.decomposition.DenseEigenvalue<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 java.lang.Comparable<N>> extends DenseEigenvalue<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 java.lang.Comparable<N>>, Eigenvalue.Generalisation, Eigenvalue.Generalised<N extends java.lang.Comparable<N>>, Eigenvalue.Spectral<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.Updatable<N extends java.lang.Comparable<N>>, MatrixDecomposition.Values<N extends java.lang.Comparable<N>>
-
Nested classes/interfaces inherited from interface org.ojalgo.matrix.Provider2D
Provider2D.Condition, Provider2D.Determinant<N extends java.lang.Comparable<N>>, Provider2D.Eigenpairs, Provider2D.Hermitian, Provider2D.Inverse<M>, Provider2D.Rank, Provider2D.Solution<M>, Provider2D.Symmetric, Provider2D.Trace<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 Cholesky<N>myCholeskyprivate Eigenvalue<N>myEigenvalueprivate PhysicalStore.Factory<N,? extends DecompositionStore<N>>myFactoryprivate PhysicalStore<N>myRecoveredprivate PhysicalStore<N>myReducedCprivate Eigenvalue.GeneralisationmyType-
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
Constructors Constructor Description GeneralisedEvD(PhysicalStore.Factory<N,? extends DecompositionStore<N>> factory, Cholesky<N> cholesky, Eigenvalue<N> eigenvalue, Eigenvalue.Generalisation type)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleandoDecompose(Access2D.Collectable<N,? super TransformableRegion<N>> matrix, boolean valuesOnly)NgetDeterminant()A matrix' determinant is the product of its eigenvalues.Eigenvalue.EigenpairgetEigenpair(int index)ComplexNumbergetTrace()A matrix' trace is the sum of the diagonal elements.booleanisHermitian()If [A] is hermitian then [V][D][V]-1 becomes [Q][D][Q]H...booleanisOrdered()The eigenvalues in D (and the eigenvectors in V) are not necessarily ordered.protected MatrixStore<N>makeD()protected Array1D<ComplexNumber>makeEigenvalues()protected MatrixStore<N>makeV()booleanprepare(Access2D.Collectable<N,? super TransformableRegion<N>> matrixB)MatrixStore<N>reconstruct()(package private) MatrixStore<N>recover(MatrixStore<N> reduced)(package private) PhysicalStore<N>reduce(Access2D.Collectable<N,? super PhysicalStore<N>> original)voidreset()Delete computed results, and resets attributes to default values-
Methods inherited from class org.ojalgo.matrix.decomposition.DenseEigenvalue
calculateDeterminant, computeValuesOnly, decompose, getColDim, getD, getEigenvalues, getMaxDim, getMinDim, getRowDim, getV, isValuesOnly, setD, setEigenvalues, setV
-
Methods inherited from class org.ojalgo.matrix.decomposition.AbstractDecomposition
aggregator, applyPivotOrder, applyReverseOrder, checkSolvability, collect, computed, copyColumn, copyRow, function, getDimensionalEpsilon, isAspectRatioNormal, isComputed, isSolvable, makeArray, makeDiagonal, makeEye, makeHouseholder, makeIdentity, makeRotation, makeRotation, makeZero, makeZero, scalar, wrap
-
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 Detail
-
myEigenvalue
private final Eigenvalue<N extends java.lang.Comparable<N>> myEigenvalue
-
myFactory
private final PhysicalStore.Factory<N extends java.lang.Comparable<N>,? extends DecompositionStore<N extends java.lang.Comparable<N>>> myFactory
-
myRecovered
private transient PhysicalStore<N extends java.lang.Comparable<N>> myRecovered
-
myReduced
private transient PhysicalStore<N extends java.lang.Comparable<N>> myReduced
C
-
myType
private final Eigenvalue.Generalisation myType
-
-
Constructor Detail
-
GeneralisedEvD
GeneralisedEvD(PhysicalStore.Factory<N,? extends DecompositionStore<N>> factory, Cholesky<N> cholesky, Eigenvalue<N> eigenvalue, Eigenvalue.Generalisation type)
-
-
Method Detail
-
getDeterminant
public N getDeterminant()
Description copied from interface:MatrixDecomposition.DeterminantA matrix' determinant is the product of its eigenvalues.
- Specified by:
getDeterminantin interfaceMatrixDecomposition.Determinant<N extends java.lang.Comparable<N>>- Specified by:
getDeterminantin interfaceProvider2D.Determinant<N extends java.lang.Comparable<N>>- Returns:
- The matrix' determinant
-
getEigenpair
public Eigenvalue.Eigenpair getEigenpair(int index)
- Specified by:
getEigenpairin interfaceEigenvalue<N extends java.lang.Comparable<N>>
-
getTrace
public ComplexNumber getTrace()
Description copied from interface:EigenvalueA 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:
getTracein interfaceEigenvalue<N extends java.lang.Comparable<N>>- Returns:
- The matrix' trace
-
isHermitian
public boolean isHermitian()
Description copied from interface:EigenvalueIf [A] is hermitian then [V][D][V]-1 becomes [Q][D][Q]H...- Specified by:
isHermitianin interfaceEigenvalue<N extends java.lang.Comparable<N>>
-
isOrdered
public boolean isOrdered()
Description copied from interface:EigenvalueThe 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:
isOrderedin interfaceEigenvalue<N extends java.lang.Comparable<N>>- Specified by:
isOrderedin interfaceMatrixDecomposition.Ordered<N extends java.lang.Comparable<N>>- Returns:
- true if they are ordered
-
prepare
public boolean prepare(Access2D.Collectable<N,? super TransformableRegion<N>> matrixB)
- Specified by:
preparein interfaceEigenvalue.Generalised<N extends java.lang.Comparable<N>>
-
reconstruct
public MatrixStore<N> reconstruct()
- Specified by:
reconstructin interfaceEigenvalue<N extends java.lang.Comparable<N>>- Specified by:
reconstructin interfaceMatrixDecomposition<N extends java.lang.Comparable<N>>
-
reset
public void reset()
Description copied from interface:MatrixDecompositionDelete computed results, and resets attributes to default values- Specified by:
resetin interfaceMatrixDecomposition<N extends java.lang.Comparable<N>>- Overrides:
resetin classDenseEigenvalue<N extends java.lang.Comparable<N>>
-
doDecompose
protected boolean doDecompose(Access2D.Collectable<N,? super TransformableRegion<N>> matrix, boolean valuesOnly)
- Specified by:
doDecomposein classDenseEigenvalue<N extends java.lang.Comparable<N>>
-
makeD
protected MatrixStore<N> makeD()
- Specified by:
makeDin classDenseEigenvalue<N extends java.lang.Comparable<N>>
-
makeEigenvalues
protected Array1D<ComplexNumber> makeEigenvalues()
- Specified by:
makeEigenvaluesin classDenseEigenvalue<N extends java.lang.Comparable<N>>
-
makeV
protected MatrixStore<N> makeV()
- Specified by:
makeVin classDenseEigenvalue<N extends java.lang.Comparable<N>>
-
recover
MatrixStore<N> recover(MatrixStore<N> reduced)
-
reduce
PhysicalStore<N> reduce(Access2D.Collectable<N,? super PhysicalStore<N>> original)
-
-