From 62c29c55d626ea030cb70e02889126fb281737bc Mon Sep 17 00:00:00 2001 From: "Philipp Frank (pfrank)" <philipp@mpa-garching.mpg.de> Date: Tue, 24 Apr 2018 17:43:55 +0200 Subject: [PATCH] Another Hotfix for krylov sampling caching --- nifty4/library/krylov_sampling.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nifty4/library/krylov_sampling.py b/nifty4/library/krylov_sampling.py index 95b535b3e..59d5ab4c2 100644 --- a/nifty4/library/krylov_sampling.py +++ b/nifty4/library/krylov_sampling.py @@ -65,13 +65,13 @@ def generate_krylov_samples(D_inv, S, j, N_samps, controller): r = j.copy() p = r.copy() - d = p.vdot(D_inv(p)) + Dip = D_inv(p) + d = p.vdot(Dip) while True: gamma = r.vdot(r) / d if gamma == 0.: break x = x + gamma*p - Dip = D_inv(p) for samp in y: samp += (np.random.randn() * np.sqrt(d) - samp.vdot(Dip)) / d * p energy = energy.at(x) @@ -82,6 +82,7 @@ def generate_krylov_samples(D_inv, S, j, N_samps, controller): beta = r_new.vdot(r_new) / r.vdot(r) r = r_new p = r + beta * p + Dip = D_inv(p) d = p.vdot(Dip) if d == 0.: break -- GitLab