[petsc-users] TimeStepper norm problems. EMIL Please read this

Emil Constantinescu emconsta at mcs.anl.gov
Mon Mar 23 22:15:50 CDT 2015


On 3/23/15 4:44 AM, Lisandro Dalcin wrote:
> I have an alternative implementation of adaptivity in PetIGA in custom
> Generalized-Alpha implementation. The adaptivity is not based on
> embed-RK like for TSCN, but in storing a solution vector from the
> previous step then estimate the LTE with backward differences. BTW,
> this idea can be generalized to any second-order method at the cost of
> tracking an extra solution vector and a bunch of Vec operations.
>
> Emil, if you want to try my code to give it a try, it is very easy to
> integrate, you just need to copy a file to your sources
> (https://bitbucket.org/dalcinl/petiga/src/tip/src/tsalpha1.c) and add
> a TSRegister() call after PetscInitialize(). Then you pass in the
> command line -ts_type alpha1 -ts_alpha_adapt. You can also pass
> -ts_alpha_radius 0.5 to add some high-frequency dissipation (the
> default is 1.0, then the method is roughly equivalent to the midpoint
> rule).
>
> PS: I would like to put all this in PETSc, but before that, I need
> help from you guys to make sure this method really makes sense. The
> fact that this has worked very well for me in some problems is not
> enough.

Lisandro, that's a neat idea. If you are basically moving in the 
multistep realm for error estimation with one-step methods, I think 
there are two considerations:

1. The equations need to be continuous (no restarting, no events) or 
they would have to reset the error estimator somehow.

2. Backward differences are sensitive to time stepping changes; unlike 
one-step methods that can accommodate any step changes, B-D has strict 
limits for stability. While this does not play a crucial role (it is 
just the estimator); if the time step varies wildly (can be easily 
constrained), it may create some problems with the estimator.

Emil


More information about the petsc-users mailing list