|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.jscience.mathematics.algebraic.AbstractHypermatrix
org.jscience.mathematics.algebraic.AbstractMatrix
org.jscience.mathematics.algebraic.matrices.AbstractDoubleMatrix
org.jscience.mathematics.algebraic.matrices.AbstractDoubleSquareMatrix
org.jscience.mathematics.algebraic.matrices.DoubleDiagonalMatrix
public class DoubleDiagonalMatrix
The DoubleDiagonalMatrix class provides an object for encapsulating double diagonal matrices.
| Field Summary | |
|---|---|
protected double[] |
diag
Diagonal data. |
| Fields inherited from class org.jscience.mathematics.algebraic.matrices.AbstractDoubleSquareMatrix |
|---|
LU, LUpivot |
| Constructor Summary | |
|---|---|
DoubleDiagonalMatrix(double[] array)
Constructs a matrix by wrapping an array containing the diagonal elements. |
|
DoubleDiagonalMatrix(double[][] array)
Constructs a matrix from an array. |
|
DoubleDiagonalMatrix(DoubleDiagonalMatrix mat)
Copy constructor. |
|
DoubleDiagonalMatrix(int size)
Constructs an empty matrix. |
|
| Method Summary | |
|---|---|
AbstractDoubleSquareMatrix |
add(AbstractDoubleSquareMatrix m)
Returns the addition of this matrix and another. |
DoubleDiagonalMatrix |
add(DoubleDiagonalMatrix m)
Returns the addition of this matrix and another. |
DoubleSquareMatrix |
add(DoubleSquareMatrix m)
|
DoubleTridiagonalMatrix |
add(DoubleTridiagonalMatrix m)
Returns the addition of this matrix and another. |
AbstractDoubleSquareMatrix[] |
choleskyDecompose()
Returns the Cholesky decomposition of this matrix. |
java.lang.Object |
clone()
Clone matrix into a new matrix. |
double |
det()
Returns the determinant. |
boolean |
equals(AbstractDoubleMatrix m,
double tol)
Compares two ${nativeTyp} matrices for equality. |
double |
frobeniusNorm()
Returns the Frobenius (l2) norm. |
int |
getK1()
DOCUMENT ME! |
int |
getK2()
DOCUMENT ME! |
double |
getPrimitiveElement(int i,
int j)
Returns an element of the matrix. |
static DoubleDiagonalMatrix |
identity(int size)
Creates an identity matrix. |
double |
infNorm()
Returns the l -norm. |
AbstractDoubleSquareMatrix |
inverse()
Returns the inverse of this matrix. |
boolean |
isSymmetric()
Returns true if this matrix is symmetric. |
AbstractDoubleSquareMatrix[] |
luDecompose(int[] pivot)
Returns the LU decomposition of this matrix. |
AbstractDoubleMatrix |
mapElements(PrimitiveMapping f)
Applies a function on all the matrix elements. |
AbstractDoubleSquareMatrix |
multiply(AbstractDoubleSquareMatrix m)
Returns the multiplication of this matrix and another. |
AbstractDoubleVector |
multiply(AbstractDoubleVector v)
Returns the multiplication of a vector by this matrix. |
DoubleDiagonalMatrix |
multiply(DoubleDiagonalMatrix m)
|
DoubleSquareMatrix |
multiply(DoubleSquareMatrix m)
|
DoubleTridiagonalMatrix |
multiply(DoubleTridiagonalMatrix m)
|
double |
operatorNorm()
Returns the operator norm. |
AbstractDoubleSquareMatrix[] |
qrDecompose()
Returns the QR decomposition of this matrix. |
AbstractDoubleMatrix |
scalarDivide(double x)
Returns the division of this matrix by a scalar. |
AbstractDoubleMatrix |
scalarMultiply(double x)
Returns the multiplication of this matrix by a scalar. |
double |
scalarProduct(AbstractDoubleSquareMatrix m)
Returns the scalar product of this matrix and another. |
double |
scalarProduct(DoubleDiagonalMatrix m)
|
double |
scalarProduct(DoubleSquareMatrix m)
|
double |
scalarProduct(DoubleTridiagonalMatrix m)
|
void |
setAllElements(double r)
Sets the value of all elements of the matrix. |
void |
setElement(int i,
int j,
double x)
Sets the value of an element of the matrix. |
AbstractDoubleSquareMatrix[] |
singularValueDecompose()
Returns the singular value decomposition of this matrix. |
AbstractDoubleSquareMatrix |
subtract(AbstractDoubleSquareMatrix m)
Returns the subtraction of this matrix by another. |
DoubleDiagonalMatrix |
subtract(DoubleDiagonalMatrix m)
Returns the subtraction of this matrix and another. |
DoubleSquareMatrix |
subtract(DoubleSquareMatrix m)
|
DoubleTridiagonalMatrix |
subtract(DoubleTridiagonalMatrix m)
Returns the subtraction of this matrix and another. |
AbstractComplexMatrix |
toComplexMatrix()
Converts this matrix to a complex matrix. |
AbstractIntegerMatrix |
toIntegerMatrix()
Converts this matrix to an integer matrix. |
double[][] |
toPrimitiveArray()
Projects the vector to an array. |
java.lang.String |
toString()
Returns a string representing this matrix. |
double |
trace()
Returns the trace. |
Matrix |
transpose()
Returns the transpose of this matrix. |
| Methods inherited from class org.jscience.mathematics.algebraic.matrices.AbstractDoubleSquareMatrix |
|---|
add, directSum, isUnitary, negate, polarDecompose, scalarProduct, subtract, tensorProduct |
| Methods inherited from class org.jscience.mathematics.algebraic.matrices.AbstractDoubleMatrix |
|---|
abs, add, directSum, equals, equals, getColumn, getElement, getMatrixAsColumns, getMatrixAsRows, getRow, getSet, getSubMatrix, hashCode, horizontalAxisSymmetry, mass, max, mean, min, multiply, multiply, read, reverse, scalarDivide, scalarMultiply, setColumn, setRow, setSubMatrix, subtract, tensorProduct, verticalAxisSymmetry |
| Methods inherited from class org.jscience.mathematics.algebraic.AbstractMatrix |
|---|
getElement, getInvalidElementMsg, numColumns, numRows, print, print, print, print, toArray, toArray |
| Methods inherited from class org.jscience.mathematics.algebraic.AbstractHypermatrix |
|---|
getDimensions, numDimensions, numElements, numElements, toArray |
| Methods inherited from class java.lang.Object |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.jscience.mathematics.algebraic.Matrix |
|---|
getColumn, getElement, getRow, numColumns, numRows, toArray |
| Methods inherited from interface org.jscience.mathematics.algebraic.Hypermatrix |
|---|
getDimensions, getElement, numDimensions, numElements, numElements, toArray, toArray |
| Field Detail |
|---|
protected final double[] diag
| Constructor Detail |
|---|
public DoubleDiagonalMatrix(int size)
size - the number of rows/columnspublic DoubleDiagonalMatrix(double[][] array)
array - an assigned value
IllegalDimensionException - If the array is not square.public DoubleDiagonalMatrix(double[] array)
array - an assigned valuepublic DoubleDiagonalMatrix(DoubleDiagonalMatrix mat)
mat - an assigned value| Method Detail |
|---|
public static DoubleDiagonalMatrix identity(int size)
size - the number of rows/columns
public boolean equals(AbstractDoubleMatrix m,
double tol)
equals in class AbstractDoubleMatrixm - a double matrixpublic int getK1()
BandedMatrix
getK1 in interface BandedMatrixpublic int getK2()
BandedMatrix
getK2 in interface BandedMatrixpublic java.lang.String toString()
toString in class AbstractDoubleMatrixpublic AbstractIntegerMatrix toIntegerMatrix()
toIntegerMatrix in class AbstractDoubleSquareMatrixpublic AbstractComplexMatrix toComplexMatrix()
toComplexMatrix in class AbstractDoubleSquareMatrix
public double getPrimitiveElement(int i,
int j)
getPrimitiveElement in class AbstractDoubleMatrixi - row index of the elementj - column index of the element
IllegalDimensionException - If attempting to access an invalid element.
public void setElement(int i,
int j,
double x)
setElement in class AbstractDoubleMatrixi - row index of the elementj - column index of the elementx - a number
IllegalDimensionException - If attempting to access an invalid element.public void setAllElements(double r)
setAllElements in class AbstractDoubleMatrixr - a Complex elementpublic boolean isSymmetric()
isSymmetric in interface SquareMatrixisSymmetric in class AbstractDoubleSquareMatrixpublic double det()
det in class AbstractDoubleSquareMatrixpublic double trace()
trace in class AbstractDoubleSquareMatrixpublic double infNorm()
-norm.
infNorm in class AbstractDoubleMatrixpublic double frobeniusNorm()
frobeniusNorm in class AbstractDoubleMatrix
public double operatorNorm()
throws MaximumIterationsExceededException
operatorNorm in class AbstractDoubleSquareMatrixMaximumIterationsExceededException - If it takes more than 50 iterations to determine an eigenvalue.public AbstractDoubleSquareMatrix add(AbstractDoubleSquareMatrix m)
add in class AbstractDoubleSquareMatrixm - a double matrix
IllegalDimensionException - If the matrices are different sizes.public DoubleSquareMatrix add(DoubleSquareMatrix m)
public DoubleTridiagonalMatrix add(DoubleTridiagonalMatrix m)
m - a double tridiagonal matrix
IllegalDimensionException - If the matrices are different sizes.public DoubleDiagonalMatrix add(DoubleDiagonalMatrix m)
m - a double diagonal matrix
IllegalDimensionException - If the matrices are different sizes.public AbstractDoubleSquareMatrix subtract(AbstractDoubleSquareMatrix m)
subtract in class AbstractDoubleSquareMatrixm - a double matrix
IllegalDimensionException - If the matrices are different sizes.public DoubleSquareMatrix subtract(DoubleSquareMatrix m)
public DoubleTridiagonalMatrix subtract(DoubleTridiagonalMatrix m)
m - a double tridiagonal matrix
IllegalDimensionException - If the matrices are different sizes.public DoubleDiagonalMatrix subtract(DoubleDiagonalMatrix m)
m - a double diagonal matrix
IllegalDimensionException - If the matrices are different sizes.public AbstractDoubleMatrix scalarMultiply(double x)
scalarMultiply in class AbstractDoubleSquareMatrixx - a double.
public AbstractDoubleMatrix scalarDivide(double x)
scalarDivide in class AbstractDoubleSquareMatrixx - a double.
public double scalarProduct(AbstractDoubleSquareMatrix m)
scalarProduct in class AbstractDoubleSquareMatrixm - a double matrix.
IllegalDimensionException - If the matrices are different sizes.public double scalarProduct(DoubleSquareMatrix m)
public double scalarProduct(DoubleTridiagonalMatrix m)
public double scalarProduct(DoubleDiagonalMatrix m)
public AbstractDoubleVector multiply(AbstractDoubleVector v)
multiply in class AbstractDoubleMatrixv - a double vector.
IllegalDimensionException - If the matrix and vector are incompatible.public AbstractDoubleSquareMatrix multiply(AbstractDoubleSquareMatrix m)
multiply in class AbstractDoubleSquareMatrixm - a double matrix
IllegalDimensionException - If the matrices are incompatible.public DoubleSquareMatrix multiply(DoubleSquareMatrix m)
public DoubleTridiagonalMatrix multiply(DoubleTridiagonalMatrix m)
public DoubleDiagonalMatrix multiply(DoubleDiagonalMatrix m)
public Matrix transpose()
transpose in interface Matrixtranspose in class AbstractDoubleSquareMatrixpublic AbstractDoubleSquareMatrix inverse()
inverse in class AbstractDoubleSquareMatrixpublic AbstractDoubleSquareMatrix[] luDecompose(int[] pivot)
luDecompose in class AbstractDoubleSquareMatrixpivot - an empty array of length numRows()+1
to hold the pivot information (null if not interested).
The last array element will contain the parity.
public AbstractDoubleSquareMatrix[] choleskyDecompose()
choleskyDecompose in class AbstractDoubleSquareMatrixpublic AbstractDoubleSquareMatrix[] qrDecompose()
qrDecompose in class AbstractDoubleSquareMatrixpublic AbstractDoubleSquareMatrix[] singularValueDecompose()
singularValueDecompose in class AbstractDoubleSquareMatrixpublic AbstractDoubleMatrix mapElements(PrimitiveMapping f)
mapElements in class AbstractDoubleMatrixf - a user-defined function
public java.lang.Object clone()
clone in class java.lang.Objectpublic double[][] toPrimitiveArray()
toPrimitiveArray in class AbstractDoubleMatrix
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||