Изменение размера временного шага не влияет на результаты моделирования в Dymola. - PullRequest
2 голосов
/ 14 июля 2020

Я работаю над моделью накопителя горячей воды, разработанной в библиотеке Buildings Modelica. Используя Dymola для моделирования модели Дассла, я изменил временной шаг моделирования с 1 с до 1200 с, но я не заметил никаких изменений в результате моделирования. Это что-то связано с решателем? Буду признателен, если вы поможете.

1 Ответ

5 голосов
/ 14 июля 2020

Первое мое предположение: под «временным шагом» вы имеете в виду «длину интервала», показанную на скриншоте ниже.

Настройка моделирования Dymola

Если это так, это абсолютно правильное поведение. «Интервал вывода» не зависит от самого моделирования. Решатели с переменным шагом, такие как DASSL, сами выбирают размер шага и интерполируют выходные данные из вычисленных точек, которые, вероятно, вычисляются в разные моменты времени. Вы можете проверить шаги, предпринятые решателем, с помощью функции «Анализ моделирования» в Dymola.

Если вы хотите повлиять на фактические шаги, предпринимаемые решателем, у вас есть другие возможности:

  1. Измените «Допуск», также показанный на скриншоте. Меньший допуск, вероятно, приведет к меньшим шагам и, следовательно, к большей точности, а также к снижению производительности, и наоборот.
  2. Есть пара переменных, которые напрямую влияют на размер шага:
    • Advanced.Simulation.StepSizeMax ограничивает верхнюю границу или размер шага
    • Advanced.Simulation.StepSizeMin ограничивает нижнюю границу или размер шага
    • Advanced.Simulation.StepSizeStart устанавливает начальный размер шага

Будьте осторожны с расширенными переменными, поскольку они могут влиять на производительность и стабильность. Боковое примечание: "Длина интервала / Количество интервалов" может оказывать некоторое влияние на результат моделирования, поскольку DASSL учитывает этот параметр при выборе своего начального размера шага. Но этот эффект может исчезнуть sh в зависимости от динамики.

...