Skip to main content

Directed percolation-type models in Rust

Project description

Directed Percolation in Rust and Python

In this project, we implement directed percolation (DP) and similar lattice models in Rust. The Rust code is accessed via a Python wrapper to make experimentation as convenient as possible. Jupyter notebooks are used to implement the Python-wrapped simulations.

1d DP evolution for p_c ~ p=0.53891, n_x=300, t=200

We have two motivations for adopting Rust: one is to ensure maximum performance; another is to achieve this in a memory-safe and bug-free fashion (which is not easy to do in C or C++).

Fast run times are achieved through parallelization using the Rayon crate. We anticipate boosting performance further with GPU-compute using wgpu.

See here for some rough "how-to" notes on wrapping Rust with Python.

Demos

For now, only DP has been implemented. A series of related models are in development.

2d DP t-decay of mean order parameter mean ρ(t), for p_c ~ p=0.163145, n_x=30000, n_y=30000, t=50000

DP

DP model simulations are demonstrated in the following Jupyter notebooks:

Related pure-Python demos can be found here:

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

dprs-0.1.14.tar.gz (3.0 MB view details)

Uploaded Source

Built Distributions

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

dprs-0.1.14-cp314-cp314-win_amd64.whl (244.4 kB view details)

Uploaded CPython 3.14Windows x86-64

dprs-0.1.14-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (415.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

dprs-0.1.14-cp314-cp314-macosx_11_0_arm64.whl (368.3 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dprs-0.1.14-cp313-cp313-win_amd64.whl (244.8 kB view details)

Uploaded CPython 3.13Windows x86-64

dprs-0.1.14-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (415.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

dprs-0.1.14-cp313-cp313-macosx_11_0_arm64.whl (368.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dprs-0.1.14-cp312-cp312-win_amd64.whl (245.1 kB view details)

Uploaded CPython 3.12Windows x86-64

dprs-0.1.14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (416.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

dprs-0.1.14-cp312-cp312-macosx_11_0_arm64.whl (369.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

File details

Details for the file dprs-0.1.14.tar.gz.

File metadata

  • Download URL: dprs-0.1.14.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14.tar.gz
Algorithm Hash digest
SHA256 ec4e5b6fba1e94ae3fadcc84b913ad03e4dc5ceb644a089cbb2b62ea6b7dcf36
MD5 b40f67243dc8e3b7eb94e62b9606f7e5
BLAKE2b-256 b42a97d9e4763b6f856bd43c07e16a3f0a410851ee1ecc43575859cde16ff87c

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 244.4 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 4cc64dfb6ac00e8c2cb7f8b4abd4139431fd038ac52a8dd39716b4fe81e03e9f
MD5 04194b1a1b9a57b89c57b4c714cc20ce
BLAKE2b-256 d85ead14265748a662ffcc1354e748cd4f9a2f79456ae84d5d532e05e4fef23d

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 415.3 kB
  • Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 404d711b9c31ab3dddfc2531782bf7289687b84fc692e2dc50d599a400c65ac7
MD5 15ab07483a28fa6ec79c8c446b3c234e
BLAKE2b-256 54a9762b887d3cc2b09bbdd83e8f8e302f66ea277ede48672b12d1b4389eb60b

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp314-cp314-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 368.3 kB
  • Tags: CPython 3.14, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d6a3f2d28ffddecc1cdf896d260b5283f3b1c8c3b21f7965868501f485d8e2a
MD5 69b38b34409cdd5df28cc834c531f45f
BLAKE2b-256 8c6884e3d8914548246e9bc6f4da82e933ae97da49ecec47329454aa3b180d9a

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 244.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 58f058a6aeaa017e4cd72a0d39d6ebd31978e09ce1c620109fad1cf958e43edc
MD5 20a29121d8561da1fd7ffaecd7d0de51
BLAKE2b-256 0bc804ae163ce06a9f6fe5c76d179447d6835a11470b27883790f8a6c2e5ebae

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 415.9 kB
  • Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3d0b97da09295a8d74f9e90dec8e79fad3f3faedeb548f0a85f6a2aa2a583bd7
MD5 5d6961b14afebdec6384aefb9207574e
BLAKE2b-256 e4807d47abc7413e3a981d4098de1c5ef90f6173f2f3e9e1c74bd85c4d1572cc

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp313-cp313-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 368.1 kB
  • Tags: CPython 3.13, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4c6f0fff127966516879b3c66cdb45a2d45857d8c3741e5b438739b1f364d831
MD5 32c3ee235832d8e9dfdac03ba4babcf6
BLAKE2b-256 557fa9467c99d7658696a84fb9aa567584a151910696540084e76977019cfb3a

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 245.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 91228d08fac61767f6abcdd5e10670805b42ecb074b5e51669f3e6c829ff783e
MD5 111bdfd3bd60c536655912c4cbfe9f6b
BLAKE2b-256 afecaa577c261a64b1f122d32f5abd41eb4f2cd3e3ad54c39d0b55b91625b5e4

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 416.0 kB
  • Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a6a2072d9fdf562e9a21768a297bcf2a790b6e0b54ed36d3a5d9dcdb91b25a69
MD5 9314c61c3d8185ba53cc80d847aaa7d3
BLAKE2b-256 8fa3fac2683f58d4b747c4c2c622f5b091064f21e99e25d058d413e58cd0d4ad

See more details on using hashes here.

File details

Details for the file dprs-0.1.14-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

  • Download URL: dprs-0.1.14-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 369.3 kB
  • Tags: CPython 3.12, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dprs-0.1.14-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e68dad1eb75f02fed057d95e0c385d8389ded64de17828dda5310476f2fa6857
MD5 541b980dcb45538822fa93f74f7e2f0f
BLAKE2b-256 0bba0134fa90e509c54efdf61dc53978fc8af7fbc59bbde78720ac05576ad88a

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