1

在使用 Modelica 标准库 DynamicPipe(或从 PartialTwoPortFlow 构建的类似模型)运行的流动模型的实现中,有一些流动模型的示例发生在需要壁属性的传热环境中(例如 heatPorts.T 和/或 heatPorts.Q_flow) 以计算压降。

例如,压降模型可能需要根据介质压力和壁温计算新的粘度或普朗特数,以捕捉冷却/加热效应等。

传热模型通过传递“状态”来获得介质的属性,但是 DynamicPipe 或 PartialTwoPortFlow 中没有存在相反的连接。

我尝试了许多不同的想法,但都没有成功,包括创建一个新的 PartialTwoPortFlow,其中包含 DynamicPipe 中存在的所有传热调用。

我对发布这个问题犹豫不决,因为我很惊讶我在这方面遇到了这么多困难,并且找到一个直截了当的解决方案也不会感到惊讶。尽管如此,我还是需要这种能力,并且好奇其他人是否已经解决了这个问题,因为我缺乏想法。

所以我的问题是:

将 heatPorts.T 值传递给 flowModel 的正确/有效方法是什么?

4

1 回答 1

0

对于那些熟悉 MSL Fluids 库,更具体地说是所提供的 Pipe 模型的人来说,这个答案应该(希望)是有意义的。

在旁边:

似乎动态管道可以通过不将传热面积限制为周长 x 长度来改进一点,而是引入一个允许用户定义它并默认为周长 x 长度的参数(例如 heatTransferArea)。见下文

  parameter SI.Area heatTransferArea = perimeter*lengths "Total heat transfer area";
  HeatTransfer heatTransfer(
    ...
    final surfaceAreas=heatTransferArea , //perimeter*lengths <- replaced
    ...

结束:

为了将 heatPorts.T 传达给 flowModel 并且在我检查每个模型时不出错,我必须执行以下操作:

  1. 在 flowModel 中为 Ts_w 创建一个“输入”。不是参数(看看 mediums.state 是如何传递的)!可能需要像“直径”(请参阅​​DetailedPipeFlow)一样对其进行一些修改,以使其按照您认为的方式使用。
  2. 复制 PartialTwoPortFlow 并将最终的 Ts_w = Ts_wFM 添加到 flowModel。另外在 PartialTwoPortFlow 中定义变量 SI.Temperature[nFM+1] Ts_wFM 并在方程部分建立类似于 statesFM 的定义。这将需要添加要添加的 HeatPorts 模型。
  3. 复制 DynamicPipe 并将扩展名更改为新的 PartialTwoPortFlow。将 use_HeatTransfer 设置为 true (正如我设置的那样,现在必须为 true 才能使其工作,这并不理想但易于管理)。将其作为最终参数可能会很好,因此无法更改。不要忘记将 heatPorts 连接到步骤 2 中添加的 heatports。

我相信这捕获了我如何将壁温传递给 flowModel 的快速版本。也许有一种更优雅的方式,但我认为这很有用。我现在只是多了一个 Partial 模型和一个名为 PartialTwoPort_wTemp 和 GenericDynamicPipe 的管道模型(我还在新管道中加入了我的 surfaceArea 校正)。

于 2016-03-18T18:51:15.923 回答