[petsc-users] SAMRAI and Petsc
Pitts, Todd Alan
tapitts at sandia.gov
Fri Apr 27 15:22:25 CDT 2012
All,
I have been working with SAMRAI and Petsc to develop an implicit hyperbolic solver. Both packages seem very well done -- I am new to both, however. The basic physics problem is the solution to the linear wave equation (or rather something very close to it). I am using SAMRAI to track the mesh and Petsc to solve the resulting implicit time stepping problem. I am giving the MPIcomm object from SAMRAI to Petsc but have noticed that SAMRAI distributes the processors across the domain seemingly randomly. Petsc on the other hand distributes them sequentially for a matrix. In other words, SAMRAI might give processors with adjacent rank numbers nonadjacent patches while Petsc always assigns the FIRST n rows to the rank 0 process (where n is the number of rows requested by the rank 0 process), the NEXT m rows to the rank 1 process, etc. This means that a nice, diagonally banded matrix is no longer banded (because we have reordered the rows according to the SAMRAI domain decomposition). Naturally, the solution to the linear problem is the same. However, I am concerned that I have lost the apparent diagonal structure of the matrix. Is this a problem for the linear solvers? I know that Petsc is used for implicit problems together with various meshing codes -- this is a common thing. I would like to use the library in its intended fashion -- is the proper thing to do to simply fill the rows you own and forget the fact that the structure is no longer banded? Am I missing something?
Thanks in advance for any help you might offer,
Todd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120427/e6abea45/attachment.htm>
More information about the petsc-users
mailing list