отладить структурно сингулярные и минимизировать нелинейность моделей Modelica - PullRequest
4 голосов
/ 01 апреля 2020

Я строю модель Modelica, но при проверке модели ( Вот ссылка для скачивания модели ), она показывает локальную особенность, как на следующем скриншоте. enter image description here

, поэтому я удаляю код, показанный в сообщении об ошибке.

h[3]=(hout+hl)/2

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

enter image description here enter image description here

Поэтому я пытаюсь удалить следующую строку кода:

h[1]=(hin+hv)/2

и модель не только проверяет, но и не вызывает проблем инициализации.

enter image description here

Мои вопросы:

  1. При отладке сингулярности модели сообщение об ошибке, показанное Димолой, может быть не источником сингулярности модели? Есть ли общий способ найти источник проблемы сингулярности? Или я должен анализировать уравнения в модели вручную?
  2. Как минимизировать нелинейность модели Modelica и обеспечить сходимость? Я обнаружил, что эта проблема существует во многих областях, особенно в термогидравлических моделях c, и обнаружил, что одним из способов решения этой проблемы является способ, используемый в Thermao Power Library от Modelon и ThermoSysPro для EDF , эти две библиотеки делят модели или разъемы на два типа: поток и объем. Для обеспечения конвергенции необходимо использовать схему смещенной сетки, как показано на следующем снимке экрана.

    Так есть ли другой способ решения проблемы нелинейности в моделях термогидравлики c? Есть ли общее мнение о том, как решить проблему нелинейности в моделях термогидравлики c?

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...