Окружение физических сетей и строение решателя
Утилиты
Каждая физическая сеть, представленная подключенной Simscape™ блоком, требует информации о настройках решателя для симуляции. Блок Solver Configuration задает параметры решателя, которые необходимы вашей модели, прежде чем вы сможете начать симуляцию.
Каждая топологически отличная блок-схема Simscape требует, чтобы к ней был подключен ровно один Solver Configuration блок.
Блок имеет один порт сохранения. Можно добавить этот блок где угодно на схеме физической сети путем создания точки ветви и соединения его с единственным портом блока Solver Configuration.
Когда этот блок выбран, решатель пытается найти устойчивое состояние, которое приведет к тому, что входы в систему будут удерживаться постоянными в течение достаточно большого времени, начиная с начального состояния, полученного при расчете начальных условий. Для получения дополнительной информации см. «Расчет начальных условий». Симуляция начинается с этого устойчивого состояния.
Для моделей, совместимых с частотно-временной формулировкой уравнения, при выборе этого флажка решатель пытается выполнить синусоидальную установившуюся инициализацию. Другими словами, инициализация выполняется с использованием частотно-временных уравнений, и затем симуляция продолжается с использованием фактической формулировки уравнения и других опций, выбранных в блоке Solver Configuration. Для получения дополнительной информации смотрите Частотный и Временной Режим Симуляции.
Примечание
Использование опции Initial state на панели Data Import/Export диалогового окна Параметры конфигурации переопределяет опцию Start simulation from steady state.
Этот параметр влияет на нелинейный решатель, используемый для вычисления начальных условий и для переходной инициализации. Это определяет, насколько точно алгебраические ограничения должны выполняться в начале симуляции и после каждого дискретного события (для примера, разрыв, возникающий в результате открытия клапана, жёсткого упора и так далее). Уменьшите значение параметров (то есть ужесточите допуск), чтобы получить более надежную симуляцию времени. Увеличьте значение параметров (то есть расслабьте допуск), если решение для начальных условий не удалось сходиться, или чтобы уменьшить время расчета.
Значение по умолчанию 1e-9
, что применимо к большинству случаев.
Позволяет использовать локальный решатель на основе сэмплирования с шагом расчета, заданным параметром Sample time. В симуляции на основе выборки все состояния Физической Сети, которые в противном случае непрерывны, становятся представленными Simulink® как дискретные состояния. Решатель обновляет состояния один раз в раз за временной шаг. Эта опция особенно полезна для сгенерированных кодов или оборудования в цикле (HIL).
Примечание
Если вы используете локальный решатель, одновременное использование инструментов Simulink или Simulink Control Design™ линеаризации не рекомендуется.
Выберите тип решателя, используемый для обновления состояний: Backward Euler
, Trapezoidal Rule
, или Partitioning
. Необходимо установить флажок Use local solver. Значение по умолчанию является Backward Euler
.
Задайте шаг расчета для локального решателя. Необходимо установить флажок Use local solver. Этот шаг расчета должен быть положительным. Значение по умолчанию является .001
с.
Выберите для приоритета скорость или робастность при использовании локального решателя разбиения:
Robust simulation
- Увеличение сходимости моделирования.
Fast simulation
- Улучшите эффективность симуляции.
Необходимо установить флажок Use local solver и установить для Solver type значение Partitioning
. Значение по умолчанию является Robust simulation
.
Когда вы используете решатель Разбиения, он решает маленькие коммутируемые линейные уравнения последовательно. Можно принять решение хранить обратные матрицы, улучшить симуляцию эффективности. Затем, если то же строение обнаружено в последующем временном шаге, решатель разбиения использует сохраненные обратные матрицы, вместо перевычисления. Выберите метод, используемый для хранения данных разбиения:
As needed
- Вычисление обратной матрицы во время симуляции, по мере необходимости. Этот метод не требует столько памяти, но может привести к скачкам эффективности.
Exhaustive
- Вычислите и сохраните обратных матриц перед симуляцией. Этот метод улучшает эффективность симуляции, но требует большей памяти. Используйте Partition memory budget [kB] параметра, чтобы задать максимально допустимый бюджет памяти для хранения данных.
Необходимо установить флажок Use local solver и установить для Solver type значение Partitioning
. Значение по умолчанию является As needed
.
Укажите максимальный бюджет памяти в кБ, разрешенный для хранения кэшированных данных о разделах. Для метода Partition storage method необходимо задать значение Exhaustive
. Значение по умолчанию является 1024
кБ. Если этот бюджет превышен, ошибки симуляции исчезают. Вы можете настроить это значение на основе имеющихся ресурсов памяти и данных о Total memory estimate в Statistics Viewer. Для получения дополнительной информации смотрите Доступная статистика модели при использовании решателя секционирования.
Позволяет вам выполнить временную инициализацию с фиксированной вычислительной стоимостью.
Если установить этот флажок, можно задать количество нелинейных и модовых итераций для переходной инициализации. Если система не сходится после выполнения заданного количества итераций, она игнорирует отказ и переходит к следующему шагу.
Если вы снимаете флажок, система использует более надежный и длительный алгоритм, выполняя столько итераций, сколько необходимо для достижения сходимости, и ошибок, если он не достигает сходимости во время переходной инициализации.
Задайте количество итераций Ньютона, которые будут выполняться во время переходной инициализации. Необходимо установить флажок Use fixed-cost runtime consistency iterations. Число по умолчанию 3
.
Задайте количество итераций режима, которые будут выполняться во время переходной инициализации. Необходимо установить флажок Use fixed-cost runtime consistency iterations. Число по умолчанию 2
.
При использовании локальных решателей выполняется только одно обновление основного режима на шаг, поэтому этот параметр недоступен, если установлен флажок Use local solver.
Позволяет управлять вычислительными затратами на обнаружение импульсов во время переходной инициализации как для глобальных, так и для локальных решателей. Этот флажок становится доступным, когда установлен флажок Use fixed-cost runtime consistency iterations.
Основанные на событиях методы повторной инициализации состояния и обработки импульсов позволяют моделировать физические явления, такие как столкновения и прыгающие мячи, и обеспечивают значительное увеличение скорости симуляции для таких моделей. Однако обнаружение импульса может добавить стоимость переходной инициализации. Эта стоимость пропорциональна количеству итераций импульса, выполненных для достижения сходимости.
Если установлен флажок Compute impulses, можно задать количество итераций импульса, которые должны выполняться во время переходной инициализации. Если система не сходится при достижении этих чисел, она игнорирует отказ и переходит к следующему шагу.
Если снять флажок, система вычисляет импульсы столько раз, сколько необходимо для достижения сходимости.
Задайте количество итераций импульса во время переходной инициализации. Необходимо установить флажок Compute impulses. Число по умолчанию 2
.
Определяет, как решатель обрабатывает матрицы. Параметр может иметь одно из трех значений: auto
, Sparse
, или Full
. Значение по умолчанию параметра auto
. С помощью этой настройки решатель автоматически выбирает соответствующую опцию, разреженную или полную для обработки матриц.
Ваш выбор этого значения параметров реализован как в симуляции модели, так и в коде, сгенерированном из вашей модели.
Задает, как решатель обрабатывает синусоидальные переменные. Параметр может иметь одно из двух значений: Time
или Frequency and time
. Значение по умолчанию параметра Time
.
Используйте Frequency and time
значение для ускорения симуляции систем с одной номинальной частотой. Для получения дополнительной информации смотрите Частотный и Временной Режим Симуляции.
Укажите максимальный бюджет памяти в кБ, допустимый для обработки задержек при симуляции моделей, которые содержат или блоки из библиотеки Delays, или пользовательские блоки, использующие delay
Языковые конструкции Simscape. Цель этого параметра - защитить от чрезмерных замен памяти. Если этот бюджет превышен, ошибки симуляции исчезают. Вы можете настроить это значение на основе имеющихся ресурсов памяти. Число по умолчанию 1024
кБ.
Эта опция применима только к моделям, которые соединяют блоки из библиотеки Simscape Multibody™ Second Generation с блоками Simscape или блоками из других дополнительных продуктов. Используйте Statistics Viewer, чтобы определить, имеют ли ваша модель 1-D/3-D соединения. Для получения дополнительной информации см. раздел 1-D/3-D статистики интерфейсов.
Когда блок Simscape Multibody соединяется непосредственно с сетью Simscape, для решения сети может потребоваться дополнительная производная. Когда вы устанавливаете этот флажок, решатель автоматически применяет входную фильтрацию к сигналу, входящему в блок Simulink-PS Converter, чтобы получить эту дополнительную производную. Параметр Filtering time constant обеспечивает постоянную времени для задержки.
Примечание
Этот флажок установлен по умолчанию. Если вы очистите его, и 1-D/3-D соединение требует дополнительной производной, решатель выдает сообщение об ошибке.
Этот параметр задает временную константу фильтрации, для которой установлен флажок Apply filtering at 1-D/3-D connections when needed. Это значение параметров применяется глобально ко всем соединениям, принадлежащим к сети, которая включает этот Solver Configuration блок. Значение по умолчанию 0.001
с.