solverprofiler.profileModel

Исследуйте модель на анализ производительности

Синтаксис

res = solverprofiler.profileModel(model)
res = solverprofiler.profileModel(model, Name,Value)

Описание

пример

res = solverprofiler.profileModel(model) запускает Solver Profiler на заданном model и хранит результаты в res

пример

res = solverprofiler.profileModel(model, Name,Value)задает параметры Solver Profiler с помощью одного или нескольких аргументов пары Name, Value.

Примеры

свернуть все

Исследуйте модель f14 с помощью настроек командной строки по умолчанию.

model = 'f14';
res = solverprofiler.profileModel(model);

Вы видите сводные данные результатов путем вызова res.summary.

res.summary
 struct with fields:

             solver: 'ode45'
             tStart: 0
              tStop: 60
             absTol: 1.0000e-06
             relTol: 1.0000e-04
               hMax: 0.1000
           hAverage: 0.0444
              steps: 1352
        profileTime: 0.9974
           zcNumber: 0
        resetNumber: 600
     jacobianNumber: 0
    exceptionNumber: 195

Откройте результаты в диалоговом окне Solver Profiler, чтобы визуализировать их. Этот шаг эквивалентен включению OpenSP при вызывании функции.

solverprofiler.exploreResult(res)

Исследуйте модель ssc_actuator_custom_pneumatic с полностью заданной настройкой.

model = 'ssc_actuator_custom_pneumatic';
res = solverprofiler.profileModel(model, ...
    'SaveStates' , 'on', ...
    'SaveSimscapeStates' , 'On', ...
    'SaveJacobian' , 'On', ...
    'StartTime' , 5, ...
    'StopTime' , 50, ...
    'BufferSize',  10000,...
    'TimeOut', 5,...
    'OpenSP', 'On',...
    'DataFullFile', fullfile(pwd, 'ssc_profiling_result.mat'));

Входные параметры

свернуть все

Имя модели, которая будет профилироваться, заданная как вектор символов.

Пример: h = solverprofiler.profileModel('vdp')

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'StartTime',0,'StopTime',10,'SaveStates','On'

По умолчанию профилировщик не сохраняет состояния модели. Включение этого параметра конфигурирует профилировщик, чтобы сохранить состояния в MAT-файл.

Пример: 'SaveStates','On'

Позвольте этому параметру сохранить состояния Simscape в MAT-файл.

Пример: 'SaveSimscapeStates', 'On'

Опция, чтобы регистрировать матрицы якобиана решателя к памяти. Эта опция полезна для симуляций, которые используют неявные решатели. Для сравнения решателей смотрите, Сравнивают Решатели.

Пример: 'SaveJacobian', 'On'

Время, в секундах, симуляции, что профилировщик начинает анализировать модель. Это не то же самое как время начала симуляции.

Пример: 'StartTime',5

Время, в секундах, симуляции, к которой профилировщик должен профилировать модель. По умолчанию анализ продолжается до конца симуляции. Изменение этого параметра не изменяет время остановки модели, которую вы задаете в Образцовых Параметрах конфигурации.

Значение меньше, чем сконфигурированное время остановки модели останавливает профилирование и симуляцию в StopTime.

Пример: 'StopTime',30

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

Пример: 'BufferSize',60000

Время, в секундах, чтобы ожидать перед профилировщиком прекращает запускаться. Эта опция полезна в ситуациях, где симуляция не может продолжить. Профилировщик ожидает в течение требуемого времени и выходит, если никакие успехи не были сделаны.

Пример: 'TimeOut', 10

Опция, чтобы открыть диалоговое окно Solver Profiler после профилирования завершилась.

Пример: 'OpenSP','On'

По умолчанию профильные результаты сохранены в MAT-файле под названием model_@_dd_Month_yyyy_hh_mm_ss.mat в текущей рабочей папке. Можно задать различное имя файла, которым можно сохранить результаты в текущей рабочей папке. Чтобы сохранить файл в другом месте, задайте полный путь файла, включая имя файла.

Пример: 'DataFullFile','C:\Users\myusername\Documents\profiled\vdp_results.mat'

Выходные аргументы

свернуть все

Профилирование результатов, возвращенных как структура с полями:

Путь и имя MAT-файла, где результаты профильной операции хранятся как файл MAT. По умолчанию они хранятся в текущей рабочей папке с именем файла, имеющим шаблон: model_@_dd_Month_yyyy_hh_mm_ss.mat. Чтобы сохранить их в другом месте или другим именем, задайте DataFullFile при вызове solverprofiler.profileModel.

Высокоуровневые сводные данные результатов профильной операции, возвращенной как структура. Сводные данные предоставляют обзор производительности симуляции и здоровья модели.

Структура summary содержит эти поля.

Поле ЦельЗначенияОписание
solverРешатель используется симуляциейлюбой из решателей поддержан Solver ProfilerРешатель используется симуляцией, как сконфигурировано в Параметрах конфигурации для модели. Для списка всех решателей смотрите Решатель. Solver Profiler не делает моделей поддержки ни без каких непрерывных состояний.
tStartВремя начала симуляциискалярВремя начала, в секундах, для симуляции модели во время профильной операции.
tStopВремя остановки симуляциискалярВремя остановки, в секундах, симуляции во время профильной операции. Если StopTime собирается быть ранее, чем сконфигурированное Время остановки модели, остановок симуляции в StopTime.
absTolАбсолютный допуск решателяположительная скалярная величинаАбсолютный допуск решателя, как задано в параметрах конфигурации для модели. Для получения дополнительной информации смотрите Абсолютный допуск
relTolОтносительный допуск решателяположительная скалярная величинаОтносительный допуск решателя, как задано в параметрах конфигурации модели. Для получения дополнительной информации смотрите Относительный допуск
hMaxМаксимальный размер шагаположительная скалярная величинаСамый большой временной шаг, который может взять решатель. Смотрите, что Max продвигается размер.
hAverageСредний размер шагаположительная скалярная величинаСредний размер временного шага взят решателем.
stepsСделаны общие шагиположительная скалярная величинаОбщее количество временных шагов взято решателем.
profileTimeВремя, чтобы профилироватьположительная скалярная величинаВремя, в секундах, потраченных Solver Profiler, чтобы исследовать модель.
zcNumberОбщее количество нулевых пересеченийнеотрицательный скалярНулевые пересечения числа раз происходят во время симуляции модели. Обнаружение этих нулевых пересечений несет вычислительные расходы и может замедлить симуляцию. Для получения информации об обнаружении пересечения нулем смотрите Обнаружение Пересечения нулем.
resetNumberКоличество сброса решателянеотрицательный скалярЧисло раз решатель должно сбросить свои параметры.
jacobianNumberКоличество якобиевских обновленийнеотрицательный скалярЧисло раз матрица якобиана решателя обновляется во время симуляции. Для получения дополнительной информации смотрите Явный По сравнению с Неявными Непрерывными Решателями.
exceptionNumberКоличество исключений решателянеотрицательный скалярС общим количеством исключений решателя сталкиваются во время симуляции. Этими исключениями являются события, где решатель не может решить образцовые состояния с заданной точностью. В результате выполнения решателя настроили испытания, которые увеличивают вычислительную стоимость.

Типы данных: struct

Введенный в R2017b