From e171271b4790bfbc423132aee882fc44b13740e8 Mon Sep 17 00:00:00 2001 From: Jan Eitzinger Date: Sun, 5 Feb 2023 07:52:43 +0100 Subject: [PATCH] Add README for Basic Solver --- BasicSolver/README.md | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 BasicSolver/README.md diff --git a/BasicSolver/README.md b/BasicSolver/README.md new file mode 100644 index 0000000..dfbd403 --- /dev/null +++ b/BasicSolver/README.md @@ -0,0 +1,42 @@ +# Introduction +This folder contains variants of the NuSiF basic solver. The basic solver does +not allow obstacles within the domain. + +All basic solver variants include two test cases for validation: +* dcavity - Lid driven cavity +* canal - Channel flow + +# 2D solver variants +## Sequential solver (2D-seq) +This is the basic sequential version. + +## Sequential solver with particle tracing (2D-seq-pt) +This version adds particle tracing and streak lines to the sequential basic solver. + +## Simple MPI parallel solver (2D-mpi-v1) +The simplest possible MPI parallelization with domain decomposition in one +direction and communication just based on simple send and recv calls. + +## MPI parallel solver with 2D domain decomposition (2D-mpi-v2) +A MPI parallelization with two-dimensional domain decomposition using MPI +virtual topologies. + +## MPI parallel solver using MPI-3 neighborhood collectives (2D-mpi-v3) +A MPI parallelization with two-dimensional domain decomposition using +neighborhood collective call instead of send and recv calls. + +## Refactored MPI parallel solver (2D-mpi) +The final version of the 2D MPI parallel solver. All MPI calls are contained in +a single communication module. The rest of the code does not depend on MPI. +This version is prepared to also compile and run without MPI. + +# 3D solver variants + +## Sequential solver (3D-seq) +This is the basic sequential version. + +## MPI parallel solver (3D-mpi) +A MPI parallel solver with 3D domain decomposition using MPI virtual topologies +and neighborhood collectives. All MPI calls are contained in a single +communication module. The rest of the code does not depend on MPI. This version +is prepared to also compile and run without MPI.