Skip to content
Snippets Groups Projects

Switch PyMC3 to PyMC (which is the new name starting from PyMC v4.0.0)

Merged Matthew David Pitkin requested to merge matthew-pitkin/bilby:pymc3_to_pymc4 into master
All threads resolved!
1 file
+ 31
85
Compare changes
  • Side-by-side
  • Inline
import multiprocessing
multiprocessing.set_start_method("fork") # noqa
import unittest
import pytest
import shutil
@@ -33,20 +36,23 @@ class TestRunningSamplers(unittest.TestCase):
bilby.core.utils.command_line_args.bilby_test_mode = False
shutil.rmtree("outdir")
def _run_sampler(self, sampler, **kwargs):
kwargs["resume"] = kwargs.get("resume", False)
for npool in [1, 2]:
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler=sampler,
save=False,
npool=npool,
**kwargs,
)
def test_run_cpnest(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler="cpnest",
nlive=100,
save=False,
resume=False,
)
self._run_sampler(sampler="cpnest", nlive=100)
def test_run_dnest4(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="dnest4",
max_num_levels=2,
num_steps=10,
@@ -54,22 +60,13 @@ class TestRunningSamplers(unittest.TestCase):
num_per_step=10,
thread_steps=1,
num_particles=50,
save=False,
)
def test_run_dynesty(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler="dynesty",
nlive=100,
save=False,
)
self._run_sampler(sampler="dynesty", nlive=100)
def test_run_dynamic_dynesty(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="dynamic_dynesty",
nlive_init=100,
nlive_batch=100,
@@ -77,124 +74,73 @@ class TestRunningSamplers(unittest.TestCase):
maxbatch=0,
maxcall=100,
bound="single",
save=False,
)
def test_run_emcee(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler="emcee",
iterations=1000,
nwalkers=10,
save=False,
)
self._run_sampler(sampler="emcee", iterations=1000, nwalkers=10)
def test_run_kombine(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="kombine",
iterations=2000,
nwalkers=20,
save=False,
autoburnin=False,
)
def test_run_nestle(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler="nestle",
nlive=100,
save=False,
)
self._run_sampler(sampler="nestle", nlive=100)
def test_run_nessai(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="nessai",
nlive=100,
poolsize=1000,
max_iteration=1000,
save=False,
)
def test_run_pypolychord(self):
pytest.importorskip("pypolychord")
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler="pypolychord",
nlive=100,
save=False,
)
self._run_sampler(sampler="pypolychord", nlive=100)
def test_run_ptemcee(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="ptemcee",
nsamples=100,
nwalkers=50,
burn_in_act=1,
ntemps=1,
frac_threshold=0.5,
save=False,
)
@pytest.mark.skipif(sys.version_info[1] <= 6, reason="pymc3 is broken in py36")
def test_run_pymc3(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="pymc3",
draws=50,
tune=50,
n_init=250,
save=False,
)
def test_run_pymultinest(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
sampler="pymultinest",
nlive=100,
save=False,
)
self._run_sampler(sampler="pymultinest", nlive=100)
def test_run_PTMCMCSampler(self):
_ = bilby.run_sampler(
likelihood=self.likelihood,
priors=self.priors,
self._run_sampler(
sampler="PTMCMCsampler",
Niter=101,
burn=2,
isave=100,
save=False,
)
def test_run_ultranest(self):
# run using NestedSampler (with nlive specified)
_ = bilby.run_sampler(
likelihood=self.likelihood, priors=self.priors,
sampler="ultranest", nlive=100, save=False,
)
self._run_sampler(sampler="ultranest", nlive=100, resume="overwrite")
# run using ReactiveNestedSampler (with no nlive given)
_ = bilby.run_sampler(
likelihood=self.likelihood, priors=self.priors,
sampler='ultranest', save=False,
)
self._run_sampler(sampler='ultranest', resume="overwrite")
def test_run_bilby_mcmc(self):
_ = bilby.run_sampler(
likelihood=self.likelihood, priors=self.priors,
sampler="bilby_mcmc", nsamples=200, save=False,
printdt=1,
)
self._run_sampler(sampler="bilby_mcmc", nsamples=200, printdt=1)
if __name__ == "__main__":
Loading