|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectorg.ojalgo.matrix.decomposition.LUDecomposition<N>
public abstract class LUDecomposition<N extends Number>
You create instances of (some subclass of) this class by calling one of the static factory methods: makeBig(), makeComplex(), makePrimitive() or makeJama().
| Nested Class Summary | |
|---|---|
static class |
LUDecomposition.Pivot
|
| Method Summary | ||
|---|---|---|
boolean |
compute(Access2D<?> aStore)
|
|
boolean |
computeWithoutPivoting(MatrixStore<?> aStore)
The normal MatrixDecomposition.compute(Access2D) method must handle cases
where pivoting is required. |
|
boolean |
equals(MatrixDecomposition<N> aDecomp,
NumberContext aCntxt)
|
|
boolean |
equals(MatrixStore<N> aStore,
NumberContext aCntxt)
|
|
boolean |
equals(Object someObj)
|
|
N |
getDeterminant()
|
|
MatrixStore<N> |
getInverse()
The output must be a "right inverse" and a "generalised inverse". |
|
MatrixStore<N> |
getInverse(DecompositionStore<N> preallocated)
Implementiong this method is optional. |
|
MatrixStore<N> |
getL()
|
|
int[] |
getPivotOrder()
This can be used to create a [P] matrix using IdentityStore in combination with RowsStore or ColumnsStore. |
|
int |
getRank()
|
|
int[] |
getReducedPivots()
|
|
MatrixStore<N> |
getU()
http://en.wikipedia.org/wiki/Row_echelon_form This is the same as [D][U]. |
|
boolean |
isAspectRatioNormal()
|
|
boolean |
isComputed()
|
|
boolean |
isFullSize()
|
|
boolean |
isSolvable()
|
|
boolean |
isSquareAndNotSingular()
|
|
static
|
make(Access2D<N> aTypical)
|
|
static LU<BigDecimal> |
makeBig()
|
|
static LU<ComplexNumber> |
makeComplex()
|
|
static LU<Double> |
makeJama()
|
|
static LU<Double> |
makePrimitive()
|
|
MatrixStore<N> |
reconstruct()
|
|
void |
reset()
Delete computed results, and resets attributes to default values |
|
MatrixStore<N> |
solve(MatrixStore<N> aRHS)
Solves [this][X] = [aRHS] by first solving |
|
MatrixStore<N> |
solve(MatrixStore<N> aRHS,
DecompositionStore<N> preallocated)
The solution will be written to "preallocated" and then returned. |
|
| Methods inherited from class java.lang.Object |
|---|
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.ojalgo.matrix.decomposition.MatrixDecomposition |
|---|
equals, isComputed |
| Method Detail |
|---|
public static final <N extends Number> LU<N> make(Access2D<N> aTypical)
public static final LU<BigDecimal> makeBig()
public static final LU<ComplexNumber> makeComplex()
public static final LU<Double> makeJama()
public static final LU<Double> makePrimitive()
public boolean compute(Access2D<?> aStore)
compute in interface MatrixDecomposition<N extends Number>aStore - A matrix to decompose
public boolean computeWithoutPivoting(MatrixStore<?> aStore)
LUMatrixDecomposition.compute(Access2D) method must handle cases
where pivoting is required. If you know that pivoting is not needed
you may call this method instead - it's faster.
computeWithoutPivoting in interface LU<N extends Number>
public boolean equals(MatrixStore<N> aStore,
NumberContext aCntxt)
equals in interface MatrixDecomposition<N extends Number>public N getDeterminant()
getDeterminant in interface LU<N extends Number>public MatrixStore<N> getInverse()
MatrixDecomposition
getInverse in interface MatrixDecomposition<N extends Number>BasicMatrix.invert()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 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> getL()
getL in interface LU<N extends Number>public int[] getPivotOrder()
LU
getPivotOrder in interface LU<N extends Number>public int getRank()
getRank in interface LU<N extends Number>public int[] getReducedPivots()
getReducedPivots in interface LU<N extends Number>public MatrixStore<N> getU()
LU
getU in interface LU<N extends Number>LU.getPivotOrder(),
LU.getL()public final boolean isFullSize()
isFullSize in interface MatrixDecomposition<N extends Number>public boolean isSolvable()
isSolvable in interface MatrixDecomposition<N extends Number>MatrixDecomposition.solve(MatrixStore),
MatrixDecomposition.isComputed()public final boolean isSquareAndNotSingular()
isSquareAndNotSingular in interface LU<N extends Number>public MatrixStore<N> reconstruct()
reconstruct in interface MatrixDecomposition<N extends Number>public void reset()
MatrixDecomposition
reset in interface MatrixDecomposition<N extends Number>public MatrixStore<N> solve(MatrixStore<N> aRHS)
[L][Y] = [aRHS]and then
[U][X] = [Y].
solve in interface MatrixDecomposition<N extends Number>aRHS - The right hand side
public MatrixStore<N> solve(MatrixStore<N> aRHS,
DecompositionStore<N> preallocated)
solve in interface MatrixDecomposition<N extends Number>aRHS - 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.
MatrixDecomposition.solve(org.ojalgo.matrix.store.MatrixStore, org.ojalgo.matrix.decomposition.DecompositionStore)
public final boolean equals(MatrixDecomposition<N> aDecomp,
NumberContext aCntxt)
equals in interface MatrixDecomposition<N extends Number>public boolean equals(Object someObj)
equals in class Objectpublic boolean isAspectRatioNormal()
public final boolean isComputed()
isComputed in interface MatrixDecomposition<N extends Number>MatrixDecomposition.compute(Access2D),
MatrixDecomposition.isSolvable()
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||