Определение узких мест производительности решателя
Откройте профилировщик решателя, щелкнув гиперссылку в правом нижнем углу редактора Simulink ®.

Continuous States - Сохранение состояний модели в файлПо умолчанию профилировщик не сохраняет состояния модели. Включение этого параметра настраивает профилировщик на сохранение состояний в MAT-файле данных профилировщика.
Simscape States - Сохранить состояния Simscape™ в файлЭтот параметр используется для сохранения состояний Simscape в MAT-файле данных профилировщика.
Zero Crossing - Сохранение данных пересечения нулей в файлВключить этот параметр для сохранения информации о пересечении нулей в MAT-файле данных профилировщика
Model Jacobian - Сохранить модель ЯкобианОпция для регистрации решающих матриц якобиана в памяти. Эта опция полезна при моделировании с использованием неявных решателей. Сравнение решателей см. в разделе Сравнение решателей.
Более подробное описание решателя Jacobian см. в разделе Выбор метода Jacobian для неявного решателя.
Simscape Stiffness - Анализ жесткости журнала состояний SimscapeЭтот параметр используется для регистрации анализа жесткости состояний Simscape в MAT-файле данных профилировщика. Дополнительные сведения о представлении в Simscape концепций жесткости и других физических систем см. в разделе Как модели Simscape представляют физические системы (Simscape)
From - Время начала работы профилировщикаВремя (в секундах) моделирования, в течение которого профилировщик начинает анализ модели. Это не то же самое, что время начала моделирования.
To - Время остановки профилировщикаВремя (в секундах) моделирования, на которое профилировщик должен профилировать модель. По умолчанию анализ продолжается до конца моделирования. При изменении этого параметра не изменяется время остановки модели, указанное в окне Параметры конфигурации модели (Model Configuration Parameters).
Значение, меньшее, чем настроенное время остановки модели, останавливает профилирование и моделирование в StopTime.
Buffer - Влияние протоколирования на памятьМаксимальное количество зарегистрированных событий. Если количество зарегистрированных событий достигает этого значения и память доступна, увеличьте BufferSize. Если объем памяти ограничен, рекомендуется понизить значение.
Solver Exception - Показать события исключения решателяВключите этот параметр, чтобы выделить события исключения решателя на графике Размер шага (Step Size) профилировщика решателя.
Solver Reset - Показать события сброса решателяЭтот параметр используется для выделения событий сброса решателя на графике Размер шага (Step Size) профилировщика решателя.
Zero Crossing - Показать события пересечения нуляЭтот параметр используется для выделения событий пересечения нулей на графике Размер шага (Step Size) профилировщика решателя.
Jacobian Update - Показать события обновления JacobianЭтот параметр используется для выделения событий обновления Jacobian на графике Размер шага (Step Size) профилировщика решателя.
Rule Customization - Изменение пороговых значений для правил профилировщикаЩелкните Настройка правила (Rule Customization) в профилировщике решателя, чтобы получить доступ к набору правил. Можно изменить пороговые значения для большинства из этих правил, а также выбрать правила, которые необходимо применять выборочно во время прогона моделирования.
Чтобы изменить правило, включите его настройку и введите требуемое пороговое значение.

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