Case Metadata Format

The case.yml file contains metadata for simulation cases. This file is used by multiphasepy to manage case information, validation data, and workflow parameters.

name: "Name of the Case"
validation:
    "alpha.air":
        experiment: "validation/experiment/alpha.dat"
        reference: "validation/reference/line.csv"
        simulation: "postProcessing/../line.csv"
keywords:
    BUBBLE SIZE:
        - monodisperse
    BUBBLE SIZE CHANGES:
        - coalescence-breakup
        - density-change
workflow:
    params:
        cores: 4
        container: "oras://<registry>/<image>:<tag>.sif"
    partition:
        name: "compute"
        ntasks: 16

File Location

The metadata file should be placed in the root directory of each simulation case:

simulation-case/
├── Allrun
├── case.yml          # Metadata file
├── system/
├── constant/
└── validation/

File Format

The case.yml uses YAML format and supports the following top-level keys:

Schema

name

Human-readable name for the simulation case.

Type: string

workflow

Workflow-related configuration for job scheduling and execution.

workflow.params

Parameters for workflow execution.

workflow.params.cores

Number of CPU cores to use for the simulation.

Type: integer

Example:

workflow:
  params:
    cores: 4
workflow.params.container

Container image URL for running the simulation in a containerized environment.

Type: string

Example with Apptainer|Singularity:

workflow:
  params:
    container: "oras://<registry>/<image>:<tag>.sif"

Example with Docker:

workflow:
  params:
    container: "docker://<registry>/<image>:<tag>"
workflow.params.partition

Cluster partition configuration for job scheduling.

Type: object

Properties:

  • name (string): Name of the partition/queue

  • ntasks (integer): Number of tasks

Example:

workflow:
  params:
    partition:
      name: "compute"
      ntasks: 16

validation

Validation data configuration for comparing simulation results with experimental or reference data.

Type: object

Each field in the validation section represents a physical quantity to be validated. The key format is typically <field> (e.g., alpha.air, U.water).

Properties for each field:

  • experiment (string): Path to experimental data file

  • reference (string): Path to reference/baseline data file

  • simulation (string): Path to simulation output data file

Example:

validation:
  "alpha.air":
    experiment: "validation/alpha.dat"
    reference: "validation/reference/line.csv"
    simulation: "postProcessing/sampleFields/4/line.csv"
  "U.water":
    experiment: "validation/velocity.dat"
    reference: "validation/reference/velocity.csv"
    simulation: "postProcessing/sampleFields/4/velocity.csv"

keywords

Keywords for categorizing and searching simulation cases. Keywords follow a controlled vocabulary defined in the reference keywords file.

Type: object

Each keyword category contains a list of applicable values.

Example:

keywords:
  BUBBLE SIZE:
    - monodisperse
  BUBBLE SIZE CHANGES:
    - coalescence-breakup
    - density-change