Optimisation of a FLIP Fluids solver

In spring 2021 I joined forces with three classmates, and as part of the ETH lecture “Advanced Systems Lab” we revisited the FLIP Fluids Solver project from two years prior. The goal this time was to optimise the code using the skills acquired in this lecture and improve the time required to run a simulation.

Project EULER: supersonic sounding rocket

In the academic year 2019-2020 I joined ARIS Space, the student association for space in german Switzerland. There I joined team EULER, whose mission statement was to build a sounding rocket for the 2020 Spaceport America Cup competition which would reach the target apogee of 30,000 feet (9.144 km) with as much precision as possible.

BSc Thesis in Computational Fluid Dynamics

My Batchelor’s Thesis was titled “Comparative study of density-based versus pressure-based solvers for supersonic flow”. The idea of the thesis stemmed from my work at ARIS, where one of the natural questions that arose was which solver would be best for my use case: simulating the aerodynamics of a supersonic sounding rocket. Under the supervision

Meshing with OpenFOAM

Before running any CFD simulations we need to generate a mesh around our geometry to perform calculations on. This page is meant to document the standard process we use to generate this mesh for ARIS rockets. Inputs: Geometry exported from some CAD software in named STL format. The sample OpenFOAM case folder (ofcase_heidi_fullbody_meshing) Outputs: 3D

Producer-consumer scheme with MPI

Below is a simple implementation of the producer-consumer parallel strategy with MPI. It’s just a dummy example, and could probably be improved greatly, but it is a nice illustration of the producer-consumer model, as well as uses for MPI_ANY_SOURCE, MPI_ANY_TAG, and MPI_Status. #include <stdio.h> #include <mpi.h> #include <time.h> #include <stdlib.h> #include <math.h> // Producer-consumer scheme