<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Barry,<div><br></div><div>First of all I would like to thank you very much for the time you have spent on this problem.</div><div><br></div><div><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div class="">   Attached I plotted the solution (as a 1d vector for all the solvers), as you can see all the answers are very different. </div></div></blockquote><div><br></div></div><div>Secondly I am well aware of most of the many limits in solving very ill-conditioned systems, however the reason that I keep going with that is I want to take advantage of direct solvers for computing bifurcation diagrams in incompressible fluid flow problems with a method that transforms the original non-linear problem into a set of linear ones, with the same operator but different rhs (further details can be found in [1]).</div><div><br></div><div><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-size: medium; ">[1] B. Cochelin and M. Medale. Power series analysis as a major breakthrough to improve the efficiency of Asymptotic Numerical Method in the vicinity of bifurcations. J. Comput. Phys., Vol. 236, 594-607, 2013.</span></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-size: medium; "><br></span></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><blockquote type="cite"><span style="font-size: medium; ">Interesting when I ran with MUMPS on 1 and 2 processors using PETSc 3.5p2 (actually the maint branch) I get a solution very near your "old" solution.</span> I do not know if the quad precision solution is "accurate" but I am pretty confident that all the other answers are equally valid and equally worthless. </blockquote></div></span></div></span></div></span></div></span></div></span></div></span></span></div></div><div><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div class=""><br></div></div></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-size: medium; ">I agree with you that except quad precision all other solutions can be worthless, but in our method it is only in the vicinity of the bifurcation point that the algebraic system degenerates and becomes close to singular, so I have to know what is the reliability limit to switch to an augmented system that recovers a more convenient condition number, but at more than twice the original cost.</span></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><br></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="font-size: medium; "><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="border-collapse: separate; font-size: 12px; border-spacing: 0px; "><blockquote type="cite">How do you know the "old" mumps solution is correct and the new mumps solution wrong?</blockquote><br></div><div style="border-collapse: separate; font-size: 12px; border-spacing: 0px; ">After any changes or upgrade to new PETSc versions I use to run tests which compare the outputs between previous release and the new one. And I was very surprised to see such huge differences in outputs, for components that haven't been told to be changed in the changes_3.5 log file (neither KSP nor MUMPS were told to be changed in the changes from PETSc-3.4 to 3.5).</div><div style="border-collapse: separate; font-size: 12px; border-spacing: 0px; "><br></div><div style="border-collapse: separate; font-size: 12px; border-spacing: 0px; ">So, as longtime PETSc user (and aficionado), I would greatly appreciate you give me some hints about the following fundamental question: what are the changes that have been done in PETSc to change in such a way the solution computed by the MUMPS solver throughout the PETSc interface?</div></div></div></div></div></div></span></span></div></div><div style="font-size: medium; "><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "></div></div></div></div></div></div></span></span></div></div></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span style="font-size: medium; "><br></span></div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div>Thank you again for your time and pertinent explanations, as usual. Have a good day.</div><div><br></div>Marc MEDALE</div><div style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><br></div><div><br></div></span></div></span></div></span></div></span></div></span></div></span><br class="Apple-interchange-newline"></span><br class="Apple-interchange-newline">
</div>
<br><div><div>Le 19 déc. 2014 à 00:29, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>> a écrit :</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div class=""><br class=""></div>  Marc,<div class=""><br class=""></div><div class="">   I have played around with your matrix using several "direct" solvers; all of them produced residual norms of around 10^-8 except Matlab which produced a residual norm of 10^-5 and a warning that the recond of the matrix was 10^-16</div><div class="">I also solved with the PETSc LU factorization in quad precision and got a residual norm of 10^-26. UMFPACK ran out of memory.</div><div class=""><br class=""></div><div class="">   Attached I plotted the solution (as a 1d vector for all the solvers), as you can see all the answers are very different. Note that the figures are black inside the "envelop" of the solution because intermediate values of the vector are dense (ie. at a very fine scale the solution is oscillating a great deal). Interesting when I ran with MUMPS on 1 and 2 processors using PETSc 3.5p2 (actually the maint branch) I get a solution very near your "old" solution. </div><div class=""><br class=""></div><div class="">  IThe matrix has 8,000 rows of the identity (1 on the diagonal) and the rest with entries of -10^8.  Don't put those trivial rows into the matrix and scale the matrix so it has positive diagonal entires. I've done this and it doesn't help the solver but it is still the right thing to do.</div><div class=""><br class=""></div><div class=""><span><Untitled.png></span></div><div class=""><br class=""></div><div class="">   I do not know if the quad precision solution is "accurate" but I am pretty confident that all the other answers are equally valid and equally worthless. How do you know the "old" mumps solution is correct and the new mumps solution wrong?</div><div class=""><br class=""></div><div class="">  Can you try with the maint branch of PETSc and see if you get the solutions you want?</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">  Barry</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""><blockquote type="cite" class="">On Dec 11, 2014, at 4:38 AM, Marc MEDALE <<a href="mailto:marc.medale@univ-amu.fr" class="">marc.medale@univ-amu.fr</a>> wrote:<br class=""><br class="">Dear PETSC Users,<br class=""><br class="">I have just updated to PETSc-3.5 my research code that uses PETSc for a while but I'm facing an astonishing difference between PETSc-3.4 to 3.5 versions when solving a very ill conditioned algebraic system with MUMPS (4.10.0 in both cases).<br class=""><br class="">The only differences that arise in my fortran source code are the following:<br class="">Loma1-medale% diff ../version_3.5/solvEFL_MAN_SBIF.F ../version_3.4/solvEFL_MAN_SBIF.F<br class="">336,337d335<br class=""><       CALL MatSetOption(MATGLOB,MAT_KEEP_NONZERO_PATTERN,<br class=""><      &       PETSC_TRUE,IER)<br class="">749,750c747,748<br class=""><       CALL KSPSetTolerances(KSP1,TOL,PETSC_DEFAULT_REAL,<br class=""><      &     PETSC_DEFAULT_REAL,PETSC_DEFAULT_INTEGER,IER)<br class="">---<br class=""><blockquote type="cite" class="">     CALL KSPSetTolerances(KSP1,TOL,PETSC_DEFAULT_DOUBLE_PRECISION,<br class="">    &     PETSC_DEFAULT_DOUBLE_PRECISION,PETSC_DEFAULT_INTEGER,IER)<br class=""></blockquote>909c907,908<br class=""><           CALL KSPSetOperators(KSP1,MATGLOB,MATGLOB,IER)<br class="">---<br class=""><blockquote type="cite" class="">         CALL KSPSetOperators(KSP1,MATGLOB,MATGLOB,<br class="">    &                         SAME_NONZERO_PATTERN,IER)<br class=""></blockquote><br class="">When I run the corresponding program versions on 128 cores of our cluster with the same input data and the following command line arguments:<br class="">-ksp_type preonly -pc_type lu -pc_factor_mat_solver_package mumps -mat_mumps_icntl_8 0<br class=""><br class="">I get the following outputs:<br class="">a)  with PETSc-3.4p4:<br class=""><span class="Apple-tab-span" style="white-space:pre">        </span>L2 norm of solution vector: 7.39640E-02,<br class=""><br class="">b)  with PETSc-3.5p1:<br class=""><span class="Apple-tab-span" style="white-space:pre">   </span>L2 norm of solution vector: 1.61325E-02<br class=""><br class="">Do I have change something else in updating my code based on KSP from PETSc-3.4 to 3.5 versions?<br class="">Do any default values in the PETSc-MUMPS interface have been changed from PETSc-3.4 to 3.5?<br class="">Any hints or suggestions are welcome to help me to recover the right results (obtained with PETSc-3.4).<br class=""><br class="">Thank you very much.<br class=""><br class="">Marc MEDALE.<br class=""></blockquote><br class=""></div></div></blockquote></div><br></div></body></html>