Sign inSign up

vvpcfd/cfdvv-openfoam

By vvpcfd

•Updated 17 days ago

An open test suite for verification and validation (V&V) of computational fluid dynamics codes.

Image
Developer tools
0

10K+

vvpcfd/cfdvv-openfoam repository overview

⁠cfd-vv-suite — CFD Verification & Validation Suite

PyPI version Python versions License CI DOI Docker Hub GitHub Packages

An open test suite for verification and validation (V&V) of computational fluid dynamics codes. 51 cases: 1D/2D/3D, laminar/turbulent, Newtonian/non-Newtonian, stationary/moving bodies.

⁠Overview

cfd-vv-suite provides a standardized, reproducible, solver-agnostic toolkit for testing CFD solver accuracy. It works with any solver (OpenFOAM, SU2, Fluent, custom code) — the user provides simulation results as CSV and the CLI tool compares them against reference data, computes error norms, and generates reports.

⁠Quick Start

⁠Installation
# From PyPI (recommended — no clone needed, all cases included)
pip install cfdvv

# Or from source (for development)
git clone https://github.com/vvp-cfd/cfd-vv-suite.git
cd cfd-vv-suite
pip install -e tools/

# Docker images
docker pull vvpcfd/cfdvv                          # Docker Hub
docker pull ghcr.io/vvp-cfd/cfd-vv-suite           # GitHub Container Registry
⁠Usage
# List available cases
cfdvv list
cfdvv list -c validation

# Compare your results against reference
cfdvv compare poiseuille-2d \
    --result my_results.csv --norm L2 --plot

# OpenFOAM: ready-to-run Poiseuille case (from cloned repo)
cd cases/verification/incompressible/poiseuille-2d/openfoam && ./Allrun

# Generate analytical solution on a given mesh
python cases/verification/incompressible/poiseuille-2d/scripts/generate_solution.py 10 20 my.csv

# See expected output format
cfdvv example-output poiseuille-2d

# Run all verification self-tests
cfdvv benchmark

# Generate HTML report
cfdvv report poiseuille-2d \
    --result my_results.csv -o report.html

Full guide: vvp-cfd.github.io/cfd-vv-suite/⁠

⁠OpenFOAM Integration

Verification cases include ready-to-run OpenFOAM setups. You need OpenFOAM 11+ installed.

⁠Option 1: Native OpenFOAM
pip install cfdvv  # or pip install -e tools/ from the cloned repo
cd cases/verification/incompressible/poiseuille-2d/openfoam
./Allrun
⁠Option 2: Using our Docker image

Pull the pre-built image from either registry:

docker pull vvpcfd/cfdvv-openfoam                         # Docker Hub
docker pull ghcr.io/vvp-cfd/cfd-vv-suite-openfoam          # GitHub Container Registry

docker run --rm -v $(pwd)/cases:/cases vvpcfd/cfdvv-openfoam

⁠Case Categories

CategorySubcategoryExamples
verification/incompressibleSteady, Unsteady, 3DPoiseuille, Couette, Taylor-Green, Beltrami, MMS, Lid-Driven, Blasius, Convection
verification/compressible—Sod Shock Tube, Oblique Shock, Double Mach Reflection
verification/non-newtonian—Power-Law, Bingham
verification/moving-bodies—Taylor-Couette, Pitching Airfoil
validation/laminar—Cylinder Re=20,40,100, BFS Armaly
validation/turbulent—Flat Plate TBL, Channel DNS, NACA0012, RAE2822, BFS Driver, NASA Hump, Cylinder Re=3900
validation/non-newtonian—Oldroyd-B 4:1 Contraction
validation/complex-geometry—Ahmed Body, FSI Turek-Hron, VIV Cylinder

See vvp-cfd.github.io/cfd-vv-suite/⁠ for the complete listing.

⁠External Sources — cfdvv import

Beyond the 51 built-in cases, cfd-vv-suite connects to external V&V databases:

cfdvv import --list              # 35 external cases from 6 sources
cfdvv import flatplate           # auto-detects source, downloads data
cfdvv import flatplate -r my.csv --plot  # import + compare in one step
SourceCasesTypeAccess
NASA TMR8ExperimentalDirect download
ERCOFTAC14ExperimentalMetadata + URLs
JHTDB3DNSPython API (giverny)
CFDBench5AnalyticalMetadata
MASA2MMSpip install + script
ExactPack3Exact solutionspip install + script

See vvp-cfd.github.io/cfd-vv-suite/⁠ for details.

⁠How to Cite

If you use cfd-vv-suite in your research, please cite it as:

@misc{cfdvvsuite2026,
  author       = {Puzikova, Valeria},
  title        = {cfd-vv-suite: Open Test Suite for CFD Verification and Validation},
  year         = {2026},
  publisher    = {GitHub},
  doi          = {10.5281/zenodo.21462233},
  howpublished = {\\url{https://github.com/vvp-cfd/cfd-vv-suite}}
}

When using a specific test case, also cite the original reference listed in the case's case.yaml and README.md.

Tag summary

Content type

Image

Digest

sha256:b98c45d80…

Size

943 MB

Last updated

17 days ago

docker pull vvpcfd/cfdvv-openfoam