Первое мое предположение: под «временным шагом» вы имеете в виду «длину интервала», показанную на скриншоте ниже.
Настройка моделирования Dymola
Если это так, это абсолютно правильное поведение. «Интервал вывода» не зависит от самого моделирования. Решатели с переменным шагом, такие как DASSL, сами выбирают размер шага и интерполируют выходные данные из вычисленных точек, которые, вероятно, вычисляются в разные моменты времени. Вы можете проверить шаги, предпринятые решателем, с помощью функции «Анализ моделирования» в Dymola.
Если вы хотите повлиять на фактические шаги, предпринимаемые решателем, у вас есть другие возможности:
- Измените «Допуск», также показанный на скриншоте. Меньший допуск, вероятно, приведет к меньшим шагам и, следовательно, к большей точности, а также к снижению производительности, и наоборот.
- Есть пара переменных, которые напрямую влияют на размер шага:
Advanced.Simulation.StepSizeMax
ограничивает верхнюю границу или размер шага Advanced.Simulation.StepSizeMin
ограничивает нижнюю границу или размер шага Advanced.Simulation.StepSizeStart
устанавливает начальный размер шага
Будьте осторожны с расширенными переменными, поскольку они могут влиять на производительность и стабильность. Боковое примечание: "Длина интервала / Количество интервалов" может оказывать некоторое влияние на результат моделирования, поскольку DASSL учитывает этот параметр при выборе своего начального размера шага. Но этот эффект может исчезнуть sh в зависимости от динамики.