|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface MatrixStore<N extends Number>
A MatrixStore is a matrix (two-dimensional) store of numbers/scalars.
This interface does not define methods that require any implementation to alter the matrix. Either the methods return matrix elements, some meta data or produce new instances.
The method toPhysicalStore() returns a PhysicalStore which
extends MatrixSore and defines additional methods. A PhysicalStore is mutable.
| Method Summary | |
|---|---|
double |
doubleValue(int aRow,
int aCol)
|
int |
getColDim()
|
int |
getMinDim()
|
N |
getNumber(int aRow,
int aCol)
|
PhysicalFactory<N> |
getPhysicalFactory()
|
int |
getRowDim()
|
boolean |
isLowerLeftShaded()
The lower (left) triangle is shaded leaving an upper Hessenberg matrix. |
boolean |
isShaded()
Either the lower (left) or the upper (right) triangles are shaded. |
boolean |
isUpperRightShaded()
The upper (right) triangle is shaded leaving a lower Hessenberg matrix. |
N |
multiplyBothSides(MatrixStore<N> aStore)
Calculates [aStore]T[this][aStore] as in a quadratic function [x]T[Q][x]. |
MatrixStore<N> |
multiplyLeft(MatrixStore<N> aStore)
|
MatrixStore<N> |
multiplyRight(MatrixStore<N> aStore)
|
PhysicalStore<N> |
toPhysicalStore()
May (probably will) return the same instance with every call. |
Scalar<N> |
toScalar(int aRow,
int aCol)
|
| Method Detail |
|---|
double doubleValue(int aRow,
int aCol)
int getColDim()
int getMinDim()
N getNumber(int aRow,
int aCol)
PhysicalFactory<N> getPhysicalFactory()
int getRowDim()
boolean isLowerLeftShaded()
The lower (left) triangle is shaded leaving an upper Hessenberg matrix.
isUpperRightShaded(),
isShaded(),
PhysicalStore.shadeLowerLeft(),
PhysicalStore.unshade()boolean isShaded()
Either the lower (left) or the upper (right) triangles are shaded.
Shading part of a MatrixStore causes that
part to be ignored (as if it had zero valued elements) when doing matrix
multiplication. It is possible to shade part of a
PhysicalStore even though the shaded
elements are not actually zero valued. Calling doubleValue(i, j),
getNumber(i, j) or toScalar(i, j) will return the actual
stored value.
isLowerLeftShaded(),
isUpperRightShaded(),
PhysicalStore.unshade()boolean isUpperRightShaded()
The upper (right) triangle is shaded leaving a lower Hessenberg matrix.
isLowerLeftShaded(),
isShaded(),
PhysicalStore.shadeUpperRight(),
PhysicalStore.unshade()N multiplyBothSides(MatrixStore<N> aStore)
MatrixStore<N> multiplyLeft(MatrixStore<N> aStore)
MatrixStore<N> multiplyRight(MatrixStore<N> aStore)
PhysicalStore<N> toPhysicalStore()
PhysicalStore instances are mutable.
If you plan to modify it you should make a copy first. Depending on what
you do with the PhysicalStore you may
have to unshade it.
PhysicalStore representation
of this MatrixStore.PhysicalStore.copy(),
PhysicalStore.unshade()
Scalar<N> toScalar(int aRow,
int aCol)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||