[petsc-users] KSP convergence problem

Mehrdad H Farahani mh.farahani at gmail.com
Wed Mar 20 15:43:04 CDT 2013


Besides, such diverging behavior occurs only with optimized build of Petsc.

On Wed, Mar 20, 2013 at 3:13 PM, Mehrdad H Farahani
<mh.farahani at gmail.com>wrote:

> I am solving a Poisson equation with Neumann boundary conditions applied
> along an arbitrary curve using a ghost fluid treatment. The matrix is
> non-symmetric and the null space contains more than the constant vector. I
> have implemented a solve for the null space itself and have previously
> supplied it using MatSetNullSpace. Unfortunately the null space solve is
> extremely expensive and does not play well with GAMG or ML. We've checked
> that the answers we get without supplying this null space are very close to
> the answers we get when we do include it. The matrix for the two solves in
> the previous attachment are identical. The problem also seems to be
> converging and then suddenly diverges. Is this common behavior for a
> singular preconditioner?
>
> Thanks,
>
>
>
>>
>> From: Jed Brown <jedbrown at mcs.anl.gov>
>> Date: Wed, Mar 20, 2013 at 2:03 PM
>> Subject: Re: [petsc-users] KSP convergence problem
>> To: PETSc users list <petsc-users at mcs.anl.gov>
>>
>>
>>  On Wed, Mar 20, 2013 at 2:00 PM, Mark F. Adams <mark.adams at columbia.edu>wrote:
>>
>>>
>>> On Mar 20, 2013, at 2:12 PM, Mehrdad H Farahani <mh.farahani at gmail.com>
>>> wrote:
>>>
>>> > I'm experience a weird convergence problem with bcgsl with both ILU
>>> and GAMG preconditioning. The problem converges normally (at least in the
>>> preconditioned norm), but then kicks out with converged reason = -4. I've
>>> attached the convergence history of the previous time-step which worked and
>>> the timestep which shows problems. Could someone give me an idea on how to
>>> proceed?
>>> >
>>>
>>> Did you run with -ksp_converged_reason ?
>>>
>>> I don't know were this -4 comes from.  Could this be from your code?
>>>
>>
>> Some people call KSPGetConvergedReason(), but then don't compare to the
>> enums and don't convert to a string using KSPConvergedReasons[reason].
>>
>>
>> http://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/KSP/KSP_DIVERGED_DTOL.html
>>
>> The problem is likely that your preconditioner is singular. What sort of
>> problem are you solving?
>>
>>
>
>
> --
> Mehrdad
>



-- 
Mehrdad
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20130320/a88b5b19/attachment.html>


More information about the petsc-users mailing list