From d5859a78d5c648fc397ba3559f300e61d29a4b82 Mon Sep 17 00:00:00 2001 From: Theo Steininger Date: Fri, 8 Dec 2017 22:49:12 +0100 Subject: [PATCH] Refactored EnsembleLikelihood and adapted ParameterFile --- .../ensemble_likelihood/ensemble_likelihood.py | 13 ++++--------- .../hammurapy/input/default_parameters.xml | 15 +++++++++------ 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/imagine/likelihoods/ensemble_likelihood/ensemble_likelihood.py b/imagine/likelihoods/ensemble_likelihood/ensemble_likelihood.py index 88af268..28f8483 100644 --- a/imagine/likelihoods/ensemble_likelihood/ensemble_likelihood.py +++ b/imagine/likelihoods/ensemble_likelihood/ensemble_likelihood.py @@ -2,7 +2,7 @@ import numpy as np -from nifty import DiagonalOperator, FieldArray, Field +from nifty import FieldArray, Field from imagine.likelihoods.likelihood import Likelihood @@ -30,7 +30,7 @@ class EnsembleLikelihood(Likelihood): self.data_covariance_operator) def _process_simple_field(self, observable, measured_data, - data_covariance_operator): + data_covariance): # https://en.wikipedia.org/wiki/Sherman%E2%80%93Morrison_formula#Generalization # B = A^{-1} + U U^dagger # A = data_covariance @@ -50,7 +50,7 @@ class EnsembleLikelihood(Likelihood): self.logger.debug("mu: %f" % mu) alpha = (np.einsum(u_val, [0, 1], u_val, [2, 1])**2).sum() - alpha /= k*2 + alpha /= k**2 numerator = (1 - 2./n)*alpha + (mu*n)**2 denominator = (k + 1 - 2./n) * (alpha - ((mu*n)**2)/n) @@ -65,12 +65,7 @@ class EnsembleLikelihood(Likelihood): # rescale U half/half u_val *= np.sqrt(1-rho) / np.sqrt(k) - # we assume that data_covariance_operator is a DiagonalOperator - if not isinstance(data_covariance_operator, DiagonalOperator): - raise TypeError("data_covariance_operator must be a NIFTY " - "DiagonalOperator.") - - A_diagonal_val = data_covariance_operator.diagonal(bare=False).val + A_diagonal_val = data_covariance self.logger.info(('rho*mu', rho*mu, 'rho', rho, 'mu', mu, diff --git a/imagine/observers/hammurapy/input/default_parameters.xml b/imagine/observers/hammurapy/input/default_parameters.xml index bb8b11a..b6fc903 100644 --- a/imagine/observers/hammurapy/input/default_parameters.xml +++ b/imagine/observers/hammurapy/input/default_parameters.xml @@ -6,7 +6,6 @@ - @@ -74,7 +73,7 @@ - + @@ -266,9 +265,11 @@ -
- - + + + + + @@ -297,7 +298,9 @@ - + + +
-- GitLab