Skip to main content

A pure Python package for computing the synchrony of population distributions in compact metric spaces.

Project description

popsynch (Quantifying Population Synchrony)

This Python module implements routines for computing a measure of population synchrony in compact metric spaces, as defined in [1]. Let $(M,d)$ be a compact metric space, and let $\pi \in \mathcal{P}(M)$ be a probability measure representing the distribution of a population over $M$. Then the synchrony of $\pi$ is defined to be $$ F(\pi) = 1 - \frac{1}{\nu_{(M,d)}} \inf_{\alpha \in M} \left(\int_{M} d(x,\alpha)^2 d\pi(x) \right)^{1/2}, $$ where the synchrony normalization constant $$ \nu_{(M,d)} = \sup_{\mu \in \mathcal{P}(M)} \inf_{\alpha \in M} \left(\int_{M} d(x,\alpha)^2 d\mu(x) \right)^{1/2}. $$

This module currently implements routines to compute the synchrony normalization constant of any finite metric space, and synchrony of distributions on finite metric spaces, empirical distributions on the circle, and empirical distributions on rectangular parallelepipeds and compact balls in Euclidean space.

Installing popsynch

This module requires Python 3 (tested on Python>=3.12) and on NumPy and SciPy, which will be automatically installed with popsynch.

This module can be installed using pip and a local clone of the associated repository

$ git clone git@gitlab.com:biochron/popsynch.git
$ cd popsynch
$ pip install .

or through the Python Package Index (PyPI):

$ pip install popsynch

Examples

Jupyter notebooks that show the functionality of the methods in this module can be found in examples/.

The example notebooks additionally require Jupyter, Pandas, and Matplotlib, which can be installed with the command

$ pip install popsynch[notebooks]

Author

Citations

[1] Motta, F.C., McGoff, K., Cummins, B., Haase, S.B., (2024). Generalized Measures of Population Synchrony. (https://arxiv.org/abs/2406.15987)

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

popsynch-0.4.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

popsynch-0.4-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file popsynch-0.4.tar.gz.

File metadata

  • Download URL: popsynch-0.4.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for popsynch-0.4.tar.gz
Algorithm Hash digest
SHA256 7b05cbf11ce65843ab32b573fcb329418192800f934186b986c25cb7f4a900ce
MD5 2b06f26def6036e0ec7067c668a06609
BLAKE2b-256 7ab158fe047df417e0a0482fe04815e3c3195edd3e1a10d15050e95e1b15addd

See more details on using hashes here.

File details

Details for the file popsynch-0.4-py3-none-any.whl.

File metadata

  • Download URL: popsynch-0.4-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for popsynch-0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4482edfb818c651528cda904ece9bc10d17f8e0b2d7c61fcd7d3a7ccbca9f77a
MD5 1971d646569d2a96440b3fec75d55eb5
BLAKE2b-256 c72d7642665128b8a85bc322d9c145ff61c62521ffa845905b60695b6538dbf8

See more details on using hashes here.

Supported by

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