Options of the local Newton of the implicit source (backward-Euler).
The DEFAULTS reproduce EXACTLY the historical behavior: 2 FIXED iterations, no residual evaluation (rel_tol == abs_tol == 0 -> no stop test, no extra cost), finite-difference Jacobian step h = fd_eps*|w| + fd_eps with fd_eps = 1e-7 (the constant historically hard-coded). Device-clean POD (passed BY VALUE into the kernel).
- max_iters: Newton iteration budget (historical: 2).
- rel_tol / abs_tol: stop criterion ||F||_inf <= abs_tol + rel_tol*||F0||_inf, evaluated per CELL at the start of an iteration. 0/0 (default) = disabled -> bit-identical historical loop.
- fd_eps: step (relative AND absolute floor) of the finite-difference Jacobian.
- damping: damping factor of the update W -= damping * delta. 1 (default) = full Newton, bit-identical (multiplication by 1.0 exact in IEEE). < 1 = damped Newton (very stiff source / poor conditioning: robustness at the cost of speed).
- fail_policy: HOST reaction (after reduction) to failed cells – kFailNone (default) = record only (historical); kFailWarn = one stderr warning per advance; kFailThrow = std::runtime_error with the offending cell. != kFailNone forces the instrumented path (detection required) – a pure observer, W unchanged.