Анализ модели для анализа производительности
Изучение модели 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Откройте результаты в диалоговом окне «Профилировщик решателя» для их визуализации. Этот шаг эквивалентен включению 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'));
model - Модель для изученияИмя модели, подлежащей профилированию, указанное как символьный вектор.
Пример: h = solverprofiler.profileModel('vdp')
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'StartTime',0,'StopTime',10,'SaveStates','On''SaveStates' - Сохранение состояний модели в файлПо умолчанию профилировщик не сохраняет состояния модели. Включение этого параметра настраивает профилировщик на сохранение состояний в MAT-файл.
Пример: 'SaveStates','On'
'SaveSimscapeStates' - Сохранить состояния Simscape™ в файлЭтот параметр используется для сохранения состояний Simscape в MAT-файле.
Пример: 'SaveSimscapeStates', 'On'
'SaveJacobian' - Сохранить модель ЯкобианОпция для регистрации решающих матриц якобиана в памяти. Эта опция полезна при моделировании с использованием неявных решателей. Сравнение решателей см. в разделе Сравнение решателей.
Пример: 'SaveJacobian', 'On'
'StartTime' - Время начала работы профилировщикаВремя (в секундах) моделирования, в течение которого профилировщик начинает анализ модели. Это не то же самое, что время начала моделирования.
Пример: 'StartTime',5
'StopTime' - Время остановки профилировщикаВремя (в секундах) моделирования, на которое профилировщик должен профилировать модель. По умолчанию анализ продолжается до конца моделирования. При изменении этого параметра не изменяется время остановки модели, указанное в окне Параметры конфигурации модели (Model Configuration Parameters).
Значение, меньшее, чем настроенное время остановки модели, останавливает профилирование и моделирование в StopTime.
Пример: 'StopTime',30
'BufferSize' - Влияние протоколирования на памятьМаксимальное количество зарегистрированных событий. Если количество зарегистрированных событий достигает этого значения и память доступна, увеличьте BufferSize. Если объем памяти ограничен, рекомендуется понизить значение.
Пример: 'BufferSize',60000
'TimeOut' - Максимальное время ожидания возобновления работы решателяВремя (в секундах) ожидания перед остановкой работы профилировщика. Эта опция полезна в ситуациях, когда моделирование не может быть продолжено. Профилировщик ожидает указанного времени и завершает работу, если прогресс не был достигнут.
Пример: 'TimeOut', 10
'OpenSP' - Открытие диалогового окна «Профилировщик решателя»Опция для открытия диалогового окна Профилировщик решателя (Solver Profiler) после завершения профилирования.
Пример: 'OpenSP','On'
'DataFullFile' - Путь и имя сохраненных результатовПо умолчанию результаты профилирования сохраняются в MAT-файле с именем model_@_dd_Month_yyyy_hh_mm_ss.mat в текущей рабочей папке. Можно указать другое имя файла для сохранения результатов в текущей рабочей папке. Чтобы сохранить файл в другом месте, укажите полный путь к файлу, включая имя файла.
Пример: 'DataFullFile','C:\Users\myusername\Documents\profiled\vdp_results.mat'
res - Резюме результатов профилирования на высоком уровнеРезультаты профилирования, возвращенные в виде структуры с полями:
file - Полный путь и имя сохраненных результатовПуть и имя MAT-файла, в котором результаты операции профилирования хранятся как MAT-файл. По умолчанию они хранятся в текущей рабочей папке с именем файла, имеющим шаблон: model_@_dd_Month_yyyy_hh_mm_ss.mat. Чтобы сохранить их в другом месте или под другим именем, укажите DataFullFile при вызове solverprofiler.profileModel.
summary - Резюме результатов профилированияВысокоуровневая сводка результатов операции профилирования, возвращенная в виде структуры. В резюме представлен обзор производительности моделирования и работоспособности модели.
summary структура содержит эти поля.
| Область | Цель | Ценности | Описание |
|---|---|---|---|
solver | Решатель, используемый при моделировании | любой из решателей, поддерживаемых Solver Profiler | Решатель, используемый при моделировании как настроенный в параметрах конфигурации для модели. Список всех решателей см. в разделе Решатель. Профилировщик решателя не поддерживает модели без непрерывных состояний. |
tStart | Время начала моделирования | скаляр | Время начала (в секундах) для моделирования модели во время операции профилирования. |
tStop | Время остановки моделирования | скаляр | Время остановки моделирования во время операции профилирования в секундах. Если StopTime установлено более ранним, чем настроенное время остановки модели, моделирование останавливается на StopTime. |
absTol | Абсолютный допуск решателя | положительный скаляр | Абсолютный допуск решателя, указанный в настройках конфигурации модели. Дополнительные сведения см. в разделе Абсолютный допуск |
relTol | Относительный допуск решателя | положительный скаляр | Относительный допуск решателя, указанный в настройках конфигурации модели. Дополнительные сведения см. в разделе Относительный допуск |
hMax | Максимальный размер шага | положительный скаляр | Самый большой временной шаг, который может сделать решатель. См. раздел Максимальный размер шага. |
hAverage | Средний размер шага | положительный скаляр | Средний размер временного шага, сделанного решателем. |
steps | Всего принятых мер | положительный скаляр | Общее количество шагов времени, выполненных решателем. |
profileTime | Время профилирования | положительный скаляр | Время (в секундах), затраченное профилировщиком решателя на исследование модели. |
zcNumber | Общее число нулевых переходов | неотрицательный скаляр | Количество пересечений нуля во время моделирования модели. Обнаружение этих нулевых пересечений влечет за собой вычислительные затраты и может замедлить моделирование. Сведения об обнаружении пересечения нуля см. в разделе Обнаружение пересечения нуля. |
resetNumber | Количество сбросов решателя | неотрицательный скаляр | Количество раз, когда решатель должен сбросить свои параметры. |
jacobianNumber | Количество обновлений Jacobian | неотрицательный скаляр | Число обновлений матрицы якобиана решателя во время моделирования. Дополнительные сведения см. в разделе Явные и неявные непрерывные решатели. |
exceptionNumber | Количество исключений решателя | неотрицательный скаляр | Общее число исключений решателя, обнаруженных во время моделирования. Эти исключения являются событиями, в которых решатель не может решить состояния модели с заданной точностью. В результате решатель выполняет скорректированные испытания, которые увеличивают вычислительные затраты. |
Типы данных: struct
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.