Filtering for "Simulation"
Remove filter- Melvin.py
A pseudospectral solver framework designed to simulate 2-dimensional advection-diffusion problems. It is written entirely in Python and leverages CuPy for GPU parallelisation. It has been used to simulate thermohaline staircase formation, Rayleigh-BĂ©nard convection, and the resistive tearing instability.
Dirac Cluster Challenge
Starting code for a parallel programming challenge I ran in 2022. Includes simulations of a general N-body problem, and a fully implicit fluid solver simulating Rayleight-Benard convection. The event taught students how to program GPUs and multi-core CPUs in Python.
FPGA-Accelerated Fluid Solver (FAFS)
Implementation of Stam's Real-Time Fluid Dynamics for Games in OpenCL. Designed to run on FPGAs but only CPU and GPU were tested.
Lare1d
Implementation of a finite-volume Lagrangian-Remap scheme in 1D with shock capturing. Used as a toy model for the numerical methods section of my PhD thesis.
Lare3d
My version of the finite-volume magnetohydrodynamics code Lare3d including various implementations of anisotropic viscosity.
Melvin
Earlier version of Melvin.py written in C++ and parallelised with OpenMP and CUDA.
GFP Simulator 9000
Simulate the interaction between molecules GFP-CRIB and Rac in 2 or 3 dimensions. Core numerical solver is a custom finite-element method. Developed for the Beatson Institute for Cancer Research. Technically works, but not particularly readable.
Double Pendulum
Simulation of a double pendulum system in javascript with various options for creating interesting visualisations.
Lorenz Attractor
Visualisation of the Lorenz attractor with various options for making pretty pictures.