Идентифицируйте узкие места производительности решателя

Откройте Solver Profiler путем нажатия на гиперссылку в нижнем правом углу Редактора Simulink®.

States & Zero Crossing — Сохраните состояния модели в файлПо умолчанию профилировщик не сохраняет состояния модели. Включение этого параметра конфигурирует профилировщик, чтобы сохранить состояния в MAT-файл.
Simscape States — Сохраните состояния Simscape™ в файлПозвольте этому параметру сохранить состояния Simscape в файл.
Model Jacobian — Сохраните якобиан моделиОпция, чтобы регистрировать матрицы якобиана решателя к памяти. Эта опция полезна для симуляций, которые используют неявные решатели. Для сравнения решателей смотрите, Сравнивают Решатели.
Для более подробного объяснения якобиана решателя смотрите, Выбирают Jacobian Method для Неявного Решателя.
From — Время начала профилировщикаВремя, в секундах, симуляции, что профилировщик начинает анализировать модель. Это не то же самое как время начала симуляции.
To — Время остановки профилировщикаВремя, в секундах, симуляции, к которой профилировщик должен профилировать модель. По умолчанию анализ продолжается до конца симуляции. Изменение этого параметра не изменяет время остановки модели, которую вы задаете в Параметрах конфигурации Модели.
Значение меньше, чем сконфигурированное время остановки модели останавливает профилирование и симуляцию в StopTime.
Buffer — Удар памяти логгированияМаксимальное количество событий, которые регистрируются. Если количество регистрируемых событий достигает этого значения, и память доступна, увеличение BufferSize. Если память ограничивается, рассмотрите понижение значения.
Solver Exception — Покажите события исключения решателяПозвольте этому параметру подсветить события исключения решателя в графике Размера Шага Solver Profiler.
Solver Reset — Покажите события сброса решателяПозвольте этому параметру подсветить события сброса решателя в графике Размера Шага Solver Profiler.
Zero Crossing — Покажите нулевые события пересеченияПозвольте этому параметру подсветить нулевые события пересечения в графике Размера Шага Solver Profiler.
Jacobian Update — Покажите якобиевские события обновленияПозвольте этому параметру подсветить якобиевские события обновления в графике Размера Шага Solver Profiler.
Rule Customization — Измените пороги для правил профилировщикаНажмите Rule Customization в Solver Profiler, чтобы получить доступ к набору правила. Можно изменить пороги для большинства этих правил и также выбрать, какие правила вы хотите применить выборочно во время запущенной симуляции.
Чтобы изменить правило, включите его индивидуальную настройку и затем введите желаемое пороговое значение.

Можно заменить настройки на диалоговом окне Rule Set путем определения набора пользовательского правила.
Создайте набор правила как скрипт MATLAB® и задайте путь к скрипту в разделе Custom Rule Set диалогового окна Rule Set.
Простое правило установило взгляды в качестве примера можно следующим образом:
function diagnosticsString = customRule(profilerData)
if isempty(profilerData.zcEvents)
diagnosticsString{1} = 'No zero crossing event detected.';
else
diagnosticsString{1} = 'Zero-crossing events detected.';
end
endprofilerData. Этот массив структур организует всю информацию, которую Solver Profiler собирает во время запущенного профилирования. Это содержит следующие подструктуры.
| Подструктура | Поля |
|---|---|
stateInfo: Хранит информацию на состояниях блока |
|
blockInfo: Перекрестная ссылка блоков и удостоверений личности штата |
|
zcSrcInfo: Хранит информацию на блоках, вызывающих нулевые события пересечения |
|
zcEvents: Перекрестная ссылка меток времени нулевых событий пересечения и соответствующих удостоверений личности штата |
|
exceptionEvents: Перекрестная ссылка меток времени события исключения, ID соответствующего состояния, которое вызвало событие и причину. |
|
resetTime: Метки времени хранилищ сброса решателя. | 'none' |
tout: Времена симуляции хранилищ. | 'none' |
Типы данных: double
Проводник состояний | Нулевой проводник пересечения | solverprofiler.profileModel