Параметры интегрирования

Выбор метода и установка его параметров в SimInTech осуществляется в диалоговом окне «Параметры проекта». Это окно имеет 4 (5 в режиме разработчика) закладок, но только одна из них («Параметры расчёта») имеет отношение к методам интегрирования, а остальные («Вид», «Рестарт» и «Синхронизация»; «Настройка» в режиме разработчика) позволяют устанавливать различные режимы моделирования и отображения схемы проекта, см. рисунок:

Параметры проекта → Параметры расчёта.

При открытии окна «Параметры проекта» активной является закладка «Параметры расчёта», где задаются следующие параметры:

Метод интегрирования intmet. Можно выбрать один из 16 методов (Эйлера, Рунге-Кутты классический, Рунге-Кутты модифицированный, Мерсона классический, Мерсона модифицированный, Адаптивный 1, ..., Адаптивный 5, Адаптивный неявный, Диагонально неявный DIRK2, Гира, Эйлера неявный, DIRK3, DIRK4). По умолчанию установлен метод Эйлера. Метод Эйлера может иметь только фиксированный шаг, а все остальные методы могут использоваться как с фиксированным шагом, так и с автоматическим выбором шага.

Конечное время расчёта endtime.Длительность интервала модельного времени, на котором выполняется моделирование (по умолчанию время не ограничено и задано равным ­1e19).

Минимальный шаг hmin. Этот параметр задает ограничение снизу на шаг интегрирования, и по умолчанию устанавливается равным 0.25. Если значение hmin оказывается недостаточно малым для расчета с заданной точностью, то выдается сообщение «Заданная точность не обеспечивается». В таких случаях следует уменьшить минимальный шаг (задать его 1e-10, 1e-20, 1e-50 ...) либо снизить требования к точности. Задание очень малого значения hmin в большинстве случаев не сказывается заметно на времени счета.

Максимальный шаг hmax. Ограничение сверху на шаг интегрирования, а для метода Эйлера – величина шага (по умолчанию 0.25). Если задать максимальный шаг равным минимальному, то интегрирование будет выполняться с фиксированным шагом. Задание слишком малого значения hmax может привести к неоправданному увеличению времени счета, а задание большого значения hmax в некоторых случаях приводит к уменьшению числа точек, выводимых на график. Рекомендуемое значение максимального шага – endtime/100.

Шаг синхронизации задачи synstep. Приблизительное значение шага вывода результатов в графические окна, при этом реальный шаг вывода всегда будет не меньше шага интегрирования. Точное значение шага вывода будет соблюдаться, если установить табуляцию результатов расчета. Рекомендуется задавать synstep равным максимальному шагу интегрирования, но не менее endtime/1000.

Относительная ошибка (точность) relerr. Допустимая относительная ошибка интегрирования (по умолчанию 0.001). Не следует задавать это значение больше 0.01 или меньше 1e-10.

Дополнительно устанавливаются следующие параметры:

Абсолютная ошибка abserr. Допустимая абсолютная ошибка интегрирования (по умолчанию 1e‑10). Оказывает существенное влияние на выбор величины шага только в тех случаях, когда значения некоторых переменных близки к нулю.

Метод итерации петель loopmet. Метод решения алгебраических уравнений при наличии в системе алгебраических контуров (Простая итерация – по умолчанию, Ньютона-Рафсона, Бройдена (секущих), Без итераций). Выбранный метод используется для расчета начального состояния алгебраических переменных (независимо от метода интегрирования), а также для расчета алгебраических переменных в процессе интегрирования явным методом. В процессе интегрирования неявным методом дифференциальные и алгебраические переменные решаются совместно, поэтому выбор метода итерирования не имеет значения. Наиболее надежным является метод Ньютона-Рафсона, однако в некоторых случаях и другие методы могут иметь преимущество.

Максимальной количество итераций. Максимальное число итераций при решении алгебраических уравнений в одной точке решения (по умолчанию 10). Этот параметр, как и предыдущий, влияет на решение только в тех случаях, когда в системе есть алгебраические контуры.