Skip to main content

Python bindings for the Ising2D C++ simulation

Project description

Upload Python Package

PyIsing

PyIsing is a Python library for simulating the Ising model using C++ bindings via pybind11. It includes implementations of the Wolff and Metropolis Monte Carlo algorithms for efficient simulation of spin systems.

Features

  • Fast C++ core: Uses pybind11 to leverage high-performance C++ computations.
  • Wolff Algorithm: Implements cluster updates for efficient decorrelation.
  • Metropolis Algorithm: Standard single-spin update method.
  • Flexible Parameters: Supports different lattice sizes, temperatures.

installation

pip install pyising

for buliding from scratch

pythin setup.py install

usage

import pyising

temps = np.linspace(1, 4, 50)

L = 64
results = pyising.run_parallel_metropolis(temps, L, N_steps=N_steps,
                                          equ_N=equ_N,
                                          snapshot_interval=snapshot_interval,
                                          seed_base=seed_base,
                                          output_dir=output_dir,
                                          use_wolff=use_wolff,
                                          save_all_configs=save_all_configs
                                          )

References

I built the code based on the following code, added the python binding and made it modular after refining the structure. https://github.com/VictorSeven/IsingModel

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pyising-0.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyising-0.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyising-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyising-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pyising-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file pyising-0.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyising-0.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f69db7179a81b9571dd7f858f887cc772e39d8be2ed4a8d9ca076f27a5dcb966
MD5 df66a4d5696e6acfe8686cee181a5f41
BLAKE2b-256 9bbc0b39d722105d169e495b4703d6d6865739db370139e49703461183023a2f

See more details on using hashes here.

File details

Details for the file pyising-0.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyising-0.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6f90720df6ab2f357ba34275a6070165a5f9d3aff04f82ddc3a75f0a705ccbae
MD5 5f4f2d2bc3508924e5e8ebb770579c46
BLAKE2b-256 b0ef200d211591ce04da0a6ce1d10cce269585844565ec75726bf6ffab72eba5

See more details on using hashes here.

File details

Details for the file pyising-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyising-0.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c0c1d8ab5e24023be1b75068d7d08b0f27986e035c5a14b523533226ed16de5a
MD5 88993e8e397c15a04a996ee659da6285
BLAKE2b-256 d1b5fc13e4c6535f8873ee725cdd4f281f47f2980d0e3cdc8d355d1ea02982be

See more details on using hashes here.

File details

Details for the file pyising-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyising-0.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 24a3587427b0b10f50563a2df29753ffac0be04c881961bc8fc044f88a4d6691
MD5 5863816806a9ce8e3211619dccddfd57
BLAKE2b-256 5c74b87822c09661e03e3fe546ac01b8da1a8c5150ac199f87d29c18fd2d122b

See more details on using hashes here.

File details

Details for the file pyising-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyising-0.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 970cb870de1e753c3e1822af222283bb587959c5ab4f6a2a385260235fd3dfca
MD5 fcc858e6faf2509eebb54476f659a7e3
BLAKE2b-256 bf86006eb75bf8cd892332b8112534cb19078fff23ff22f7af0400868b0c4ae6

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