Документация Engee

Solver Configuration

Конфигурация решателя и окружения для физической сети.

solver configuration

Описание

Каждая физическая сеть в модели Engee требует информацию о настройках решателя для симуляции. Блок Solver Configuration задает параметры решателя, которые будут применены к физической сети.

Каждая топологически отдельная сеть требует, чтобы к ней был подключен один и только один блок Solver Configuration.

Порты

Ненаправленные

# Port_1 — порт подключения
нетипизированный порт

Details

Этот порт не имеет типа. Вы можете подключить его в любом месте физической сети, создав точку ответвления на линии соединения между портами любого типа. Блок обеспечивает настройку решателя для всей физической сети, независимо от типа соединения.

Имя для программного использования

Port

Параметры

Поведение блока при включенном параметре Experimental settings не гарантируется и не описывается в документации.

Main

# Synchronization type — тип синхронизации физической сети с объемлющей моделью
Continuous | Discrete

Details

Тип синхронизации физической сети с объемлющей моделью. Задается как:

  • Continuous

  • Discrete

Дополнительные сведения см.в Локальные решатели для физических сетей.

Значение по умолчанию

Continuous

Имя для программного использования

SynchronizationType

# Solver type — тип решателя, используемый для решения уравнений физической сети
Inherit global | Fixed-step | Variable-step

Details

Задает тип решателя, используемый для решения уравнений физической сети.

Зависимости

ЧТобы использовать этот параметр, установите для параметра Synchronization type значение Continuous.

Значение по умолчанию

Variable-step

Имя для программного использования

SolverType

# Subsystem solver — имя решателя для использования с непрерывной синхронизацией
FBDF | ImplicitEuler | QNDF | QBDF | RadauIIA5 | Rodas3 | Rodas4 | Rodas5 | Rodas5P | Trapezoid

Details

Имя решателя для использования с непрерывной синхронизацией для физической сети. Задается как:

  • FBDF

  • ImplicitEuler

  • QNDF

  • QBDF

  • RadauIIA5

  • Rodas3

  • Rodas4

  • Rodas5

  • Rodas5P

  • Trapezoid

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous.

Значение по умолчанию

Rodas4

Имя для программного использования

SolverBasic

# Subsystem solver — имя решателя для использования с дискретной синхронизацией
ImplicitEuler (Fast) | ImplicitEuler (Robust) | Trapezoid (Fast) | Trapezoid (Robust)

Details

Имя решателя для использования с дискретной синхронизацией для физической сети. Задается как:

  • ImplicitEuler (Fast)

  • ImplicitEuler (Robust)

  • Trapezoid (Fast)

  • Trapezoid (Robust)

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Discrete.

Значение по умолчанию

ImplicitEuler (Fast)

Имя для программного использования

SolverDiscreteChoice

# Fixed step size — размер шага интегрирования
Строка

Details

Размер шага интегрирования локального решателя для физической сети в режиме непрерывной синхронизации.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Fixed-step.

Значение по умолчанию

auto

Имя для программного использования

FixedStepSize

# Initial step size — начальный размер шага интегрирования
Строка

Details

Начальный размер шага интегрирования локального решателя для физической сети в режиме непрерывной синхронизации.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Variable-step.

Значение по умолчанию

auto

Имя для программного использования

InitialStepSize

# Minimum step size — минимальный размер шага интегрирования
Строка

Details

Минимальный размер шага интегрирования локального решателя для физической сети в режиме непрерывной синхронизации.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Variable-step.

Значение по умолчанию

auto

Имя для программного использования

MinimumStepSize

# Maximum step size — максимальный размер шага интегрирования
Строка

Details

Максимальный размер шага интегрирования локального решателя для физической сети в режиме непрерывной синхронизации.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Variable-step.

Значение по умолчанию

auto

Имя для программного использования

MaximumStepSize

# Number of consecutive min steps — предельное количество последовательных минимальных шагов интегрирования
Строка

Details

Количество последовательных шагов интегрирования, меньших или равных минимально допустимому размеру шага, приводящих к принудительному завершению расчёта с выдачей сообщения об ошибке.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Variable-step.

Значение по умолчанию

10

Имя для программного использования

MaxConsecutiveMinStep

# Absolute tolerance — абсолютная точность
Строка

Details

Вместе с относительной точностью влияют на близость численного и точного решений. Если переменная в физической сети по модулю меньше этой уставки, оценка локальной ошибки для этой переменной считается нулевой.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Variable-step.

