← Back to Research

Research entry

Ising Model Simulation in Rust + WebAssembly

Active ยท March 2026

Active computational physics work around a Rust/WASM Ising model simulator with interactive 3D visualisation, temperature sweeps, and critical-point analysis.

Physics Rust WebAssembly Monte Carlo Computational Physics

View external resource →

Overview

ising-rs is an active computational physics project focused on the Ising model, implemented in Rust and compiled to WebAssembly for interactive use in the browser. The current version combines a 3D lattice visualiser with Monte Carlo simulation so the behaviour of spin systems can be explored in real time rather than only through offline scripts.

Live demo: faulknco.github.io/ising-rs

What This Research Covers

  • Metropolis Monte Carlo updates for equilibrium sampling
  • Interactive control of temperature, coupling J, external field h, and lattice size
  • Temperature sweeps that estimate energy, magnetisation, heat capacity, and susceptibility
  • Browser-based visualisation built around Rust, WebAssembly, a Web Worker, and Three.js

Nice Findings

  • The repo reports a 3D cubic Curie temperature of about 4.40 J/k_B, close to the theoretical 4.51 J/k_B.
  • It also reports 2D square and triangular lattice estimates close to known reference values, which is a good sign that the implementation is recovering the expected phase-transition behaviour.
  • The browser architecture pushes the simulation into a Web Worker, so the physics loop runs off the main thread and the UI stays responsive during live updates and sweeps.
  • The Rust source also includes optional Wolff cluster updates and critical-exponent fitting, which makes the project stronger as research tooling than a visual demo alone.

Why It Matters

This project sits in a useful middle ground between theory and software engineering: the model is physically meaningful, the numerical outputs can be checked against known results, and the interface makes those transitions visible enough to support explanation and experimentation.

Sources

Assumptions Used In This Portfolio Entry

  • I am treating this as active research because you explicitly said you are actively working on it on March 6, 2026.
  • Where the README states reported physics results, I present those as repo-reported outcomes rather than independently reproduced measurements.
  • Where I mention Wolff updates, off-main-thread execution, and exponent fitting, those statements come from inspecting the current source files linked above.