Before multithreaded simualtion, components are simulated a few steps to measure time. After this they are initialized a second time. However, the also need to be finalized in between, in order to avoid components appearing in the wrong state (especially FMUs).
In other words, it should be:
initialize - simulate - finalize - initialize - simulate - finalize
Before multithreaded simualtion, components are simulated a few steps to measure time. After this they are initialized a second time. However, the also need to be finalized in between, in order to avoid components appearing in the wrong state (especially FMUs).
In other words, it should be: initialize - simulate - finalize - initialize - simulate - finalize
Not: initialize - simulate - initialize - simulate - finalize