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

Описание

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

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

Настройки

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

Always

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

If any changes detected

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

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

Для этой установки структурная контрольная сумма обнаруживает изменения, которые происходят в созданных пользователями зависимостях, которые не заданы с помощью параметра Model dependencies.

If any changes in known dependencies detected

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

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

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

Never

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

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

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

Определения

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

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

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

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

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

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

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

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

Потенциальные целевые зависимости являются файлами и данными, внешними к образцовым файлам и настройкам конфигурации модели, которые 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.

Советы

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

  • Чтобы улучшиться восстанавливают скорость обнаружения и точность, используют параметр 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 не вызывает восстанавливание, потому что никакая известная целевая зависимость не изменилась.

    Если вы перемещаете блок в модель:

    • 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.

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

Похожие темы