A Numerical Investigation of Matrix-Free Implicit Time-Stepping Methods for Large CFD Simulations
Arash Sarshar, Paul Tranquilli, Brent Pickering, Andrew McCall, Adrian, Sandu, Christopher J. Roy

TL;DR
This paper evaluates various matrix-free time-stepping methods for large CFD simulations, highlighting the efficiency, accuracy, and stability of Rosenbrock-Krylov methods as a competitive approach.
Contribution
It introduces a comprehensive numerical comparison of explicit, implicit, and Rosenbrock-Krylov methods for matrix-free CFD time integration, demonstrating the effectiveness of Rosenbrock-Krylov techniques.
Findings
Rosenbrock-Krylov methods perform competitively across various CFD problems.
Matrix-free implementations are efficient for large-scale CFD simulations.
Implicit and linearly-implicit methods show advantages in stiff problem handling.
Abstract
This paper is concerned with the development and testing of advanced time-stepping methods suited for the integration of time-accurate, real-world applications of computational fluid dynamics (CFD). The performance of several time discretization methods is studied numerically with regards to computational efficiency, order of accuracy, and stability, as well as the ability to treat effectively stiff problems. We consider matrix-free implementations, a popular approach for time-stepping methods applied to large CFD applications due to its adherence to scalable matrix-vector operations and a small memory footprint. We compare explicit methods with matrix-free implementations of implicit, linearly-implicit, as well as Rosenbrock-Krylov methods. We show that Rosenbrock-Krylov methods are competitive with existing techniques excelling for a number of problem types and settings.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
