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.distributed
Class TwoLevelPreconditioner

    java.lang.Object
      no.uib.cipr.matrix.distributed.BlockDiagonalPreconditioner
          no.uib.cipr.matrix.distributed.TwoLevelPreconditioner

All Implemented Interfaces:
  Preconditioner

    public class TwoLevelPreconditioner

extends BlockDiagonalPreconditioner

Two level preconditioner. Uses a block preconditioner as a subdomain solver, and algebraically constructs a coarse grid correcion operator

Constructor Summary
`TwoLevelPreconditioner(Preconditioner prec, DistColMatrix A, DistVector z)`
`TwoLevelPreconditioner(Preconditioner prec, DistRowMatrix A, DistVector z)`

Method Summary
`Vector` | `apply(Vector b, Vector x)` Solves the approximate problem with the given right hand side.
`void` | `setMatrix(Matrix A)` Sets the operator matrix for the preconditioner.
`Vector` | `transApply(Vector b, Vector x)` Solves the approximate transpose problem with the given right hand side.

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

Constructor Detail

### TwoLevelPreconditioner

    public TwoLevelPreconditioner(Preconditioner prec,
                                  DistRowMatrix A,
                                  DistVector z)

### TwoLevelPreconditioner

    public TwoLevelPreconditioner(Preconditioner prec,
                                  DistColMatrix A,
                                  DistVector z)

Method Detail

### apply

    public Vector apply(Vector b,
                        Vector x)

  Description copied from interface: `Preconditioner`
  Solves the approximate problem with the given right hand side. Result is stored in given solution vector

  Specified by:
    `apply` in interface `Preconditioner`
  Overrides:
    `apply` in class `BlockDiagonalPreconditioner`
  Parameters:
    `b` - Right hand side of problem
    `x` - Result is stored here
  Returns:
    x

### transApply

    public Vector transApply(Vector b,
                             Vector x)

  Description copied from interface: `Preconditioner`
  Solves the approximate transpose problem with the given right hand side. Result is stored in given solution vector

  Specified by:
    `transApply` in interface `Preconditioner`
  Overrides:
    `transApply` in class `BlockDiagonalPreconditioner`
  Parameters:
    `b` - Right hand side of problem
    `x` - Result is stored here
  Returns:
    x

### setMatrix

    public void setMatrix(Matrix A)

  Description copied from interface: `Preconditioner`
  Sets the operator matrix for the preconditioner. This method must be called before a preconditioner is used by an iterative solver

  Specified by:
    `setMatrix` in interface `Preconditioner`
  Overrides:
    `setMatrix` in class `BlockDiagonalPreconditioner`
  Parameters:
    `A` - Matrix to setup the preconditioner for. Not modified

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