<html>
<head>
</head>
<body class='hmmessage'><div dir='ltr'>

<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style>
<div dir="ltr">Gaetan,<br><br>Do you observe this behavior on some smaller matrices? I would say that an easy way to test this on a small linear system is to build the PC with the untransposed preconditioning matrix, get the overlapping partition IS with PCASMGetLocalSubdomains, destroy the PC, create a new one with the transposed preconditioning matrix, and set the partition with PCASMSetLocalSubdomains (using the stored IS).<br><br>And did you ever observe this behavior without any overlap: ASM(overlap 0)? <br><br>What do you mean when you say that left preconditioning fails? Does it stagnate? Converge slowly? It is rather strange I think.<br><br>Francois.<br><br><br><div><hr id="stopSpelling">Date: Mon, 24 Nov 2014 08:03:17 -0500<br>Subject: Re: [petsc-users] Convergence of transposed linear system.<br>From: gaetank@gmail.com<br>To: fpacull@hotmail.com<br>CC: petsc-users@mcs.anl.gov<br><br><div dir="ltr"><div>That is a good idea to try Francois. Do you know if there is a easy way to try that in PETSc? However, in my case, I'm not using an upwind scheme, but rather a 2nd order JST scheme for the preconditioner. Also, we have observed the same behavior even for Euler systems, although both the direct/adjoint systems in this case are easier to solve and the difference between the systems is less dramatic.</div><div><br></div><div>I also though about using left preconditioning for the adjoint system instead of right preconditioning, but left preconditioning consistently fails even for the untransposed system. I have no idea why left preconditioning doesn't work.</div><div><br></div><div>Gaetan</div><div class="ecxgmail_extra"><br><div class="ecxgmail_quote">On Mon, Nov 24, 2014 at 6:24 AM, francois Pacull <span dir="ltr"><<a href="mailto:fpacull@hotmail.com" target="_blank">fpacull@hotmail.com</a>></span> wrote:<br><blockquote class="ecxgmail_quote" style="border-left:1px #ccc solid;padding-left:1ex;">


<div><div dir="ltr">Hello,<br><br>This is just an idea but this might be due to the fact that the structure of the preconditioner is severely unsymmetrical when using a first-order upwind scheme without viscous terms: when building the overlap, the non-zero terms in the row-wise extra-diagonal blocks yield the list of vertices to add to each subdomain. If you use the transpose of the preconditioner, it still uses the row-wise and not the column-wise extra-diagonal blocks. So maybe you should build the ASM(1) preconditioner with the untransposed matrix first, and then transpose the preconditioning matrix? You may also change the side of the preconditioner, for the transposed system.<br><br>Francois.<br><br><br><div><hr>Date: Sun, 23 Nov 2014 20:54:20 -0500<br>From: <a href="mailto:gaetank@gmail.com" target="_blank">gaetank@gmail.com</a><br>To: <a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a><span><br>Subject: [petsc-users] Convergence of transposed linear system.<br><br></span><div><div class="h5"><div dir="ltr">Hi everyone<div><br></div><div>I have a question relating to preconditioning effectiveness on large transposed systems. The linear system I'm trying to solve is jacobian matrix of 3D RANS CFD solver. The bock matrix consists of about 3 million block rows with a block size of 6: 5 for the inviscid part and 1 for the SA turbulence model. </div><div><br></div><div>The preconditioning matrix is different from the linear system matrix in two ways: It uses a first order discretization (instead of second order) and the viscous fluxes are dropped. </div><div><br></div><div>The untransposed system converges about 6 orders of magnitude with GRMES(100), ASM (overlap 1) and ILU(1) with RCM reordering. The test is run on 128 processors.  There are no convergence difficulties. </div><div><br></div><div>However, when I try to solve the transpose of the same system, by either calling KSPSolveTranspose() or by assembling the transpose of the linear system and its preconditioner and calling KSPSolve(), GMRES stagnates after a negligible drop in the residual and no further progress is made. </div><div><br></div><div>I have successfully solved this transpose system by using a different preconditioner that includes the complete linearization of the viscous terms (~4 times as many non-zeros in PC matrix) and a much much stronger preconditioner (ASM(2), ILU(2) with 200 GMRES reset. <br></div><div><br></div><div>My question is why does the solution of the transpose system with the same method perform so terribly? Is it normal that vastly stronger preconditioning method is required to solve transpose systems?</div><div><br></div><div>Any suggestions would be greatly appreciated</div><div><br></div><div>Gaetan</div></div></div></div></div>                                    </div></div>
</blockquote></div><br></div></div></div></div>
                                          </div></body>
</html>