On 4/30/25 00:40, Simon wrote:
>
> Attached is the test case for the deal.II 9.6.0 release.
> I was also able to install version 9.6.0 and run the program myself.
> Currently, the program throws a
> 'StandardExceptions::RecoverableUserCallbackError',
> which can be caught and handled as a recoverable error. However, I
> believe this is not sufficient.
> For example, if we limit the number of nonlinear iterations to two via
> the AdditionalData argument,
> we can easily trigger a 'KIN_MAXITER_REACHED' error -- still being
> ignored in release mode.
I tried that, but I still get the following with a slightly modified
testcase:
21: DEAL::Computing residual for the 1st time, at 10.0000
21: DEAL::Setting up Jacobian system at u=10.0000
21: DEAL::Computing residual for the 2nd time, at 10.0000
21: DEAL::Reporting recoverable failure.
21:
21: sundials/kinsol_06_v2.debug: RUN failed. ------ Additional output on
stdout/stderr:
21:
21:
21: [KINSOL ERROR] KINSol
21: The linear solver's solve function failed recoverably, but the
Jacobian data is already current.
21:
21: terminate called after throwing an instance of
'dealii::StandardExceptions::RecoverableUserCallbackError'
21: what():
21: --------------------------------------------------------
21: An error occurred in line <0> of file <> in function
21:
21: The violated condition was:
21:
21: Additional information:
21: A user call-back function encountered a recoverable error, but the
21: underlying library that called the call-back did not manage to
recover
21: from the error and aborted its operation.
21:
21: See the glossary entry on user call-back functions for more
21: information.
21: --------------------------------------------------------
That actually sounds like a reasonable error message to me, and it's an
exception I can catch. I posted this testcase here:
https://github.com/dealii/dealii/pull/18404
So I can't reproduce what you are saying -- though I can see that what
you are saying is right in principle. Would you be willing to modify
this testcase in such a way that it actually shows the issue you mention?
Best
W.