>That indicates that the linear solve is not a
>problem. -ksp_monitor_true_residual and/or -ksp_monitor_singular_value
>can give you more confidence that the linear system is solved
>successfully.


I've run through the troubleshooting list and actually got some insights:
   - It seems like I have an ill conditioned matrix (for a small grid (40
d.o.f) the conditioning number is around 5.e8 and it grows linearly with
the number of d.o.f) - I've got this result by running with (-pc_type svd
-pc_svd_monitor) options. Here is a typical output of a Newton iteration
(~40 d.o.f):

SVD: condition number 1.336170852801e+09, 0 of 82 singular values are
(nearly) zero
    SVD: smallest singular values: 1.000000000000e+00 1.000000000000e+00
1.000000000000e+00 1.136056163817e+02 4.692147825673e+02
    SVD: largest singular values : 1.275661165756e+09 1.298030680428e+09
1.315681925775e+09 1.328427779148e+09 1.336170852801e+09

   - The preconditioning seems to be effective since even the reasonable
solutions achieved with coarse grids are not achieved as well with
(-pc_type none) and there is a Mbig difference between true_residual and
the preconditioned one when I've run with (-ksp_monitor_true_residual);

   - Something weird is that using direct solvers I didn't get any
enhancements, actually it has worsened for some cases: it has given wrong
solutions for coarser grids.

  -  I am implementing the Newton's method manually using the technique
showed in the Navier-Stokes example (even though my problem is on fluid
structure interaction) in the site and I was asking myself if the
tightening of tolerance for the linear solver at each step of Newton's
method is actually important, it doesn't change my live but I get similar
results with and without it and as the tolerance decreases the linear
solver is not capable to converge and I get a bunch of iterations not
needed, have I explained myself?!


>Define "worse"

My problem is about the interaction between currents and a cable and
physically I expect my solution to have a certain profile and I actually
have it for coarse grids (until 40 dof) but as I refine the grid the
solution either not converges or converges to absurd results with a lot of
instabilities and jumps. It made me greatly consider the possibility that
you mentioned about scale-dependent nonlinearities...

Thanks,

Rodrigo Broggi






On Sun, Oct 19, 2014 at 7:02 PM, Jed Brown <[email protected]> wrote:

> Rodrigo Broggi <[email protected]> writes:
>
> > With this other options it actually works but I suspect the solver is not
> > really changing since the residual of all iterations of Newton's method
> are
> > the same between all solvers (direct or not).
>
> That indicates that the linear solve is not a
> problem. -ksp_monitor_true_residual and/or -ksp_monitor_singular_value
> can give you more confidence that the linear system is solved
> successfully.
>
> Here are some solver debugging tips for nonlinear solvers:
>
>
> https://scicomp.stackexchange.com/questions/30/why-is-newtons-method-not-converging
>
> > My issue is that the solution is worse whenever I increase the degrees of
> > freedom, maybe there is some singularities that I am not aware of...
>
> Define "worse".
>
> Nonlinearities are scale-dependent, so increasing resolution could be
> making the problem fundamentally more nonlinear.  Sometimes grid
> sequencing or some other continuation is necessary to solve challenging
> nonlinear problems.  But try the diagnostics and tricks in the link.
>
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to