Анализируйте отношение между переменными и блоками в моделях
[variables] = Simulink.findVars(context)[variables] = Simulink.findVars(context,variablefilter)[variables] = Simulink.findVars(___,Name,Value)[ находит и возвращает переменные, которые используются в блоках и моделях, заданных variables] = Simulink.findVars(context)context, включая подсистемы и модели, на которые ссылаются. Функция возвращает пустой вектор, если context не использует переменных.
[ находит только типы переменных или перечислимые типы, которые заданы variables] = Simulink.findVars(context,variablefilter)variablefilter. Например, используйте этот синтаксис, чтобы определить, где переменная используется в модели.
[ находит переменные с дополнительными опциями заданными одним или несколькими аргументами пары variables] = Simulink.findVars(___,Name,Value)Name,Value. Например, можно искать неиспользуемые переменные. Можно также искать перечислимые типы данных, которые используются в context, в дополнение к переменным.
Simulink.findVars не работает с этими построениями:
Код MATLAB® в скриптах и инициализации и функциях обратного вызова
Библиотеки и блоки в библиотеках
Переменные в блоках MATLAB function, за исключением входных параметров
Однако Simulink.findVars может найти перечислимые типы где угодно, они используются в блоках MATLAB function.
Вызовы непосредственно MATLAB с языка действия Stateflow®
S-функции, которые используют переменные типа данных, указанные с помощью ssRegisterDataType
Чтобы сделать переменные доступными для поиска, используйте ssRegisterTypeFromNamedObject вместо этого.
На переменные ссылаются порожденные машиной данные в Stateflow.
Переменные в строке.
Simulink.findVars обнаруживает переменное использование в неактивных вариантах подсистемы, только если вы выбираете Analyze all choices during update diagram and generate preprocessor conditionals в Различном диалоговом окне блока Subsystem. Если вы не устанавливаете этот флажок, функция не обнаруживает переменное использование в неактивных вариантах.