JURHIATA
A finite-volume moving-mesh code for compressible hydrodynamics (HD).
Code Summary
JURHIATA is a moving-mesh astrophysical code developed in C++ for high-fidelity HD simulations on Voronoi meshes. The current production baseline is HD with MUSCL-Hancock reconstruction and HLLC fluxes, validated through Sod and Sedov benchmark tests.
Numerics
Finite-volume Godunov method on 3D Voronoi cells.
Accuracy
Second-order in space and time through MUSCL-Hancock.
Parallel Baseline
Hybrid OpenMP + MPI implementation completed on CPU.
Roadmap
Stage-1 GPU acceleration and Stage-2 multi-physics modules.
Hydrodynamics Equations (Euler System)
JURHIATA currently solves the compressible Euler equations in conservative form:
MUSCL-Hancock Workflow
- Build Voronoi geometry (volumes, areas, normals, centroids).
- Compute gradients and apply slope limiting for monotonicity.
- Reconstruct left/right interface states and predict half-step values.
- Solve Riemann problems at moving faces and compute fluxes.
- Update conserved variables and enforce positivity floors.
- Move mesh generators and rebuild tessellation for the next timestep.
Hydrodynamic Riemann Solvers
| Solver | Primary Use | Wave Model | Notes |
|---|---|---|---|
| Exact (Euler) | Reference and validation runs | Iterative exact 1D Riemann solution | Used for hydro flux verification and regression checks. |
| HLLC | Default hydrodynamic production solver | Three-wave model (SL, S*, SR) | Good balance of robustness and accuracy for strong shocks. |
Moving Mesh with Voro++
JURHIATA computes Voronoi geometry (cell volumes, face areas, normals, centroids) with Voro++. Mesh generators move with the local flow in an ALE-style formulation to reduce advection error while preserving a conservative finite-volume update.
Validation: Sod and Sedov
Current Status
- HD baseline validated with Sod and Sedov tests.
- Hybrid parallelization OpenMP + MPI completed on CPU.
- GPU acceleration is the next implementation stage.
- MHD and additional physics modules are planned for later stages.
Selected References
- Springel, V. (2010), E pur si muove: moving-mesh hydrodynamics with AREPO, MNRAS 401, 791.
- Toro, E. F. (2009), Riemann Solvers and Numerical Methods for Fluid Dynamics, Springer.
- Chang, P., Wadsley, J., Quinn, T. (2017), MANGA: a moving-mesh hydrodynamic solver for ChaNGa, MNRAS 471, 3577.
- Rycroft, C. H. (2009), Voro++: A three-dimensional Voronoi cell library in C++, Chaos 19, 041111.