Sailfish-v0.8
Project Overview
A 2D hydrodynamics code for simulating fluid dynamics on cylindrical/cartesian grids. Designed for high-resolution astrophysical simulations with advanced numerical schemes.
Features
-
Advanced Numerics
- Piecewise Linear Method with minmod slope limiter
- HLLE Riemann solver for shock capturing
- 2nd order accuracy with TVD properties
-
Boundary Conditions
- Flexible inflow and outflow boundaries
- Periodic azimuthal conditions
- Customizable sink regions
-
High Performance
- GPU acceleration via VAPOR library
- OpenMP parallelization
- Optimized for modern hardware
-
Mesh Flexibility
- Cartesian and polar coordinate systems
- Rigid mesh rotation capabilities
- Adaptive radial contraction
-
Astrophysical Models
- Single, binary, and merger scenarios
- Viscous disk physics (α-model)
- Gravitational wave inspiral dynamics
-
Data Output
- HDF5 format for efficient storage
- Comprehensive diagnostic outputs
- Time series and checkpoint data
Getting Started
Quick Setup
Follow these steps to get Sailfish running on your system.
Prerequisites
Requirements
- GCC version 10 or higher
- CUDA support (optional, for GPU mode)
- Python dependencies for visualization
Installation
Platform Notes
Key Capabilities
Simulation Types
| Setup Type | Description | Use Case |
|---|---|---|
| Ring | Viscous spreading ring | Method validation |
| Steady | Equilibrium disk | Long-term evolution |
| KITP | Binary disk interaction | Santa-Barbara setup |
Performance Metrics
Typical performance on modern hardware:
- GPU: ~5B zones/second on 5x H100's for a binary simulation with dx = 1e-3
Quick Links
-
Learn about different simulation setups
-
Explore implementation details
-
Understand the algorithms
-
Configure your simulations