[petsc-users] How to set an initial guess for TS

Lisandro Dalcin dalcinl at gmail.com
Fri Apr 3 11:21:32 CDT 2020


On Fri, 3 Apr 2020 at 18:26, Fande Kong <fdkong.jd at gmail.com> wrote:

> Hi All,
>
> TSSetSolution will set an initial condition for the current TSSolve().
> What should I do if I want to set an initial guess for the current solution
> that is different from the initial condition?  The initial guess is
> supposed to be really close to the current solution, and then will
> accelerate my solver.
>
> In other words, TSSetSolution will set "U_{n-1}", and now we call TSSolve
> to figure out "U_{n}". If I know something about "U_{n}", and I want to set
> "\bar{U}_{n}" as the initial guess of "U_{n}" when computing "U_{n}".
>
>
IMHO, the only reliable solution would be to implement
SNESSet{Pre|Post}Solve(snes, {Pre|Post}Solve, ctx) to set callback routines
{Pre|Post}Solve(snes,b,x,ctx) allowing users to modify the solution vector
'x' in place (but no 'b', of course).
We already have that feature in KSP, why not SNES which is an inner loop in
TS ?


-- 
Lisandro Dalcin
============
Research Scientist
Extreme Computing Research Center (ECRC)
King Abdullah University of Science and Technology (KAUST)
http://ecrc.kaust.edu.sa/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20200403/33963eec/attachment.html>


More information about the petsc-users mailing list