Next: Use:
Up: 7 Solvers and Preconditioners
Previous: 7 Solvers and Preconditioners
-
Pass to the solver the information defining the problem. In the
typical user cycle, the user has passed this information into a matrix
through one of the conceptual interfaces prior to setting up the
solver. In this situation, the problem definition information is then
passed to the solver by passing the constructed matrix into the
solver. As described before, the matrix and solver must be compatible,
in that the matrix must provide the services needed by the
solver. Krylov solvers, for example, need only a matrix-vector
multiplication. Most preconditioners, on the other hand, have
additional requirements such as access to the matrix coefficients.
-
Choose parameters for the preconditioner and/or solver.
Parameters are chosen through the
Set()
calls provided by the
solver. As is true throughout HYPRE, all parameters have
reasonable defaults if not chosen. Note that in HYPRE, convergence
criteria can be chosen after the preconditioner/solver has been setup.
-
Pass the preconditioner to the solver. For solvers that are not
preconditioned, this step is omitted. The preconditioner is passed
through the
SetPreconditioner()
call.
-
Set up the solver. This is just the
Setup()
routine.
At this point, the solver/preconditioner is fully constructed and
ready for use.
Next: Use:
Up: 7 Solvers and Preconditioners
Previous: 7 Solvers and Preconditioners
Thomas Treadway
Fri Jul 27 10:01:25 PDT 2001