调试 Modelica 模型的结构奇异并最小化非线性

Mar*_*vel 11 modelica dymola

我构建了一个 Modelica 模型,但是在检查模型时(这是模型下载链接),它显示了一个局部奇点,如下面的屏幕截图所示。 在此处输入图片说明

所以我删除了错误消息中显示的代码。

h[3]=(hout+hl)/2
Run Code Online (Sandbox Code Playgroud)

但尽管模型检查良好,但存在导致初始化失败的强烈非线性问题。

在此处输入图片说明 在此处输入图片说明

所以我尝试删除以下代码行:

h[1]=(hin+hv)/2
Run Code Online (Sandbox Code Playgroud)

并且模型不仅检查而且没有初始化问题。

在此处输入图片说明

我的问题是:

  1. 在调试模型奇点时,Dymola 显示的错误信息可能不是模型的奇点来源?有没有找到奇点问题根源的通用方法?或者我必须手动分析模型中的方程?
  2. 如何最小化Modelica模型的非线性并保证收敛?我发现这个问题存在于很多领域,尤其是在热工水力模型中,我发现处理这个问题的一种方法是使用Modelon 的 Thermao Power Library和ThermoSysPro for EDF 的方式,这两个库划分模型或连接器分为流量和体积两种。为了确保收敛,它需要使用交错网格方案,如下面的屏幕截图所示。

    那么有没有另一种方法来处理热工水力模型中的非线性问题呢?关于如何处理热工水力模型中的非线性问题,是否有共同的看法?

在此处输入图片说明