[petsc-users] Diagnosing Poisson Solver Behavior

Matthew Knepley knepley at gmail.com
Mon Oct 12 21:17:19 CDT 2015


On Mon, Oct 12, 2015 at 9:11 PM, K. N. Ramachandran <knram06 at gmail.com>
wrote:

> Hello Matt,
>
> Actually I felt the boundary conditions were having a role to play and set
> all the boundary conditions to Dirichlet. In this case, convergence was
> almost immediate with the Hypre preconditioner, taking 17 seconds with 3
> iterations. The MG method took about the same time though.
>
> So I reverted to the Dirichlet, Neumann mix of BCs and Hypre starts to
> diverge. Please find attached the output for the Hypre run using Dirichlet
> and Neumann for a 21^3 grid (rows), with a max of 7 nonzeros per row.
> Details of the options used before running are in the file. The solver used
> in all cases is bcgs.
>
> Also attached is the MG output for 101^3 grid
> 1) Dirichlet and Neumann
> 2) Dirichlet only
>
> where it seems to take about the same time.
>

Notice that you have no levels of MG here. You need to use -pc_mg_levels <n>

   Matt


> I was thinking if the Null space has something to do with this? From the
> PETSc docs, I understand that the Null space should be removed/attached
> when solving singular systems. My domain will have at least two Dirichlet
> conditions, so it is not singular. But since the Neumann conditions seem to
> affect the convergence with Hypre, perhaps they have a role to play in
> terms of the null space?
>
>
>
> On Mon, Oct 12, 2015 at 3:52 PM, K. N. Ramachandran <knram06 at gmail.com>
> wrote:
>
>> Hello Matt,
>>
>> Thanks for your reply. I am actually retrying against the latest PETSc
>> and will revert once I get the information.
>>
>> On Mon, Oct 12, 2015 at 9:39 AM, Matthew Knepley <knepley at gmail.com>
>> wrote:
>>
>>> On Sat, Oct 10, 2015 at 7:56 PM, K. N. Ramachandran <knram06 at gmail.com>
>>> wrote:
>>>
>>>> Sorry, some more questions.
>>>>
>>>> 3) Also, for Dirichlet bc, I specify the value through Identity rows,
>>>> i.e. A_ii = 1 and the rhs value would correspond to the Dirichlet
>>>> condition. I am specifying it this way for my convenience. I am aware that
>>>> MatZerosRowColumns might help here, but would keeping it this way be
>>>> detrimental?
>>>>
>>>
>>> That is fine. However you would want to scale these entries to be
>>> approximately the same size as the other diagonal entries.
>>>
>>>
>>>> 4) Can I expect symmetric matrices to perform better, i.e. if I
>>>> eliminate Dirichlet rows? But I would still be left with Neumann boundary
>>>> conditions, where I use the second order formulation. If I used the first
>>>> order formulation and made it symmetric, would that be an advantage? I
>>>> tried the latter, but I didn't see the condition number change much.
>>>>
>>>
>>> Will not matter for MG.
>>>
>>>     Matt
>>>
>>>
>>>>
>>>>
>>
>> Regards,
>> K.N.Ramachandran
>> Ph: 814-441-4279
>>
>
>
>
> Thanking You,
> K.N.Ramachandran
> Ph: 814-441-4279
>



-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20151012/5f73181c/attachment.html>


More information about the petsc-users mailing list