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
Class LowerTriangDenseMatrix

    java.lang.Object
      no.uib.cipr.matrix.AbstractMatrix
          no.uib.cipr.matrix.LowerTriangDenseMatrix

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

Direct Known Subclasses:
  UnitLowerTriangDenseMatrix

    public class LowerTriangDenseMatrix

extends AbstractMatrix

Lower triangular dense matrix. It has the same storage layout as the `DenseMatrix`, but only refers to elements below or on the main diagonal. The remaining elements are assumed to be zero, but since they are never accessed, they need not be.

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
`LowerTriangDenseMatrix(int n)` Constructor for LowerTriangDenseMatrix
`LowerTriangDenseMatrix(Matrix A)` Constructor for LowerTriangDenseMatrix
`LowerTriangDenseMatrix(Matrix A, boolean deep)` Constructor for LowerTriangDenseMatrix
`LowerTriangDenseMatrix(Matrix A, int k)` Constructor for LowerTriangDenseMatrix
`LowerTriangDenseMatrix(Matrix A, int k, boolean deep)` Constructor for LowerTriangDenseMatrix

Method Summary
`void` | `add(int row, int column, double value)` `A(row,column) += value`
`LowerTriangDenseMatrix` | `copy()` Creates a deep copy of the matrix
`double` | `get(int row, int column)` Returns `A(row,column)`
`double[]` | `getData()` Returns the matrix contents.
`java.util.Iterator<MatrixEntry>` | `iterator()`
`Matrix` | `mult(double alpha, Matrix B, Matrix C)` `C = alpha*A*B`
`Vector` | `mult(double alpha, Vector x, Vector y)` `y = alpha*A*x`
`void` | `set(int row, int column, double value)` `A(row,column) = value`
`Matrix` | `set(Matrix B)` `A=B`.
`Matrix` | `solve(Matrix B, Matrix X)` `X = A\B`.
`Vector` | `solve(Vector b, Vector x)` `x = A\b`.
`Matrix` | `transAmult(double alpha, Matrix B, Matrix C)` `C = alpha*AT*B`
`Vector` | `transMult(double alpha, Vector x, Vector y)` `y = alpha*AT*x`
`Matrix` | `transSolve(Matrix B, Matrix X)` `X = AT\B`.
`Vector` | `transSolve(Vector b, Vector x)` `x = AT\b`.
`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, multAdd, multAdd, multAdd, multAdd, norm, norm1, normF, normInf, numColumns, numRows, rank1, rank1, rank1, rank1, rank1, rank1, rank2, rank2, rank2, rank2, scale, set, toString, transABmult, transABmult, transABmultAdd, transABmultAdd, transAmult, transAmultAdd, transAmultAdd, transBmult, transBmult, transBmultAdd, transBmultAdd, transMult, transMultAdd, transMultAdd, transpose, transpose, transRank1, transRank1, transRank2, transRank2`

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

Constructor Detail

### LowerTriangDenseMatrix

    public LowerTriangDenseMatrix(int n)

  Constructor for LowerTriangDenseMatrix

  Parameters:
    `n` - Size of the matrix. Since the matrix must be square, this equals both the number of rows and columns

### LowerTriangDenseMatrix

    public LowerTriangDenseMatrix(Matrix A)

  Constructor for LowerTriangDenseMatrix

  Parameters:
    `A` - Matrix to copy from. Only the lower triangular part is copied

### LowerTriangDenseMatrix

    public LowerTriangDenseMatrix(Matrix A,
                                  boolean deep)

  Constructor for LowerTriangDenseMatrix

  Parameters:
    `A` - Matrix to copy from. Only the lower triangular part is copied
    `deep` - If true, `A` is copied, else a shallow copy is made and the matrices share underlying storage. For this, `A` must be a dense matrix

### LowerTriangDenseMatrix

    public LowerTriangDenseMatrix(Matrix A,
                                  int k)

  Constructor for LowerTriangDenseMatrix

  Parameters:
    `A` - Matrix to copy from. Only the lower triangular part is copied
    `k` - Size of matrix to refer. `k<min(numRows,numColumns)`

