No. I am working on a transient loosely coupled multiphysics simulation. Assume there are two physics problems: problem A and problem B. During each time step, there is a Picard iteration between problem A and problem B. During each Picard step, you solve problem A (or B) with the solution (U_{n-1}) of the previous time step as the initial condition. In the Picard solve stage, I know the solution (\bar{U}_{n}) of the current time step but from the previous Picard iteration. Use \bar{U}_{n}) instead of U_{n-1} as the initial guess for SNES will have a better convergence for me.
Thanks, Fande, On Fri, Apr 3, 2020 at 1:10 PM Jed Brown <j...@jedbrown.org> wrote: > This sounds like you're talking about a starting procedure for a DAE (or > near-singular ODE)? > > Fande Kong <fdkong...@gmail.com> writes: > > > 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}". > > > > > > Thanks, > > > > Fande, >