Software Open Access
Schlegel, Fabian;
Fombonne, Clement;
Hänsch, Susann;
Krull, Benjamin;
Lehnigk, Ronald;
Meller, Richard
<?xml version='1.0' encoding='utf-8'?> <oai_dc:dc xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd"> <dc:creator>Schlegel, Fabian</dc:creator> <dc:creator>Fombonne, Clement</dc:creator> <dc:creator>Hänsch, Susann</dc:creator> <dc:creator>Krull, Benjamin</dc:creator> <dc:creator>Lehnigk, Ronald</dc:creator> <dc:creator>Meller, Richard</dc:creator> <dc:date>2026-03-20</dc:date> <dc:description>The multiphasepy is a Python toolkit for building, running, and maintaining CFD simulation case collections for the software released by the OpenFOAM Foundation (but also others, like Ansys Fluent or Siemens Simcenter Star-CCM). It combines reusable library modules with practical command-line tools to cover the full simulation lifecycle: case templating, batch execution, monitoring, post-processing, validation support, repository comparison, and publication workflows. At its core, multiphasepy helps teams move from individual case setups to scalable, structured projects containing a large collection of setups, e.g. a validation database. Cases can be provided as templates that are parameterized at runtime, metadata can be managed in a machine-readable way and cases can be conveniently batch-processed with the workflow management tool Snakemake both on workstations and Slurm-based HPC systems. Using a container-based software environment (e.g. Apptainer or Docker) the case collection becomes fully portable. An integrated Copier template allows the creation and maintenance of multiple independent case collections. Beyond execution, the package supports quality assurance and communication of results: tools are included for automated checks, fuzzy-logic based evaluation, data conversion, visualization, and generation of artifacts suitable for reporting and dissemination. This makes multiphasepy a practical bridge between day-to-day CFD case work and long-term, reproducible research software operations in collaborative environments. Command-Line Tools The multiphasepy package provides a comprehensive suite of command-line tools for CFD workflow management, data processing, and quality assurance. All tools follow the naming convention mpy<function> and provide --help for detailed usage information. Workflow Management mpycopy : Copy and render templated cases mpydocker : Launch customizable Docker development environments mpywatch : Progress display and real-time data visualization mpyworkflow : Create and manage cases projects allowing batch processing Data Processing mpyconv : Convert data files between formats mpypost : Mathematical post-processing operations mpyvisualize : Visualize simulation result files Quality Assurance mpytest : Run CFD code functionality tests mpyfuzzy : Evaluate simulation goodness using fuzzy logic mpyhooks : Run git hooks for code quality checks Utilities mpyidentify : Identify file types and associate tags mpyrpcmp : Compare two repositories (file-based) mpyrpdiff : Compare repositories using git diff mpyshrun : Wrap shell commands with logging Publishing mpypublish : Publish software to Rodare repository Installation The multiphasepy package requires Python 3.12 or newer. Install the latest release from Gitlab PyPI: python -m pip install multiphasepy --extra-index-url https://codebase.helmholtz.cloud/api/v4/projects/8786/packages/pypi/simple For full environment setup and platform-specific notes, see the installation guide in the documentation. Acknowledgements OpenFOAM® is a registered trade mark of OpenCFD Limited, producer and distributor of the OpenFOAM® software via <www.openfoam.com>. The Multiphase Python Repository by HZDR is not compatible with the software released by OpenCFD Limited, but is developed for the software released by the OpenFOAM Foundation via <www.openfoam.org>.</dc:description> <dc:identifier>https://rodare.hzdr.de/record/4566</dc:identifier> <dc:identifier>10.14278/rodare.4566</dc:identifier> <dc:identifier>oai:rodare.hzdr.de:4566</dc:identifier> <dc:language>eng</dc:language> <dc:relation>url:https://www.hzdr.de/publications/Publ-39434</dc:relation> <dc:relation>doi:10.14278/rodare.3093</dc:relation> <dc:relation>url:https://rodare.hzdr.de/communities/rodare</dc:relation> <dc:rights>info:eu-repo/semantics/openAccess</dc:rights> <dc:rights>https://opensource.org/licenses/GPL-3.0</dc:rights> <dc:subject>Python</dc:subject> <dc:subject>Numerical Simulations</dc:subject> <dc:subject>Post-Processing</dc:subject> <dc:subject>Gitlab</dc:subject> <dc:title>Multiphase Python Repository by HZDR</dc:title> <dc:type>info:eu-repo/semantics/other</dc:type> <dc:type>software</dc:type> </oai_dc:dc>
| All versions | This version | |
|---|---|---|
| Views | 17,231 | 63 |
| Downloads | 4,885 | 15 |
| Data volume | 137.0 MB | 787.6 kB |
| Unique views | 12,495 | 60 |
| Unique downloads | 4,403 | 13 |