特定熵能否作为变量传递给Modelica媒体库中的BaseProperties?

特定熵能否作为变量传递给Modelica媒体库中的BaseProperties?,modelica,openmodelica,Modelica,Openmodelica,我试图模拟一个等熵问题(即比熵保持不变)。我的目标是在不假设流体是理想气体或热量完美气体的情况下实现这一点,所以我只剩下基本守恒定律。这不是问题,但我需要使用过程(等熵)来关联我的各种状态。我需要做的是设置s1=s2,但Modelica的BaseProperties似乎没有实现这一点的方法。我想知道的是: 我能把特定的熵“s”(不要和焓“h”混淆)传递给基本性质或其他一些函数以及另一个性质(可能是P)并得到介质的热力学状态吗?我已经浏览了媒体库的大部分工作,我看到有函数可以返回给定热力学状态的特

我试图模拟一个等熵问题(即比熵保持不变)。我的目标是在不假设流体是理想气体或热量完美气体的情况下实现这一点,所以我只剩下基本守恒定律。这不是问题,但我需要使用过程(等熵)来关联我的各种状态。我需要做的是设置s1=s2,但Modelica的BaseProperties似乎没有实现这一点的方法。我想知道的是:

  • 我能把特定的熵“s”(不要和焓“h”混淆)传递给基本性质或其他一些函数以及另一个性质(可能是P)并得到介质的热力学状态吗?我已经浏览了媒体库的大部分工作,我看到有函数可以返回给定热力学状态的特定熵,但我认为我不能提供“s”和变量来获得我的状态
  • 另一个相关注意事项:是否可以轻松地将CoolProp集成到Modelica中?我看到有一个外部流体库,但它是按照媒体库标准构建的,这意味着它似乎也不接受“s”作为确定热力学状态的参数

  • 感谢您的时间。

    特定熵不包括在
    基本属性中。但是,您可以通过函数
    setState\u ps()
    setState\u psX()
    检索介质的热力学状态,作为
    (p,s)
    的函数。比如说

    model Isentropy
      package Medium = Modelica.Media.Water.StandardWater;
    
      Medium.ThermodynamicState state1=Medium.setState_pT(1e6, 573.15);
      Medium.ThermodynamicState state2=Medium.setState_ps(5e5, s1);
    
      Medium.SpecificEntropy s1=Medium.specificEntropy(state1);
    
      // retrieve e.g. specific enthalpies from state records
      Medium.SpecificEnthalpy h1=Medium.specificEnthalpy(state1);
      Medium.SpecificEnthalpy h2=Medium.specificEnthalpy(state2);
    end Isentropy;
    

    关于您的第二个问题:是的,您可以使用ExternalMedia非常轻松地使用CoolProp数据计算属性。s的问题应该通过上面Rene Just Nielsen的建议来解决。
    ExternalMedia使用相同的介质定义,因此您可以轻松地将MSL中的介质模型替换为CoolProp中的介质。

    我没有想过用这种方式使用setState函数。非常感谢您提出此方法。ExternalMedia库仅适用于Dymola 32位,并且在2012年之前适用于Visual Studio,您知道如何将其用于Dymola 64诱饵和Visual Studio 2015吗?