[Trilinos-Users] Jacobi and Gauss-Seidel smoothers

Martin Vymazal martin.vymazal at vki.ac.be
Tue Sep 13 11:43:54 EDT 2016


Hello,

  I'm trying to understand how to use Jacobi and Gauss-Seidel methods in 
Ifpack2 as smoothers. The documentation says that since Ifpack2 derives 
from Tpetra::Operator, it can also be used as a smoother. I found an 
example in Doxygen docs for Ifpack2::Relaxation which has the following 
code:

// Prepare an Ifpack2 preconditioner called 'prec'
// ...
// Prepare the relaxation instance for use.
prec.initialize ();
prec.compute ();
// Now prec may be used as a preconditioner or smoother,
// by calling its apply() method, just like any Tpetra::Operator.

Tpetra::Operator::apply(X, Y, ...) takes two Tpetra::MultiVectors, so I 
assume I can't update the values of the input vector in place and must 
store the updated entries of X in vector Y. Can X and Y be the same 
multivector? Could you please provide a simple example how to use 
Ifpack2 for relaxation? Thank you.

Regards,

  Martin


More information about the Trilinos-Users mailing list