<div dir="ltr"><div dir="ltr">On Tue, May 9, 2023 at 4:15 AM Stephan Köhler <<a href="mailto:stephan.koehler@math.tu-freiberg.de">stephan.koehler@math.tu-freiberg.de</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Dear PETSc/Tao team,<br>
<br>
it seems to be that there is a bug in the LMVM matrix class:<br>
<br>
The function MatMultAdd_LMVM, see, e.g., <br>
<a href="https://petsc.org/release/src/ksp/ksp/utils/lmvm/lmvmimpl.c.html" rel="noreferrer" target="_blank">https://petsc.org/release/src/ksp/ksp/utils/lmvm/lmvmimpl.c.html</a> at line <br>
114, if the vectors Y and Z are the same, then the result is wrong, <br>
since the first MatMult overwrites also the value in Y.<br></blockquote><div><br></div><div>Yes, the condition for MatMultAdd() is that X is not the same as Z, so we need to either disallow</div><div>this case, or create a work vector in order to handle it.</div><div><br></div><div>Todd, which should be done?</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Best regards<br>
Stephan Köhler<br>
<br>
-- <br>
Stephan Köhler<br>
TU Bergakademie Freiberg<br>
Institut für numerische Mathematik und Optimierung<br>
<br>
Akademiestraße 6<br>
09599 Freiberg<br>
Gebäudeteil Mittelbau, Zimmer 2.07<br>
<br>
Telefon: +49 (0)3731 39-3173 (Büro)<br>
<br>
</blockquote></div><br clear="all"><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>