diff --git a/usadelndsoc/solver.py b/usadelndsoc/solver.py index c8e2783205d4fd9956a58b2f38d5ec545a984d03..04c81ea6803ac082d16dd810f20a1326fc80a56e 100644 --- a/usadelndsoc/solver.py +++ b/usadelndsoc/solver.py @@ -394,12 +394,12 @@ class Solver: minw = max(1e-6, 0.25 * abs_re_w) steps = [0.75**k for k in range(50) if 0.75**k > abs_re_w / 5] try: + self._M = M = None for domega in steps: _log_solve.debug(f" Continuation step {domega}") self._core.omega = old_omega + domega * ( 1 if np.real(old_omega) >= 0 else -1 ) - self._M = M = None self._Phi[...] = self._solve( eval_rhs, eval_jac_mul, @@ -421,7 +421,8 @@ class Solver: if np.isnan(self._Phi).any(): break _log_solve.debug(f" continuation step 0") - self._M = M = None + else: + self._M = M = None return self._solve( eval_rhs, eval_jac_mul,