Восстановить

Описание

Выберите метод, чтобы определить, когда восстановить симуляцию и цели Simulink® Coder™ для моделей, на которые ссылаются, перед обновлением, симуляцией или генерацией кода из модели.

Ссылка модели Category:

Настройки

Значение по умолчанию: If any changes detected

Always

Всегда восстанавливайте цели для моделей, на которые ссылаются. Эта установка требует большей части времени вычислений, потому что это может инициировать ненужные сборки. Чтобы сделать все цели модели-ссылки актуальными, используйте эту установку, прежде чем вы развернете модель.

If any changes detected

Условно восстановите цели для моделей, на которые ссылаются, когда Simulink обнаруживает изменение, которое могло влиять на результаты симуляции. Чтобы выполнить обширное обнаружение изменения на зависимостях моделей, на которые ссылаются, используйте эту установку.

Если Simulink не находит изменений в известных зависимостях, он вычисляет структурную контрольную сумму модели. Структурная контрольная сумма обнаруживает изменения, которые происходят в созданных пользователями зависимостях, которые не заданы с помощью параметра конфигурации Model dependencies. Если структурная контрольная сумма изменилась, Simulink восстанавливает цель модели-ссылки.

If any changes in known dependencies detected

Условно восстановите цели для моделей, на которые ссылаются, когда Simulink обнаруживает изменение, которое могло влиять на результаты симуляции. Чтобы уменьшать время, требуемое для обнаружения изменения, используйте эту установку.

Если Simulink не находит изменений в известных или потенциальных зависимостях, он не вычисляет структурную контрольную сумму модели и не восстанавливает цель модели-ссылки. Чтобы избежать недопустимых результатов симуляции, необходимо перечислить все созданные пользователями зависимости в параметре Model dependencies.

Never

Не восстанавливайте цели для моделей, на которые ссылаются. Эта установка требует наименьшего количества времени вычислений и, когда доступно, использует файлы кэша Simulink в более быстрых симуляциях. Избегать восстанавливает при разработке модели используйте эту установку.

Если цели модели-ссылки устарели, симуляция может представить недопустимые результаты. Чтобы иметь Simulink Check для изменений в известных целевых зависимостях и сообщить, могут ли цели модели-ссылки устареть, используйте параметр Never rebuild diagnostic. Чтобы вручную восстановить цели модели-ссылки, используйте slbuild функция.

Для получения информации об использовании и совместное использование файлов кэша Simulink, смотрите Долю Файлы кэша Simulink для Более быстрой Симуляции.

Определения

Известные целевые зависимости

Известные целевые зависимости являются файлами и данными, внешними к файлам модели, которые Simulink исследует на изменения при проверке, актуальна ли цель модели-ссылки. Simulink автоматически вычисляет набор известных целевых зависимостей. Примеры известных целевых зависимостей:

  • Изменения в рабочем пространстве модели, если его источник данных является файлом MATLAB® или MAT-файлом

  • Определения перечислимого типа

  • Написанные пользователем S-функции и их файлы TLC

  • Файлы заданы в параметре Model dependencies

  • Внешние файлы используются Stateflow®, блоком MATLAB function или блоком MATLAB System

  • Подсистемы потока данных – Анализ подсистем потока данных требует, чтобы цель симуляции восстановила, чтобы профилировать и восстановила снова, чтобы разделить подсистему. Кроме того, цель симуляции должна восстановить, если машина, запускающая симуляцию, имеет меньше ядер, чем подсистема разделена, чтобы использовать, например, если цель симуляции была в последний раз основана на машине с большим количеством ядер. Для получения дополнительной информации смотрите Симуляцию Областей Потока данных (DSP System Toolbox).

Потенциальные целевые зависимости

