Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## no.uib.cipr.matrix.sparse
Class CompDiagMatrix

    java.lang.Object
      no.uib.cipr.matrix.AbstractMatrix
          no.uib.cipr.matrix.sparse.CompDiagMatrix

All Implemented Interfaces:
  java.lang.Iterable<MatrixEntry>, Matrix

    public class CompDiagMatrix

extends AbstractMatrix

Compressed diagonal storage (CDS) matrix

Nested Class Summary

Nested classes/interfaces inherited from interface no.uib.cipr.matrix.Matrix
`Matrix.Norm`

Field Summary

Fields inherited from class no.uib.cipr.matrix.AbstractMatrix
`numColumns, numRows`

Constructor Summary
`CompDiagMatrix(int numRows, int numColumns)` Creates a new sparse matrix without preallocation
`CompDiagMatrix(int numRows, int numColumns, int[] diagonal)` Creates a new sparse matrix with the given diagonals preallocated.
`CompDiagMatrix(Matrix A)` Creates a new sparse matrix copied from the given matrix.
`CompDiagMatrix(Matrix A, boolean deep)` Creates a new sparse matrix copied from the given matrix.
`CompDiagMatrix(Matrix A, int[] diagonal)` Creates a new sparse matrix copied from the given matrix.
`CompDiagMatrix(Matrix A, int[] diagonal, boolean deep)` Creates a new sparse matrix copied from the given matrix.
`CompDiagMatrix(MatrixVectorReader r)` Constructor for CompDiagMatrix

Method Summary
`void` | `add(int row, int column, double value)` `A(row,column) += value`
`Matrix` | `copy()` Creates a deep copy of the matrix
`double` | `get(int row, int column)` Returns `A(row,column)`
`double[][]` | `getDiagonals()` Returns the internal diagonal storage
`int[]` | `getIndex()` Returns the diagonal offsets
`java.util.Iterator<MatrixEntry>` | `iterator()`
`Vector` | `mult(Vector x, Vector y)` `y = A*x`
`Vector` | `multAdd(double alpha, Vector x, Vector y)` `y = alpha*A*x + y`
`void` | `set(int row, int column, double value)` `A(row,column) = value`
`Vector` | `transMultAdd(double alpha, Vector x, Vector y)` `y = alpha*AT*x + y`
`Matrix` | `zero()` Zeros all the entries in the matrix, while preserving any underlying structure.

Methods inherited from class no.uib.cipr.matrix.AbstractMatrix
`add, add, check, checkMultAdd, checkMultAdd, checkRank1, checkRank1, checkRank2, checkRank2, checkSize, checkSolve, checkSolve, checkTransABmultAdd, checkTransAmultAdd, checkTransBmultAdd, checkTransMultAdd, checkTranspose, checkTranspose, checkTransRank1, checkTransRank2, isSquare, max, max, mult, mult, mult, multAdd, multAdd, multAdd, norm, norm1, normF, normInf, numColumns, numRows, rank1, rank1, rank1, rank1, rank1, rank1, rank2, rank2, rank2, rank2, scale, set, set, solve, solve, toString, transABmult, transABmult, transABmultAdd, transABmultAdd, transAmult, transAmult, transAmultAdd, transAmultAdd, transBmult, transBmult, transBmultAdd, transBmultAdd, transMult, transMult, transMultAdd, transpose, transpose, transRank1, transRank1, transRank2, transRank2, transSolve, transSolve`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### CompDiagMatrix

    public CompDiagMatrix(MatrixVectorReader r)
                   throws java.io.IOException

  Constructor for CompDiagMatrix

  Parameters:
    `r` - Reader to get sparse matrix from
  Throws:
    `java.io.IOException`

### CompDiagMatrix

    public CompDiagMatrix(int numRows,
                          int numColumns,
                          int[] diagonal)

  Creates a new sparse matrix with the given diagonals preallocated. A negative index is a subdiagonal, positive is superdiagonal

### CompDiagMatrix

    public CompDiagMatrix(int numRows,
                          int numColumns)

  Creates a new sparse matrix without preallocation

