[petsc-users] TimeStepper norm problems. EMIL Please read this
Emil Constantinescu
emconsta at mcs.anl.gov
Thu Apr 16 08:44:54 CDT 2015
On 4/16/15 2:13 AM, Lisandro Dalcin wrote:
> On 16 April 2015 at 04:51, Emil Constantinescu <emconsta at mcs.anl.gov> wrote:
>>
>> On 3/24/15 5:31 AM, Lisandro Dalcin wrote:
>>>
>>> Emil, is there any chance you can try my code with your problem? I
>>> really need some feedback to push this to PETSc, otherwise
>>
>>
>> Hi Lisandro - we checked ts_alpha_adapt and we tested it on a small system
>> (mildly stiff van der Pol ODE). I enclosed a Figure generated by Debo that
>> compares the error at the final time against ATOL - there alpha is the
>> original one (with original adaptor).
>
> Original adaptor? Do you mean TSAlphaSetAdapt(ts,TSAlphaAdaptDefault,NULL)?
>
> In such a case, no surprises, TSAlphaAdaptDefault() is quite naive, it
> does not estimate the LTE, it is actually based in the change of the
> solution.
Yups, that's the one; but that still needs to be available unless a
better one-step one is implemented. Note however that even estimating
exactly LTE is not a guarantee that the error will be within ATOL.
Emil
> Can you send/point me your code to take a look?
>
>> For this problem your adaptor works
>> better [ error should be close to ATOL].
>
>> So from my perspective, your
>> adaptor works well. However, we need to keep the old too so that we have a
>> one step adaptor available ... since alpha is a one step method.
>>
>
> Sorry, I'm not following you. Generalized alpha is not truly a
> one-step method, because it retains Xdot from the previous time step.
> In the initial step, other codes out there assume that Xdot_prev=0.
>
> My "alpha1" implementation has a trick for the initial time step
> (using the same ideas, i.e. a BD formula) to both estimate Xdot_prev
> and the error. However, this is at the cost of performing two
> nonlinear solves in the initial step (IOW, two internal timesteps with
> backward Euler and dt/2). Please note this trick should be valid for
> any second-order method, at least to estimate the initial LTE in the
> first step.
>
> BTW, Have you compared my "-ts_type tsalpha1 -ts_alpha_adapt" with
> PETSc's "-ts_type cn -ts_theta adapt"?
>
More information about the petsc-users
mailing list