Skip to main content

Bayesian inference of population size history from recombining sequence data.

Project description

phlash is a program for sampling from the posterior distribution of population size history given whole genome sequence data. You can think of it as a Bayesian version of Li & Durbin's popular PSMC program, with a more modern interface and GPU acceleration built in.

Requirements

  • Python 3.10 or greater.

Optional but highly recommended:

  • An NVIDIA GPU. Any relatively recent model should work. phlash has been tested on:
    • RTX 4090
    • A40
    • A100
    • V100

Installation

phlash can be installed from PyPI using pip:

$ pip install phlash

If your machine contains an Nvidia GPU, you should install the gpu variant in order to enable it. In this case, you should run:

$ pip install \
    -f "https://storage.googleapis.com/jax-releases/jax_cuda_releases.html" \
    --extra-index-url "https://pypi.ngc.nvidia.com" \
    phlash[gpu]

I recommend installing phlash into a separate virtual environment: before running the above, do

$ python3 -mvenv /path/to/phlash  # replace with desired path
$ source /path/to/phlash/bin/activate
$ pip3 install -U pip setuptools  # recent version of pip and setuptools are required

Running the program

See notebooks/example.md for example code and usage instructions.

Troubleshooting / FAQ

I (Jonathan) am happy to assist you with using phlash, as much as my time allows.

  • If you encounter a bug (program crash or other unexpected behavior) please file an issue describing the bug.
  • If you need help with anything else (installation, running the program, data formatting, interpreting the output, etc.) please open a discussion.

Making Changes & Contributing

Contributions (in the form of Github pull requests) to improve the project are always welcome!

This project uses pre-commit_, please make sure to install it before making any changes::

pip install pre-commit
cd phlash
pre-commit install

It is a good idea to update the hooks to the latest version::

pre-commit autoupdate

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

phlash-1.0.2.tar.gz (281.9 kB view hashes)

Uploaded Source

Built Distribution

phlash-1.0.2-py3-none-any.whl (43.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page