chalmersplasmatheory / DREAM

The Disruption Runaway Electron Analysis Model
MIT License
24 stars 5 forks source link

Non-linear solver sometimes does not converge when n_RE ~< 1e-150 #11

Closed Embreus closed 4 years ago

Embreus commented 4 years ago

When hot-tail grid is enabled the non-linear solver can get stuck when n_RE is ~dbl_min. The convergence criterion should be updated, maybe with a threshold >> 1e-150 below which it always counts as converged?

Embreus commented 4 years ago

A bit unclear how this should be solved in general. It doesn't seem to be directly correlated with dbl_min but rather when the tail of the distribution is far from the grid boundary so that essentially only noise contributes to n_re. Hopefully flux limiters will help to combat this issue? Haven't seen it pop up in a while now.

Not sure if the issue is specific enough to be meaningful as is. Close it? @hoppe93

hoppe93 commented 4 years ago

I thought we solved this by introducing an absolute tolerance in the convergence checker? The remaining bit is to provide an interface to setting the absolute tolerance in the Python interface (and to allow us to disable some checks altogether). So maybe keep this issue open for that reason? Or open a new issue for implementing setting tolerances in the interface?

Embreus commented 4 years ago

I suspect that a fixed absolute tolerance is not a robust solution, and would indeed need interface support so that it can be tweaked on a case-to-case basis. Regardless, being able to control the individual tolerances should be useful in the future to resolve possible convergence problems that may arise. Opening a new issue.