Lattice Boltzmann

I wrote this implementation of Lattice Boltzmann fluid simulation as part of a university course on supercomputing. It was an excuse to learn Fortran. The code is a bit of a mess due to my use of Fortran pointers (something the language doesn't handle very well) and some manual code optimisation: loop unrolling, etc which leads to a lot of repeated code and intermediate vars.

Karman Street: The video shows velocity magnitude. Periodic boundaries cause the 'waves' that slowly die out from diffusion.


code: Lattice Boltzmann - Github

Finite Elements

I wrote a Finite Element solver for the 2D unsteady heat equation as part of a team of two for another course. (To see what the other half of the team is doing see milkyklim). The code works with MPI to take advantage of massively parallel architecture of modern clusters. The implementation takes unstructured meshes, specifically MIXD format as input and outputs data in VTK format.

The videos below show results for different geometries and boundary conditions.


code: Finite Elements - Github