Моделируя модели с dymola, я получаю разные результаты в зависимости от выбранного метода интеграции. Итак, мой вопрос: зачем выбирать какой метод?
Димола: зачем выбирать, какой метод интеграции
Ответы (2)
В идеале выбор метода должен основываться на том, какой из них наиболее быстро дает результат, достаточно близкий к точному.
Но мы не знаем точного результата, и в этом случае по крайней мере некоторые из решателей (вероятно, все) не генерируют результат, достаточно близкий к нему.
Одна из возможностей - сначала попытаться смоделировать с более жесткими допусками, например 1e-9. (Примечание: для решателей с фиксированным размером шага, Эйлера и Rkfix * это будет меньший размер шага, но не начинайте их использовать.)
Надеюсь, разница между решателями уменьшится, и разные решатели будут давать более похожие результаты (которые должны быть близки к точному).
Тогда вы всегда можете использовать этот более строгий допуск. Или в случае, если один решатель уже дал тот же результат с менее строгим допуском - тогда вы можете использовать его с менее строгим допуском; но вы также должны найти компромисс между точностью и временем моделирования.
Иногда этого не происходит, и даже один и тот же решатель дает разные результаты для разных допусков; не приближаясь к истинному решению. (Предполагается, что вначале решения близки друг к другу, но затем быстро расходятся.) В этом случае вполне вероятно, что модель является хаотической. С этим немного сложнее справиться, и есть несколько вариантов:
- Это могло произойти из-за ошибки моделирования, которую можно исправить.
- Возможно, модель верна, но систему можно изменить, чтобы сделать ее более плавной.
- Может случиться так, что важные результаты сходятся независимо от различий в других переменных.
Это также может быть какая-то другая ошибка (включая проблемы во время инициализации), но для исследования требуется более полный пример.