<div dir="ltr">Thanks Jed,<div><br></div><div>I will try and let you know,</div><div><br></div><div>Thanks again!</div><div><br></div><div>Fande,</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Apr 3, 2020 at 4:29 PM Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Oh, you just want an initial guess for SNES?  Does it work to pull out the SNES and SNESSetComputeInitialGuess?<br>
<br>
Fande Kong <<a href="mailto:fdkong.jd@gmail.com" target="_blank">fdkong.jd@gmail.com</a>> writes:<br>
<br>
> No. I am working on a transient loosely coupled multiphysics simulation.<br>
> Assume there are two physics problems: problem A and problem B. During each<br>
> time step, there is a Picard iteration between problem A and problem B.<br>
> During each Picard step, you solve problem A (or B) with the solution<br>
> (U_{n-1}) of the previous time step as the initial condition. In the Picard<br>
> solve stage, I know the solution (\bar{U}_{n}) of the current time step but<br>
> from the previous Picard iteration. Use \bar{U}_{n}) instead of U_{n-1} as<br>
> the initial guess for SNES will have a better convergence for me.<br>
><br>
> Thanks,<br>
><br>
> Fande,<br>
><br>
><br>
> On Fri, Apr 3, 2020 at 1:10 PM Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>> wrote:<br>
><br>
>> This sounds like you're talking about a starting procedure for a DAE (or<br>
>> near-singular ODE)?<br>
>><br>
>> Fande Kong <<a href="mailto:fdkong.jd@gmail.com" target="_blank">fdkong.jd@gmail.com</a>> writes:<br>
>><br>
>> > Hi All,<br>
>> ><br>
>> > TSSetSolution will set an initial condition for the current TSSolve().<br>
>> What<br>
>> > should I do if I want to set an initial guess for the current solution<br>
>> that<br>
>> > is different from the initial condition?  The initial guess is supposed<br>
>> to<br>
>> > be really close to the current solution, and then will accelerate my<br>
>> solver.<br>
>> ><br>
>> > In other words, TSSetSolution will set "U_{n-1}", and now we call TSSolve<br>
>> > to figure out "U_{n}". If I know something about "U_{n}", and I want to<br>
>> set<br>
>> > "\bar{U}_{n}" as the initial guess of "U_{n}" when computing "U_{n}".<br>
>> ><br>
>> ><br>
>> > Thanks,<br>
>> ><br>
>> > Fande,<br>
>><br>
</blockquote></div>