How to find the variables of simulink non-active variants subsystem

5 次查看(过去 30 天)
I need fine if the my variable is used in Simulink model's non-active Variant subsystems.
The command Simulink.findVars returns me the data only from the active Variant subsystems of the model. That command compiles the model in an order to generate the list of varaibles used in the model/subsystems. I cannot just programattically activate the non-active Variant subsystem and run this command again. That is because that new-activated variant subsystem requires the use of different data dictionary (in my case) and won't compile with the current data dictionary.
Any ideas, please?

回答(2 个)

Fangjun Jiang
Fangjun Jiang 2019-11-13
from doc Simulink.findVars
Simulink.findVars discovers variable usage in inactive subsystem variants only if you select Analyze all choices during update diagram and generate preprocessor conditionals in the Variant Subsystem block dialog box. If you do not select this check box, the function does not discover variable usage in inactive variants.
  2 个评论
Lev Vitkin
Lev Vitkin 2019-11-18
..and this is a problem with the use of Simulink.findVars. I cannot select the option 'Analyze all choices" because in this case Simulink.findVars tries to compile all variant subsystems. And that won't work "because that new-activated variant subsystem requires the use of different data dictionary (in my case) and won't compile with the current data dictionary."
Lev

请先登录,再进行评论。


Lev Vitkin
Lev Vitkin 2019-11-18
The benefits of Simulink.findVars is that it find all objects of the model. Using find_system needs to specify the type ofthe object: const, signal, bus, etc. I am currently using find_system to find the objects of not-active variants, but that is not the ideal solution.

类别

Help CenterFile Exchange 中查找有关 Component-Based Modeling 的更多信息

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by