[petsc-dev] How do you get RIchardson?
Vijay S. Mahadevan
vijay.m at gmail.com
Fri Sep 16 18:59:10 CDT 2011
Couple of other things:
> I think Vijay intended to distinguish the A in the solve step from the A in
> the residual. Assume the iteration
> x_{n+1} = x_n - J(x_n)^{-1} F(x_n)
Jed, yes. Thats what I meant. Thanks for clarifying. Thats what I get
for sending emails when listening to a talk.
> This was actually one of my largest concern with the previous SNESPICARD is lots of people would think it implemented "Picard with solve".
Barry, I was originally confused with the Picard solver (I assumed
that it took a linearized Jacobian) when it was introduced around 3.0
until I looked at the code. I dont have access to the code at the
moment but just curious as to what has changed now with Picard.
Technically, you could get away with doing the actual Picard as
implemented in the original SNESPICARD (as clarified by Jed) by
providing the identity as the Jacobian for the Newton solver. But I
guess the terminology (newton/picard) might offend people looking for
specific nonlinear methods in the pure sense and without adequate
documentation/explanation, users might be confused. I personally do
like the existing 'newton' ! But if you want to be strict about the
naming, I am not sure what you would call the class since it is
malleable enough to accomodate other formulations that Barry
mentioned.
On Fri, Sep 16, 2011 at 11:28 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> On Sat, Sep 17, 2011 at 01:24, Vijay S. Mahadevan <vijay.m at gmail.com> wrote:
>>
>> Also calling newton even without the matrix free jacobian with just Picard
>> linearization with an algebraic preconditioner is sometimes more efficient.
>
> Yes, these linear systems are usually easier to solve. For example, they may
> have isotropic coefficients while Newton linearization effectively produces
> anisotropic coefficients.
> On the other hand, the nonlinear convergence is only linear and often
> requires many more iterations than Newton, especially in the terminal phase.
> This tradeoff is of course highly problem dependent.
More information about the petsc-dev
mailing list