📈 GH Trending Explorer 🎲 Surprise me

← all repos

trixi-framework / Trixi.jl

git clone https://github.com/trixi-framework/Trixi.jl.git v0.17.16 · 5d ago 🔥 on GitHub Trending today

Trixi.jl: Adaptive high-order numerical simulations of conservation laws in Julia

+0
stars, 24h · #46,920
+0
stars, 7 days · #50,041
+~0
stars, 30 days · #50,634
737
★ total
169
forks · 423 open issues

Star history (as recorded here)

2026-10-20 · 737 ★ 2026-10-23 · 737 ★
LanguageJulia
LicenseMIT
Created2020-08-18 (6y ago)
Last pushtoday
Watchers21
OwnerOrganization

Seen on GitHub Trending

  • 2026-10-23 — #2 weekly in julia
  • 2026-10-22 — #2 weekly in julia

GitHub topics

Links

README excerpt
# Trixi.jl
**Trixi.jl** is a numerical simulation framework for conservation
laws written in Julia. A key objective for the
framework is to be useful to both scientists and students. Therefore, next to
having an extensible design with a fast implementation, Trixi.jl is
focused on being easy to use for new or inexperienced users, including the
installation and postprocessing procedures. Its features include:
* 1D, 2D, and 3D simulations on line/quad/hex/simplex meshes
 * Cartesian and curvilinear meshes
 * Conforming and non-conforming meshes
 * Structured and unstructured meshes
 * Hierarchical quadtree/octree grid with adaptive mesh refinement
 * Forests of quadtrees/octrees with p4est via P4est.jl
* High-order accuracy in space and time
 * Arbitrary floating-point precision
* Discontinuous Galerkin methods
 * Kinetic energy-preserving and entropy-stable methods based on flux differencing
 * Entropy-stable shock capturing
 * Finite difference summation by parts (SBP) methods
* Advanced limiting strategies
 * Positivity-preserving limiting
 * Subcell invariant domain-preserving (IDP) limiting
 * Entropy-bounded limiting
* Compatible with the SciML ecosystem for ordinary differential equations
 * Explicit low-storage Runge-Kutta time integration
 * Strong stability preserving methods)
 * CFL-based and error-based time step control
* Custom explicit time integration schemes
 * Maximized linear stability via paired explicit Runge-Kutta methods
 * Relaxation Runge-Kutta methods for entropy-conservative time integration
* Native support for differentiable programming
 * Forward mode automatic differentiation via ForwardDiff.jl
 * Automatic Jacobian sparsity detection via SparseConnectivityTracer.jl
* Periodic and weakly-enforced boundary conditions
* Multiple governing equations:
 * Compressible Euler equations
 * Compressible Navier-Stokes equations
 * Magnetohydrodynamics (MHD) equations
 * Multi-component compressible Euler and MHD equations
 * Multi-ion compressible MHD equations
 * Linearized Euler and acoustic perturbation equations
 * Hyperbolic diffusion equations for elliptic problems
 * Lattice-Boltzmann equations (D2Q9 and D3Q27 schemes)
 * Shallow water equations via TrixiShallowWater.jl
 * Several scalar conservation laws (e.g., linear advection, Burgers' equation, LWR traffic flow)
 * Linear diffusion/heat equation
* Multi-physics simulations
 * Self-gravitating gas dynamics
* Shared-memory parallelization via multithreading
* Multi-node parallelization via MPI
* Visualization and postprocessing of the results
 * In-situ and a posteriori visualization with Plots.jl
 * Interactive visualization with Makie.jl
 * Postprocessing with ParaView/VisIt via Trixi2Vtk
## Installation
If you have not yet installed Julia, please follow the instructions for your
operating system. Trixi.jl works
with Julia v1.10 and newer. We recommend using the latest stable release of Julia.
### For users
Trixi.jl and its related tools are registered Julia packages.