[petsc-users] Compact finite differences

Jed Brown jedbrown at mcs.anl.gov
Fri Jun 22 15:59:58 CDT 2012


The "mass" matrix for compact FD is usually well-conditioned. I suggest
assembling it once so you can experiment with methods. You can try solving
it using a Krylov method with only jacobi preconditioning. If that
converges fast enough for you, you can reduce memory costs and speed it up
somewhat by writing a MatShell that applies the action (instead of using
the assembled matrix).

On Fri, Jun 22, 2012 at 7:03 AM, Gaetano Esposito <
gaetano at email.virginia.edu> wrote:

> Compact finite differences have been already discussed in this post
> and following responses:
> http://lists.mcs.anl.gov/pipermail/petsc-users/2011-November/011006.html.
>
> If I understand well, the matrix for a 2-D (or 3-D) *implicit* solver
> that makes use of compact FD for the calculation of derivatives is not
> "banded" because of the ordering of the x-y-z variables in the
> solution vector destroys any structure, and the matrix is simply
> sparse (bandwith=sqrt(n)). In that post is actually suggested that a
> sparse dense solver could be more attractive because of that.
>
> However, if the PDE's are solved explicitly in time, the derivatives
> in all directions may be calculated independently by using an
> efficient sequential algorithm (o(n)). I am not familiar with any
> parallel implementations of the banded diagonal algorithm solvers, but
> I was wondering whether this could be efficiently implemented in Petsc
> with the existing MA modules. But at that point, I don't know whether
> there will be any advantage in possibly using an iterative solver that
> converges to the exact solution in N iterations for a well behaved
> matrix as the one deriving from compact FD.
>
> --g
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120622/748c6b6b/attachment.html>


More information about the petsc-users mailing list