|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.ojalgo.array.PrimitiveArray
org.ojalgo.matrix.store.PrimitiveDenseStore
public final class PrimitiveDenseStore
A Double (actually double) implementation of PhysicalStore.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.ojalgo.matrix.store.PhysicalStore |
|---|
PhysicalStore.Factory<N extends Number> |
| Nested classes/interfaces inherited from interface org.ojalgo.matrix.store.MatrixStore |
|---|
MatrixStore.Builder<N extends Number> |
| Field Summary | |
|---|---|
static boolean |
DEBUG
|
static PhysicalStore.Factory<Double> |
FACTORY
|
int |
length
|
| Constructor Summary | |
|---|---|
PrimitiveDenseStore(int aRowDim,
int aColDim,
double[] anArray)
Deprecated. Only temporarily made public - don't use it! |
|
| Method Summary | |
|---|---|
Double |
aggregateAll(ChainableAggregator aVisitor)
|
Double |
aggregateAll(CollectableAggregator aVisitor)
|
Array1D<N> |
asArray1D()
A utility facade that conveniently/consistently presents the BasicArray as a one-dimensional array. |
Array2D<Double> |
asArray2D()
|
Array2D<N> |
asArray2D(int aRowDim,
int aColDim)
A utility facade that conveniently/consistently presents the BasicArray as a two-dimensional array. |
ArrayAnyD<N> |
asArrayAnyD(int[] aStructure)
A utility facade that conveniently/consistently presents the BasicArray as a multi-dimensional array. |
Array1D<Double> |
asList()
|
MatrixStore.Builder<Double> |
builder()
|
void |
caxpy(Double aSclrA,
int aColX,
int aColY,
int aFirstRow)
column a * x plus y |
void |
computeInPlaceBidiagonal(boolean normalAspectRatio)
|
boolean |
computeInPlaceCholesky(boolean checkForSPD)
|
void |
computeInPlaceHessenberg(boolean upper)
|
LUDecomposition.Pivot |
computeInPlaceLU(boolean assumeNoPivotingRequired)
|
void |
computeInPlaceQR()
|
void |
computeInPlaceTridiagonal()
|
PhysicalStore<Double> |
computeInPlaceTridiagonal(boolean someCollectTransformations)
|
void |
computeInPlaceTridiagonalOld()
|
PrimitiveDenseStore |
conjugate()
Each call must produce a new instance. |
PrimitiveDenseStore |
copy()
Each call must produce a new instance. |
double |
doubleValue(int aRow,
int aCol)
Extracts one element of this matrix as a double. |
boolean |
equals(MatrixStore<Double> aStore,
NumberContext aCntxt)
|
boolean |
equals(Object anObj)
|
void |
exchangeColumns(int aColA,
int aColB)
|
void |
exchangeRows(int aRowA,
int aRowB)
|
void |
fillAll(Double aNmbr)
|
void |
fillByMultiplying(MatrixStore<Double> aLeftArg,
MatrixStore<Double> aRightArg)
|
void |
fillColumn(int aRow,
int aCol,
Double aNmbr)
|
void |
fillDiagonal(int aRow,
int aCol,
Double aNmbr)
|
void |
fillMatching(Access2D<Double> aSource2D)
|
void |
fillMatching(Double aLeftArg,
BinaryFunction<Double> aFunc,
MatrixStore<Double> aRightArg)
Will replace the elements of [this] with the results of element wise invocation of the input binary funtion: |
void |
fillMatching(MatrixStore<Double> aLeftArg,
BinaryFunction<Double> aFunc,
Double aRightArg)
Will replace the elements of [this] with the results of element wise invocation of the input binary funtion: |
void |
fillMatching(MatrixStore<Double> aLeftArg,
BinaryFunction<Double> aFunc,
MatrixStore<Double> aRightArg)
Will replace the elements of [this] with the results of element wise invocation of the input binary funtion: |
void |
fillRow(int aRow,
int aCol,
Double aNmbr)
|
Householder<Double> |
generateHouseholderColumn(int aRow,
int aCol)
|
Householder<Double> |
generateHouseholderRow(int aRow,
int aCol)
|
Double |
get(int aRow,
int aCol)
|
int |
getColDim()
The size of this structure in the column-direction/dimension |
PhysicalStore.Factory<Double> |
getFactory()
|
int |
getIndexOfLargestInColumn(int aRow,
int aCol)
|
int |
getIndexOfLargestInRow(int aRow,
int aCol)
|
int |
getMinDim()
|
int |
getRowDim()
The size of this structure in the row-direction/dimension |
int |
hashCode()
|
boolean |
isAbsolute(int aRow,
int aCol)
|
boolean |
isReal(int aRow,
int aCol)
|
boolean |
isZero(int aRow,
int aCol)
|
void |
maxpy(Double aSclrA,
MatrixStore<Double> aMtrxX)
matrix a * x plus y |
void |
modifyAll(UnaryFunction<Double> aFunc)
|
void |
modifyColumn(int aRow,
int aCol,
UnaryFunction<Double> aFunc)
|
void |
modifyDiagonal(int aRow,
int aCol,
UnaryFunction<Double> aFunc)
|
void |
modifyRow(int aRow,
int aCol,
UnaryFunction<Double> aFunc)
|
MatrixStore<Double> |
multiplyLeft(MatrixStore<Double> aStore)
|
MatrixStore<Double> |
multiplyRight(MatrixStore<Double> aStore)
|
void |
raxpy(Double aSclrA,
int aRowX,
int aRowY,
int aFirstCol)
row a * x plus y |
void |
set(int aRow,
int aCol,
double aNmbr)
|
void |
set(int aRow,
int aCol,
Double aNmbr)
|
int |
size()
|
int |
size()
|
void |
substituteBackwards(Access2D<Double> aBody,
boolean transposed)
Will solve the equation system [A][X]=[B] where: [aBody][this]=[this] is [A][X]=[B] ("this" is the right hand side, and it will be overwritten with the solution). [A] is upper/right triangular |
void |
substituteForwards(Access2D<Double> aBody,
boolean onesOnDiagonal,
Access2D<Double> aRHS,
boolean zerosAboveDiagonal)
Will solve the equation system [A][X]=[B] where: [aBody][this]=[this] is [A][X]=[B] ("this" is the right hand side, and it will be overwritten with the solution). [A] is lower/left triangular |
PrimitiveScalar |
toScalar(int aRow,
int aCol)
|
String |
toString()
|
void |
transformLeft(Householder.Reference<Double> aTransf,
int aFirstCol)
|
void |
transformLeft(Householder<Double> aTransf,
int aFirstCol)
|
void |
transformLeft(Rotation<Double> aTransf)
As in MatrixStore.multiplyLeft(MatrixStore) where the
left/parameter matrix is a plane rotation. |
void |
transformRight(Householder.Reference<Double> aTransf,
int aFirstRow)
|
void |
transformRight(Householder<Double> aTransf,
int aFirstRow)
|
void |
transformRight(Rotation<Double> aTransf)
As in MatrixStore.multiplyRight(MatrixStore) where the
right/parameter matrix is a plane rotation. |
PrimitiveDenseStore |
transpose()
Each call must produce a new instance. |
void |
visitAll(AggregatorFunction<Double> aVisitor)
|
void |
visitColumn(int aRow,
int aCol,
AggregatorFunction<Double> aVisitor)
|
void |
visitDiagonal(int aRow,
int aCol,
AggregatorFunction<Double> aVisitor)
|
void |
visitRow(int aRow,
int aCol,
AggregatorFunction<Double> aVisitor)
|
| Methods inherited from class org.ojalgo.array.PrimitiveArray |
|---|
doubleValue, exchange, fill, fill, fill, fill, get, getIndexOfLargest, isAbsolute, isReal, isZero, modify, modify, modify, modify, modify, modify, searchAscending, set, set, sortAscending, toScalar, visit |
| Methods inherited from class java.lang.Object |
|---|
getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final PhysicalStore.Factory<Double> FACTORY
public static boolean DEBUG
public final int length
| Constructor Detail |
|---|
@Deprecated
public PrimitiveDenseStore(int aRowDim,
int aColDim,
double[] anArray)
| Method Detail |
|---|
public Double aggregateAll(ChainableAggregator aVisitor)
aggregateAll in interface MatrixStore<Double>public Double aggregateAll(CollectableAggregator aVisitor)
aggregateAll in interface MatrixStore<Double>public Array2D<Double> asArray2D()
asArray2D in interface DecompositionStore<Double>public Array1D<Double> asList()
asList in interface PhysicalStore<Double>public final MatrixStore.Builder<Double> builder()
builder in interface MatrixStore<Double>
public void caxpy(Double aSclrA,
int aColX,
int aColY,
int aFirstRow)
PhysicalStorecolumn a * x plus y
[this(*,aColY)] = aSclrA [this(*,aColX)] + [this(*,aColY)]
caxpy in interface PhysicalStore<Double>public void computeInPlaceBidiagonal(boolean normalAspectRatio)
computeInPlaceBidiagonal in interface DecompositionStore<Double>public boolean computeInPlaceCholesky(boolean checkForSPD)
computeInPlaceCholesky in interface DecompositionStore<Double>public void computeInPlaceHessenberg(boolean upper)
computeInPlaceHessenberg in interface DecompositionStore<Double>public LUDecomposition.Pivot computeInPlaceLU(boolean assumeNoPivotingRequired)
computeInPlaceLU in interface DecompositionStore<Double>public void computeInPlaceQR()
computeInPlaceQR in interface DecompositionStore<Double>public void computeInPlaceTridiagonal()
computeInPlaceTridiagonal in interface DecompositionStore<Double>public PhysicalStore<Double> computeInPlaceTridiagonal(boolean someCollectTransformations)
public void computeInPlaceTridiagonalOld()
public PrimitiveDenseStore conjugate()
MatrixStore
conjugate in interface MatrixStore<Double>public PrimitiveDenseStore copy()
MatrixStore
copy in interface MatrixStore<Double>
public double doubleValue(int aRow,
int aCol)
aRow - A row index.aCol - A column index.
public boolean equals(MatrixStore<Double> aStore,
NumberContext aCntxt)
equals in interface MatrixStore<Double>public boolean equals(Object anObj)
equals in class PrimitiveArray
public void exchangeColumns(int aColA,
int aColB)
exchangeColumns in interface PhysicalStore<Double>
public void exchangeRows(int aRowA,
int aRowB)
exchangeRows in interface PhysicalStore<Double>public void fillAll(Double aNmbr)
fillAll in interface PhysicalStore<Double>
public void fillByMultiplying(MatrixStore<Double> aLeftArg,
MatrixStore<Double> aRightArg)
fillByMultiplying in interface PhysicalStore<Double>
public void fillColumn(int aRow,
int aCol,
Double aNmbr)
fillColumn in interface PhysicalStore<Double>
public void fillDiagonal(int aRow,
int aCol,
Double aNmbr)
fillDiagonal in interface PhysicalStore<Double>public void fillMatching(Access2D<Double> aSource2D)
fillMatching in interface PhysicalStore<Double>
public void fillMatching(Double aLeftArg,
BinaryFunction<Double> aFunc,
MatrixStore<Double> aRightArg)
PhysicalStoreWill replace the elements of [this] with the results of element wise invocation of the input binary funtion:
this(i,j) = aFunc.invoke(aLeftArg,aRightArg(i,j))
fillMatching in interface PhysicalStore<Double>
public void fillMatching(MatrixStore<Double> aLeftArg,
BinaryFunction<Double> aFunc,
Double aRightArg)
PhysicalStoreWill replace the elements of [this] with the results of element wise invocation of the input binary funtion:
this(i,j) = aFunc.invoke(aLeftArg(i,j),aRightArg))
fillMatching in interface PhysicalStore<Double>
public void fillMatching(MatrixStore<Double> aLeftArg,
BinaryFunction<Double> aFunc,
MatrixStore<Double> aRightArg)
PhysicalStoreWill replace the elements of [this] with the results of element wise invocation of the input binary funtion:
this(i,j) = aFunc.invoke(aLeftArg(i,j),aRightArg(i,j))
fillMatching in interface PhysicalStore<Double>
public void fillRow(int aRow,
int aCol,
Double aNmbr)
fillRow in interface PhysicalStore<Double>
public Householder<Double> generateHouseholderColumn(int aRow,
int aCol)
generateHouseholderColumn in interface PhysicalStore<Double>
public Householder<Double> generateHouseholderRow(int aRow,
int aCol)
generateHouseholderRow in interface PhysicalStore<Double>
public Double get(int aRow,
int aCol)
public int getColDim()
public PhysicalStore.Factory<Double> getFactory()
getFactory in interface MatrixStore<Double>
public int getIndexOfLargestInColumn(int aRow,
int aCol)
getIndexOfLargestInColumn in interface PhysicalStore<Double>
public int getIndexOfLargestInRow(int aRow,
int aCol)
getIndexOfLargestInRow in interface PhysicalStore<Double>public int getMinDim()
getMinDim in interface MatrixStore<Double>public int getRowDim()
public int hashCode()
hashCode in class PrimitiveArray
public boolean isAbsolute(int aRow,
int aCol)
isAbsolute in interface MatrixStore<Double>Scalar.isAbsolute()
public boolean isReal(int aRow,
int aCol)
isReal in interface MatrixStore<Double>Scalar.isReal()
public boolean isZero(int aRow,
int aCol)
isZero in interface MatrixStore<Double>Scalar.isZero()
public void maxpy(Double aSclrA,
MatrixStore<Double> aMtrxX)
PhysicalStorematrix a * x plus y
[this] = aSclrA [aMtrxX] + [this]
maxpy in interface PhysicalStore<Double>public void modifyAll(UnaryFunction<Double> aFunc)
modifyAll in interface PhysicalStore<Double>
public void modifyColumn(int aRow,
int aCol,
UnaryFunction<Double> aFunc)
modifyColumn in interface PhysicalStore<Double>
public void modifyDiagonal(int aRow,
int aCol,
UnaryFunction<Double> aFunc)
modifyDiagonal in interface PhysicalStore<Double>
public void modifyRow(int aRow,
int aCol,
UnaryFunction<Double> aFunc)
modifyRow in interface PhysicalStore<Double>public MatrixStore<Double> multiplyLeft(MatrixStore<Double> aStore)
multiplyLeft in interface MatrixStore<Double>public MatrixStore<Double> multiplyRight(MatrixStore<Double> aStore)
multiplyRight in interface MatrixStore<Double>
public void raxpy(Double aSclrA,
int aRowX,
int aRowY,
int aFirstCol)
PhysicalStorerow a * x plus y
[this(aRowY,*)] = aSclrA [this(aRowX,*)] + [this(aRowY,*)]
raxpy in interface PhysicalStore<Double>
public void set(int aRow,
int aCol,
double aNmbr)
set in interface PhysicalStore<Double>
public void set(int aRow,
int aCol,
Double aNmbr)
set in interface PhysicalStore<Double>
public void substituteBackwards(Access2D<Double> aBody,
boolean transposed)
DecompositionStore
substituteBackwards in interface DecompositionStore<Double>aBody - The equation system body parameters [A]transposed - true if the upper/right part of aBody is
actually stored in the lower/left part of the matrix.
public void substituteForwards(Access2D<Double> aBody,
boolean onesOnDiagonal,
Access2D<Double> aRHS,
boolean zerosAboveDiagonal)
DecompositionStore
substituteForwards in interface DecompositionStore<Double>aBody - The equation system body parameters [A]onesOnDiagonal - true if aBody as ones on the diagonal
public PrimitiveScalar toScalar(int aRow,
int aCol)
toScalar in interface MatrixStore<Double>
public void transformLeft(Householder.Reference<Double> aTransf,
int aFirstCol)
transformLeft in interface DecompositionStore<Double>
public void transformLeft(Householder<Double> aTransf,
int aFirstCol)
transformLeft in interface PhysicalStore<Double>public void transformLeft(Rotation<Double> aTransf)
PhysicalStore
As in MatrixStore.multiplyLeft(MatrixStore) where the
left/parameter matrix is a plane rotation.
Multiplying by a plane rotation from the left means that [this] gets two of its rows updated to new combinations of those two (current) rows.
There are two ways to transpose/invert a rotation. Either you negate the angle or you interchange the two indeces that define the rotation plane.
transformLeft in interface PhysicalStore<Double>PhysicalStore.transformRight(Rotation)
public void transformRight(Householder.Reference<Double> aTransf,
int aFirstRow)
transformRight in interface DecompositionStore<Double>
public void transformRight(Householder<Double> aTransf,
int aFirstRow)
transformRight in interface PhysicalStore<Double>public void transformRight(Rotation<Double> aTransf)
PhysicalStore
As in MatrixStore.multiplyRight(MatrixStore) where the
right/parameter matrix is a plane rotation.
Multiplying by a plane rotation from the right means that [this] gets two of its columns updated to new combinations of those two (current) columns.
There result is undefined if the two input indeces are the same (in which case the rotation plane is undefined).
transformRight in interface PhysicalStore<Double>PhysicalStore.transformLeft(Rotation)public PrimitiveDenseStore transpose()
MatrixStore
transpose in interface MatrixStore<Double>public void visitAll(AggregatorFunction<Double> aVisitor)
visitAll in interface MatrixStore<Double>
public void visitColumn(int aRow,
int aCol,
AggregatorFunction<Double> aVisitor)
visitColumn in interface MatrixStore<Double>
public void visitDiagonal(int aRow,
int aCol,
AggregatorFunction<Double> aVisitor)
visitDiagonal in interface MatrixStore<Double>
public void visitRow(int aRow,
int aCol,
AggregatorFunction<Double> aVisitor)
visitRow in interface MatrixStore<Double>public int size()
public final Array1D<N> asArray1D()
A utility facade that conveniently/consistently presents the BasicArray as a one-dimensional array. Note that you will modify the actual array by accessing it through this facade.
Disregards the array structure, and simply treats it as one-domensional.
public final Array2D<N> asArray2D(int aRowDim,
int aColDim)
A utility facade that conveniently/consistently presents the BasicArray as a two-dimensional array. Note that you will modify the actual array by accessing it through this facade.
If "this" has more than two dimensions then only the first plane of the first cube of the first... is used/accessed. If this only has one dimension then everything is assumed to be in the first column of the first plane of the first cube...
public final ArrayAnyD<N> asArrayAnyD(int[] aStructure)
A utility facade that conveniently/consistently presents the BasicArray as a multi-dimensional array. Note that you will modify the actual array by accessing it through this facade.
public final int size()
public String toString()
toString in class Object
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||