From 81cc845dc1adf1d2b8b0c8db2e87552cf5ca2a8c Mon Sep 17 00:00:00 2001 From: Andy Nonaka Date: Mon, 2 Dec 2024 20:34:12 -0800 Subject: [PATCH] Add comment on GMRES solver (#4254) Additional comment on how the preconditioners in GMRES should be implemented. --- Src/LinearSolvers/AMReX_GMRES.H | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Src/LinearSolvers/AMReX_GMRES.H b/Src/LinearSolvers/AMReX_GMRES.H index a5105dc3a41..76662c797db 100644 --- a/Src/LinearSolvers/AMReX_GMRES.H +++ b/Src/LinearSolvers/AMReX_GMRES.H @@ -65,8 +65,9 @@ namespace amrex { * returns the 2-norm of v. For example, `return v.norm2()`. * * - `void precond(V& lhs, V const& rhs)`\n - * applies preconditioner to rhs. If there is no preconditioner, - * this function should do lhs = rhs. + * applies right-preconditioning, i.e., + * solve P(lhs) = rhs, where P is an approximation to A + * If there is no preconditioner, P = I and thus this function should do lhs = rhs. * * - `void scale(V& v, RT fac)`\n * scales v by fac. For example, `v.mult(fac)`.