Использование библиотеки жидкостей modelica для эластичных труб

Я хотел бы использовать библиотеку Modelica.Fluid для моделирования потока в кровеносных сосудах, где диаметр сосуда (и, следовательно, сопротивление потоку и объем жидкости) зависит от внутреннего и окружающего давления, а также от управляющих входов. Есть ли способ сделать диаметр и площадь поперечного сечения моделей динамической трубы (и цепочку базовых классов) переменными, а не параметрами, или это "нарушит" основные допущения библиотеки Fluid ? Если бы это было возможно, функции реверсивного потока, потока энтальпии и потока следовых компонентов были бы очень полезны при моделировании физиологических систем - возможности, недоступные в Modelica Physiolibrary.


person fraserwdf    schedule 21.11.2016    source источник
comment
Знаете ли вы о PhysioLibrary? У них есть модели для вен и артерий.   -  person matth    schedule 29.11.2016
comment
Также см. github.com/physiology и fasisomodel.org   -  person matth    schedule 29.11.2016


Ответы (1)


Как правило, в Modelica вы не можете просто изменить параметр на переменную непрерывного времени или привязать параметр к переменной непрерывного времени.

Причина в том, что уравнения, возможно, придется адаптировать к изменениям - с параметром «V» вы можете взаимозаменяемо писать der(V*rho) или V*der(rho), но для переменной непрерывного времени «V» верна только одна из этих формулировок.

Таким образом, в Modelica не должно быть возможности обойти это.

Итак, прямой ответ: нет, выхода быть не должно. Однако возможно было бы переписать DynamicPipe (и некоторые из его базовых классов), чтобы изменить диаметр и т. Д., Чтобы они были переменными непрерывного времени - это может потребовать изменения некоторых уравнений из-за проблемы выше и, по крайней мере, проверки того, что они верный.

DynamicPipe переменного диаметра может быть прямой заменой обычного DynamicPipe - и в большинстве случаев он будет таким же эффективным, как и исходный.

Но я не знаю, сколько это было бы работы.

person Hans Olsson    schedule 21.11.2016
comment
Спасибо за предложения. Я подозревал, что мне придется начать с базовых классов и строить оттуда. - person fraserwdf; 23.11.2016