Control over independent variables #2056
christian-wolf-eks
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
the independent variable (time) has a special meaning. This becomes clear when reading the standard.
Problem formulation
Assume a CS FMU defines an explicit time variable in the manifest. So, there is something like
The importer is not allowed to set the time (according to 2.4.7 Table 17 row causality) using
fmi3SetFloat64(...)
. This means that the FMU will have to set an internal time variable to thecurrentCommunicationPoint
value upon entry offmi3DoStep
and addcommunicationStepSize
during the execution (ideally) (see 4.2.1 parameter description onfmi3DoStep
).If there is a fixed step solver under the hood that cannot exactly reach the next planned communication point,
lastSuccessfulTime
should be set to the end of the last internal integrator interval. The internal time will be just the same value.The examples in 4.3 do not help much either to understand the problem further. In 4.3.1 the time is controlled by the importer and blindly applied (although there is no time variable explicitly used). In 4.3.2 the time is synchronized by using
lastSuccessfulTime
back to the importer. Again, this does not incolce an explicit time variable.Context in standard
For ME the simulation environment controls the time, which is written in 2.2.6:
For CS however, the text is not obvious to me, to be honest. The standard continues with:
This just states that the time in CS needs to be in sync. OK so far. This does not define which instance (importer or instanciated FMU) should keep track of time (or both).
The reminder of this paragraph is about early returning of a communication step. So, it does not give any clear statement here:
Questions / comments
fmi3DoStep
call?Maybe further questions come up in time but let's get the rough questions be addressed first.
Beta Was this translation helpful? Give feedback.
All reactions