FMI.jl Logo

FMICore.jl

What is FMICore.jl?

FMICore.jl implements the low-level equivalents of the C-functions and C-data types of the FMI-standard (fmi-standard.org) for the Julia programming language.

Dev Docs Run Tests Run PkgEval Coverage

How can I use FMICore.jl?

Please note: FMICore.jl is not meant to be used as it is, but as part of FMI.jl, FMIImport.jl, FMIExport.jl and FMIFlux.jl. However you can install FMICore.jl by following these steps.

1. Open a Julia-REPL, switch to package mode using ], activate your preferred environment.

2. Install FMICore.jl:

(@v1) pkg> add FMICore

3. If you want to check that everything works correctly, you can run the tests bundled with FMICore.jl:

(@v1) pkg> test FMICore

What FMI.jl-Library should I use?

FMI.jl Family To keep dependencies nice and clean, the original package FMI.jl had been split into new packages:

  • FMI.jl: High level loading, manipulating, saving or building entire FMUs from scratch
  • FMIImport.jl: Importing FMUs into Julia
  • FMIExport.jl: Exporting stand-alone FMUs from Julia Code
  • FMIBase.jl: Common concepts for import and export of FMUs
  • FMICore.jl: C-code wrapper for the FMI-standard
  • FMISensitivity.jl: Static and dynamic sensitivities over FMUs
  • FMIBuild.jl: Compiler/Compilation dependencies for FMIExport.jl
  • FMIFlux.jl: Machine Learning with FMUs
  • FMIZoo.jl: A collection of testing and example FMUs

What Platforms are supported?

FMICore.jl is tested (and testing) under Julia Versions v1.6 LTS and v1 latest on Windows latest (x64 and x86) and Ubuntu latest (x64). MacOS is not CI-tested but should work with Mac-FMUs.

How to cite?

Tobias Thummerer, Lars Mikelsons and Josef Kircher. 2021. NeuralFMU: towards structural integration of FMUs into neural networks. Martin Sjölund, Lena Buffoni, Adrian Pop and Lennart Ochel (Ed.). Proceedings of 14th Modelica Conference 2021, Linköping, Sweden, September 20-24, 2021. Linköping University Electronic Press, Linköping (Linköping Electronic Conference Proceedings ; 181), 297-306. DOI: 10.3384/ecp21181297

Tobias Thummerer, Johannes Stoljar and Lars Mikelsons. 2022. NeuralFMU: presenting a workflow for integrating hybrid NeuralODEs into real-world applications. Electronics 11, 19, 3202. DOI: 10.3390/electronics11193202

Tobias Thummerer, Johannes Tintenherr, Lars Mikelsons. 2021. Hybrid modeling of the human cardiovascular system using NeuralFMUs Journal of Physics: Conference Series 2090, 1, 012155. DOI: 10.1088/1742-6596/2090/1/012155