<font size=2 face="sans-serif">Hi,</font>
<br>
<br><font size=2 face="sans-serif">There is also Intel MKL Pardiso that
I have been using lately (at Michelin) and I have extended the mkl_pardiso.c
interface to PETSc to support</font>
<br><font size=2 face="sans-serif">PCCHOLESKY (with an SEQSBAIJ matrix
and a block size of one) and not only PCLU (with a SEQAIJ matrix).</font>
<br>
<br><font size=2 face="sans-serif">We have been testing it internally and
so fare it is robust and very fast for a direct solver.</font>
<br>
<br><font size=2 face="sans-serif">I plan to submit my modifications to
the main trunk (pull request) in the coming days ...</font>
<br>
<br><font size=2 face="sans-serif">I have seen the extension to Cluster
Pardiso in the main trunk and it also done only for LU and MPIAIJ matrices.</font>
<br>
<br><font size=2 face="sans-serif">It would be nice to extended it to symetric
matrices as well.</font>
<br>
<br><font size=2 face="sans-serif">I wanted to do the same extension for
the Cluster Pardiso, but I didn't have time yet (and it does not work with
with OpenMPI, but works with Intel MPI).</font>
<br>
<br><font size=2 face="sans-serif">Regards,</font>
<br>
<br><font size=2 face="sans-serif">Pascal Tremblay</font>
<br><font size=2 face="sans-serif">---------------------------------------------------------------------------------------------<br>
Mécanique Numérique<br>
Michelin, Centre de technologie de Ladoux -DGRD/CTEU/PM/SIM/ER<br>
63040 Clermont-Ferrand Cedex 09 - FRANCE<br>
Tél. (ext.): 04 73 10 91 63<br>
Tél. (int.): 61 163<br>
---------------------------------------------------------------------------------------------</font>
<br><font size=2 face="sans-serif">Confidentialité D3- Conservation <90j<br>
<br>
</font>
<br>
<br>
<br>
<br><font size=1 color=#5f5f5f face="sans-serif">De :
</font><font size=1 face="sans-serif">David Knezevic <david.knezevic@akselos.com></font>
<br><font size=1 color=#5f5f5f face="sans-serif">A :
</font><font size=1 face="sans-serif">Hong <hzhang@mcs.anl.gov>,
</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Cc :
</font><font size=1 face="sans-serif">PETSc users
list <petsc-users@mcs.anl.gov></font>
<br><font size=1 color=#5f5f5f face="sans-serif">Date :
</font><font size=1 face="sans-serif">09/04/2015 04:17</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Objet :
</font><font size=1 face="sans-serif">Re: [petsc-users]
Exploiting symmetry with direct solvers</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Envoyé par :
</font><font size=1 face="sans-serif"><petsc-users-bounces@mcs.anl.gov></font>
<br>
<hr noshade>
<br>
<br>
<br><font size=3>On Wed, Apr 8, 2015 at 9:28 PM, Hong <</font><a href
=mailto:hzhang@mcs.anl.gov target=_blank><font size=3 color=blue><u>hzhang@mcs.anl.gov</u></font></a><font size=3>>
wrote:</font>
<br><font size=3>David ,</font>
<br><font size=1 face="Calibri">I'm curious about how to do a symmetric
LDL^T factorization (instead of LU) with MUMPS and SuperLU. Based on this
example:</font>
<br>
<br><a href="http://www.mcs.anl.gov/petsc/petsc-3.4/src/ksp/ksp/examples/tutorials/ex52.c.html" target=_blank><font size=1 color=blue face="Calibri"><u>http://www.mcs.anl.gov/petsc/petsc-3.4/src/ksp/ksp/examples/tutorials/ex52.c.html</u></font></a>
<br>
<br><font size=1 face="Calibri">my understanding is as follows:</font>
<br>
<br><font size=1 face="Calibri">- With MUMPS I gather that we need to specify:</font>
<br>
<br><font size=1 face="Calibri">MatSetOption(A,MAT_SPD,PETSC_TRUE);</font>
<br><font size=1 face="Calibri">PCSetType(pc,PCCHOLESKY);</font>
<br>
<br><font size=1 face="Calibri">I guess "-pc_type cholesky" on
the command line is equivalent to the PCSetType call, right? Is specifying
MAT_SPD required in order for MUMPS to do an LDL^T factorization?</font>
<br><font size=3>Mumps supports Cholesky factorization for symmetric, and
symmetric+spd matrices. You may consult mumps user manual.</font>
<br>
<br>
<br><font size=3>OK, thanks. But I was also wondering about the PETSc interface
to MUMPS.</font>
<br>
<br><font size=3>I consulted the MUMPS manual, but it just says that you
need to specify "SYM=1" in order to get an LDL^T factorization.
I gather that if we set MatSetOption(A,MAT_SPD,PETSC_TRUE); in PETSc then
that will tell MUMPS to use SYM=1, right?</font>
<br>
<br><font size=3>Thanks,</font>
<br><font size=3>David</font>
<br>
<br>
<br>