[petsc-users] Convergence of iterative linear solver

Mark Adams mfadams at lbl.gov
Tue Jun 2 09:27:15 CDT 2015


Eduardo, as Matt said you problem is ill conditioned but and you might find
that if you add more elements and make the mesh less anisotropic that your
solve faster, and you get a better solution obviously.

I'm not sure what options there are for better discretization but you can
probably do a lot better by using better solver (parameters).  I would
start with:

-ksp_type cg
-pc_type gamg
-pc_gamg_agg_nsmooths 1
-pc_gamg_threshold 0.02  #  [0 - 0.1]
#-mg_levels_ksp_type richardson
-mg_levels_ksp_type chebyshev
-mg_levels_pc_type sor
#-mg_levels_pc_type jacobi
-mg_levels_ksp_max_it 2   # [1-8]

Experiment with the two # parameters.  If you scan you should find a minima
for each.  And you might try the commented out smoother parameters.

Mark




On Tue, Jun 2, 2015 at 9:42 AM, Matthew Knepley <knepley at gmail.com> wrote:

> On Mon, Jun 1, 2015 at 11:24 PM, Eduardo <erocha.ssa at gmail.com> wrote:
>
>> I am solving a FEM solid mechanics linear elasticity model, for now the
>> only problem is the mesh that has needle-shaped and very flat elements.
>> Have you any suggestion of preconditioner (and references).
>>
>
> The problem here is your discretization. WIth quasi-regular elements,
> -pc_type gamg works fine. However, with flat elements, your FEM
> basis becomes very ill-conditioned since the normal basis functions are
> almost linearly dependent. I think the best use of time here is
> to investigate better discretization strategies for this problem, since no
> solver is really going to help you.
>
>   Thanks,
>
>     Matt
>
>
>> Thanks,
>> Eduardo
>>
>> On Tue, Jun 2, 2015 at 4:11 AM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>>
>>>
>>> > On Jun 1, 2015, at 4:06 PM, Eduardo <erocha.ssa at gmail.com> wrote:
>>> >
>>> > I am solving a linear system for which the preconditioned residual
>>> decreases, but the true residual increases (or have an erratic behavior).
>>> According to Petsc FAQ, this is due to a preconditioner that is singular or
>>> close to singular. What can I do in this case? I used GMRES with ILU
>>> preconditioner.
>>>                                               ^^^^^^^^^^^^^^^
>>> >
>>> > Incidentally, I tried to solve a smaller system with a direct solver
>>> (superlu_dist) and it ran, so the system apparently is not singular.
>>>
>>>     ILU can produce very badly conditioned (one could say singular
>>> PRECONDITIONER) from not singular sparse matrices. So it doesn't have
>>> anything to do with the system itself being singular.
>>>
>>>    What type of problem are you solving? Different problems need
>>> different preconditioners.
>>>
>>>   Barry
>>>
>>>
>>>
>>> >
>>> > Thanks in advance,
>>> > Eduardo
>>>
>>>
>>
>
>
> --
> 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/20150602/0c1d710d/attachment.html>


More information about the petsc-users mailing list