### LowerTriangDenseMatrix

    public LowerTriangDenseMatrix(Matrix A,
                                  int k,
                                  boolean deep)

  Constructor for LowerTriangDenseMatrix

  Parameters:
    `A` - Matrix to copy from. Only the lower triangular part is copied
    `k` - Size of matrix to refer. `k<min(numRows,numColumns)`
    `deep` - If true, `A` is copied, else a shallow copy is made and the matrices share underlying storage. For this, `A` must be a dense matrix

Method Detail

### 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`

### get

    public double get(int row,
                      int column)

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

  Specified by:
    `get` in interface `Matrix`

### 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`

### copy

    public LowerTriangDenseMatrix 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

### mult

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

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

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

### transMult

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

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

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

### mult

    public Matrix mult(double alpha,
                       Matrix B,
                       Matrix C)

  Description copied from interface: `Matrix`
  `C = alpha*A*B`

  Specified by:
    `mult` in interface `Matrix`
  Overrides:
    `mult` in class `AbstractMatrix`
    `B` - Matrix such that `B.numRows() == A.numColumns()` and `B.numColumns() == C.numColumns()`
    `C` - Matrix such that `C.numRows() == A.numRows()` and `B.numColumns() == C.numColumns()`
  Returns:
    C

### transAmult

    public Matrix transAmult(double alpha,
                             Matrix B,
                             Matrix C)

  Description copied from interface: `Matrix`
  `C = alpha*AT*B`

  Specified by:
    `transAmult` in interface `Matrix`
  Overrides:
    `transAmult` in class `AbstractMatrix`
    `B` - Matrix such that `B.numRows() == A.numRows()` and `B.numColumns() == C.numColumns()`
    `C` - Matrix such that `C.numRows() == A.numColumns()` and `B.numColumns() == C.numColumns()`
  Returns:
    C

### solve

    public Matrix solve(Matrix B,
                        Matrix X)

  Description copied from interface: `Matrix`
  `X = A\B`. Not all matrices support this operation, those that do not throw `UnsupportedOperationException`. Note that it is often more efficient to use a matrix decomposition and its associated solver

  Specified by:
    `solve` in interface `Matrix`
  Overrides:
    `solve` in class `AbstractMatrix`
  Parameters:
    `B` - Matrix with the same number of rows as `A`, and the same number of columns as `X`
    `X` - Matrix with a number of rows equal `A.numColumns()`, and the same number of columns as `B`
  Returns:
    X

### solve

    public Vector solve(Vector b,
                        Vector x)

  Description copied from interface: `Matrix`
  `x = A\b`. Not all matrices support this operation, those that do not throw `UnsupportedOperationException`. Note that it is often more efficient to use a matrix decomposition and its associated solver

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

### transSolve

    public Matrix transSolve(Matrix B,
                             Matrix X)

  Description copied from interface: `Matrix`
  `X = AT\B`. Not all matrices support this operation, those that do not throw `UnsupportedOperationException`. Note that it is often more efficient to use a matrix decomposition and its associated transpose solver

  Specified by:
    `transSolve` in interface `Matrix`
  Overrides:
    `transSolve` in class `AbstractMatrix`
  Parameters:
    `B` - Matrix with a number of rows equal `A.numColumns()`, and the same number of columns as `X`
    `X` - Matrix with the same number of rows as `A`, and the same number of columns as `B`
  Returns:
    X

### transSolve

    public Vector transSolve(Vector b,
                             Vector x)

  Description copied from interface: `Matrix`
  `x = AT\b`. Not all matrices support this operation, those that do not throw `UnsupportedOperationException`. Note that it is often more efficient to use a matrix decomposition and its associated solver

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

### iterator

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

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

### getData

    public double[] getData()

  Returns the matrix contents. Ordering depends on the underlying storage assumptions

### set

    public Matrix set(Matrix B)

  Description copied from interface: `Matrix`
  `A=B`. The matrices must be of the same size

  Specified by:
    `set` in interface `Matrix`
  Overrides:
    `set` 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

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