[petsc-users] Quasi newton
Matthew Knepley
knepley at gmail.com
Tue May 3 08:27:11 CDT 2022
On Tue, May 3, 2022 at 9:08 AM Tang, Qi <tangqi at msu.edu> wrote:
> Pierre and Matt,
>
> Thanks a lot for the suggestion. It looks like lag Jacobian is exactly
> what I need. We will try that.
>
> I always thought ngmres is a fancy version of Anderson. Is there any
> reference or example related to what you said in which one actually
> implemented an approximated Jacobian through ngmres? This sounds very
> interesting.
>
Jed and Peter do it here:
@inproceedings{brown2013quasinewton,
author = {Jed Brown and Peter Brune},
title = {Low-rank quasi-{N}ewton updates for robust {J}acobian
lagging in {N}ewton-type methods},
year = {2013},
booktitle = {International Conference on Mathematics and Computational
Methods Applied to Nuclear Science and Engineering},
pages = {2554--2565},
petsc_uses={KSP},
}
Thanks,
Matt
> Qi
>
>
> On May 3, 2022, at 4:51 AM, Matthew Knepley <knepley at gmail.com> wrote:
>
>
> On Tue, May 3, 2022 at 2:58 AM Pierre Seize <pierre.seize at onera.fr> wrote:
>
>> Hi,
>>
>> If I may, is this what you want ?
>>
>> https://petsc.org/main/docs/manualpages/SNES/SNESSetLagJacobian.html
>> <https://urldefense.com/v3/__https://petsc.org/main/docs/manualpages/SNES/SNESSetLagJacobian.html__;!!HXCxUKc!zIB-QYseFS9GsRBrb4wzwezVTB9DKqY_PBYGWYql4tLtLTBwX552ukXeZk_z0ZASYNl5x6QlBwDt6Q$>
>
>
> Yes, this is a good suggestion.
>
> Also, you could implement an approximation to the Jacobian.
>
> You could then improve it at each iteration using a secant update. This is
> what the Generalized Broyden methods do. We call them NGMRES.
>
> Thanks,
>
> Matt
>
>
>> Pierre
>>
>> On 03/05/2022 06:21, Tang, Qi wrote:
>> > Hi,
>> > Our code uses FDcoloring to compute Jacobian. The log file indicates
>> most of time is spent in evaluating residual (2600 times in one Newton
>> solve) while it only needs 3 nonlinear iterations and 6 total linear
>> iterations thanks to the fieldsplit pc.
>> >
>> > As a temporary solution, is it possible to evaluate Jacobian only once
>> in one Newton solve? This should work well based on my other experience if
>> pc is very efficient. But I cannot find such a flag.
>> >
>> > Is there any other solution, other than implementing the analytical
>> Jacobian?
>> >
>> > Thanks,
>> > Qi
>>
>
>
> --
> 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
>
> https://www.cse.buffalo.edu/~knepley/
> <https://urldefense.com/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!HXCxUKc!zIB-QYseFS9GsRBrb4wzwezVTB9DKqY_PBYGWYql4tLtLTBwX552ukXeZk_z0ZASYNl5x6RvtZtRBQ$>
>
>
--
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
https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20220503/6a85e407/attachment.html>
More information about the petsc-users
mailing list