Потенциальные целевые зависимости являются файлами и данными, внешними к файлам модели и настройкам конфигурации модели, которые Simulink исследует на изменения при проверке, актуальна ли цель модели-ссылки. Simulink автоматически вычисляет набор потенциальных целевых зависимостей. Примеры потенциальных целевых зависимостей:

  • Изменения в глобальных переменных

  • На изменения в целях моделей ссылается эта модель

  • Configuration Parameters> Diagnostics> Data Validity> параметр Signal resolution, когда установлено в любой Explicit and implicit или Explicit and warn implicit

Simulink исследует каждую потенциальную целевую зависимость, чтобы определить, инициировало ли ее состояние структурную проверку контрольной суммы.

Созданные пользователями зависимости

Созданные пользователями зависимости являются файлами, которые Simulink автоматически не идентифицирует, несмотря на их потенциальный удар на результаты симуляции. Примеры созданных пользователями зависимостей:

  • Файлы MATLAB, которые содержат код, выполненный коллбэками

  • MAT-файлы, которые содержат определения для переменных, используемых моделью, которые загружаются как часть индивидуально настраиваемого скрипта инициализации

Можно добавить созданные пользователями зависимости в набор известных целевых зависимостей при помощи параметра Model dependencies.

Структурная контрольная сумма

Структурная контрольная сумма является расчетом, используемым, чтобы обнаружить изменения в модели, которая может влиять на результаты симуляции. Когда Simulink вычисляет структурную контрольную сумму, он загружает и компилирует модель. Чтобы скомпилировать модель, Simulink должен выполнить коллбэки и доступ все переменные, которые использует модель. Структурная контрольная сумма обнаруживает изменения в созданных пользователями зависимостях, независимо от того, задали ли вы те созданные пользователями зависимости в параметре Model dependencies.

Для получения дополнительной информации о видах изменений, которые влияют на структурную контрольную сумму, смотрите Simulink.BlockDiagram.getChecksum.

Советы

  • Модели в иерархии модели могут иметь отличающийся, восстанавливают настройки. Когда вы обновляете, симулируете или генерируете код для модели, восстановить установка для той модели применяется ко всем своим моделям, на которые ссылаются.

  • Модели, которые выполняются в режиме normal mode, не генерируют цели симуляции и незатронуты настройками Rebuild.

  • Чтобы улучшиться восстанавливают скорость обнаружения и точность, используют параметр конфигурации Model dependencies, чтобы задать созданные пользователями зависимости.

  • Эта блок-схема описывает обработку, которую выполняет Simulink, когда вы устанавливаете Rebuild на любой If any changes detected или If any changes in known dependencies detected.

  • Этот пример объясняет различие между If any changes detected и If any changes in known dependencies detected настройки.

    Если вы изменяете файл MATLAB, который выполняется как часть скрипта коллбэка, который вы не перечислили в параметре Model dependencies:

    • If any changes detected вызывает восстанавливание, потому что изменение влияет на структурную контрольную сумму модели.

    • If any changes in known dependencies detected не вызывает восстанавливание, потому что никакая известная целевая зависимость не изменилась.

Зависимость

Выбор Never включает параметр Never rebuild diagnostic.

Информация о командной строке

Parameter: UpdateModelReferenceTargets
Значение: 'Force' | 'IfOutOfDateOrStructuralChange' | 'IfOutOfDate' | 'AssumeUpToDate'
Значение по умолчанию: 'IfOutOfDateOrStructuralChange'
UpdateModelReferenceTargets ЗначениеЭквивалентное значение Rebuild
'Force'Always
'IfOutOfDateOrStructuralChange'If any changes detected
'IfOutOfDate'If any changes in known dependencies detected
'AssumeUpToDate'Never

Рекомендуемые настройки

ПриложениеУстановка
ОтладкаНикакой удар
ТрассируемостьНикакой удар
ЭффективностьНикакой удар
Меры безопасности

If any changes detected или Never

Если вы используете Never при установке, затем устанавливает параметр Never rebuild diagnostic на Error if rebuild required.

Вопросы совместимости

Начиная в R2019b, If any changes detected игнорирует косметические изменения, такие как то, чтобы менять местоположение блока.

Смотрите также

Похожие темы