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 (maier@tamu.edu).