jsci.maths.matrix.impl
Class AlgorithmsSparseDoubleArray2D

java.lang.Object
  extended by jsci.util.array.AbstractDoubleArray2D
      extended by jsci.util.array.SparseDoubleArray2D
          extended by jsci.maths.matrix.impl.AlgorithmsSparseDoubleArray2D
All Implemented Interfaces:
EigenDecomposition.Algorithms, Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>, AlgorithmsDoubleArray2D, Array2D<java.lang.Double>, DoubleArray2D

public class AlgorithmsSparseDoubleArray2D
extends SparseDoubleArray2D
implements AlgorithmsDoubleArray2D, EigenDecomposition.Algorithms


Field Summary
 
Fields inherited from class jsci.util.array.SparseDoubleArray2D
capacityIncrement, colPos, elements, numCols, numRows, rows, zeroTol
 
Constructor Summary
AlgorithmsSparseDoubleArray2D(double[][] array)
           
AlgorithmsSparseDoubleArray2D(double[][] array, double zeroTol, int capacityIncrement)
           
AlgorithmsSparseDoubleArray2D(int rows, int cols)
           
AlgorithmsSparseDoubleArray2D(int rowCount, int colCount, double zeroTol, int capacityIncrement)
           
 
Method Summary
 AlgorithmsDoubleArray1D act(AlgorithmsDoubleArray1D v)
           
 AlgorithmsDoubleArray1D act(AlgorithmsDoubleArray2D a, AlgorithmsDoubleArray1D v)
           
 AlgorithmsDoubleArray2D add(AlgorithmsDoubleArray2D b)
           
 AlgorithmsDoubleArray2D add(AlgorithmsDoubleArray2D a, AlgorithmsDoubleArray2D b)
           
 AlgorithmsDenseDoubleArray2D addOp(AlgorithmsDenseDoubleArray2D a)
           
 AlgorithmsSparseDoubleArray2D create(int rows, int cols)
           
 void eigenvalueIteration(int l, DoubleArray1D offdiag, int maxIters)
           
 AlgorithmsDoubleArray2D multiply(AlgorithmsDoubleArray2D b)
           
 AlgorithmsDoubleArray2D multiply(AlgorithmsDoubleArray2D a, AlgorithmsDoubleArray2D b)
           
 AlgorithmsDenseDoubleArray2D multiplyOp(AlgorithmsDenseDoubleArray2D a)
           
 void reductionIteration(int i, DoubleArray1D offdiag)
           
 AlgorithmsDoubleArray2D scalarMultiply(AlgorithmsDoubleArray2D a, java.lang.Double x)
           
 AlgorithmsSparseDoubleArray2D scalarMultiply(double x)
           
 AlgorithmsDoubleArray2D subtract(AlgorithmsDoubleArray2D b)
           
 AlgorithmsDoubleArray2D subtract(AlgorithmsDoubleArray2D a, AlgorithmsDoubleArray2D b)
           
 AlgorithmsDenseDoubleArray2D subtractOp(AlgorithmsDenseDoubleArray2D a)
           
 double trace()
           
 java.lang.Double trace(AlgorithmsDoubleArray2D a)
           
 AlgorithmsTransposedDoubleArray2D<AlgorithmsSparseDoubleArray2D> transpose()
           
 AlgorithmsDoubleArray2D transpose(AlgorithmsDoubleArray2D a)
           
 
Methods inherited from class jsci.util.array.SparseDoubleArray2D
addTo, columns, getDouble, getElementCount, rows, setDouble
 
Methods inherited from class jsci.util.array.AbstractDoubleArray2D
contentEquals, contentEquals, contentEquals, contentEqualsOp, contentEqualsOp, get, set, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface jsci.util.array.DoubleArray2D
getDouble, setDouble
 
Methods inherited from interface jsci.util.array.Array2D
columns, contentEquals, get, rows, set
 

Constructor Detail

AlgorithmsSparseDoubleArray2D

public AlgorithmsSparseDoubleArray2D(int rows,
                                     int cols)

AlgorithmsSparseDoubleArray2D

