From 9ee541a08d94e64abac0aace23887366ffec3071 Mon Sep 17 00:00:00 2001
From: Theo Steininger <theo.steininger@ipt.ai>
Date: Wed, 23 Aug 2017 23:38:29 +0200
Subject: [PATCH] Fixed wiener_filter_via_hamiltonian.py

---
 demos/wiener_filter_via_hamiltonian.py | 10 +++++-----
 nifty/sugar.py                         |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/demos/wiener_filter_via_hamiltonian.py b/demos/wiener_filter_via_hamiltonian.py
index 43f024aa1..db7e5bb0a 100644
--- a/demos/wiener_filter_via_hamiltonian.py
+++ b/demos/wiener_filter_via_hamiltonian.py
@@ -117,13 +117,13 @@ if __name__ == "__main__":
     # Solving the problem analytically
     m0 = D0.inverse_times(j)
 
-    sample_variance = Field(sh.domain, val=0. + 0j)
-    sample_mean = Field(sh.domain, val=0. + 0j)
+    sample_variance = Field(sh.domain, val=0.)
+    sample_mean = Field(sh.domain, val=0.)
 
     # sampling the uncertainty map
-    n_samples = 1
+    n_samples = 10
     for i in range(n_samples):
-        sample = sugar.generate_posterior_sample(m0, D0)
+        sample = fft(sugar.generate_posterior_sample(0., D0))
         sample_variance += sample**2
         sample_mean += sample
-    variance = sample_variance/n_samples - (sample_mean/n_samples)
+    variance = (sample_variance - sample_mean**2)/n_samples
diff --git a/nifty/sugar.py b/nifty/sugar.py
index 3a77bfcb9..c3b14aa36 100644
--- a/nifty/sugar.py
+++ b/nifty/sugar.py
@@ -108,7 +108,7 @@ def generate_posterior_sample(mean, covariance):
     R = covariance.R
     N = covariance.N
 
-    power = S.diagonal().power_analyze()**.5
+    power = sqrt(S.diagonal().power_analyze())
     mock_signal = power.power_synthesize(real_signal=True)
 
     noise = N.diagonal(bare=True)
-- 
GitLab