From 2325dd558af6c5af9c5ac5f1f7a490105fa1a68b Mon Sep 17 00:00:00 2001 From: Gregory Ashton <gregory.ashton@ligo.org> Date: Thu, 15 Nov 2018 23:10:50 -0600 Subject: [PATCH] Adds version information to the result object --- bilby/core/result.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/bilby/core/result.py b/bilby/core/result.py index 75b676749..c8e36a83a 100644 --- a/bilby/core/result.py +++ b/bilby/core/result.py @@ -74,7 +74,7 @@ class Result(object): log_bayes_factor=np.nan, log_likelihood_evaluations=None, sampling_time=None, nburn=None, walkers=None, max_autocorrelation_time=None, parameter_labels=None, - parameter_labels_with_unit=None): + parameter_labels_with_unit=None, version=None): """ A class to store the results of the sampling run Parameters @@ -110,6 +110,9 @@ class Result(object): The estimated maximum autocorrelation time for MCMC samplers parameter_labels, parameter_labels_with_unit: list Lists of the latex-formatted parameter labels + version: str, + Version information for software used to generate the result. Note, + this information is generated when the result object is initialized Note: All sampling output parameters, e.g. the samples themselves are @@ -139,6 +142,7 @@ class Result(object): self.log_bayes_factor = log_bayes_factor self.log_likelihood_evaluations = log_likelihood_evaluations self.sampling_time = sampling_time + self.version = version self.max_autocorrelation_time = max_autocorrelation_time def __str__(self): @@ -245,7 +249,19 @@ class Result(object): def posterior(self, posterior): self._posterior = posterior + @property + def version(self): + return self._version + + @version.setter + def version(self, version): + if version is None: + self._version = 'bilby={}'.format(utils.get_version_information()) + else: + self._version = version + def _get_save_data_dictionary(self): + # This list defines all the parameters saved in the result object save_attrs = [ 'label', 'outdir', 'sampler', 'log_evidence', 'log_evidence_err', 'log_noise_evidence', 'log_bayes_factor', 'priors', 'posterior', @@ -253,7 +269,7 @@ class Result(object): 'fixed_parameter_keys', 'sampling_time', 'sampler_kwargs', 'log_likelihood_evaluations', 'samples', 'nested_samples', 'walkers', 'nburn', 'parameter_labels', - 'parameter_labels_with_unit'] + 'parameter_labels_with_unit', 'version'] dictionary = OrderedDict() for attr in save_attrs: try: -- GitLab