There is a newer version of this record available.

Software Open Access

Multiphase Python Repository by HZDR

Schlegel, Fabian; Fombonne, Clement; Hänsch, Susann; Krull, Benjamin; Lehnigk, Ronald; Meller, Richard


DataCite XML Export

<?xml version='1.0' encoding='utf-8'?>
<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.1/metadata.xsd">
  <identifier identifierType="DOI">10.14278/rodare.4566</identifier>
  <creators>
    <creator>
      <creatorName>Schlegel, Fabian</creatorName>
      <givenName>Fabian</givenName>
      <familyName>Schlegel</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0003-3824-9568</nameIdentifier>
      <affiliation>Helmholtz-Zentrum Dresden - Rossendorf e.V.</affiliation>
    </creator>
    <creator>
      <creatorName>Fombonne, Clement</creatorName>
      <givenName>Clement</givenName>
      <familyName>Fombonne</familyName>
      <affiliation>Framatome S.A.S.</affiliation>
    </creator>
    <creator>
      <creatorName>Hänsch, Susann</creatorName>
      <givenName>Susann</givenName>
      <familyName>Hänsch</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0003-1296-5566</nameIdentifier>
      <affiliation>Helmholtz-Zentrum Dresden - Rossendorf e.V.</affiliation>
    </creator>
    <creator>
      <creatorName>Krull, Benjamin</creatorName>
      <givenName>Benjamin</givenName>
      <familyName>Krull</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0002-5394-0384</nameIdentifier>
      <affiliation>Helmholtz-Zentrum Dresden - Rossendorf e.V.</affiliation>
    </creator>
    <creator>
      <creatorName>Lehnigk, Ronald</creatorName>
      <givenName>Ronald</givenName>
      <familyName>Lehnigk</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0002-5408-7370</nameIdentifier>
      <affiliation>Helmholtz-Zentrum Dresden - Rossendorf e.V.</affiliation>
    </creator>
    <creator>
      <creatorName>Meller, Richard</creatorName>
      <givenName>Richard</givenName>
      <familyName>Meller</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0002-3801-2555</nameIdentifier>
      <affiliation>Helmholtz-Zentrum Dresden - Rossendorf e.V.</affiliation>
    </creator>
  </creators>
  <titles>
    <title>Multiphase Python Repository by HZDR</title>
  </titles>
  <publisher>Rodare</publisher>
  <publicationYear>2026</publicationYear>
  <subjects>
    <subject>Python</subject>
    <subject>Numerical Simulations</subject>
    <subject>Post-Processing</subject>
    <subject>Gitlab</subject>
  </subjects>
  <dates>
    <date dateType="Issued">2026-03-20</date>
  </dates>
  <language>en</language>
  <resourceType resourceTypeGeneral="Software"/>
  <alternateIdentifiers>
    <alternateIdentifier alternateIdentifierType="url">https://rodare.hzdr.de/record/4566</alternateIdentifier>
  </alternateIdentifiers>
  <relatedIdentifiers>
    <relatedIdentifier relatedIdentifierType="URL" relationType="IsIdenticalTo">https://www.hzdr.de/publications/Publ-39434</relatedIdentifier>
    <relatedIdentifier relatedIdentifierType="DOI" relationType="IsVersionOf">10.14278/rodare.3093</relatedIdentifier>
    <relatedIdentifier relatedIdentifierType="URL" relationType="IsPartOf">https://rodare.hzdr.de/communities/rodare</relatedIdentifier>
  </relatedIdentifiers>
  <version>3.0.1</version>
  <rightsList>
    <rights rightsURI="https://opensource.org/licenses/GPL-3.0">GNU General Public License v3.0 or later</rights>
    <rights rightsURI="info:eu-repo/semantics/openAccess">Open Access</rights>
  </rightsList>
  <descriptions>
    <description descriptionType="Abstract">&lt;p&gt;The &lt;code&gt;multiphasepy&lt;/code&gt; 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.&lt;/p&gt; &lt;p&gt;At its core, &lt;code&gt;multiphasepy&lt;/code&gt; 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.&lt;/p&gt; &lt;p&gt;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.&lt;/p&gt; Command-Line Tools &lt;p&gt;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 &lt;code&gt;mpy&amp;lt;function&amp;gt;&lt;/code&gt; and provide &lt;code&gt;--help&lt;/code&gt; for detailed usage information.&lt;/p&gt; Workflow Management &lt;ul&gt; &lt;li&gt;&lt;strong&gt;mpycopy&lt;/strong&gt; : Copy and render templated cases&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpydocker&lt;/strong&gt; : Launch customizable Docker development environments&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpywatch&lt;/strong&gt; : Progress display and real-time data visualization&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyworkflow&lt;/strong&gt; : Create and manage cases projects allowing batch processing&lt;/li&gt; &lt;/ul&gt; Data Processing &lt;ul&gt; &lt;li&gt;&lt;strong&gt;mpyconv&lt;/strong&gt; : Convert data files between formats&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpypost&lt;/strong&gt; : Mathematical post-processing operations&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyvisualize&lt;/strong&gt; : Visualize simulation result files&lt;/li&gt; &lt;/ul&gt; Quality Assurance &lt;ul&gt; &lt;li&gt;&lt;strong&gt;mpytest&lt;/strong&gt; : Run CFD code functionality tests&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyfuzzy&lt;/strong&gt; : Evaluate simulation goodness using fuzzy logic&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyhooks&lt;/strong&gt; : Run git hooks for code quality checks&lt;/li&gt; &lt;/ul&gt; Utilities &lt;ul&gt; &lt;li&gt;&lt;strong&gt;mpyidentify&lt;/strong&gt; : Identify file types and associate tags&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyrpcmp&lt;/strong&gt; : Compare two repositories (file-based)&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyrpdiff&lt;/strong&gt; : Compare repositories using git diff&lt;/li&gt; &lt;li&gt;&lt;strong&gt;mpyshrun&lt;/strong&gt; : Wrap shell commands with logging&lt;/li&gt; &lt;/ul&gt; Publishing &lt;ul&gt; &lt;li&gt;&lt;strong&gt;mpypublish&lt;/strong&gt; : Publish software to Rodare repository&lt;/li&gt; &lt;/ul&gt; Installation &lt;p&gt;The &lt;code&gt;multiphasepy&lt;/code&gt; package requires Python 3.12 or newer.&lt;/p&gt; &lt;p&gt;Install the latest release from Gitlab PyPI:&lt;/p&gt; &lt;pre&gt;&lt;code class="language-bash"&gt;python -m pip install multiphasepy --extra-index-url https://codebase.helmholtz.cloud/api/v4/projects/8786/packages/pypi/simple &lt;/code&gt;&lt;/pre&gt; &lt;p&gt;For full environment setup and platform-specific notes, see the installation guide in the documentation.&lt;/p&gt; Acknowledgements &lt;p&gt;OpenFOAM® is a registered trade mark of OpenCFD Limited, producer and distributor of the OpenFOAM® software via &amp;lt;www.openfoam.com&amp;gt;. 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 &amp;lt;www.openfoam.org&amp;gt;.&lt;/p&gt;</description>
  </descriptions>
</resource>
17,231
4,885
views
downloads
All versions This version
Views 17,23163
Downloads 4,88515
Data volume 137.0 MB787.6 kB
Unique views 12,49560
Unique downloads 4,40313

Share

Cite as