This repository contains our final project for the course Solving PDEs in parallel on GPUs with Julia given in the Fall semester of 2021 at ETH Zurich. The project consists of two main parts. In part 1, we implement a 3D multi-XPU diffusion solver computing the steady-state solution of a diffusive process for given physical timesteps using the pseudo-transient acceleration (using the so-called "dual-time" method). In part 2, we implement a 2D XPU Navier-Stokes solver that is based on the streamfunction-vorticity formulation and allows both explicit and semi-implicit timestepping. In every timestep of the Navier-Stokes simulation, we solve the required linear systems using a geometric Multigrid method that leads to a highly efficient matrix-free implementation. We dive deeper into details for each part, and present various related analyses and results in the dedicated docs for part 1 and part 2.
-
Notifications
You must be signed in to change notification settings - Fork 0
Julia implementation of a 3D multi-XPU diffusion solver and a 2D XPU Navier-Stokes solver based on matrix-free geometric Multigrid
License
ntselepidis/FinalProjectRepo.jl
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
Julia implementation of a 3D multi-XPU diffusion solver and a 2D XPU Navier-Stokes solver based on matrix-free geometric Multigrid
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published