-
Generalized upwind summation-by-parts operators and their application to nodal discontinuous Galerkin methods
Authors:
Jan Glaubitz,
Hendrik Ranocha,
Andrew R. Winters,
Michael Schlottke-Lakemper,
Philipp Öffner,
Gregor Gassner
Abstract:
There is a pressing demand for robust, high-order baseline schemes for conservation laws that minimize reliance on supplementary stabilization. In this work, we respond to this demand by develo** new baseline schemes within a nodal discontinuous Galerkin (DG) framework, utilizing upwind summation-by-parts (USBP) operators and flux vector splittings. To this end, we demonstrate the existence of U…
▽ More
There is a pressing demand for robust, high-order baseline schemes for conservation laws that minimize reliance on supplementary stabilization. In this work, we respond to this demand by develo** new baseline schemes within a nodal discontinuous Galerkin (DG) framework, utilizing upwind summation-by-parts (USBP) operators and flux vector splittings. To this end, we demonstrate the existence of USBP operators on arbitrary grid points and provide a straightforward procedure for their construction. Our method encompasses a broader class of USBP operators, not limited to equidistant grid points. This approach facilitates the development of novel USBP operators on Legendre--Gauss--Lobatto (LGL) points, which are suited for nodal discontinuous Galerkin (DG) methods. The resulting DG-USBP operators combine the strengths of traditional summation-by-parts (SBP) schemes with the benefits of upwind discretizations, including inherent dissipation mechanisms. Through numerical experiments, ranging from one-dimensional convergence tests to multi-dimensional curvilinear and under-resolved flow simulations, we find that DG-USBP operators, when integrated with flux vector splitting methods, foster more robust baseline schemes without excessive artificial dissipation.
△ Less
Submitted 20 June, 2024;
originally announced June 2024.
-
Multirate Time-Integration based on Dynamic ODE Partitioning through Adaptively Refined Meshes for Compressible Fluid Dynamics
Authors:
Daniel Doehring,
Michael Schlottke-Lakemper,
Gregor J. Gassner,
Manuel Torrilhon
Abstract:
In this paper, we apply the Paired-Explicit Runge-Kutta (P-ERK) schemes by Vermeire et. al. (2019, 2022) to dynamically partitioned systems arising from adaptive mesh refinement. The P-ERK schemes enable multirate time-integration with no changes in the spatial discretization methodology, making them readily implementable in existing codes that employ a method-of-lines approach.
We show that spe…
▽ More
In this paper, we apply the Paired-Explicit Runge-Kutta (P-ERK) schemes by Vermeire et. al. (2019, 2022) to dynamically partitioned systems arising from adaptive mesh refinement. The P-ERK schemes enable multirate time-integration with no changes in the spatial discretization methodology, making them readily implementable in existing codes that employ a method-of-lines approach.
We show that speedup compared to a range of state of the art Runge-Kutta methods can be realized, despite additional overhead due to the dynamic re-assignment of flagging variables and restricting nonlinear stability properties. The effectiveness of the approach is demonstrated for a range of simulation setups for viscous and inviscid convection-dominated compressible flows for which we provide a reproducibility repository.
In addition, we perform a thorough investigation of the nonlinear stability properties of the Paired-Explicit Runge-Kutta schemes regarding limitations due to the violation of monotonicity properties of the underlying spatial discretization. Furthermore, we present a novel approach for estimating the relevant eigenvalues of large Jacobians required for the optimization of stability polynomials.
△ Less
Submitted 27 June, 2024; v1 submitted 8 March, 2024;
originally announced March 2024.
-
On the robustness of high-order upwind summation-by-parts methods for nonlinear conservation laws
Authors:
Hendrik Ranocha,
Andrew R. Winters,
Michael Schlottke-Lakemper,
Philipp Öffner,
Jan Glaubitz,
Gregor J. Gassner
Abstract:
We use the framework of upwind summation-by-parts (SBP) operators developed by Mattsson (2017, doi:10.1016/j.jcp.2017.01.042) and study different flux vector splittings in this context. To do so, we introduce discontinuous-Galerkin-like interface terms for multi-block upwind SBP methods applied to nonlinear conservation laws. We investigate the behavior of the upwind SBP methods for flux vector sp…
▽ More
We use the framework of upwind summation-by-parts (SBP) operators developed by Mattsson (2017, doi:10.1016/j.jcp.2017.01.042) and study different flux vector splittings in this context. To do so, we introduce discontinuous-Galerkin-like interface terms for multi-block upwind SBP methods applied to nonlinear conservation laws. We investigate the behavior of the upwind SBP methods for flux vector splittings of varying complexity on Cartesian as well as unstructured curvilinear multi-block meshes. Moreover, we analyze the local linear/energy stability of these methods following Gassner, Svärd, and Hindenlang (2022, doi:10.1007/s10915-021-01720-8). Finally, we investigate the robustness of upwind SBP methods for challenging examples of shock-free flows of the compressible Euler equations such as a Kelvin-Helmholtz instability and the inviscid Taylor-Green vortex.
△ Less
Submitted 26 March, 2024; v1 submitted 23 November, 2023;
originally announced November 2023.
-
Bridging HPC Communities through the Julia Programming Language
Authors:
Valentin Churavy,
William F Godoy,
Carsten Bauer,
Hendrik Ranocha,
Michael Schlottke-Lakemper,
Ludovic Räss,
Johannes Blaschke,
Mosè Giordano,
Erik Schnetter,
Samuel Omlin,
Jeffrey S. Vetter,
Alan Edelman
Abstract:
The Julia programming language has evolved into a modern alternative to fill existing gaps in scientific computing and data science applications. Julia leverages a unified and coordinated single-language and ecosystem paradigm and has a proven track record of achieving high performance without sacrificing user productivity. These aspects make Julia a viable alternative to high-performance computin…
▽ More
The Julia programming language has evolved into a modern alternative to fill existing gaps in scientific computing and data science applications. Julia leverages a unified and coordinated single-language and ecosystem paradigm and has a proven track record of achieving high performance without sacrificing user productivity. These aspects make Julia a viable alternative to high-performance computing's (HPC's) existing and increasingly costly many-body workflow composition strategy in which traditional HPC languages (e.g., Fortran, C, C++) are used for simulations, and higher-level languages (e.g., Python, R, MATLAB) are used for data analysis and interactive computing. Julia's rapid growth in language capabilities, package ecosystem, and community make it a promising universal language for HPC. This paper presents the views of a multidisciplinary group of researchers from academia, government, and industry that advocate for an HPC software development paradigm that emphasizes developer productivity, workflow portability, and low barriers for entry. We believe that the Julia programming language, its ecosystem, and its community provide modern and powerful capabilities that enable this group's objectives. Crucially, we believe that Julia can provide a feasible and less costly approach to programming scientific applications and workflows that target HPC facilities. In this work, we examine the current practice and role of Julia as a common, end-to-end programming model to address major challenges in scientific reproducibility, data-driven AI/machine learning, co-design and workflows, scalability and performance portability in heterogeneous computing, network communication, data management, and community education. As a result, the diversification of current investments to fulfill the needs of the upcoming decade is crucial as more supercomputing centers prepare for the exascale era.
△ Less
Submitted 10 November, 2022; v1 submitted 4 November, 2022;
originally announced November 2022.
-
On error-based step size control for discontinuous Galerkin methods for compressible fluid dynamics
Authors:
Hendrik Ranocha,
Andrew R. Winters,
Hugo Guillermo Castro,
Lisandro Dalcin,
Michael Schlottke-Lakemper,
Gregor J. Gassner,
Matteo Parsani
Abstract:
We study temporal step size control of explicit Runge-Kutta methods for compressible computational fluid dynamics (CFD), including the Navier-Stokes equations and hyperbolic systems of conservation laws such as the Euler equations. We demonstrate that error-based approaches are convenient in a wide range of applications and compare them to more classical step size control based on a Courant-Friedr…
▽ More
We study temporal step size control of explicit Runge-Kutta methods for compressible computational fluid dynamics (CFD), including the Navier-Stokes equations and hyperbolic systems of conservation laws such as the Euler equations. We demonstrate that error-based approaches are convenient in a wide range of applications and compare them to more classical step size control based on a Courant-Friedrichs-Lewy (CFL) number. Our numerical examples show that error-based step size control is easy to use, robust, and efficient, e.g., for (initial) transient periods, complex geometries, nonlinear shock capturing approaches, and schemes that use nonlinear entropy projections. We demonstrate these properties for problems ranging from well-understood academic test cases to industrially relevant large-scale computations with two disjoint code bases, the open source Julia packages Trixi.jl with OrdinaryDiffEq.jl and the C/Fortran code SSDC based on PETSc.
△ Less
Submitted 16 February, 2023; v1 submitted 15 September, 2022;
originally announced September 2022.
-
Efficient implementation of modern entropy stable and kinetic energy preserving discontinuous Galerkin methods for conservation laws
Authors:
Hendrik Ranocha,
Michael Schlottke-Lakemper,
Jesse Chan,
Andrés M. Rueda-Ramírez,
Andrew R. Winters,
Florian Hindenlang,
Gregor J. Gassner
Abstract:
Many modern discontinuous Galerkin (DG) methods for conservation laws make use of summation by parts operators and flux differencing to achieve kinetic energy preservation or entropy stability. While these techniques increase the robustness of DG methods significantly, they are also computationally more demanding than standard weak form nodal DG methods. We present several implementation technique…
▽ More
Many modern discontinuous Galerkin (DG) methods for conservation laws make use of summation by parts operators and flux differencing to achieve kinetic energy preservation or entropy stability. While these techniques increase the robustness of DG methods significantly, they are also computationally more demanding than standard weak form nodal DG methods. We present several implementation techniques to improve the efficiency of flux differencing DG methods that use tensor product quadrilateral or hexahedral elements, in 2D or 3D respectively. Focus is mostly given to CPUs and DG methods for the compressible Euler equations, although these techniques are generally also useful for other physical systems including the compressible Navier-Stokes and magnetohydrodynamics equations. We present results using two open source codes, Trixi.jl written in Julia and FLUXO written in Fortran, to demonstrate that our proposed implementation techniques are applicable to different code bases and programming languages.
△ Less
Submitted 19 September, 2023; v1 submitted 20 December, 2021;
originally announced December 2021.
-
Adaptive numerical simulations with Trixi.jl: A case study of Julia for scientific computing
Authors:
Hendrik Ranocha,
Michael Schlottke-Lakemper,
Andrew R. Winters,
Erik Faulhaber,
Jesse Chan,
Gregor J. Gassner
Abstract:
We present Trixi.jl, a Julia package for adaptive high-order numerical simulations of hyperbolic partial differential equations. Utilizing Julia's strengths, Trixi.jl is extensible, easy to use, and fast. We describe the main design choices that enable these features and compare Trixi.jl with a mature open source Fortran code that uses the same numerical methods. We conclude with an assessment of…
▽ More
We present Trixi.jl, a Julia package for adaptive high-order numerical simulations of hyperbolic partial differential equations. Utilizing Julia's strengths, Trixi.jl is extensible, easy to use, and fast. We describe the main design choices that enable these features and compare Trixi.jl with a mature open source Fortran code that uses the same numerical methods. We conclude with an assessment of Julia for simulation-focused scientific computing, an area that is still dominated by traditional high-performance computing languages such as C, C++, and Fortran.
△ Less
Submitted 15 January, 2022; v1 submitted 14 August, 2021;
originally announced August 2021.
-
A purely hyperbolic discontinuous Galerkin approach for self-gravitating gas dynamics
Authors:
Michael Schlottke-Lakemper,
Andrew R. Winters,
Hendrik Ranocha,
Gregor J. Gassner
Abstract:
One of the challenges when simulating astrophysical flows with self-gravity is to compute the gravitational forces. In contrast to the hyperbolic hydrodynamic equations, the gravity field is described by an elliptic Poisson equation. We present a purely hyperbolic approach by reformulating the elliptic problem into a hyperbolic diffusion problem, which is solved in pseudotime using the same explic…
▽ More
One of the challenges when simulating astrophysical flows with self-gravity is to compute the gravitational forces. In contrast to the hyperbolic hydrodynamic equations, the gravity field is described by an elliptic Poisson equation. We present a purely hyperbolic approach by reformulating the elliptic problem into a hyperbolic diffusion problem, which is solved in pseudotime using the same explicit high-order discontinuous Galerkin method we use for the flow solution. The flow and the gravity solvers operate on a joint hierarchical Cartesian mesh and are two-way coupled via the source terms. A key benefit of our approach is that it allows the reuse of existing explicit hyperbolic solvers without modifications, while retaining their advanced features such as non-conforming and solution-adaptive grids. By updating the gravitational field in each Runge-Kutta stage of the hydrodynamics solver, high-order convergence is achieved even in coupled multi-physics simulations. After verifying the expected order of convergence for single-physics and multi-physics setups, we validate our approach by a simulation of the Jeans gravitational instability. Furthermore, we demonstrate the full capabilities of our numerical framework by computing a self-gravitating Sedov blast with shock capturing in the flow solver and adaptive mesh refinement for the entire coupled system.
△ Less
Submitted 14 May, 2021; v1 submitted 24 August, 2020;
originally announced August 2020.