<div dir="ltr"><div dir="ltr">On Thu, Oct 22, 2020 at 4:24 AM Marcel Huysegoms <<a href="mailto:m.huysegoms@fz-juelich.de">m.huysegoms@fz-juelich.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">Hi all,<br>
<br>
I'm currently implementing a Gauss-Newton approach for minimizing a<br>
non-linear cost function using PETSc4py.<br>
The (rectangular) linear systems I am trying to solve have dimensions of<br>
about (5N, N), where N is in the range of several hundred millions.<br>
<br>
Due to its size and because it's an over-determined system, I use LSQR<br>
in conjunction with a preconditioner (which operates on A^T x A, e.g.<br>
BJacobi).<br>
Depending on the ordering of the unknowns the algorithm only converges<br>
for special cases. When I use a direct LR solver (as preconditioner) it<br>
consistently converges, but consumes too much memory. I have read in the<br>
manual that the LR solver internally also applies a matrix reordering<br>
beforehand.<br>
<br>
My question would be:<br>
How can I improve the ordering of the unknowns for a rectangular matrix<br>
(in order to converge also with iterative preconditioners)? If I use<br>
MatGetOrdering(), it only works for square matrices. Is there a way to<br>
achieve this from within PETSc4py?<br>
ParMETIS seems to be a promising framework for that task. Is it possible<br>
to apply its reordering algorithm to a rectangular PETSc-matrix?<br>
<br>
I would be thankful for every bit of advice that might help.<br></blockquote><div><br></div><div>We do not have any rectangular reordering algorithms. I think your first step is to</div><div>find something in the literature that you think will work.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </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>
Marcel<br>
<br>
<br>
------------------------------------------------------------------------------------------------<br>
------------------------------------------------------------------------------------------------<br>
Forschungszentrum Juelich GmbH<br>
52425 Juelich<br>
Sitz der Gesellschaft: Juelich<br>
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498<br>
Vorsitzender des Aufsichtsrats: MinDir Volker Rieke<br>
Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),<br>
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt<br>
------------------------------------------------------------------------------------------------<br>
------------------------------------------------------------------------------------------------<br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <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>