solverprofiler.profileModel

Исследуйте модель для анализа эффективности

Описание

пример

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 - имя аргумента и 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.

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

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

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

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

Введенный в R2017b