NuSiF-Solver/BasicSolver
2024-03-06 07:27:28 +01:00
..
2D-mpi Separate discretization and solver. Port Multigrid solver. 2024-03-04 14:29:49 +01:00
2D-seq Split red-balack and standard sor solvers 2024-03-06 07:27:28 +01:00
3D-mpi Debug 2D mpi version. Does not yet work v2 upwards. 2024-02-11 21:47:53 +01:00
3D-seq Cleanup. Port MultiGrid to 3D-seq 2024-03-05 10:16:03 +01:00
README.md Merge 2D mpi versions. Cleanup. 2024-02-05 08:46:13 +01:00

BasicSolver Variants

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. Gnuplot result visualization.

MPI parallel solver (2D-mpi)

The simplest possible MPI parallelization with domain decomposition in one direction and communication just based on simple send and recv calls. Gnuplot result visualization.

A MPI parallelization with two-dimensional domain decomposition using MPI virtual topologies. Gnuplot result visualization.

A MPI parallelization with two-dimensional domain decomposition using neighborhood collective call instead of send and recv calls. Gnuplot result visualization.

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. VTK result visualization.

3D solver variants

Sequential solver (3D-seq)

This is the basic sequential version. VTK result visualization.

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. VTK result visualization.

Identical to the 3D-MPI variant but using MPI-IO for VTK result file output.