### CompDiagMatrix

    public CompDiagMatrix(Matrix A,
                          int[] diagonal,
                          boolean deep)

  Creates a new sparse matrix copied from the given matrix. Can take a deep copy or a shallow copy. For the latter, the supplied matrix must be a CompDiagMatrix. Preallocation is also possible, but is only used for the deep copy.

### CompDiagMatrix

    public CompDiagMatrix(Matrix A,
                          int[] diagonal)

  Creates a new sparse matrix copied from the given matrix. Takes a deep copy, with possibility to specify preallocation

### CompDiagMatrix

    public CompDiagMatrix(Matrix A,
                          boolean deep)

  Creates a new sparse matrix copied from the given matrix. Can take a deep copy or a shallow copy. For the latter, the supplied matrix must be a CompDiagMatrix. No preallocation is done

### CompDiagMatrix

    public CompDiagMatrix(Matrix A)

  Creates a new sparse matrix copied from the given matrix. Takes a deep copy without preallocation

Method Detail

### getDiagonals

    public double[][] getDiagonals()

  Returns the internal diagonal storage

### getIndex

    public int[] getIndex()

  Returns the diagonal offsets

### add

    public void add(int row,
                    int column,
                    double value)

  Description copied from interface: `Matrix`
  `A(row,column) += value`

  Specified by:
    `add` in interface `Matrix`
  Overrides:
    `add` in class `AbstractMatrix`

### get

    public double get(int row,
                      int column)

  Description copied from interface: `Matrix`
  Returns `A(row,column)`

  Specified by:
    `get` in interface `Matrix`
  Overrides:
    `get` in class `AbstractMatrix`

### set

    public void set(int row,
                    int column,
                    double value)

  Description copied from interface: `Matrix`
  `A(row,column) = value`

  Specified by:
    `set` in interface `Matrix`
  Overrides:
    `set` in class `AbstractMatrix`

### copy

    public Matrix copy()

  Description copied from interface: `Matrix`
  Creates a deep copy of the matrix

  Specified by:
    `copy` in interface `Matrix`
  Overrides:
    `copy` in class `AbstractMatrix`
  Returns:
    A

### zero

    public Matrix zero()

  Description copied from interface: `Matrix`
  Zeros all the entries in the matrix, while preserving any underlying structure. Useful for general, unstructured matrices.

  Specified by:
    `zero` in interface `Matrix`
  Overrides:
    `zero` in class `AbstractMatrix`
  Returns:
    A

### mult

    public Vector mult(Vector x,
                       Vector y)

  Description copied from interface: `Matrix`
  `y = A*x`

  Specified by:
    `mult` in interface `Matrix`
  Overrides:
    `mult` in class `AbstractMatrix`
  Parameters:
    `x` - Vector of size `A.numColumns()`
    `y` - Vector of size `A.numRows()`
  Returns:
    y

### multAdd

    public Vector multAdd(double alpha,
                          Vector x,
                          Vector y)

  Description copied from interface: `Matrix`
  `y = alpha*A*x + y`

  Specified by:
    `multAdd` in interface `Matrix`
  Overrides:
    `multAdd` in class `AbstractMatrix`
    `x` - Vector of size `A.numColumns()`
    `y` - Vector of size `A.numRows()`
  Returns:
    y

### transMultAdd

    public Vector transMultAdd(double alpha,
                               Vector x,
                               Vector y)

  Description copied from interface: `Matrix`
  `y = alpha*AT*x + y`

  Specified by:
    `transMultAdd` in interface `Matrix`
  Overrides:
    `transMultAdd` in class `AbstractMatrix`
    `x` - Vector of size `A.numRows()`
    `y` - Vector of size `A.numColumns()`
  Returns:
    y

### iterator

    public java.util.Iterator<MatrixEntry> iterator()

  Specified by:
    `iterator` in interface `java.lang.Iterable<MatrixEntry>`
  Overrides:
    `iterator` in class `AbstractMatrix`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD