From 29796e45ebcc271e305c517ee8d8e7d7540f73db Mon Sep 17 00:00:00 2001 From: Moritz Huebner <email@moritz-huebner.de> Date: Wed, 6 Jun 2018 16:32:44 +1000 Subject: [PATCH] Fixed some of the issues that came up during restructuring --- examples/injection_examples/basic_tutorial.py | 2 +- .../basic_tutorial_dist_time_phase_marg.py | 2 +- .../basic_tutorial_time_phase_marg.py | 2 +- .../change_sampled_parameters.py | 2 +- .../create_your_own_source_model.py | 2 +- ...reate_your_own_time_domain_source_model.py | 2 +- .../how_to_specify_the_prior.py | 2 +- .../marginalized_likelihood.py | 2 +- examples/open_data_examples/GW150914.py | 4 --- .../open_data_examples/GW150914_minimal.py | 4 +-- .../other_examples/hyper_parameter_example.py | 2 +- .../other_examples/sine_gaussian_example.py | 2 +- .../supernova_example/supernova_example.py | 11 ------ examples/tutorials/compare_samplers.ipynb | 18 +++++----- examples/tutorials/making_priors.ipynb | 34 +++++++++---------- .../tutorials/visualising_the_results.ipynb | 16 ++++----- test/waveform_generator_tests.py | 9 +++-- tupak/core/utils.py | 2 +- 18 files changed, 53 insertions(+), 65 deletions(-) diff --git a/examples/injection_examples/basic_tutorial.py b/examples/injection_examples/basic_tutorial.py index b5f1fe721..cd6b81ef2 100644 --- a/examples/injection_examples/basic_tutorial.py +++ b/examples/injection_examples/basic_tutorial.py @@ -59,7 +59,7 @@ priors['geocent_time'] = tupak.core.prior.Uniform(injection_parameters['geocent_ 'geocent_time') # Initialise the likelihood by passing in the interferometer data (IFOs) and the waveoform generator -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator, time_marginalization=False, phase_marginalization=False, distance_marginalization=False, prior=priors) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator, time_marginalization=False, phase_marginalization=False, distance_marginalization=False, prior=priors) # Run sampler. In this case we're going to use the `dynesty` sampler result = tupak.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', npoints=1000, diff --git a/examples/injection_examples/basic_tutorial_dist_time_phase_marg.py b/examples/injection_examples/basic_tutorial_dist_time_phase_marg.py index c755d881e..30a76a5cf 100644 --- a/examples/injection_examples/basic_tutorial_dist_time_phase_marg.py +++ b/examples/injection_examples/basic_tutorial_dist_time_phase_marg.py @@ -55,7 +55,7 @@ for key in ['a_1', 'a_2', 'tilt_1', 'tilt_2', 'phi_12', 'phi_jl','psi', 'ra', 'd priors['luminosity_distance'] = tupak.core.prior.create_default_prior(name='luminosity_distance') # Initialise the likelihood by passing in the interferometer data (IFOs) and the waveoform generator -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator, time_marginalization=True, phase_marginalization=True, distance_marginalization=True, prior=priors) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator, time_marginalization=True, phase_marginalization=True, distance_marginalization=True, prior=priors) # Run sampler. In this case we're going to use the `dynesty` sampler result = tupak.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', npoints=1000, diff --git a/examples/injection_examples/basic_tutorial_time_phase_marg.py b/examples/injection_examples/basic_tutorial_time_phase_marg.py index 738ecbbff..cf773a2ea 100644 --- a/examples/injection_examples/basic_tutorial_time_phase_marg.py +++ b/examples/injection_examples/basic_tutorial_time_phase_marg.py @@ -55,7 +55,7 @@ for key in ['a_1', 'a_2', 'tilt_1', 'tilt_2', 'phi_12', 'phi_jl','psi', 'ra', 'd priors['luminosity_distance'] = tupak.core.prior.create_default_prior(name='luminosity_distance') # Initialise the likelihood by passing in the interferometer data (IFOs) and the waveoform generator -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator, time_marginalization=True, phase_marginalization=True, distance_marginalization=False, prior=priors) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator, time_marginalization=True, phase_marginalization=True, distance_marginalization=False, prior=priors) # Run sampler. In this case we're going to use the `dynesty` sampler result = tupak.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', npoints=1000, diff --git a/examples/injection_examples/change_sampled_parameters.py b/examples/injection_examples/change_sampled_parameters.py index f0f653d39..b3f831084 100644 --- a/examples/injection_examples/change_sampled_parameters.py +++ b/examples/injection_examples/change_sampled_parameters.py @@ -43,7 +43,7 @@ for key in ['a_1', 'a_2', 'tilt_1', 'tilt_2', 'phi_12', 'phi_jl', 'phase', 'psi' priors['luminosity_distance'] = tupak.core.prior.create_default_prior(name='luminosity_distance') # Initialise GravitationalWaveTransient -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator) # Run sampler result = tupak.core.sampler.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', diff --git a/examples/injection_examples/create_your_own_source_model.py b/examples/injection_examples/create_your_own_source_model.py index 2bdd90af5..15f2adfb0 100644 --- a/examples/injection_examples/create_your_own_source_model.py +++ b/examples/injection_examples/create_your_own_source_model.py @@ -45,7 +45,7 @@ prior = injection_parameters.copy() prior['A'] = tupak.core.prior.PowerLaw(alpha=-1, minimum=1e-25, maximum=1e-21, name='A') prior['f0'] = tupak.core.prior.Uniform(90, 110, 'f') -likelihood = tupak.core.likelihood.GravitationalWaveTransient(IFOs, waveform_generator) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(IFOs, waveform_generator) result = tupak.core.sampler.run_sampler( likelihood, prior, sampler='dynesty', outdir=outdir, label=label, diff --git a/examples/injection_examples/create_your_own_time_domain_source_model.py b/examples/injection_examples/create_your_own_time_domain_source_model.py index 1660d99bd..588aa5315 100644 --- a/examples/injection_examples/create_your_own_time_domain_source_model.py +++ b/examples/injection_examples/create_your_own_time_domain_source_model.py @@ -64,7 +64,7 @@ prior['phase'] = tupak.core.prior.Uniform(-np.pi / 2, np.pi / 2, r'$\phi$') # define likelihood -likelihood = tupak.core.likelihood.GravitationalWaveTransient(IFOs, waveform) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(IFOs, waveform) # launch sampler result = tupak.core.sampler.run_sampler(likelihood, prior, sampler='dynesty', npoints=1000, diff --git a/examples/injection_examples/how_to_specify_the_prior.py b/examples/injection_examples/how_to_specify_the_prior.py index 25dfe3fa8..19088d11d 100644 --- a/examples/injection_examples/how_to_specify_the_prior.py +++ b/examples/injection_examples/how_to_specify_the_prior.py @@ -58,7 +58,7 @@ priors['a_2'] = tupak.core.prior.Interped(name='a_2', xx=a_2, yy=p_a_2, minimum= # Enjoy. # Initialise GravitationalWaveTransient -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator) # Run sampler result = tupak.core.sampler.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', diff --git a/examples/injection_examples/marginalized_likelihood.py b/examples/injection_examples/marginalized_likelihood.py index 07df8e929..9a14d33d9 100644 --- a/examples/injection_examples/marginalized_likelihood.py +++ b/examples/injection_examples/marginalized_likelihood.py @@ -38,7 +38,7 @@ for key in ['a_1', 'a_2', 'tilt_1', 'tilt_2', 'phi_12', 'phi_jl', 'phase', 'iota # Initialise GravitationalWaveTransient # Note that we now need to pass the: priors and flags for each thing that's being marginalised. -likelihood = tupak.core.likelihood.GravitationalWaveTransient( +likelihood = tupak.gw.likelihood.GravitationalWaveTransient( interferometers=IFOs, waveform_generator=waveform_generator, prior=priors, distance_marginalization=True, phase_marginalization=True) diff --git a/examples/open_data_examples/GW150914.py b/examples/open_data_examples/GW150914.py index de2e0f9fe..9d274eac4 100644 --- a/examples/open_data_examples/GW150914.py +++ b/examples/open_data_examples/GW150914.py @@ -54,11 +54,7 @@ waveform_generator = tupak.WaveformGenerator(time_duration=interferometers[0].du # In this step, we define the likelihood. Here we use the standard likelihood # function, passing it the data and the waveform generator. -<<<<<<< HEAD -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers, waveform_generator, time_marginalization=False, distance_marginalization=True, prior=prior) -======= likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers, waveform_generator) ->>>>>>> e8b704afba65886f49cb448402a95ae90c468a24 # Finally, we run the sampler. This function takes the likelihood and prio # along with some options for how to do the sampling and how to save the data diff --git a/examples/open_data_examples/GW150914_minimal.py b/examples/open_data_examples/GW150914_minimal.py index 3c48a1eab..b63df0d74 100644 --- a/examples/open_data_examples/GW150914_minimal.py +++ b/examples/open_data_examples/GW150914_minimal.py @@ -6,9 +6,9 @@ stimation on GW150914 using open data. """ import tupak -t0 = tupak.core.utils.get_event_time("GW150914") +t0 = tupak.gw.utils.get_event_time("GW150914") prior = dict(geocent_time=tupak.core.prior.Uniform(t0 - 0.1, t0 + 0.1, name='geocent_time')) interferometers = tupak.gw.detector.get_event_data("GW150914") -likelihood = tupak.core.likelihood.get_binary_black_hole_likelihood(interferometers) +likelihood = tupak.gw.likelihood.get_binary_black_hole_likelihood(interferometers) result = tupak.run_sampler(likelihood, prior, label='GW150914') result.plot_corner() diff --git a/examples/other_examples/hyper_parameter_example.py b/examples/other_examples/hyper_parameter_example.py index ce9aadc09..b35735703 100644 --- a/examples/other_examples/hyper_parameter_example.py +++ b/examples/other_examples/hyper_parameter_example.py @@ -67,7 +67,7 @@ for i in range(Nevents): run_prior = tupak.core.prior.Uniform(minimum=-10, maximum=10, name='mu_m') hyper_prior = tupak.core.prior.Gaussian(mu=0, sigma=1, name='hyper') -hp_likelihood = tupak.core.likelihood.HyperparameterLikelihood( +hp_likelihood = tupak.gw.likelihood.HyperparameterLikelihood( samples, hyper_prior, run_prior) hp_priors = dict( diff --git a/examples/other_examples/sine_gaussian_example.py b/examples/other_examples/sine_gaussian_example.py index 620090d64..b1702e773 100644 --- a/examples/other_examples/sine_gaussian_example.py +++ b/examples/other_examples/sine_gaussian_example.py @@ -55,7 +55,7 @@ priors['frequency'] = tupak.core.prior.Uniform(30, 1000, 'frequency') priors['hrss'] = tupak.core.prior.Uniform(1e-23, 1e-21, 'hrss') # Initialise the likelihood by passing in the interferometer data (IFOs) and the waveoform generator -likelihood = tupak.core.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator) +likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator) # Run sampler. In this case we're going to use the `dynesty` sampler result = tupak.core.sampler.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', npoints=1000, diff --git a/examples/supernova_example/supernova_example.py b/examples/supernova_example/supernova_example.py index dd7761a53..8ca9899a4 100644 --- a/examples/supernova_example/supernova_example.py +++ b/examples/supernova_example/supernova_example.py @@ -94,14 +94,3 @@ result = tupak.run_sampler( # make some plots of the outputs result.plot_corner() print(result) - - - - - - - - - - - diff --git a/examples/tutorials/compare_samplers.ipynb b/examples/tutorials/compare_samplers.ipynb index 69939d13a..970863a96 100644 --- a/examples/tutorials/compare_samplers.ipynb +++ b/examples/tutorials/compare_samplers.ipynb @@ -36,22 +36,22 @@ " psi=2.659)\n", "\n", "\n", - "waveform_generator = tupak.waveform_generator.WaveformGenerator(\n", + "waveform_generator = tupak.gw.waveform_generator.WaveformGenerator(\n", " sampling_frequency=sampling_frequency,\n", " time_duration=time_duration,\n", - " frequency_domain_source_model=tupak.source.lal_binary_black_hole,\n", + " frequency_domain_source_model=tupak.gw.source.lal_binary_black_hole,\n", " parameters=injection_parameters)\n", "\n", "hf_signal = waveform_generator.frequency_domain_strain()\n", "\n", - "H1 = tupak.detector.get_empty_interferometer('H1')\n", + "H1 = tupak.gw.detector.get_empty_interferometer('H1')\n", "H1.set_data(sampling_frequency=sampling_frequency, duration=time_duration,\n", " from_power_spectral_density=True)\n", "H1.inject_signal(waveform_polarizations=hf_signal, parameters=injection_parameters)\n", "\n", "IFOs = [H1]\n", "\n", - "likelihood = tupak.likelihood.GravitationalWaveTransient(IFOs, waveform_generator)" + "likelihood = tupak.gw.likelihood.GravitationalWaveTransient(IFOs, waveform_generator)" ] }, { @@ -69,7 +69,7 @@ "metadata": {}, "outputs": [], "source": [ - "priors = tupak.prior.fill_priors(injection_parameters, likelihood)\n", + "priors = tupak.core.prior.fill_priors(injection_parameters, likelihood)\n", "priors['ra'] = tupak.prior.Uniform(0, 2*np.pi, 'ra')\n", "priors['dec'] = tupak.prior.Uniform(-np.pi/2, np.pi/2, 'dec')" ] @@ -90,7 +90,7 @@ "outputs": [], "source": [ "%%time \n", - "result = tupak.sampler.run_sampler(\n", + "result = tupak.core.sampler.run_sampler(\n", " likelihood, priors=priors, sampler='pymultinest', label='pymultinest',\n", " npoints=200, verbose=False, resume=False)\n", "fig = result.plot_corner(save=False)\n", @@ -112,7 +112,7 @@ "outputs": [], "source": [ "%%time \n", - "result = tupak.sampler.run_sampler(\n", + "result = tupak.gw.sampler.run_sampler(\n", " likelihood, priors=priors, sampler='dynesty', label='dynesty',\n", " bound='multi', sample='rwalk', npoints=200, walks=1, verbose=False,\n", " update_interval=100)\n", @@ -137,7 +137,7 @@ "outputs": [], "source": [ "%%time \n", - "result = tupak.sampler.run_sampler(\n", + "result = tupak.gw.sampler.run_sampler(\n", " likelihood, priors=priors, sampler='dynesty', label='dynesty_dynamic',\n", " bound='multi', nlive=250, sample='unif', verbose=True,\n", " update_interval=100, dynamic=True)\n", @@ -160,7 +160,7 @@ "outputs": [], "source": [ "%%time \n", - "result = tupak.sampler.run_sampler(\n", + "result = tupak.gw.sampler.run_sampler(\n", " likelihood, priors=priors, sampler='ptemcee', label='ptemcee',\n", " nwalkers=100, nsteps=200, nburn=100, ntemps=2,\n", " tqdm='tqdm_notebook')\n", diff --git a/examples/tutorials/making_priors.ipynb b/examples/tutorials/making_priors.ipynb index d47e96fbc..9c09d7c42 100644 --- a/examples/tutorials/making_priors.ipynb +++ b/examples/tutorials/making_priors.ipynb @@ -67,8 +67,8 @@ }, "metadata": { "image/png": { - "height": 567, - "width": 1728 + "height": 567.0, + "width": 1728.0 } }, "output_type": "display_data" @@ -78,24 +78,24 @@ "fig = figure(figsize=(24, 8))\n", "\n", "priors = [\n", - " tupak.prior.Uniform(minimum=5, maximum=50),\n", - " tupak.prior.LogUniform(minimum=5, maximum=50),\n", - " tupak.prior.PowerLaw(name='name', alpha=2, minimum=100, maximum=1000),\n", - " tupak.prior.UniformComovingVolume(name='name', minimum=100, maximum=1000, latex_label='label'),\n", - " tupak.prior.FromFile(name='name', file_name='comoving.txt', minimum=100, maximum=30000, latex_label='label'),\n", - " tupak.prior.Gaussian(name='name', mu=0, sigma=1, latex_label='label'),\n", - " tupak.prior.TruncatedGaussian(name='name', mu=1, sigma=0.4, minimum=-1, maximum=1,\n", + " tupak.core.prior.Uniform(minimum=5, maximum=50),\n", + " tupak.core.prior.LogUniform(minimum=5, maximum=50),\n", + " tupak.core.prior.PowerLaw(name='name', alpha=2, minimum=100, maximum=1000),\n", + " tupak.core.prior.UniformComovingVolume(name='name', minimum=100, maximum=1000, latex_label='label'),\n", + " tupak.core.prior.FromFile(name='name', file_name='comoving.txt', minimum=100, maximum=30000, latex_label='label'),\n", + " tupak.core.prior.Gaussian(name='name', mu=0, sigma=1, latex_label='label'),\n", + " tupak.core.prior.TruncatedGaussian(name='name', mu=1, sigma=0.4, minimum=-1, maximum=1,\n", " latex_label='label'),\n", - " tupak.prior.Cosine(name='name', latex_label='label'),\n", - " tupak.prior.Sine(name='name', latex_label='label'),\n", - " tupak.prior.Interped(name='name', xx = np.linspace(0, 10, 1000), yy=np.linspace(0, 10, 1000)**4,\n", + " tupak.core.prior.Cosine(name='name', latex_label='label'),\n", + " tupak.core.prior.Sine(name='name', latex_label='label'),\n", + " tupak.core.prior.Interped(name='name', xx = np.linspace(0, 10, 1000), yy=np.linspace(0, 10, 1000)**4,\n", " minimum=3, maximum=5, latex_label='label')\n", "]\n", "\n", "for ii, prior in enumerate(priors):\n", " fig.add_subplot(2, 5, 1 + ii)\n", " hist(prior.sample(100000), bins=100, histtype='step', normed=1)\n", - " if not isinstance(prior, tupak.prior.Gaussian):\n", + " if not isinstance(prior, tupak.core.prior.Gaussian):\n", " plot(np.linspace(prior.minimum, prior.maximum, 1000),\n", " prior.prob(np.linspace(prior.minimum, prior.maximum, 1000)))\n", " else:\n", @@ -158,8 +158,8 @@ }, "metadata": { "image/png": { - "height": 337, - "width": 743 + "height": 337.0, + "width": 743.0 } }, "output_type": "display_data" @@ -223,8 +223,8 @@ }, "metadata": { "image/png": { - "height": 337, - "width": 716 + "height": 337.0, + "width": 716.0 } }, "output_type": "display_data" diff --git a/examples/tutorials/visualising_the_results.ipynb b/examples/tutorials/visualising_the_results.ipynb index ae3947f26..6d34f374d 100644 --- a/examples/tutorials/visualising_the_results.ipynb +++ b/examples/tutorials/visualising_the_results.ipynb @@ -65,24 +65,24 @@ " luminosity_distance=200., iota=0.4, psi=2.659, phase=1.3, geocent_time=1126259642.413,\n", " waveform_approximant='IMRPhenomPv2', reference_frequency=50., ra=1.375, dec=-1.2108)\n", "\n", - "waveform_generator = tupak.waveform_generator.WaveformGenerator(\n", + "waveform_generator = tupak.gw.waveform_generator.WaveformGenerator(\n", " sampling_frequency=sampling_frequency, time_duration=time_duration,\n", - " frequency_domain_source_model=tupak.source.lal_binary_black_hole,\n", + " frequency_domain_source_model=tupak.gw.source.lal_binary_black_hole,\n", " parameters=injection_parameters)\n", "hf_signal = waveform_generator.frequency_domain_strain()\n", "\n", - "IFOs = [tupak.detector.get_interferometer_with_fake_noise_and_injection(\n", + "IFOs = [tupak.gw.detector.get_interferometer_with_fake_noise_and_injection(\n", " 'H1', injection_polarizations=hf_signal, injection_parameters=injection_parameters, time_duration=time_duration,\n", " sampling_frequency=sampling_frequency, outdir=outdir)]\n", "\n", "priors = injection_parameters.copy()\n", - "priors['mass_1'] = tupak.prior.Uniform(20, 50, 'mass_1')\n", - "priors['mass_2'] = tupak.prior.Uniform(20, 50, 'mass_2')\n", - "priors['luminosity_distance'] = tupak.prior.Uniform(100, 300, 'luminosity_distance')\n", + "priors['mass_1'] = tupak.core.prior.Uniform(20, 50, 'mass_1')\n", + "priors['mass_2'] = tupak.core.prior.Uniform(20, 50, 'mass_2')\n", + "priors['luminosity_distance'] = tupak.core.prior.Uniform(100, 300, 'luminosity_distance')\n", "\n", - "likelihood = tupak.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator)\n", + "likelihood = tupak.gw.likelihood.GravitationalWaveTransient(interferometers=IFOs, waveform_generator=waveform_generator)\n", "\n", - "result = tupak.sampler.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', npoints=100,\n", + "result = tupak.core.sampler.run_sampler(likelihood=likelihood, priors=priors, sampler='dynesty', npoints=100,\n", " injection_parameters=injection_parameters, outdir=outdir, label=label,\n", " walks=5)\n", "\n", diff --git a/test/waveform_generator_tests.py b/test/waveform_generator_tests.py index d535aebb8..094a1e7a8 100644 --- a/test/waveform_generator_tests.py +++ b/test/waveform_generator_tests.py @@ -48,7 +48,8 @@ class TestWaveformGeneratorInstantiationWithoutOptionalParameters(unittest.TestC self.assertIsInstance(self.waveform_generator.time_array, np.ndarray) def test_source_model_parameters(self): - self.assertListEqual(list(self.waveform_generator.parameters.keys()), list(self.simulation_parameters.keys())) + self.assertListEqual(sorted(list(self.waveform_generator.parameters.keys())), + sorted(list(self.simulation_parameters.keys()))) class TestParameterSetter(unittest.TestCase): @@ -74,7 +75,8 @@ class TestParameterSetter(unittest.TestCase): def test_parameter_setter_none_handling(self): self.waveform_generator.parameters = None - self.assertSequenceEqual(self.waveform_generator.parameters.keys(), self.simulation_parameters.keys()) + self.assertListEqual(sorted(list(self.waveform_generator.parameters.keys())), + sorted(list(self.simulation_parameters.keys()))) class TestSourceModelSetter(unittest.TestCase): @@ -94,7 +96,8 @@ class TestSourceModelSetter(unittest.TestCase): del self.simulation_parameters def test_parameters_are_set_correctly(self): - self.assertListEqual(list(self.waveform_generator.parameters.keys()), list(self.simulation_parameters.keys())) + self.assertListEqual(sorted(list(self.waveform_generator.parameters.keys())), + sorted(list(self.simulation_parameters.keys()))) if __name__ == '__main__': diff --git a/tupak/core/utils.py b/tupak/core/utils.py index 6a5a4e0f9..0fa1ecc57 100644 --- a/tupak/core/utils.py +++ b/tupak/core/utils.py @@ -219,7 +219,7 @@ 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(__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() logging.info('Running tupak version: {}'.format(version)) -- GitLab