@Deprecated public abstract class QRDecomposition<N extends java.lang.Number> extends java.lang.Object implements QR<N>
InverterTask.Factory<N extends java.lang.Number>SolverTask.Factory<N extends java.lang.Number>DeterminantTask.Factory<N extends java.lang.Number>BIG, COMPLEX, PRIMITIVEBIG, COMPLEX, PRIMITIVEBIG, COMPLEX, PRIMITIVE| Modifier and Type | Method and Description |
|---|---|
N |
calculateDeterminant(Access2D<N> matrix)
Deprecated.
|
boolean |
compute(Access2D<?> matrix)
Deprecated.
|
boolean |
compute(Access2D<?> matrix,
boolean fullSize)
Deprecated.
|
boolean |
equals(MatrixStore<N> aStore,
NumberContext context)
Deprecated.
|
boolean |
equals(java.lang.Object someObj) |
N |
getDeterminant()
Deprecated.
|
MatrixStore<N> |
getInverse()
The output must be a "right inverse" and a "generalised inverse".
|
MatrixStore<N> |
getInverse(DecompositionStore<N> preallocated)
Deprecated.
Implementiong this method is optional.
|
MatrixStore<N> |
getQ()
Deprecated.
|
MatrixStore<N> |
getR()
Deprecated.
|
int |
getRank()
Deprecated.
|
MatrixStore<N> |
invert(MatrixStore<N> original)
The output must be a "right inverse" and a "generalised inverse".
|
MatrixStore<N> |
invert(MatrixStore<N> original,
DecompositionStore<N> preallocated)
Implementiong this method is optional.
|
boolean |
isComputed() |
boolean |
isFullColumnRank()
Deprecated.
The QR decompostion always exists, even if the matrix does not have full column rank, so the compute
method will never fail.
|
boolean |
isFullSize()
Deprecated.
|
boolean |
isSolvable()
Deprecated.
|
static <N extends java.lang.Number> |
make(Access2D<N> aTypical)
Deprecated.
v38 Use
QR.make(Access2D) instead |
static QR<java.math.BigDecimal> |
makeBig()
Deprecated.
v38 Use
QR.makeBig() instead |
static QR<ComplexNumber> |
makeComplex()
Deprecated.
v38 Use
QR.makeComplex() instead |
static QR<java.lang.Double> |
makeJama()
Deprecated.
v38 Use
QR.makePrimitive() instead |
static QR<java.lang.Double> |
makePrimitive()
Deprecated.
v38 Use
QR.makePrimitive() instead |
DecompositionStore<N> |
preallocate(Access2D<N> template)
Implementiong this method is optional.
|
DecompositionStore<N> |
preallocate(Access2D<N> templateBody,
Access2D<N> templateRHS)
Implementiong this method is optional.
|
void |
reset()
Deprecated.
Delete computed results, and resets attributes to default values
|
MatrixStore<N> |
solve(Access2D<N> rhs)
[A][X]=[B] or [this][return]=[rhs]
|
MatrixStore<N> |
solve(Access2D<N> body,
Access2D<N> rhs)
[A][X]=[B] or [body][return]=[rhs]
|
MatrixStore<N> |
solve(Access2D<N> body,
Access2D<N> rhs,
DecompositionStore<N> preallocated)
Implementiong this method is optional.
|
MatrixStore<N> |
solve(Access2D<N> rhs,
DecompositionStore<N> preallocated)
Deprecated.
Solve [A]*[X]=[B] by first solving [Q]*[Y]=[B] and then [R]*[X]=[Y].
|
getClass, hashCode, notify, notifyAll, toString, wait, wait, waitreconstructequals, getInverse, isComputed, solveinvert, invert, preallocatepreallocate, solve, solve@Deprecated public static final <N extends java.lang.Number> QR<N> make(Access2D<N> aTypical)
QR.make(Access2D) instead@Deprecated public static final QR<java.math.BigDecimal> makeBig()
QR.makeBig() instead@Deprecated public static final QR<ComplexNumber> makeComplex()
QR.makeComplex() insteadmakeComplex in interface QR<N extends java.lang.Number>@Deprecated public static final QR<java.lang.Double> makeJama()
QR.makePrimitive() instead@Deprecated public static final QR<java.lang.Double> makePrimitive()
QR.makePrimitive() insteadmakePrimitive in interface QR<N extends java.lang.Number>public final N calculateDeterminant(Access2D<N> matrix)
calculateDeterminant in interface DeterminantTask<N extends java.lang.Number>public boolean compute(Access2D<?> matrix)
compute in interface MatrixDecomposition<N extends java.lang.Number>matrix - A matrix to decomposepublic boolean compute(Access2D<?> matrix, boolean fullSize)
public boolean equals(MatrixStore<N> aStore, NumberContext context)
equals in interface MatrixDecomposition<N extends java.lang.Number>public N getDeterminant()
getDeterminant in interface QR<N extends java.lang.Number>public MatrixStore<N> getInverse(DecompositionStore<N> preallocated)
MatrixDecompositionImplementiong this method is optional.
Exactly how a specific implementation makes use of preallocated is not specified by this
interface. It must be documented for each implementation.
Should produce the same results as calling MatrixDecomposition.getInverse().
getInverse in interface MatrixDecomposition<N extends java.lang.Number>preallocated - Preallocated memory for the results, possibly some intermediate results. You must
assume this is modified, but you cannot assume it will contain the full/final/correct solution.public MatrixStore<N> getQ()
public MatrixStore<N> getR()
public int getRank()
public boolean isFullColumnRank()
QRisFullColumnRank in interface QR<N extends java.lang.Number>QR.isFullColumnRank()public final boolean isFullSize()
isFullSize in interface MatrixDecomposition<N extends java.lang.Number>public final boolean isSolvable()
isSolvable in interface MatrixDecomposition<N extends java.lang.Number>MatrixDecomposition.solve(Access2D),
MatrixDecomposition.isComputed()public void reset()
MatrixDecompositionreset in interface MatrixDecomposition<N extends java.lang.Number>public MatrixStore<N> solve(Access2D<N> rhs, DecompositionStore<N> preallocated)
solve in interface MatrixDecomposition<N extends java.lang.Number>rhs - The right hand side [B]preallocated - Preallocated memory for the results, possibly some intermediate results. You must
assume this is modified, but you cannot assume it will contain the full/final/correct solution.MatrixDecomposition.solve(Access2D,
org.ojalgo.matrix.decomposition.DecompositionStore)public final MatrixStore<N> getInverse()
MatrixDecompositionBasicMatrix.invert()public final MatrixStore<N> solve(Access2D<N> rhs)
MatrixDecompositionpublic boolean equals(java.lang.Object someObj)
equals in class java.lang.Objectpublic final MatrixStore<N> invert(MatrixStore<N> original)
InverterTaskBasicMatrix.invert()public final MatrixStore<N> invert(MatrixStore<N> original, DecompositionStore<N> preallocated)
InverterTaskImplementiong this method is optional.
Exactly how a specific implementation makes use of preallocated is not specified by this
interface. It must be documented for each implementation.
Should produce the same results as calling InverterTask.invert(MatrixStore).
preallocated - Preallocated memory for the results, possibly some intermediate results. You must
assume this is modified, but you cannot assume it will contain the full/final/correct solution.public final MatrixStore<N> solve(Access2D<N> body, Access2D<N> rhs)
SolverTaskpublic final MatrixStore<N> solve(Access2D<N> body, Access2D<N> rhs, DecompositionStore<N> preallocated)
SolverTaskImplementiong this method is optional.
Exactly how a specific implementation makes use of preallocated is not specified by this
interface. It must be documented for each implementation.
Should produce the same results as calling SolverTask.solve(Access2D, Access2D).
rhs - The Right Hand Side, wont be modfiedpreallocated - Preallocated memory for the results, possibly some intermediate results. You must
assume this is modified, but you cannot assume it will contain the full/final/correct solution.public final DecompositionStore<N> preallocate(Access2D<N> template)
InverterTaskImplementiong this method is optional.
Will create a DecompositionStore instance suitable for use withInverterTask.invert(MatrixStore, DecompositionStore). When solving an equation system [A][X]=[B]
([mxn][nxb]=[mxb]) the preallocated memory/matrix will typically be either mxb or nxb (if A is square
then there is no doubt).preallocate in interface InverterTask<N extends java.lang.Number>public final DecompositionStore<N> preallocate(Access2D<N> templateBody, Access2D<N> templateRHS)
SolverTaskImplementiong this method is optional.
Will create a DecompositionStore instance suitable for use withSolverTask.solve(Access2D, Access2D, DecompositionStore). When solving an equation system [A][X]=[B]
([mxn][nxb]=[mxb]) the preallocated memory/matrix will typically be either mxb or nxb (if A is square
then there is no doubt).preallocate in interface SolverTask<N extends java.lang.Number>public final boolean isComputed()
isComputed in interface MatrixDecomposition<N extends java.lang.Number>MatrixDecomposition.compute(Access2D),
MatrixDecomposition.isSolvable()