Atomic Subsystem Execution Order Wrong in Matlab 2019b (though was correct in 2017)

1 次查看(过去 30 天)
After we transitioned from Matlab 2017 to 2019b (and re-tested update 4) we see the Atomic Subsystem generated function is called too late, after the downstream block uses it's output which creates an execution order issue. We expected the Atomic subsystem code run before the code that it is connected to, not after. In 2017 this code was generated properly as we compared the .c file before and after.
Additional details:
  • The Atomic Subblock is a constant subsystem (shown in pink) with a non-constant s-function: it appears to treat the whole block as constant even though the s-function has a side-effect that impacts the downstream block.
Testing results:
  • The model was tested after saving in both 2017 and 2019b
  • Verified working in 2017 version before we transitioned to 2019b
  • Verified update 4 didn't fix the problem
  • Workaround was to remove the Atomic Subsystem output that was passedthrough from the input.
Version R2019b (9.7.0.1190202), 64-bit, Aug. 21, 2019.

回答(1 个)

Harsha Priya Daggubati
Hi,
Did u try checking treat as atomic unit option. It is by default set off.

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

产品


版本

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by