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.15.tar.gz (3.4 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.15-cp314-cp314-win_amd64.whl (244.1 kB view details)

Uploaded CPython 3.14Windows x86-64

dprs-0.1.15-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (416.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

dprs-0.1.15-cp314-cp314-macosx_11_0_arm64.whl (368.9 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dprs-0.1.15-cp313-cp313-win_amd64.whl (244.5 kB view details)

Uploaded CPython 3.13Windows x86-64

dprs-0.1.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (417.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

dprs-0.1.15-cp313-cp313-macosx_11_0_arm64.whl (368.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dprs-0.1.15-cp312-cp312-win_amd64.whl (244.9 kB view details)

Uploaded CPython 3.12Windows x86-64

dprs-0.1.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (417.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

dprs-0.1.15-cp312-cp312-macosx_11_0_arm64.whl (369.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: dprs-0.1.15.tar.gz
  • Upload date:
  • Size: 3.4 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.15.tar.gz
Algorithm Hash digest
SHA256 343a8a2c6da64a6c8f63dbf71e56732bf6bd8841936ee0441accc87453515e5d
MD5 123c49a3bb36f8b8065190c38894d85f
BLAKE2b-256 13e0da23a3762c711a2a0f7f7eda32f30eb6d1bf76786b4e465840bd4d3dbdec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 244.1 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.15-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e350de92e065f6b6c74abe686dae6f3a609475df4610f88d8e86d2cee95e47ae
MD5 2c4e022a2a294c2e07e8dfbc6721104c
BLAKE2b-256 9bde7992b8d4c44e7e622e5a12a83213588ec230990b3478908eaba59ecb5c8e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 416.4 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.15-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ce7d1a545fb9b119d85fa6aaa8b4617697576580c86f0a18e15ecc66e1ce0ed
MD5 70c38dd6dcd3538c47066ef0f0f7ef85
BLAKE2b-256 19bc7ecf8e97234e7cbe2aedfc69c0919765df4f74eecb61d8cab4d0e7172f6c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp314-cp314-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 368.9 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.15-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 360d0f5d5ec2f9204c94fd53354c2d48fe8e2638bc3882f0de379d97d011c99d
MD5 b42ea486afa8abe70ab362d8103ebbfb
BLAKE2b-256 21e648a8227b8791950693d2c31f1677f5550f8b6637d0f54b0520b5945103de

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 244.5 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.15-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c4b7f17c858196d27ac719c90bcc7fdf2cd8a5539c646eb9ef124fd07ffc1e5a
MD5 a3e5c11e139e1f12cc27e2a5689f4fc7
BLAKE2b-256 710b70e7b71fa4a475bd3c4dfa398ca15712f791b624696220ec1dd067c128a0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 417.0 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.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6ed10b8034e28e8ef1a2e0237a2a4379159c17fb5735cb43b05e78fe500e6917
MD5 c7c1789cc32e270c7673874bb787df20
BLAKE2b-256 87d87585641436277bb1d5f4cc673d045d5f9c35f9f7c77bdb998dc647330d1f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp313-cp313-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 368.7 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.15-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a5d37123c6c105e973f50abe9fb63a5150c1f3388f4f998f0b81f445e6d42239
MD5 75d5cb828ea51fed26731da3f0e14b98
BLAKE2b-256 6d7509a502be2a06d78671bc1f2a73127b4b6334c03649d3d2c9c5fe68b0b591

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 244.9 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.15-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2ad3e2393a7d72e218ce8ff11167d209244b0cfc8ef2875a6a6700d2d6abb067
MD5 0aedb2ad41b9bf0eeba5600968c8fb8e
BLAKE2b-256 a7505a0110f2de5bfcbe030f56a91c15fa2b6d33cac6c09442c4b975f980da3b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 417.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.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b4444b5c553d896c82c062370ae645098c9eaf8c16f521081a80779079d34f8
MD5 a0cc3dc30eb30ffe00b00e8df690c780
BLAKE2b-256 ef07fa5f845a87f4177e75a6f3320967edc51e532a779d78721dae6c9bb9592f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dprs-0.1.15-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 369.7 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.15-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53ab28aac11d899de6661b498e22596359d96bd22aa79e6887cb735dd64c22c0
MD5 c2b842aa041388cd37dd20f863d47897
BLAKE2b-256 3be29d78231bdcfbaf610b6e9d5f3aab1af5d1fe6ac225e453da8bce367b3ca8

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