Parallel tempering MCMC sampler written in Python
Project description
PTMCMCSampler
MPI enabled Parallel Tempering MCMC code written in Python.
See the examples for some simple use cases.
For MPI support you will need A functional MPI 1.x/2.x/3.x implementation like:
-
# mac brew install mpich # debian sudo apt install mpich
-
# mac brew install open-mpi # debian sudo apt install libopenmpi-dev
To run with MPI support you can run your script containing a sampler with:
mpirun -np <number of temperature chains> script.py
This will kick off np
chains running at different temperatures. The temperature ladder and sampling schemes can be set in the PTMCMCSampler.sample()
method.
Installation
Development
For development clone this repo and run:
make init
source venv/bin/activate
Via pip
pip install ptmcmcsampler
for MPI support use
pip install ptmcmcsampler[mpi]
Via conda
conda install -c conda-forge ptmcmcsampler
for MPI support use
conda install -c conda-forge ptmcmcsampler mpi4py
Attribution
If you make use of this code, please cite:
@misc{justin_ellis_2017_1037579,
author = {Justin Ellis and
Rutger van Haasteren},
title = {jellis18/PTMCMCSampler: Official Release},
month = oct,
year = 2017,
doi = {10.5281/zenodo.1037579},
url = {https://doi.org/10.5281/zenodo.1037579}
}
Correlation Length
In order for the sampler to run correctly using acor
with Python 3 kernels the GitHub version of acor needs to be installed. (Currently the PyPI version is behind the GitHub version.) It can be easily installed with:
pip install git+https://github.com/dfm/acor.git@master
Note that
acor
is not required to run the sampler, it simply calculates the effective chain length for output in the chain file.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ptmcmcsampler-2.1.1.tar.gz
.
File metadata
- Download URL: ptmcmcsampler-2.1.1.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e44a3b3cc7056a532c3a045e7e6e77cd57c7a2f7cdb41fbbf249882ac9825dd |
|
MD5 | dd09dfd73e71568c836a49846946c181 |
|
BLAKE2b-256 | 32ed970d34817b06ad45dd856a9e9d5e11a84fed8512b198f07fe63835f32dea |
File details
Details for the file ptmcmcsampler-2.1.1-py3-none-any.whl
.
File metadata
- Download URL: ptmcmcsampler-2.1.1-py3-none-any.whl
- Upload date:
- Size: 19.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a635f69fd5dcefffbb4fced7f37e5d57d435bfc04f8793be33e27886279dbc5d |
|
MD5 | b3405b24f3a04dc7b32bb67ae503d213 |
|
BLAKE2b-256 | 5d7192734855609bede8030ce660cd4bcb039845d2365a6f4fc9aec89ab2f2fd |