Skip to content

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. FMICore.jl provides the foundation for the Julia packages FMIImport.jl and FMIExport.jl.

License

Notifications You must be signed in to change notification settings

CasBex/FMICore.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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. FMICore.jl provides the foundation for the Julia packages FMIImport.jl and FMIExport.jl.

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
  • 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 (differentiation over 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, Ubuntu latest and MacOS latest. x64 and x86 architectures are tested.

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

Related publications?

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

About

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. FMICore.jl provides the foundation for the Julia packages FMIImport.jl and FMIExport.jl.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Julia 100.0%