modelica / fmi-standard

Specification of the Functional Mock-up Interface (FMI)
https://fmi-standard.org/
Other
274 stars 85 forks source link

Clarify meaning of DefaultExperiment.stepSize for Model Exchange #1939

Closed t-sommer closed 1 month ago

t-sommer commented 7 months ago

In FMI 2.0 the meaning of DefaultExperiment.stepSize for Model Exchange is defined in the XSD diagram (FMI Spec 2.0.4, p. 45)

image

In FMI 3.0 this description has been replaced with

Furthermore, for Co-Simulation FMUs the stepSize defines the preferred communicationStepSize.

@casella suggested in https://github.com/CATIA-Systems/FMPy/issues/665, to use the stepSize in Model Exchange as the preferred output interval.

chrbertsch commented 7 months ago

FMI Design Meeting: Christian: not every importing tool has an "output interval". Could this not be part of the implementer's guide Karl: this is a hack, should we not define a standardized annotation? Torsten: the text for fixed step solvers from FMI 2.0 did not end up in the FMI 3.0 spec Pierre: I agree with Karl. We have the defaultExperiment.stepSize once, what to do with FMUs that support ME and CS? I would leave it as ambiguous, one could it as a heuristic. Torsten: for the OM guys, they use fmpy in their CI ... Christian: wouldn't a new parameter fit for LS-REF? Pierre: this does not help for the general case. We could add annotations or arguments in a next relesae of the core standard. Masoud: For variable step solver, one should have something like a maximum stepsize. Pierre: we should not use the same argument for ME, CS .... Klaus: I think this was left out intentionally for FMI 3.0 Masoud: when I export an FMU, I fill this FMU with the stepsize with which the model was simulated. For import it gives just an indication. There was a discussion in the SSP Project. Pierre: It gets difficult for different solvers. I would suggest to create a new field "output recording interval", (as an annotation or xml entry) Klaus: Is this a timescale of the model? Torsten: why not state: "stepSize" has no meaning for ME? and for SE?? Pierre: it is also not forbidden to use it as a Torsten: I will create a suggestion for an annotation