High-order numerical methods for unstructured grids combine the superior accuracy of high-order spectral or finite difference methods with the geometric flexibility of low-order finite volume or finite element schemes. The Flux Reconstruction (FR) approach unifies various high-order schemes for unstructured grids within a single framework. Additionally, the FR approach exhibits a significant degree of element locality, and is thus able to run efficiently on modern streaming architectures, such as Graphical Processing Units (GPUs). The aforementioned properties of FR mean it offers a promising route to performing affordable, and hence industrially relevant, scale-resolving simulations of hitherto intractable unsteady flows within the vicinity of real-world engineering geometries. In this paper we present PyFR, an open-source Python based framework for solving advection-diffusion type problems on streaming architectures using the FR approach. The framework is designed to solve a range of governing systems on mixed unstructured grids containing various element types. It is also designed to target a range of hardware platforms via use of an in-built domain specific language based on the Mako templating engine. The current release of PyFR is able to solve the compressible Euler and Navier-Stokes equations on grids of quadrilateral and triangular elements in two dimensions, and hexahedral elements in three dimensions, targeting clusters of CPUs, and NVIDIA GPUs. Results are presented for various benchmark flow problems, single-node performance is discussed, and scalability of the code is demonstrated on up to 104 NVIDIA M2090 GPUs. The software is freely available under a 3-Clause New Style BSD license (see www.pyfr.org). Program title PyFR v0.1.0 Licensing provisions New Style BSD license Programming language Python, CUDA and C Computer Variable, up to and including GPU clusters Operating system Recent version of Linux/UNIX RAM Variable, from hundreds of megabytes to gigabytes Number of processors used Variable, code is multi-GPU and multi-CPU aware through a combination of MPI and OpenMP External routines/libraries Python 2.7, numpy, PyCUDA, mpi4py, SymPy, Mako Nature of problem Compressible Euler and Navier-Stokes equations of fluid dynamics; potential for any advection-diffusion type problem.Solution method High-order flux reconstruction approach suitable for curved, mixed, unstructured grids.
a b s t r a c tIn this paper we describe a methodology for the identification of symmetric quadrature rules inside of quadrilaterals, triangles, tetrahedra, prisms, pyramids, and hexahedra. The methodology is free from manual intervention and is capable of identifying a set of rules with a given strength and a given number of points. We also present polyquad which is an implementation of our methodology. Using polyquad v1.0 we proceed to derive a complete set of symmetric rules on the aforementioned domains. All rules possess purely positive weights and have all points inside the domain. Many of the rules appear to be new, and an improvement over those tabulated in the literature.
The nature of boundary conditions, and how they are implemented, can have a significant impact on the stability and accuracy of a Computational Fluid Dynamics (CFD) solver. The objective of this paper is to assess how different boundary conditions impact the performance of compact discontinuous high-order spectral element methods (such as the discontinuous Galerkin method and the Flux Reconstruction approach), when these schemes are used to solve the Euler and compressible Navier-Stokes equations on unstructured grids. Specifically, the paper will investigate inflow/outflow and wall boundary conditions. In all studies the boundary conditions were enforced by modifying the boundary flux. For Riemann invariant (characteristic), slip and no-slip conditions we have considered a direct and an indirect enforcement of the boundary conditions, the first obtained by calculating the flux using the known solution at the given boundary while the second achieved by using a ghost state and by solving a Riemann problem. All computations were performed using the open-source software Nektar++ (www.nektar.info).
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.