Ryujin is a high-performance high-order collocation-type finite-element solver for conservation equations such as the compressible Navier-Stokes and Euler equations of gas dynamics. The solver is based on the convex limiting technique to ensure invariant domain preservation and uses the finite element library deal.II (website) and the vector class SIMD library. As such the solver maintains important physical invariants and is guaranteed to be stable without the use of ad-hoc tuning parameters.
Ryujin is freely available under the terms of the Apache License 2.0 with LLVM Exception. Part of the contributed source code, third-party dependencies and header libraries are covered by different open source licenses. For details consult COPYING.md. Contributions to the ryujin source code are governed by the Developer Certificate of Origin version 1.1; see CONTRIBUTING.md for details.
Ryujin features the following equation modules selectable by the following parameter flags:
equation = euler
, an optimized solver module for the compressible Euler equations with polytropic equation of state.equation = euler aeos
, a generalized solver module for the compressible Euler equation with an arbitrary or tabulated equation of state.equation = navier stokes
, an optimized solver module for the compressible Navier-Stokes equations with polytropic equation of state, Newtonian fluid model, and Fourier's law for the heat flux.equation = shallow water
, a module for the shallow water equations.equation = scalar conservation
, a module for scalar conservation equations with user-supplied flux. The module features a greedy wave-speed estimate to maintain an invariant domain, a generic indicator based on the entropy-viscosity commutator technique with a general, entropy-like function, and a customizable convex limiter.
A number of simulation results can be found on this youtube channel.
If you use this software for an academic publication please consider citing the following references ([1], [3]):
@article {ryujin-2021-1,
author = {Matthias Maier and Martin Kronbichler},
title = {Efficient parallel 3D computation of the compressible Euler
equations with an invariant-domain preserving second-order
finite-element scheme},
doi = {10.1145/3470637},
url = {https://arxiv.org/abs/2007.00094},
journal = {ACM Transactions on Parallel Computing},
year = {2021},
volume = {8},
number = {3},
pages = {16:1-30},
}
@article{ryujin-2021-3,
author = {Jean-Luc Guermond and Martin Kronbichler and Matthias Maier and
Bojan Popov and Ignacio Tomas},
title = {On the implementation of a robust and efficient finite
element-based parallel solver for the compressible Navier-stokes
equations},
doi = {10.1016/j.cma.2021.114250},
url = {https://arxiv.org/abs/2106.02159},
journal = {Computer Methods in Applied Mechanics and Engineering},
year = {2022},
volume = {389},
pages = {114250},
}
For questions either open an issue, or contact Matthias Maier ([email protected]).
- Martin Kronbichler (@kronbichler), Ruhr University Bochum, Germany
- Matthias Maier (@tamiko), Texas A&M University, TX, USA
- Ignacio Tomas (@nachosaurus), Texas Tech University, TX, USA
- Eric Tovar (@ejtovar), Los Alamos National Laboratory, USA
- Taylor Boylan (@tmboylan)
- Jerett Cherry (@jerret-cc), Colorado State University
- Bennett Clayton (@bgclayto)
- Seth Gerberding (@Gerbeset), Texas A&M University, TX, USA
- David Pecoraro (@ChrisPec27), Texas A&M University, TX, USA
- Madison Sheridan (@Helblindi), Texas A&M University, TX, USA
- Gregory Christian (@gregorychristian, Imperial College London, UK