Projects

Langevin Field-Theoretic Simulations (L-FTS) of Diblock Copolymers on GPUs


Languages: C/C++

Libraries/APIs: CUDA, Thrust


This code acted as the engine for a number of academic research projects that led to multiple publications. They are orders of magnitude faster than equivalent serial code, allowing for highly accurate statistics and the production of full phase diagrams from a field-based model.

Complex Langevin Field-Theoretic Simulations (CL-FTS) of Diblock Copolymers on GPUs


Languages: C/C++

Libraries/APIs: CUDA, Thrust


This GPU-accelerated CL-FTS simulation model with fully-fluctuating fields was programmed to investigate the inherent instability of the scheme, and for comparison to L-FTS.

Monte Carlo Simulations of Diblock Copolymers with an Interactive Front-End


Languages: C#

Libraries/APIs: WPF, Helix Toolkit


A fast, research-grade Monte Carlo model of diblock copolymers, with an interactive front-end that shows the system's progress and configuration in real-time.

Interactive Ising Model in the Browser


Languages: javascript, html, css

Libraries/APIs: chartjs


Parallel Monte Carlo simulations of the 2D Ising model in the user's browser. The Ising model is used to study ferromagnetic systems in statistical physics. Multiple temperatures are simulated concurrently, with results displayed on charts in real-time.

Lattice Monte Carlo Simulations of Diblock Copolymers with Parallel Tempering


Languages: C/C++

Libraries/APIs: MPI, OpenMP


A fast, particle-based model where monomers are constrained to the sites of a face-centred cubic lattice. Parallel tempering, where replicas of the system run in parallel and can swap their configurations, allowed defects to anneal out and the novel detection of order-disorder transitions via the heat capacity.

Well-Tempered Metadynamics (WTMD) Applied to Field-Theoretic Simulations of Diblock Copolymers


Languages: C/C++

Libraries/APIs: CUDA, Thrust


WTMD allows a system to overcome an energy barrier separating two competing phases by adding Gaussians to a bias potential, U(Ψ), where Ψ is a collective order parameter. This project showed how it can be used to detect the lamellar-disorder transition with very high accuracy.