Общий вопрос об инициализации Modelica - PullRequest
1 голос
/ 09 апреля 2020

Как установить значения для всех переменных, которые могут быть использованы в качестве переменных итерации, например, есть теплообменник, который включает в себя несколько разъемов, и каждый разъем содержит несколько переменных, я не могу знать, какие переменные могли бы использовать в качестве переменных итерации, когда нужно иметь дело с инициализацией, нужно ли устанавливать значения для каждой переменной, чтобы независимо от того, какая переменная была выбрана в качестве переменной итерации, было бы разумное значение?

Ответы [ 2 ]

1 голос
/ 14 апреля 2020

Существует также самый простой способ ответить на ваш вопрос, работая довольно хорошо с текучими моделями. Учитывая тот факт, что вы используете модель Dynami c, вам нужно инициализировать переменные состояния вашей системы. Чтобы узнать переменные состояния, либо вы знаете тип модели, с которой вы работаете, либо вы можете просмотреть их, используя такие опции, как «Список выбранных состояний с непрерывным временем» в Dymola (я не знаю о других инструментах), давая вам переменные состояния в журнале перевода. В моделях с жидкостью в большинстве случаев это давление и энергия (энтальпия или температура). Все остальные переменные будут рассчитываться на их основе.

Для сложных (или нет) моделей этот подход показывает пределы, которые иногда могут быть решены путем изменения / исправления структуры модели.

Stati c модели это что-то другое ...

Надеюсь, что это может помочь:)

1 голос
/ 13 апреля 2020

Marvel,

Я думаю, что вы немного не в том направлении, чтобы найти решение: установка значений для всех переменных, которые могут стать переменными итерации, часто слишком велика и может привести к ошибкам и проблемам , Но я думаю, что я могу дать вам несколько полезных советов в любом случае.

  1. Переменные псевдонима: существует много переменных псевдонимов, модели Modelica. Вы всегда должны пытаться выбрать только один из них, чтобы установить начальные значения.
  2. Обратная связь между начальными значениями и переменными итерации: большинство инструментов Modelica предпочитают выбирать итерационные переменные, для которых установлены начальные значения. Таким образом, выбор меньшего числа может привести алгоритм к выбору хорошего. Поэтому: не переусердствуйте.
  3. Общие рекомендации по выбору переменных итерации. Для чистого ODE состояния всегда будут полным набором начальных переменных, даже если иногда они не самые лучшие. Для DAE вы можете начать со следующего упражнения: думать обо всех уравнениях, возникающих в результате сингулярного возмущения полной физики, как о дифференциальных уравнениях с состояниями. Например, в теплообменнике необходимо учитывать динамический баланс импульсов c, а не наиболее часто используемое сокращение stati c только до потери давления алгебра c, т. Е. Добавлять массовый поток как состояние. Похожи на химические реакции: думайте об этом как о кинетике, а не о равновесных реакциях. Это дает вам довольно хорошую отправную точку, хотя часто и не лучшую.

Если ваши проблемы с этим не решаются, я рекомендую вам связаться с нами через www.modelon.com: у нас есть усовершенствованные способы решения сложных проблем инициализации и устойчивого состояния в нашей Modeli c орудие труда. : -)

...