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


MARC21 XML Export

<?xml version='1.0' encoding='UTF-8'?>
<record xmlns="http://www.loc.gov/MARC21/slim">
  <leader>00000nmm##2200000uu#4500</leader>
  <controlfield tag="005">20260326073800.0</controlfield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="a">https://www.hzdr.de/publications/Publ-39434</subfield>
    <subfield code="i">isIdenticalTo</subfield>
    <subfield code="n">url</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="a">10.14278/rodare.3093</subfield>
    <subfield code="i">isVersionOf</subfield>
    <subfield code="n">doi</subfield>
  </datafield>
  <datafield tag="024" ind1=" " ind2=" ">
    <subfield code="a">10.14278/rodare.4566</subfield>
    <subfield code="2">doi</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">user-rodare</subfield>
  </datafield>
  <datafield tag="650" ind1="1" ind2="7">
    <subfield code="a">cc-by</subfield>
    <subfield code="2">opendefinition.org</subfield>
  </datafield>
  <datafield tag="245" ind1=" " ind2=" ">
    <subfield code="a">Multiphase Python Repository by HZDR</subfield>
  </datafield>
  <datafield tag="520" ind1=" " ind2=" ">
    <subfield code="a">&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;</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">software</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">15618</subfield>
    <subfield code="u">https://rodare.hzdr.de/record/4566/files/CHANGELOG.md</subfield>
    <subfield code="z">md5:af3b14545062975c87ead91871528514</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">119045</subfield>
    <subfield code="u">https://rodare.hzdr.de/record/4566/files/multiphasepy-3.0.1-py3-none-any.whl</subfield>
    <subfield code="z">md5:639df073cc71c71cdbaa58a8fcd24f98</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">85406</subfield>
    <subfield code="u">https://rodare.hzdr.de/record/4566/files/multiphasepy-3.0.1.tar.gz</subfield>
    <subfield code="z">md5:a4b23a4b2c814c5de39a49af10db2bcf</subfield>
  </datafield>
  <datafield tag="100" ind1=" " ind2=" ">
    <subfield code="a">Schlegel, Fabian</subfield>
    <subfield code="u">Helmholtz-Zentrum Dresden - Rossendorf e.V.</subfield>
    <subfield code="0">(orcid)0000-0003-3824-9568</subfield>
  </datafield>
  <datafield tag="542" ind1=" " ind2=" ">
    <subfield code="l">open</subfield>
  </datafield>
  <datafield tag="540" ind1=" " ind2=" ">
    <subfield code="u">https://opensource.org/licenses/GPL-3.0</subfield>
    <subfield code="a">GNU General Public License v3.0 or later</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">Python</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">Numerical Simulations</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">Post-Processing</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">Gitlab</subfield>
  </datafield>
  <controlfield tag="001">4566</controlfield>
  <datafield tag="041" ind1=" " ind2=" ">
    <subfield code="a">eng</subfield>
  </datafield>
  <datafield tag="260" ind1=" " ind2=" ">
    <subfield code="c">2026-03-20</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="a">Fombonne, Clement</subfield>
    <subfield code="u">Framatome S.A.S.</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="a">Hänsch, Susann</subfield>
    <subfield code="u">Helmholtz-Zentrum Dresden - Rossendorf e.V.</subfield>
    <subfield code="0">(orcid)0000-0003-1296-5566</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="a">Krull, Benjamin</subfield>
    <subfield code="u">Helmholtz-Zentrum Dresden - Rossendorf e.V.</subfield>
    <subfield code="0">(orcid)0000-0002-5394-0384</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="a">Lehnigk, Ronald</subfield>
    <subfield code="u">Helmholtz-Zentrum Dresden - Rossendorf e.V.</subfield>
    <subfield code="0">(orcid)0000-0002-5408-7370</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="a">Meller, Richard</subfield>
    <subfield code="u">Helmholtz-Zentrum Dresden - Rossendorf e.V.</subfield>
    <subfield code="0">(orcid)0000-0002-3801-2555</subfield>
  </datafield>
  <datafield tag="909" ind1="C" ind2="O">
    <subfield code="o">oai:rodare.hzdr.de:4566</subfield>
    <subfield code="p">software</subfield>
    <subfield code="p">user-rodare</subfield>
  </datafield>
</record>
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