diff --git a/tupak/core/prior.py b/tupak/core/prior.py index 6966a1729787c87cc7f5acc24bd5c07f835bb16f..07defca79e176398b61f4bc3ef1a853371e6e4da 100644 --- a/tupak/core/prior.py +++ b/tupak/core/prior.py @@ -94,10 +94,10 @@ class PriorSet(dict): continue elif isinstance(self[key], float) or isinstance(self[key], int): self[key] = DeltaFunction(self[key]) - logging.info( + logging.debug( "{} converted to delta function prior.".format(key)) else: - logging.info( + logging.debug( "{} cannot be converted to delta function prior." .format(key)) @@ -139,7 +139,7 @@ class PriorSet(dict): if isinstance(self[key], Prior): samples[key] = self[key].sample(size=size) else: - logging.info('{} not a known prior.'.format(key)) + logging.debug('{} not a known prior.'.format(key)) return samples def prob(self, sample): @@ -180,7 +180,7 @@ def create_default_prior(name, default_priors_file=None): """ if default_priors_file is None: - logging.info( + logging.debug( "No prior file given.") prior = None else: @@ -188,7 +188,7 @@ def create_default_prior(name, default_priors_file=None): if name in default_priors.keys(): prior = default_priors[name] else: - logging.info( + logging.debug( "No default prior found for variable {}.".format(name)) prior = None return prior @@ -579,7 +579,7 @@ class Interped(Prior): def __initialize_attributes(self): if np.trapz(self.yy, self.xx) != 1: - logging.info('Supplied PDF for {} is not normalised, normalising.'.format(self.name)) + logging.debug('Supplied PDF for {} is not normalised, normalising.'.format(self.name)) self.yy /= np.trapz(self.yy, self.xx) self.YY = cumtrapz(self.yy, self.xx, initial=0) # Need last element of cumulative distribution to be exactly one. diff --git a/tupak/core/result.py b/tupak/core/result.py index fef89e80101d0f1f26267d587fae13e9a21caeb2..1789b158f86b16419287b86df6f093f384c30405 100644 --- a/tupak/core/result.py +++ b/tupak/core/result.py @@ -91,12 +91,12 @@ class Result(dict): if os.path.isdir(self.outdir) is False: os.makedirs(self.outdir) if os.path.isfile(file_name): - logging.info( + logging.debug( 'Renaming existing file {} to {}.old'.format(file_name, file_name)) os.rename(file_name, file_name + '.old') - logging.info("Saving result to {}".format(file_name)) + logging.debug("Saving result to {}".format(file_name)) try: deepdish.io.save(file_name, self.get_result_dictionary()) except Exception as e: @@ -183,7 +183,7 @@ class Result(dict): if save: filename = '{}/{}_corner.png'.format(self.outdir, self.label) - logging.info('Saving corner plot to {}'.format(filename)) + logging.debug('Saving corner plot to {}'.format(filename)) fig.savefig(filename, dpi=dpi) return fig diff --git a/tupak/core/sampler.py b/tupak/core/sampler.py index 4d0b007c3f3c725444392bae5728dd42a82bf54d..84474d6c2ce067423c3679e3b496c84e7d13ceeb 100644 --- a/tupak/core/sampler.py +++ b/tupak/core/sampler.py @@ -130,7 +130,7 @@ class Sampler(object): logging.info("Search parameters:") for key in self.__search_parameter_keys: - logging.info(' {} ~ {}'.format(key, self.priors[key])) + logging.info(' {} = {}'.format(key, self.priors[key])) for key in self.__fixed_parameter_keys: logging.info(' {} = {}'.format(key, self.priors[key].peak)) @@ -156,7 +156,8 @@ class Sampler(object): t1 = datetime.datetime.now() self.likelihood.log_likelihood() logging.info( - "Single likelihood eval. took {:.3e} s".format((datetime.datetime.now() - t1).total_seconds())) + "Single likelihood evaluation took {:.3e} s" + .format((datetime.datetime.now() - t1).total_seconds())) except TypeError as e: raise TypeError( "Likelihood evaluation failed with message: \n'{}'\n" @@ -212,9 +213,9 @@ class Sampler(object): """ draw = np.array(list(self.priors.sample_subset(self.__search_parameter_keys).values())) if np.isinf(self.log_likelihood(draw)): - logging.info('Prior draw {} has inf likelihood'.format(draw)) + logging.warning('Prior draw {} has inf likelihood'.format(draw)) if np.isinf(self.log_prior(draw)): - logging.info('Prior draw {} has inf prior'.format(draw)) + logging.warning('Prior draw {} has inf prior'.format(draw)) return draw def _run_external_sampler(self): @@ -396,7 +397,7 @@ class Dynesty(Sampler): def generate_trace_plots(self, dynesty_results): filename = '{}/{}_trace.png'.format(self.outdir, self.label) - logging.info("Writing trace plot to {}".format(filename)) + logging.debug("Writing trace plot to {}".format(filename)) from dynesty import plotting as dyplot fig, axes = dyplot.traceplot(dynesty_results, labels=self.result.parameter_labels) @@ -504,7 +505,7 @@ class Ptemcee(Sampler): fig.tight_layout() filename = '{}/{}_walkers.png'.format(self.outdir, self.label) - logging.info('Saving walkers plot to {}'.format('filename')) + logging.debug('Saving walkers plot to {}'.format('filename')) fig.savefig(filename) @@ -580,7 +581,7 @@ def run_sampler(likelihood, priors=None, label='label', outdir='outdir', **kwargs) if sampler.cached_result: - logging.info("Using cached result") + logging.warning("Using cached result") return sampler.cached_result start_time = datetime.datetime.now() @@ -592,7 +593,6 @@ def run_sampler(likelihood, priors=None, label='label', outdir='outdir', end_time = datetime.datetime.now() result.sampling_time = (end_time - start_time).total_seconds() - logging.info('') logging.info('Sampling time: {}'.format(end_time - start_time)) if sampler.use_ratio: @@ -615,6 +615,8 @@ def run_sampler(likelihood, priors=None, label='label', outdir='outdir', result.save_to_file() if plot: result.plot_corner() + logging.info("Sampling finished, results saved to {}/".format(outdir)) + logging.info("Summary of results:\n{}".format(result)) return result else: raise ValueError( diff --git a/tupak/core/utils.py b/tupak/core/utils.py index 0fa1ecc57c2c6a21c319f9909e6f6aaefee4c7b3..62d567b301a1c971b563a5aeb293abc672eb4a36 100644 --- a/tupak/core/utils.py +++ b/tupak/core/utils.py @@ -219,9 +219,10 @@ def setup_logger(outdir=None, label=None, log_level=None): file_handler.setLevel(LEVEL) logger.addHandler(file_handler) - version_file = os.path.join(os.path.dirname(os.path.dirname(__file__)), '.version') + version_file = os.path.join( + os.path.dirname(os.path.dirname(__file__)), '.version') with open(version_file, 'r') as f: - version = f.readline() + version = f.readline().rstrip() logging.info('Running tupak version: {}'.format(version)) @@ -300,8 +301,8 @@ command_line_args = set_up_command_line_arguments() if 'DISPLAY' in os.environ: pass else: - logging.info('No $DISPLAY environment variable found, so importing \ - matplotlib.pyplot with non-interactive "Agg" backend.') + logging.debug('No $DISPLAY environment variable found, so importing \ + matplotlib.pyplot with non-interactive "Agg" backend.') import matplotlib matplotlib.use('Agg')