FMUComplianceChecker
FMUComplianceChecker copied to clipboard
Additional checks for correct model structure in Compliance Checker needed
Reported by awad.mukbil on 7 Feb 2017 11:53 UTC
The compliance checker does not detect errors in the attached FMU (which is, e.g. rejected by Dymola). The attached FMU is an erroneous FMU of bouncingBall.fmu that came with QTronic FMUSDK 2.0.4. The following two errors in the <ModelStructure>
element of the modeldescription.xml should be detected:
Error 1: Invalid Derivatives indices in ModelStructure element
According to the FMI version 2.0 standard, page 58, only state derivatives should be listed in <Derivatives>
(not states). In this FMU, the <Derivatives>
has elements with indices of states [1, 3], instead of state derivatives [2, 4].
Error 2: Invalid InitialUnknowns indices in ModelStructure element
According to the FMI version 2.0 standard, page 60, variable listed should be:
-
causality = "output"
and (initial="approx"
or"calculated"
). -
causality = "calculatedParameter"
. - continuous-time states and all state derivatives (defined with element
<Derivatives>
from<ModelStructure>
) withinitial="approx"
or"calculated"
(not“exact”
) In this FMU, the<InitialUnknowns>
has elements with indices of states withinitial="exact"
[1, 3], instead of state derivatives withinitial="calculated"
[2, 4].
The Compliance Checker should be updated to detect these errors in the modelDescription.xml file. Attached are the FMU and batch of Compliance Checker command to run this FMU and generate log file. CC_ModelStructure.zip
Migrated-From: https://trac.fmi-standard.org/ticket/410