[petsc-users] strange TS adaptivity behavior

Jed Brown jed at jedbrown.org
Mon Apr 6 14:48:01 CDT 2020


This typically happens when your model is discontinuous or you activate
some fast transitien.  You have a really aggressive lower bound on your
time step so its hard to tell here.

Mark Adams <mfadams at lbl.gov> writes:

> I have a problem that is fairly smooth and when it decreases the time step
> it just keeps decreasing almost forever. I wanted to see if anyone has any
> clue what is going on here.
>
> This test reaches a quasi equilibrium and the adaptivity uses fairly large
> time steps with dU/dt - F(u,t) = 0. I set a max time step of 10. A source
> starts at one point (dU/dt - F(u,t) = S(t)). It cools pretty fast.
>
> THe truncation error increase a lot when the source starts but it does not
> decrease the time step immediately because I had a mat time step set:
>  ....
>   Nonlinear solve converged due to CONVERGED_FNORM_RELATIVE iterations 4
> [0] TSAdaptChoose_Basic(): Estimated scaled local *truncation error
> 0.000214757*, accepting step of size 10.
>       TSAdapt basic arkimex 0:1bee step *386* accepted t=2292.68    +
> 1.000e+01 dt=1.000e+01  wlte=0.000215  wltea=   -1 wlter=   -1
> ...
> [0] TSAdaptChoose_Basic(): Estimated scaled local *truncation error
> 0.500399,* accepting step of size 10.
>       TSAdapt basic arkimex 0:1bee step *387* accepted t=2302.68    +
> 1.000e+01 dt=1.000e+01  wlte=  0.5  wltea=   -1 wlter=   -1
> 388) species-0: charge density= -1.6422881272166e+01 z-momentum=
>  7.2180929658011e-03 energy=  9.7881753794625e+05
>
> It goes for another few time steps before it rejects the time step for the
> first time, and then it just keeps reducing and reducing:
>
> [0] TSAdaptChoose_Basic(): Estimated scaled local truncation error
> 0.939966, accepting step of size 10.
>       TSAdapt basic arkimex 0:1bee step *395* accepted t=2382.68    +
> 1.000e+01 dt=9.283e+00  wlte= 0.94  wltea=   -1 wlter=   -1
> ....
> [0] TSAdaptChoose_Basic(): Estimated scaled local truncation error 1.33533,
> *rejecting* step of size 9.28296
>       TSAdapt basic arkimex 0:1bee step *396* rejected t=2392.68    +
> 9.283e+00 dt=7.230e+00  wlte= 1.34  wltea=   -1 wlter=   -1
>
> [0] TSAdaptChoose_Basic(): Estimated scaled local truncation error 1.44054,
> *rejecting* step of size 7.22994
>       TSAdapt basic arkimex 0:1bee step *396* rejected t=2392.68    +
> 7.230e+00 dt=2.711e+00  wlte= 1.44  wltea=   -1 wlter=   -1
>
> [0] TSAdaptChoose_Basic(): Estimated scaled local truncation error 1.63529,
> *rejecting* step of size 2.71072
>       TSAdapt basic arkimex 0:1bee step *396* rejected t=2392.68    +
> 2.711e+00 dt=9.539e-01  wlte= 1.64  wltea=   -1 wlter=   -1
>
> [0] TSAdaptChoose_Basic(): Estimated scaled local truncation error 1.60415,
> *rejecting* step of size 0.953894
>       TSAdapt basic arkimex 0:1bee step *396* rejected t=2392.68    +
> 9.539e-01 dt=5.000e-01  wlte=  1.6  wltea=   -1 wlter=   -1
>
> [0] TSAdaptChoose_Basic(): Estimated scaled local truncation error
> 1.49714, *accepting
> because step size 0.5 is at minimum*
>       TSAdapt basic arkimex 0:1bee step *396* accepted t=2392.68    +
> 5.000e-01 dt=5.000e-01  wlte=  1.5  wltea=   -1 wlter=   -1
>
> Anyone have any idea what is going on here?
>
> Thanks,
> Mark


More information about the petsc-users mailing list