From ed3fbde568c61c3b84e6069d071aa62533030f20 Mon Sep 17 00:00:00 2001 From: Matthew Pitkin <matthew.pitkin@ligo.org> Date: Tue, 7 Aug 2018 22:05:08 +0100 Subject: [PATCH] sampler.py: ignore DeltaFunctions in output samples for Pymc3 --- tupak/core/sampler.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tupak/core/sampler.py b/tupak/core/sampler.py index fbba50cba..82216f8d3 100644 --- a/tupak/core/sampler.py +++ b/tupak/core/sampler.py @@ -1201,12 +1201,15 @@ class Pymc3(Sampler): # perform the sampling trace = pymc3.sample(self.draws, step=sm, **self.kwargs) - nparams = len(self.priors.keys()) + nparams = len([key for key in self.priors.keys() if self.priors[key].__class__.__name__ != 'DeltaFunction']) nsamples = len(trace)*self.chains self.result.samples = np.zeros((nsamples, nparams)) - for i, key in enumerate(self.priors.keys()): - self.result.samples[:,i] = trace[key] + count = 0 + for key in self.priors.keys(): + if self.priors[key].__class__.__name__ != 'DeltaFunction': # ignore DeltaFunction variables + self.result.samples[:,count] = trace[key] + count += 1 self.result.sampler_output = np.nan self.calculate_autocorrelation(self.result.samples) -- GitLab