【问题标题】:Declaring Heat Capacity Cp in Dymola在 Dymola 中声明热容量 Cp
【发布时间】:2021-07-27 14:15:24
【问题描述】:

我在调用我的工作流体的比热容时遇到了一些问题,在这种情况下是氢气,我不能使用压力或温度来调用它,如果有人可以帮助我,请提前致谢。 这是我的代码

import Modelica.SIunits;

  package Hyd
    extends ExternalMedia.Media.CoolPropMedium(
      mediumName="hydrogen",
      substanceNames={"hydrogen"},
      inputChoice=ExternalMedia.Common.InputChoice.pT);
  end Hyd;

SIunits.SpecificHeatCapacity cp_in;//[J/kg*K]
Hyd.AbsolutePressure Pb_0;
Hyd.Temperature Tin;
Hyd.SaturationProperties sat9,sat10;

Equation
sat9=Hyd.setSat_T(Tin);
sat10=Hyd.setSat_p(Pb_0);
cp_in=Hyd.specificHeatCapacityCp(sat9);//[J/kg*K]
cp_in=Hyd.specificHeatCapacityCp(sat10);//[J/kg*K]

函数声明为:

function specificHeatCapacityCp_Unique8 
input ExternalMedia.Media.BaseClasses.ExternalTwoPhaseMedium.ThermodynamicState state ;
output Modelica.Media.Interfaces.Types.SpecificHeatCapacity cp := 1000.0 "Specific heat capacity at constant pressure";
end specificHeatCapacityCp_Unique8;

【问题讨论】:

  • 我的错误在dymola中是这样出现的
  • ExternalMedia 包中的示例模型是否适用于 CoolProp?您在哪里设置 Tin 和 Pb_0 的值?您能否同时提供来自 Dymola 的错误消息作为屏幕截图并指定您使用的是哪个 Dymola 版本?

标签: modelica dymola


【解决方案1】:

我不确定您到底要达到什么目的,但是您正在将 SaturationProperties 对象传递给期望 ThermodynamicState 的函数,该函数无法工作(并且在使用 OpenModelica 时会这样报告)。

这是一个在 300 K 饱和压力下计算 cp 的工作版本:

model test_SO_68546587
import Modelica.SIunits;

  package Hyd
    extends ExternalMedia.Media.CoolPropMedium(
      mediumName="hydrogen",
      substanceNames={"hydrogen"},
      inputChoice=ExternalMedia.Common.InputChoice.pT);
  end Hyd;

SIunits.SpecificHeatCapacity cp_in;//[J/kg*K]
Hyd.AbsolutePressure Pb_0;
Hyd.Temperature Tin;
Hyd.ThermodynamicState state;
equation
state = Hyd.setState_pT(p=Pb_0, T=Tin);
Tin = 300;
Pb_0 = Hyd.saturationPressure(Tin);
cp_in=Hyd.specificHeatCapacityCp(state);// 14345.2 J/kg*K @ 300 K, 12.951 bar
end test_SO_68546587;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-10
    • 1970-01-01
    • 2018-11-27
    • 2016-06-07
    • 2023-03-24
    • 1970-01-01
    • 2014-04-10
    相关资源
    最近更新 更多