Значение по умолчанию

auto

Имя для программного использования

AbsoluteTolerance

# Relative tolerance — относительная точность
Строка

Details

Вместе с абсолютной точностью влияют на близость численного и точного решений. Относительная точность определяет допустимую локальную ошибку относительно самого значения переменной в физической сети.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous и для Solver type значение Variable-step.

Значение по умолчанию

auto

Имя для программного использования

RelativeTolerance

# Nonlinear iterations — максимальное количество итераций нелинейного решателя
Строка

Details

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

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Discrete и для Subsystem solver значение ImplicitEuler (Fast) или Trapezoid (Fast).

Значение по умолчанию

10

Имя для программного использования

NonlinearIterations

# Start simulation from steady state — запуск симуляции в переходном или установившемся режиме
Логический тип

Details

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

Когда вы устанавливаете этот флажок, Engee пытается найти установившийся режим, к которому пришла бы физическая сеть, если бы сигналы на её входе оставались постоянными в течение достаточно большого времени (настраивается отдельно). Затем симуляция начинается с найденного установившегося режима.

Значение по умолчанию

false (выключено)

Имя для программного использования

StartFromSteadyState

# Maximum settling time — предельное модельное время поиска установившегося режима
Строка

Details

Предельное модельное время, до которого выполняется попытка поиска установившегося режима.

Зависимости

Чтобы использовать этот параметр, установите флажок параметра Start simulation from steady state.

Значение по умолчанию

1000.0

Имя для программного использования

MaximumSettlingTime

# Use automatic differentiation (ForwardDiff.jl) — использовать автоматическое дифференцирование или конечные разности при вычислении матрицы Якоби
Логический тип

Details

Установите этот флажок, чтобы использовать автоматическое дифференцирование при вычислении матрицы Якоби. Иначе будут использоваться конечные разности.

Значение по умолчанию

true (включено)

Имя для программного использования

AutomaticDifferentiation

# Use analytical Jacobian — использовать в расчетах аналитически полученную матрицу Якоби
Логический тип

Details

Установите этот флажок, чтобы использовать в расчетах аналитически полученную матрицу Якоби. Иначе она будет рассчитываться численно.

Значение по умолчанию

false (выключено)

Имя для программного использования

AnalyticalJacobian

# Sparse Jacobian — хранение матрицы Якоби в разреженном виде
Логический тип

Details

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

Значение по умолчанию

false (выключено)

Имя для программного использования

SparseJacobian

# Event detection — Режим обнаружения событий в физической сети
Enable | Expose discontinuities to solver | Disable

Details

Режим обнаружения событий в физической сети. Задается как:

  • Enable (рекомендуется) - режим, при котором события локализуются специальным алгоритмом.

  • Expose discontinuities to solver - режим, при котором решается задача с разрывной правой частью.

  • Disable - режим, при котором события не локализуются, но разрывы все еще маскируются от непрерывного решателя.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous.

Значение по умолчанию

Enable

Имя для программного использования

EventDetection

# Run-time assertions — выполнение проверок физических инвариантов в процессе симуляции
Логический тип

Details

Установите этот флажок, чтобы включить выполнение проверок физических инвариантов в процессе симуляции.

Значение по умолчанию

false (выключено)

Имя для программного использования

RunTimeAssertions

# Sample time — интервал дискретизации физической сети
SampleTime (вещественное число / вектор из двух вещественных чисел)

Details

Определяет моменты времени, в которые происходит дискретизация входов и выходов физической сети.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Discrete.

Значение по умолчанию

0.001

Имя для программного использования

SampleTime

# Synchronization Interval — интервал синхронизации локального решателя физической сети с решателем объемлющей модели
SampleTime (вещественное число / вектор из двух вещественных чисел)

Details

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

Дополнительные сведения о настройке решателя см.в Локальные решатели для физических сетей.

Зависимости

Чтобы использовать этот параметр, установите для параметра Synchronization type значение Continuous.

Значение по умолчанию

0.001

Имя для программного использования

SynchronizationInterval

Initialization

# Enable experimental DAE initialization algorithm — использование экспериментального алгоритма инициализации дифференциально-алгебраических систем уравнений
Логический тип

Details

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

Значение по умолчанию

true (включено)

Имя для программного использования

InitializationEnabled