在Modelica标准库3.2.1中,包含了制冷剂R134a的模型,但它似乎无法与Modelica.Fluid一起正常工作。在一个带有DynamicPipe
的简单示例中,它会导致以下错误:
A calculation of two-phase properties with input of pressure and temperature is not possible.
Please use setState_dTX or setState_phX instead.
The stack of functions is:
setState_pTX_Unique15
setState_pTX_Unique15(101325, 293.15, {1.0}, 0)
use_T_start
为false。这里有什么问题?如何解决?
TIA-
更新:
选择的状态是h和p,这是应该的。pTX调用的参数似乎是所选介质的默认值。
PartialStaggeredFlowModel
使用Medium.density_pTX
和Medium.setState_pTX
,但将它们更改为各自的phX函数并不能解决问题。
这里的问题是热力学状态的选择。正如消息所示,不能使用以压力和温度为热力学状态的两相介质。
举个简单的例子,考虑一下水/冰。如果你在结冰时测量温度,你会发现当混合物"粘稠"(既含有液体也含有固体)时,温度将保持不变。因此,知道温度不足以知道系统的真实(热力学)状态,因为我们无法用这些信息计算液体和固体的相对分数。解决方案是使用压力和焓(如错误消息所示)作为热力学状态。
我对Modelica.Media
和Modelica.Fluid
库的了解还不够,无法告诉你如何改变热力学状态的选择。但我怀疑你会在其中一个图书馆的文档中找到答案。
解决方案已经在我的更新中。CCD_ 8使用CCD_ 9和CCD_。用CCD_ 11和CCD_ 12代替它们避免了pT问题。它一开始不起作用的原因是引用了我忘记更改的未修改类。
其他型号的流体组件也有同样的问题,例如泵型号基于PartialPump
,它也使用Medium.density_pTX
。
感谢您的贡献。