On Thu, Nov 10, 2011 at 1:48 PM, Bao Kai <span dir="ltr"><<a href="mailto:paeanball@gmail.com">paeanball@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div dir="ltr">Dear all, <br><br>I have been trying with PETSC to solve the linear system from mixed finite element method. <br><br>The pattern of the matrix is as the following, but due to the irregular boundary involved, the matrix A is not strictly symmetric. <br>
<br> A dt* C<br><br> C^T 0<br><br> As a result of the matrix pattern, the diagonal entries of the bottom-right portion are all zero. <br><br>I am just wondering if there are any suggestion of the type of the solver and preconditioner for this kinds of linear system? Thank you very much. <br>
<br>When I tried to solve the system with PETSC, I got the following information. ( PCType PCASM, KSPType, KSPFGMRES )<br></div></blockquote><div><br></div><div>ILU is jsut not going to work for this type of matrix (a saddle point). I suggest reading about PCFIELDSPLIT.</div>
<div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div dir="ltr">[0]PETSC ERROR: --------------------- Error Message ------------------------------------<br>
[0]PETSC ERROR: Object is in wrong state!<br>
[0]PETSC ERROR: Matrix is missing diagonal entry 288398!<br>[0]PETSC ERROR: ------------------------------------------------------------------------<br>[0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 4, Sun Oct 23 12:23:18 CDT 2011 <br>
[0]PETSC ERROR: See docs/changes/index.html for recent updates.<br>[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.<br>[0]PETSC ERROR: See docs/index.html for manual pages.<br>[0]PETSC ERROR: ------------------------------------------------------------------------<br>
[0]PETSC ERROR: Libraries linked from /home/baok/software/petsc-3.2-p4/arch-linux2-c-debug-withhypre/lib<br>[0]PETSC ERROR: Configure run at Thu Nov 10 11:49:03 2011<br>[0]PETSC ERROR: Configure options --download-hypre=yes<br>
[0]PETSC ERROR: ------------------------------------------------------------------------<br>[0]PETSC ERROR: MatILUFactorSymbolic_SeqAIJ_ilu0() line 1636 in /home/baok/software/petsc-3.2-p4/src/mat/impls/aij/seq/aijfact.c<br>
[0]PETSC ERROR: MatILUFactorSymbolic_SeqAIJ() line 1740 in /home/baok/software/petsc-3.2-p4/src/mat/impls/aij/seq/aijfact.c<br>[0]PETSC ERROR: MatILUFactorSymbolic() line 6092 in /home/baok/software/petsc-3.2-p4/src/mat/interface/matrix.c<br>
[0]PETSC ERROR: PCSetUp_ILU() line 216 in /home/baok/software/petsc-3.2-p4/src/ksp/pc/impls/factor/ilu/ilu.c<br>[0]PETSC ERROR: PCSetUp() line 819 in /home/baok/software/petsc-3.2-p4/src/ksp/pc/interface/precon.c<br>[0]PETSC ERROR: KSPSetUp() line 260 in /home/baok/software/petsc-3.2-p4/src/ksp/ksp/interface/itfunc.c<br>
[0]PETSC ERROR: PCSetUpOnBlocks_ASM() line 339 in /home/baok/software/petsc-3.2-p4/src/ksp/pc/impls/asm/asm.c<br>[0]PETSC ERROR: PCSetUpOnBlocks() line 852 in /home/baok/software/petsc-3.2-p4/src/ksp/pc/interface/precon.c<br>
[0]PETSC ERROR: KSPSetUpOnBlocks() line 154 in /home/baok/software/petsc-3.2-p4/src/ksp/ksp/interface/itfunc.c<br>[0]PETSC ERROR: KSPSolve() line 380 in /home/baok/software/petsc-3.2-p4/src/ksp/ksp/interface/itfunc.c<br>
[0]PETSC ERROR: main() line 261 in src/ksp/ksp/examples/tutorials/ex78.c<br>
<br><br>Best Regards, <br><font color="#888888">Kai <br><br></font></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>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<br>