Исследуйте модель на анализ производительности
res = solverprofiler.profileModel(model)res = solverprofiler.profileModel(model, Name,Value)запускает Профилировщика Решателя на заданном res = solverprofiler.profileModel(model) model и хранит результаты в res
задает параметры Профилировщика Решателя с помощью одного или нескольких аргументов пары res = solverprofiler.profileModel(model, Name,Value) 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Откройте результаты в диалоговом окне Профилировщика Решателя, чтобы визуализировать их. Этот шаг эквивалентен включению 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) — соответствующее значение. Имя должно появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
, 0, 'StopTime', 10, 'SaveStates', 'On''SaveStates' — Сохраните образцовые состояния в файлПо умолчанию профилировщик не сохраняет состояния модели. Включение этого параметра конфигурирует профилировщика, чтобы сохранить состояния в MAT-файл.
Пример: 'SaveStates', 'On'
'SaveSimscapeStates' — Сохраните состояния Simscape™ в файлПозвольте этому параметру сохранить состояния Симскэйпа в MAT-файл.
Пример: 'SaveSimscapeStates', 'On'
'SaveJacobian' — Сохраните образцовый якобианОпция, чтобы регистрировать матрицы якобиана решателя к памяти. Эта опция полезна для моделирований, которые используют неявные решатели. Для сравнения решателей смотрите, Сравнивают Решатели.
Пример: 'SaveJacobian', 'On'
Время начала Время начала профилировщикаВремя, в секундах, моделирования, что профилировщик начинает анализировать модель. Это не то же самое как время начала моделирования.
Пример: 'StartTime', 5
'StopTime' — Время остановки профилировщикаВремя, в секундах, моделирования, к которому профилировщик должен профилировать модель. По умолчанию анализ продолжается до конца моделирования. Изменение этого параметра не изменяет время остановки модели, которую вы задаете в Образцовых Параметрах конфигурации.
Значение меньше, чем сконфигурированное время остановки модели останавливает профилирование и моделирование в StopTime.
Пример: 'StopTime', 30
'BufferSize' — Влияние памяти журналированияМаксимальное количество событий, которые регистрируются. Если количество регистрируемых событий достигает этого значения, и память доступна, увеличение BufferSize. Если память ограничивается, рассмотрите понижение значения.
Пример: 'BufferSize', 60000
Тайм-аут Максимальное время, чтобы ожидать решателя, чтобы возобновитьсяВремя, в секундах, чтобы ожидать перед профилировщиком прекращает запускаться. Эта опция полезна в ситуациях, где моделирование не может продолжить. Профилировщик ожидает в течение требуемого времени и выходит, если никакие успехи не были сделаны.
Пример: 'Тайм-аут', 10
'OpenSP' — Откройте диалоговое окно Solver ProfilerОпция, чтобы открыть диалоговое окно 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 содержит эти поля.
| Поле | Цель | Значения | Описание |
|---|---|---|---|
solver | Решатель используется моделированием | любой из решателей поддержан Профилировщиком Решателя | Решатель используется моделированием, как сконфигурировано в Параметрах конфигурации для модели. Для списка всех решателей смотрите Решатель. Профилировщик Решателя не делает моделей поддержки ни без каких непрерывных состояний. |
tStart | Время начала моделирования | скаляр | Время начала, в секундах, для моделирования модели во время профильной операции. |
tStop | Время остановки моделирования | скаляр | Время остановки, в секундах, моделирования во время профильной операции. Если StopTime собирается быть ранее, чем сконфигурированное Время остановки модели, остановок моделирования в StopTime. |
'AbsTol' | Абсолютный допуск решателя | положительный скаляр | Абсолютный допуск решателя, как задано в параметрах конфигурации для модели. Для получения дополнительной информации смотрите Абсолютный допуск |
'RelTol' | Относительный допуск решателя | положительный скаляр | Относительный допуск решателя, как задано в параметрах конфигурации модели. Для получения дополнительной информации смотрите Относительный допуск |
hMax | Максимальный размер шага | положительный скаляр | Самый большой временной шаг, который может взять решатель. Смотрите, что Max продвигается размер. |
hAverage | Средний размер шага | положительный скаляр | Средний размер временного шага взят решателем. |
steps | Сделаны общие шаги | положительный скаляр | Общее количество временных шагов взято решателем. |
profileTime | Время, чтобы профилировать | положительный скаляр | Время, в секундах, потраченных Профилировщиком Решателя, чтобы исследовать модель. |
zcNumber | Общее количество нулевых пересечений | неотрицательный скаляр | Нулевые пересечения числа раз происходят во время моделирования модели. Обнаружение этих нулевых пересечений несет вычислительные расходы и может замедлить моделирование. Для получения информации об обнаружении пересечения нулем смотрите Обнаружение Пересечения нулем. |
resetNumber | Количество сброса решателя | неотрицательный скаляр | Число раз решатель должно сбросить свои параметры. |
jacobianNumber | Количество якобиевских обновлений | неотрицательный скаляр | Число раз матрица якобиана решателя обновляется во время моделирования. Для получения дополнительной информации смотрите Явный По сравнению с Неявными Непрерывными Решателями. |
exceptionNumber | Количество исключений решателя | неотрицательный скаляр | С общим количеством исключений решателя сталкиваются во время моделирования. Этими исключениями являются события, где решатель не может решить образцовые состояния с заданной точностью. В результате выполнения решателя настроили испытания, которые увеличивают вычислительную стоимость. |
Типы данных: struct
Исследуйте образцовую динамику Используя профилировщика решателя | Поймите профильные результаты
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.