Abstract:
Computational Fluid Dynamics (CFD) is a useful tool that enables highly cost-effective
numerical solutions for the problems related to fluid flow phenomena, which in turn results
in the state-of-the-art product designs in a variety of engineering sectors. CFD has made
remarkable progress due to continuous growth in computing capabilities. Further increase
in the computing power urges the computational scientists for even more detailed and
in-depth analyses. Better understanding of the flow phenomena, however, requires higher
order/resolution solutions, which in turn requires more and more computing power due
to increase in the number of degrees of freedom. The present thesis is to contribute in
the endeavor of addressing these two challenges, i.e., to provide higher order numerical
solutions in fluid mechanics and to fulfill the demand of computing power. The first
objective is addressed by presenting a high order flow solver for compressible fluid flow
problems and the second objective is addressed by developing a high performance parallel
implementation of the flow solver.
The present work is aimed at developing a scalable and efficient parallel program based
on a high order discontinuous Galerkin (DG) method with Taylor series basis for the
compressible Euler and Navier-Stokes equations on unstructured meshes. The numeri-
cal scheme is capable of efficiently simulating the physics of the flow problems consid-
ered, including subsonic and transonic compressible inviscid flows around two well known
benchmark airfoils. The parallel code employs the DG method for the space discretiza-
tion of the governing equations to obtain a semi-discrete form and various explicit and
implicit schemes for time integration of this semi-discrete form. The explicit time inte-
gration scheme is based on three-stage third-order Total Variation Diminishing (TVD)
Runge-Kutta (RK) method. The implicit time integration scheme for the Euler equa-
tions is based on Backward Euler scheme. The resulting system of algebraic equations
iis solved using a variety of so-called matrix-free parallel linear solvers, including Symmet-
ric Gauss-Seidel (SGS) method, Lower-Upper Symmetric Gauss-Seidel (LUSGS) method
and Generalized Minimum Residual (GMRES) method preconditioned with LUSGS (i.e.,
GMRES+LUSGS). In this work, a parallel p-multigrid solver for the Euler equations
is also presented. Unlike the other p-multigrid solvers where the same time integration
scheme is used on all the approximation levels, the present two-level p-multigrid solver
uses the Runge-Kutta scheme as the iterative smoother on the higher level approximation,
and the matrix-free GMRES+LUSGS method as the iterative smoother on the lower level
approximation in an attempt to significantly reduce the computer memory requirements.
In this thesis, inviscid flow computations are accurate up to the fourth order of polynomial
approximation whereas the viscous flow computations are accurate up to the third order
of polynomial approximation.
The parallel DG flow solver is based on distributed memory programming model,
making use of the message passing approach for communications among the parallel processes.
Two kinds of so called commodity parallel systems are used as the platform for per-
forming parallel computations. The first kind of parallel systems are the clusters in which
the worker nodes are interconnected using some networking technology. The other kind
of parallel systems are the multicore SMP machines. The parallelization is based on
Single Program Multiple Data (SPMD) parallel programming model that has been em-
ployed by making use of a computational domain partitioning technique and the de-facto
industry standard Message Passing Interface (MPI) library for inter-process communica-
tions. Favorable parallelization characteristics of the discontinuous Galerkin method have
also been exploited by hiding the communications behind the computations. The parallel
performance of the developed code, in terms of scaling of the speedup with respect to the
number of processes, is demonstrated.