Arne Morten Kvarving <[email protected]> writes:

> hi,
>
> first, this was an user error and i totally acknowledge this, but i 
> wonder if this might be an oversight in your error checking: if you 
> configure gamg with ilu/asm smoothing, and are stupid enough to have set 
> the number of smoother cycles to 0, your program churns along and 
> apparently converges just fine (towards garbage, but apparently 'sane' 
> garbage (not 0, not nan, not inf))

My concern here is that skipping smoothing actually makes sense, e.g.,
for Kaskade cycles (no pre-smoothing).  I would suggest checking the
unpreconditioned (or true) residual in order to notice when a singular
preconditioner causes stagnation (instead of misdiagnosing it as
convergence due to the preconditioned residual dropping).

> once i set sor as smoother, i got the error message
>
> 'PETSC ERROR: Relaxation requires global its 0 positive' which pointed 
> me to my stupid.
>
> fixing this made both asm and sor work fine.
>
> it's all wrapped up in a schur/fieldsplit (it's P2/P1 navier-stokes), 
> constructed by hand due to "surrounding" reasons. but i don't think 
> that's relevant as such. i've used 3.6.4 as the oldest and 3.7.4 as the 
> newest version and behavior was the same. if you want logs et al don't 
> hesitate to ask for them, but i do not think they would add much.
>
> cheers
>
> arnem

Attachment: signature.asc
Description: PGP signature

Reply via email to