3.2.9 Ground truth initialization parameters

All models can optionally consume osi3::GroundTruth via an initialization parameter called OSMPGroundTruthInit. Its purpose is to provide the model with information in OSI format that does not change throughout the simulation, i.e. is considered static. This can encompass, for example, the road network or referenced 3D models.

OSMPGroundTruthInit contains only data encountered by the model that does not change during a simulation run. All data provided in this message can be assumed by the receiver to be static during the simulation run.

If the model is instantiated multiple times, all instantiations should receive the exact same content. This allows a model to do expensive map calculations or loading 3D assets only once during initialization, and to share the calculated data between multiple instantiations.

Prefix

Ground truth initialization parameters shall be named with the following prefix:

OSMPGroundTruthInit

Rules

  • If a model needs ground truth during initialization, it shall have a parameter named OSMPGroundTruthInit.

  • OSMPGroundTruthInit shall be defined as a notional discrete binary input parameter variable, with @causality="parameter", @variability="fixed" and @initial="exact".

  • The MIME type of the variable shall specify the type=GroundTruth as part of the MIME type parameters.

  • OSMPGroundTruthInit shall be encoded as osi3::GroundTruth.

  • OSMPGroundTruthInit shall contain only data encountered by the model that does not change during a simulation run.

  • The IDs of objects in OSMPGroundTruthInit shall be identical to the IDs of the same objects contained in later OSMPSensorViewIn or other input data.

  • If the model is instantiated multiple times, then all instantiations should receive the exact same content stored in the OSMPGroundTruthInit parameter.

  • The guaranteed lifetime of the ground-truth protocol-buffer pointer provided as input to the FMU shall be from the time of the call to fmi2SetInteger that provides those values until the end of the following fmi2ExitInitializationMode call.