[petsc-users] How do I know it is steady state?

Matthew Knepley knepley at gmail.com
Tue Nov 3 06:25:25 CST 2015


On Mon, Nov 2, 2015 at 7:29 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:

>
> > On Oct 30, 2015, at 12:23 PM, Zou (Non-US), Ling <ling.zou at inl.gov>
> wrote:
> >
> > Hi All,
> >
> > From physics point of view, I know my simulation converges if nothing
> changes any more.
> >
> > I wonder how normally you do to detect if your simulation reaches steady
> state from numerical point of view.
> > Is it a good practice to use SNES convergence as a criterion, i.e.,
> > SNES converges and it takes 0 iteration(s)
>
>    Depends on the time integrator and SNES tolerance you are using. If you
> use a -snes_rtol 1.e-5 it will always try to squeeze 5 MORE digits out of
> the residual so won't take 0 iterations even if there is only a small
> change in the solution.
>

There are two different situations here:

  1) Solving for a mathematical steady state. You remove the time
derivative and solve the algebraic system with SNES. Then
      the SNES tolerance is a good measure.

  2) Use timestepping to advance until nothing looks like it is changing.
This is a "physical" steady state.

You can use 1) with a timestepping preconditioner TSPSEUDO, which is what I
would recommend if you
want a true steady state.

  Thanks,

     Matt


> >
> > Thanks,
> >
> > Ling
>
>


-- 
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20151103/d185dd5d/attachment.html>


More information about the petsc-users mailing list