Mark Lohry <[email protected]> writes:

> -snes_converged_reason:
>
> Nonlinear solve did not converge due to DIVERGED_LOCAL_MIN iterations 4
>
> (which is expected)

If you set -snes_stol $something_large then SNES will exit
SNES_CONVERGED_SNORM_RELATIVE instead of SNES_DIVERGED_LINE_SEARCH when
it stagnates.

>> Add -snes_converged_reason.  What do you want to do when the solver
>> fails?  Pretend like it succeeded and get the wrong answer?  Usually
>> people shorten the time step and retry, which is what you see happening
>> here.
> Well yes, actually - I expected it to fail for this test case but it 
> stubbornly gets the right answer. 

Sorry about that.  ;-)

> The explicit integrator has no problem keeping a fixed timestep and
> throwing the expected NaNs when it blows up.
>
> It's alarming to see the unexpected behavior of setting TSADAPTNONE and 
> seeing it actually adapting (in a rudimentary fashion) the timestep, and 
> keeping that reduced timestep even after the stiffness goes away.

We figured it's not very useful to just crash or get the wrong answer,
so the solver-based control is decoupled from error-based control.

Attachment: signature.asc
Description: PGP signature

Reply via email to