[petsc-users] amg from hypre
Matthew Knepley
knepley at gmail.com
Mon Mar 8 09:08:39 CST 2010
On Mon, Mar 8, 2010 at 9:05 AM, <hxie at umn.edu> wrote:
>
>
>
> On Mar 8 2010, Jed Brown wrote:
>
> On 06 Mar 2010 15:41:12 -0600, hxie at umn.edu wrote:
>>
>>> Hi,
>>>
>>> I am solving incompressible navier-stokes equations. The code implements
>>> the Newton iteration and just uses the KSP solver for each iteration. It
>>> takes 14 nonlinear iterations (~8min) to converge using the default solver
>>> in PETSc. But it takes 6 nonlinear iterations (~30min) using boomeramg
>>> from
>>> hypre.
>>>
>>
>> Can you confirm that these are the number of NONLINEAR iterations?
>>
>
> Yes.
>
>
> Changing the preconditioner should not change this if it behaving
>> correctly. Are you solving incompressible NS in a coupled manner,
>> sending the indefinite (momentum + continuity equations) to the
>> preconditioner?
>>
>
> It is a temperature driven flow. Temperature field is also included. We use
> high order method (2nd order for velocity) to discretize the system and
> solve it in a coupled manner. We do a small shifting for the preconditioner
> to avoid zero diagonals.
>
>
> In this case, BoomerAMG can be giving you completely
>> the wrong answer. For example, on a different Navier-Stokes example, it
>> produces very nice preconditioned residuals
>>
>> 0 KSP Residual norm 9.526419214320e+00 1 KSP Residual norm
>> 9.406988599189e-02 2 KSP Residual norm 2.767040414824e-03 3 KSP Residual
>> norm 1.649604812054e-03 4 KSP Residual norm 1.611023301144e-03 5 KSP
>> Residual norm 7.073431543229e-04 6 KSP Residual norm 1.404066303578e-04
>> 7 KSP Residual norm 1.347821147393e-04 8 KSP Residual norm
>> 7.713640141302e-05 9 KSP Residual norm 5.121198361232e-05 10 KSP Residual
>> norm 4.790100151952e-05 11 KSP Residual norm 1.769376148248e-05 12 KSP
>> Residual norm 1.671836687758e-05 13 KSP Residual norm 9.561298137614e-06
>> 14 KSP Residual norm 6.509746067580e-07 15 KSP Residual norm
>> 5.863323408081e-07 16 KSP Residual norm 5.120192651612e-07 17 KSP Residual
>> norm 3.403122131501e-07 18 KSP Residual norm 3.342529361191e-07 19 KSP
>> Residual norm 9.178974981883e-08
>> but converges to completely the WRONG answer. This is because the
>> preconditioner is singular, and the unpreconditioned residuals (using
>> right-preconditioned GMRES) look like
>>
>> 0 KSP Residual norm 9.899494936612e+05
>> 1 KSP Residual norm 3.460941545811e-02
>> 2 KSP Residual norm 3.411670842883e-02
>> 3 KSP Residual norm 3.406431296292e-02
>> 4 KSP Residual norm 3.376198186394e-02
>> 5 KSP Residual norm 3.374434209905e-02
>> 6 KSP Residual norm 3.370086274150e-02
>> 7 KSP Residual norm 3.334190783058e-02
>> 8 KSP Residual norm 3.321057363881e-02
>> 9 KSP Residual norm 3.321055343672e-02
>> 10 KSP Residual norm 3.318392045928e-02
>>
>> which is NO CONVERGENCE at all after the penalty boundary conditions
>> were enforced. So CPU time aside, the nonlinear iteration count could
>> occur because Newton is failing due to an incorrect search direction or
>> a vanishing step size, but the answer could be completely wrong.
>>
>> You have to clear up subtleties like getting the wrong answer before
>> looking any further at the amount of time the various preconditioners
>> are taking. Always run with
>>
>> -snes_converged_reason -ksp_converged_reason
>>
>> and check the unpreconditioned residuals, especially when dealing with
>> indefinite problems.
>>
>> Jed
>>
>>
> The result looks correct. I will double check by computing the real
> residual by b-Ax. For all the methods I set the same options "-ksp_max_it
> 500 -ksp_gmres_restart 50". And each nonlinear iteration will take 500 gmres
> iteration. Maybe the 500 V cycles takes much more time than the ilu0. Will
> there be a big difference to implement the amg directly from hypre? Thanks.
>
This is the problem. The inner linear systems are just not really being
solved. Have you looked at
the convergence (-ksp_monitor)? You can get different nonlinear iteration
counts this way.
Matt
> Bests,
> Hui
>
>
>
--
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/20100308/c17bdc40/attachment-0001.htm>
More information about the petsc-users
mailing list