Разъемы ввода / вывода, приводящие к несбалансированности модели Modelica - PullRequest
2 голосов
/ 04 марта 2020

Я строю собственную модель флюида, которая в конечном итоге учитывает трехмерную скорость. Я разработал уравнения таким образом, чтобы модель работала со следующими граничными условиями:

  pressure_out = 500000;
  hin=3000e3;
   mdot[1] = 66.3;

В этом случае все давление на входе, энтальпия на выходе и массовый расход на выходе должны быть рассчитаны с помощью модели. Затем я вставил выходной разъем (стандартный порт жидкости Modelica с именем Outlet):

     Outlet.m_flow + mdot[3]=0;
     Outlet.p = pressure_out;
     Outlet.h_outflow = hout;

и соответственно удалил граничное условие для Pressure_out, чтобы:

  hin=3000e3;
  mdot[1] = 66.3;

, и модель по-прежнему сбалансировано. Однако, как только я добавляю входной соединитель и устанавливаю его соединения:

     Inlet.m_flow =mdot[1];
     Inlet.p = pressure_in;
     Inlet.h_outflow = hin;

я удаляю граничные условия, потому что модель должна быть способной получать информацию о давлении, массовом расходе и энтальпия. Однако, когда я удаляю свои граничные условия, модель полагает, что мне не хватает уравнения. Я не могу за свою жизнь понять, что делать. Если я повторно добавлю в любое из начальных граничных условий, модель ломается, потому что граница переопределена в единственном числе. В итоге,

 pout = 500000; replaced by  Outlet.p = pout;
 hout = states[2].h; add Outlet.h_outflow = hout;
 p[1] = pin; add Inlet.p = pin;
 hin=3000e3; replaced by Inlet.h_outflow = hin;
 mdot[1] = 66.3; replaced by Inlet.m_flow = mdot[1];

Я пытался использовать inStream для переменных потока, я пытался обойти свои внутренние переменные, и я пробовал каждый порт по одному за раз. Входной порт несчастен, и я в недоумении, почему это так.

1 Ответ

2 голосов
/ 05 марта 2020

Как вы сами указываете, проблема заключается в использовании stream разъемов. При использовании в модели коннекторов stream она всегда должна предоставлять значение исходящей переменной stream для каждого коннектора. То есть в вашем случае вам нужно выражение исходящей энтальпии каждого соединителя.

Эта страница Wiki Github может быть вам полезна

С уважением,

Рене Джаст Нильсен

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