Parallel direct Poisson solver for discretisations with one Fourier diagonalisable direction

  • Authors:
  • R. Borrell;O. Lehmkuhl;F. X. Trias;A. Oliva

  • Affiliations:
  • Termo Fluids, S.L., c/ Magí Colet 8, 08204 Sabadell (Barcelona), Spain;Centre Tecnològic de Transferència de Calor, Technical University of Catalonia, ETSEIAT, c/Colom 11, 08222 Terrassa, Spain and Termo Fluids, S.L., c/ Magí Colet 8, 08204 Sabadell (B ...;Centre Tecnològic de Transferència de Calor, Technical University of Catalonia, ETSEIAT, c/Colom 11, 08222 Terrassa, Spain;Centre Tecnològic de Transferència de Calor, Technical University of Catalonia, ETSEIAT, c/Colom 11, 08222 Terrassa, Spain

  • Venue:
  • Journal of Computational Physics
  • Year:
  • 2011

Quantified Score

Hi-index 31.45

Visualization

Abstract

In the context of time-accurate numerical simulation of incompressible flows, a Poisson equation needs to be solved at least once per time-step to project the velocity field onto a divergence-free space. Due to the non-local nature of its solution, this elliptic system is one of the most time consuming and difficult to parallelise parts of the code. In this paper, a parallel direct Poisson solver restricted to problems with one uniform periodic direction is presented. It is a combination of a direct Schur-complement based decomposition (DSD) and a Fourier diagonalisation. The latter decomposes the original system into a set of mutually independent 2D systems which are solved by means of the DSD algorithm. Since no restrictions are imposed in the non-periodic directions, the overall algorithm is well-suited for solving problems discretised on extruded 2D unstructured meshes. The load balancing between parallel processes and the parallelisation strategy are also presented and discussed. The scalability of the solver is successfully tested using up to 8192 CPU cores for meshes with up to 10^9 grid points. Finally, the performance of the DSD algorithm as 2D solver is analysed by direct comparison with two preconditioned conjugate gradient methods. For this purpose, the turbulent flow around a circular cylinder at Reynolds numbers 3900 and 10,000 are used as problem models.