FMI Cross-Check

February 10, 2022 ยท View on GitHub


:construction: This repository is temporarily archived while we're reworking the FMI Cross-Check process.


This repository contains the exported FMUs and results for imported FMUs of the tools that take part in the FMI Cross-Check. If your tool is listed on fmi-standard.org/tools/ you can add your FMUs and results by following the steps below. For details see the official FMI Cross-Check rules.

Fork and clone the repository

Fork and clone the fmi-cross-check repository. Create and checkout a new branch add-Tool_ID-Tool_Version where Tool_ID is a tool ID from tools.csv and Version the tool's version for which you commit FMUs / results.

Add FMUs

For every exported FMU add the following files:

fmus
  + FMI_Version
    + FMI_Type
      + Platform
        + Tool_ID
          + Tool_Version
            + Model_Name
              - Model_Name_in.csv  (optional)
              - Model_Name_ref.csv
              - Model_Name_ref.opt
              - Model_Name.fmu
              - README.[md|txt]
File / DirectoryDescription
FMI_Version1.0, 2.0
FMI_Typecs (Co-Simulation), me (Model Exchange)
Platformc-code, darwin32, linux32, linux64, win32, win64
Tool_IDMust match the tool ID in tools.csv
Tool_VersionThe tool version
Model_NameName of the FMU (w/o file extension)
Model_Name_in.csvInput file (optional)
Model_Name_ref.csvReference results
Model_Name_ref.optSimulation settings to reproduce reference results
Model_Name.fmuThe exported FMU
README.txtA text (.txt) or Markdown (.md) file that describes the FMU (optional)

Add results

For every imported FMU add the following files:

results
  + FMI_Version
    + FMI_Type
      + Platform
        + Importing_Tool_ID
          + Importing_Tool_Version
            + Exporing_Tool_ID
              + Exporting_Tool_Version
                + Model_Name
                  - passed / failed / rejected (optional)
                  - README.[md|txt]
File / DirectoryDescription
FMI_Version1.0, 2.0
FMI_Typecs (Co-Simulation), me (Model Exchange)
Platformc-code, darwin32, linux32, linux64, win32, win64
Importing_Tool_IDThe importing tool's ID (as in tools.csv)
Importing_Tool_VersionThe importing tool's version
Exporing_Tool_IDThe exporting tool's ID (as in tools.csv)
Exporting_Tool_VersionThe exporting tool's version
Model_NameName of the imported FMU (w/o file extension)
README.txtA text (.txt) or Markdown (.md) file that describes how to import the FMU

Validate the FMUs

Before pushing your FMUs to GitHub, please validate the repository by running

python validate_repo.py

and fix any reported problems.

Expected output:

#################################
0 problems found in /path/to/fmi-cross-check
Validated 1530 FMUs
#################################

To run the script you have to install the dependencies listed in requirements.txt.

Make a pull request

Commit and push the changes to your fork and create a pull request.