public AlgorithmsSparseDoubleArray2D(int rowCount,
                                     int colCount,
                                     double zeroTol,
                                     int capacityIncrement)

AlgorithmsSparseDoubleArray2D

public AlgorithmsSparseDoubleArray2D(double[][] array)

AlgorithmsSparseDoubleArray2D

public AlgorithmsSparseDoubleArray2D(double[][] array,
                                     double zeroTol,
                                     int capacityIncrement)
Method Detail

create

public AlgorithmsSparseDoubleArray2D create(int rows,
                                            int cols)
Specified by:
create in interface AlgorithmsDoubleArray2D
Specified by:
create in interface Array2D<java.lang.Double>
Specified by:
create in interface DoubleArray2D
Overrides:
create in class SparseDoubleArray2D

trace

public java.lang.Double trace(AlgorithmsDoubleArray2D a)
Specified by:
trace in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

trace

public double trace()
Specified by:
trace in interface AlgorithmsDoubleArray2D

transpose

public AlgorithmsDoubleArray2D transpose(AlgorithmsDoubleArray2D a)
Specified by:
transpose in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

transpose

public AlgorithmsTransposedDoubleArray2D<AlgorithmsSparseDoubleArray2D> transpose()
Specified by:
transpose in interface AlgorithmsDoubleArray2D

add

public AlgorithmsDoubleArray2D add(AlgorithmsDoubleArray2D a,
                                   AlgorithmsDoubleArray2D b)
Specified by:
add in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

add

public AlgorithmsDoubleArray2D add(AlgorithmsDoubleArray2D b)
Specified by:
add in interface AlgorithmsDoubleArray2D

addOp

public AlgorithmsDenseDoubleArray2D addOp(AlgorithmsDenseDoubleArray2D a)
Specified by:
addOp in interface AlgorithmsDoubleArray2D

subtract

public AlgorithmsDoubleArray2D subtract(AlgorithmsDoubleArray2D a,
                                        AlgorithmsDoubleArray2D b)
Specified by:
subtract in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

subtract

public AlgorithmsDoubleArray2D subtract(AlgorithmsDoubleArray2D b)
Specified by:
subtract in interface AlgorithmsDoubleArray2D

subtractOp

public AlgorithmsDenseDoubleArray2D subtractOp(AlgorithmsDenseDoubleArray2D a)
Specified by:
subtractOp in interface AlgorithmsDoubleArray2D

multiply

public AlgorithmsDoubleArray2D multiply(AlgorithmsDoubleArray2D a,
                                        AlgorithmsDoubleArray2D b)
Specified by:
multiply in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

multiply

public AlgorithmsDoubleArray2D multiply(AlgorithmsDoubleArray2D b)
Specified by:
multiply in interface AlgorithmsDoubleArray2D

multiplyOp

public AlgorithmsDenseDoubleArray2D multiplyOp(AlgorithmsDenseDoubleArray2D a)
Specified by:
multiplyOp in interface AlgorithmsDoubleArray2D

act

public AlgorithmsDoubleArray1D act(AlgorithmsDoubleArray2D a,
                                   AlgorithmsDoubleArray1D v)
Specified by:
act in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

act

public AlgorithmsDoubleArray1D act(AlgorithmsDoubleArray1D v)
Specified by:
act in interface AlgorithmsDoubleArray2D

scalarMultiply

public AlgorithmsDoubleArray2D scalarMultiply(AlgorithmsDoubleArray2D a,
                                              java.lang.Double x)
Specified by:
scalarMultiply in interface Algorithms<java.lang.Double,AlgorithmsDoubleArray2D,AlgorithmsDoubleArray1D>

scalarMultiply

public AlgorithmsSparseDoubleArray2D scalarMultiply(double x)
Specified by:
scalarMultiply in interface AlgorithmsDoubleArray2D

reductionIteration

public void reductionIteration(int i,
                               DoubleArray1D offdiag)
Specified by:
reductionIteration in interface EigenDecomposition.Algorithms

eigenvalueIteration

public void eigenvalueIteration(int l,
                                DoubleArray1D offdiag,
                                int maxIters)
Specified by:
eigenvalueIteration in interface EigenDecomposition.Algorithms