Используйте инструмент Model Transformer, чтобы осуществить рефакторинг модель, чтобы реализовать варианты, устранить имеющие право блоки хранилища данных и повысить эффективность симуляции операций поиска по таблице. Можно выполнить шаги в Трансформаторе Модели целиком или один шаг за один раз.
Используйте инструмент Model Transformer, чтобы создать модели, которые содержат эти преобразования:
Замените шаблоны моделирования квалификации на различные блоки.
Замените блоки хранилища данных на блоки, которые делают зависимость по данным явной.
Замените n-D блоки Интерполяционной таблицы на разделяемые блоки Перед поиском и несколько блоков Интерполяции.
Если вы хотите выполнить преобразования целиком для каждого шага, задайте входные параметры. Затем нажмите кнопку Run Selected Checks. После того, как вы осуществляете каждую проверку, создаете новые модели с преобразованиями путем нажатия кнопок Refactor Model.
Если вы хотите выполнить одно преобразование за один раз, можно индивидуально выбрать проверки.
Нажмите кнопку Run This Check, чтобы идентифицировать системные константы для использования в различных преобразованиях и блоках, которые имеют право на преобразование в блоки Variant Source или Variant Subsystem. Эти преобразования возможны:
Если блок If соединяется с одним или несколькими, If Action Subsystem s и каждый If Action Subsystem имеют один выходной порт, замените этот шаблон моделирования на подсистему и блок Variant Source.
Если блок If соединяется с If Action Subsystem, который не имеет никакого выходного порта или двух или больше выходных портов, замените этот шаблон моделирования на блок Variant Subsystem.
Если блок Switch Case соединяется с одним или несколькими, Switch Case Action Subsystem s и каждый Switch Case Action Subsystem имеют один выходной порт, замените этот шаблон моделирования на подсистему и блок Variant Source.
Если блок Switch Case соединяется с Switch Case Action Subsystem, который не имеет никакого выходного порта или двух или больше выходных портов, замените этот шаблон моделирования на блок Variant Subsystem.
Замените блок Switch на блок Variant Source.
Замените блок Multiport Switch, который имеет два или больше порта данных с блоком Variant Source.
Постоянная система является входом управления или является частью арифметического выражения, которое формирует вход управления к Multiport Switch или блокам Switch и входные параметры с блокам Switch Case или If. Вход управления должен быть блоками Constant и некоторой комбинацией блоков, которые формируют поддерживаемое выражение MATLAB. В Постоянном диалоговом окне параметров блоков параметры Constant value являются системными константами. В преобразованной модели системные константы являются частью выражений условия в блоках Variant Subsystem или Variant Source.
Для некоторых шаблонов модели и настроек, Трансформатор Модели не может выполнить каждые из предыдущих преобразований.
В таблице Result каждый шаблон моделирования является гиперссылкой на соответствующее местоположение в модели. Если вы не хотите, чтобы Трансформатор Модели выполнил преобразование, снимите флажок рядом с шаблоном квалификации.
Нажмите кнопку Refactor Model, чтобы создать модель, которая содержит преобразования. Преобразованная модель находится в папке, которая имеет префиксный m2m
плюс исходное имя модели.
Нажмите кнопку Run This Check, чтобы идентифицировать Data Store Memory, Data Store Read и блоки Data Store Write, которые имеют право на устранение. Нажмите кнопку Refactor Model , чтобы создать модель, которая заменяет эти блоки или на прямую сигнальную линию, aDelay блок, или на блок Merge. Модель находится в папке, которая имеет префиксный m2m
плюс исходное имя модели.
Заменение этих блоков улучшает удобочитаемость модели путем создания зависимости по данным явной. Трансформатор Модели может заменить эти хранилища данных:
Для сигналов, которые не являются шинами, если блок Data Store Read выполняется перед блоком Data Store Write, инструмент заменяет эти блоки на блок Delay.
Для сигналов, которые не являются шинами, если блок Data Store Write выполняется перед блоком Data Store Read, инструмент заменяет эти блоки на прямую связь.
Для сигналов шины, если запись, чтобы соединить шиной элементы выполняется перед чтением шины, инструмент заменяет Data Store Read и блоки Data Store Write с прямой связью и блок Bus Creator.
Для сигналов шины, если запись к шине выполняется перед чтением элементов шины, инструмент заменяет Data Store Read и блоки Data Store Write с прямой связью и блок Bus Selector.
Для условно выполняемых подсистем инструмент заменяет Data Store Read и блоки Data Store Write с прямой связью и блок Merge.
Инструмент Model Transformer только устраняет локальные хранилища данных, которые задают блоки Data Store Memory. Инструмент не устраняет хранилища глобальных данных. Для блока Data Store Memory, на вкладке Signal Attributes диалогового окна параметров блоков, должен быть очищен параметр Data store name must resolve to Simulink signal object.
Таблица Result содержит гиперссылки на соответствующий Data Store Memory, Data Store Read и блоки Data Store Write. Если вы не хотите, чтобы Трансформатор Модели выполнил преобразование, прежде, чем нажал кнопку Refactor Model, снимите флажок рядом с блоком Data Store Memory.
Чтобы идентифицировать блоки n-D Lookup Table, которые имеют право на преобразование в разделяемые блоки Prelookup и блоки multiple Interpolation, нажмите кнопку Run This Check. Инструмент отображает идентифицированные блоки и их параметры алгоритма наряду с моделью, библиотеками и моделями, на которые ссылаются. Можно также очистить блоки для преобразования.
Трансформатор Модели работает если:
Тот же источник управляет блоками Lookup Table.
Блоки Lookup table совместно используют ту же спецификацию точки останова, значения и типы данных.
Блоки Lookup table совместно используют те же параметры алгоритма в диалоговом окне параметров блоков.
Блоки Lookup table совместно используют совпадающий тип данных для параметров частей в диалоговом окне параметров блоков.
Чтобы создать модель, которая заменяет эти блоки Lookup Table на разделяемый Prelookup и блоки Interpolation, нажмите кнопку Run This Check.
Устранение избыточных блоков Prelookup в эквивалентной сгенерированной модели улучшает скорость симуляции для линейных интерполяций.