Hi James,

I don't have any hints for preconditioners, but using Trilinos's GMRES
and then systematically changing the GMRES parameters and
preconditioners might help you find one that works. I have done this
in the past, for example,

     
https://gist.github.com/wd15/c28ab796cb3d9781482b01fb67a7ec2d#file-unsegregatedequation-py-L187

You can also get information about how well the solver is converging.

Cheers,

Daniel

On Wed, May 31, 2017 at 3:31 PM, James Pringle <jprin...@unh.edu> wrote:
>
> Dear all --
>
> I need to solve a second order PDE in 2D of the form
>
> A(x,y)*(eta_xx+eta_yy)+B(x,y)*eta_x+C(x,y)*eta_y = 0
>
> This is an advective diffusive balance, with B and C representing the
> advective velocities.
>
>
> Over much of the domain the low order terms dominate. For some geometries,
> the default solver I am using (SciPy LinearLUSolver) is having trouble find
> an answer (especially when the characteristics defined by B and C form
> loops.
>
> Does anyone have recommendations for how to choose a better solver? (I have
> blindly tried all the ones in SciPy, the ones besides LinearLUSolver do
> worse).
>
> And are there any hints on how to use preconditioners? There is discussion
> of preconditioners and Trilinnos, but I can't find hints on how one would
> choose to use them and when they might help.
>
> Pointers to the broader literature are welcome!
>
> Thank you,
> Jamie Pringle
>
> _______________________________________________
> fipy mailing list
> fipy@nist.gov
> http://www.ctcms.nist.gov/fipy
>   [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]
>



-- 
Daniel Wheeler
_______________________________________________
fipy mailing list
fipy@nist.gov
http://www.ctcms.nist.gov/fipy
  [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]

Reply via email to