Freedom251 › Physics Simulation Software
snek5000

What snek5000 is
Snek5000 is a free Linux desktop Python framework for organizing, launching, restarting, and analyzing Nek5000 simulations. Python scripts or terminal commands can control runs, including scripted parametric studies. The framework supports out-of-source builds, offline post-processing, and offline restarts. Named parameter defaults, consistency checks, and XML and YAML metadata records help structure simulation settings and results. Output tools can plot physical fields, animate pressure data, and load or plot history points. Snek5000 also lets users build Fluidsim solvers from Nek5000 cases, with documentation links to periodic-hill, sidewall-convection, and Taylor–Green-vortex examples. Installation is documented with pip, while conda or mamba can help create environments in some cases. Python 3.8 or newer and NEK_SOURCE_ROOT pointing to a Nek5000 source directory are required. The project recommends its Nek5000 fork based on v19.
Who it suits
Snek5000 suits Linux users running Nek5000 simulations who know basic Python. Deeper solver changes require learning Snakemake functions and Jinja templates.
What it does well
- Free plan with offline access
- Scriptable runs support parametric studies
- Records metadata in XML and YAML
- Plots fields and animates pressure data
- Builds Fluidsim solvers from Nek5000 cases
What to know first
- Linux only
- Requires Python 3.8 or newer
- Needs configured NEK_SOURCE_ROOT
- Upstream master branch is unsupported
Verdict
Snek5000 provides a structured Python workflow around Nek5000 simulations, from parameter setup through restart and visualization. It is most suitable for users comfortable with Python and the required Nek5000 environment.
Facts from snek5000's own pages
- Assessment tools
- No · snek5000.readthedocs.io, 24 Sept 2026
- Authoring tools
- Yes · snek5000.readthedocs.io, 24 Sept 2026
- Compatibility limit
- The documentation recommends the project's Nek5000 fork based on v19 and says the upstream master branch is not supported because of a bug and working-directory changes. · snek5000.readthedocs.io, 11 Oct 2026
- Delivery mode
- desktop · snek5000.readthedocs.io, 24 Sept 2026
- Example solvers
- The documentation points to the open-source snek5000-phill, snek5000-cbox, and snek5000-tgv solvers. · snek5000.readthedocs.io, 11 Oct 2026
- Free plan
- Yes · snek5000.readthedocs.io, 24 Sept 2026
- Installation
- The documented installation method is pip install snek5000, with conda or mamba described for setting up environments in certain cases. · snek5000.readthedocs.io, 11 Oct 2026
- Integrations
- The documentation lists Snakemake, Fluidsim, Pymech, Matplotlib, Jinja, Pytest, and Xarray among the Python packages Snek5000 uses. · snek5000.readthedocs.io, 11 Oct 2026
- Lesson library
- No · snek5000.readthedocs.io, 24 Sept 2026
- License
- The GitHub repository identifies the project license as BSD-3-Clause. · github.com, 11 Oct 2026
- Limitations
- The project says users need basic Python knowledge, and deeper solver modifications require learning Snakemake functions and Jinja templates. · snek5000.readthedocs.io, 11 Oct 2026
- Nek5000 compatibility
- The installation guide recommends the project’s Nek5000 fork based on v19 and says the bleeding-edge master branch is not supported because of a bug. · snek5000.readthedocs.io, 11 Oct 2026
- Offline access
- Yes · snek5000.readthedocs.io, 24 Sept 2026
- Parameter handling
- It provides named defaults, parameter consistency checks, and records simulation metadata in XML and YAML files. · snek5000.readthedocs.io, 11 Oct 2026
- Parameters
- It provides sensible parameter names and defaults, consistency checks, and records simulation metadata in XML and YAML files. · snek5000.readthedocs.io, 11 Oct 2026
- Post-processing
- Its output tools can plot physical fields and animate them, and can load and plot history points. · snek5000.readthedocs.io, 11 Oct 2026
- Prerequisites
- Snek5000 requires Python 3.8 or later and the NEK_SOURCE_ROOT environment variable pointing to a Nek5000 source directory. · snek5000.readthedocs.io, 11 Oct 2026
- Purpose
- Snek5000 is a Python framework and thin interface for organizing, launching, and restarting Nek5000 simulations, then loading their data for analysis and visualization. · snek5000.readthedocs.io, 11 Oct 2026
- Requirements
- Snek5000 requires Python 3.8 or newer and a Nek5000 source tree configured through NEK_SOURCE_ROOT. · snek5000.readthedocs.io, 11 Oct 2026
- Simulation control
- Users can launch and restart simulations with Python scripts or terminal commands. · snek5000.readthedocs.io, 11 Oct 2026
- Solver development
- It lets users build Fluidsim solvers based on Nek5000 cases, and the documentation links open-source periodic-hill, sidewall-convection, and Taylor–Green-vortex solvers. · snek5000.readthedocs.io, 11 Oct 2026
- Support and contributions
- The project welcomes testing, issue reports, and patches, and links to contribution guidelines. · snek5000.readthedocs.io, 11 Oct 2026
- User profile
- The documentation says basic Python knowledge is needed and deeper solver modifications require learning Snakemake and Jinja templates. · snek5000.readthedocs.io, 11 Oct 2026
- Visualization
- Its examples show plotting physical fields and animating pressure data, and its history-point output can be plotted or loaded for further processing. · snek5000.readthedocs.io, 11 Oct 2026
Where snek5000 stands on Freedom251
- Physics Simulation Software#75 of 89