【发布时间】:2017-09-29 14:52:18
【问题描述】:
在 Modelica 中,我尝试为液压孔的尺寸系数定义专用数据类型 OrifSizingCoeff。
对应的物理量是体积流量除以压力的平方根,因此:
a) SI 单位:m3/s 除以sqrt(Pa);
b) 在“实际”单位中:l/min 除以sqrt(bar)。
我定义的数据类型如下:
type OrifSizingCoeff = Real(
final quantity="Orifice sizing coefficient",
final unit="m3/(s.Pa(1/2))",
displayUnit="l/(min.bar(1/2))");
我没有收到任何解析错误,但单位转换不起作用(参数值不会从一个单位更改为另一个单位);如果我将(1/2) 替换为:
0.505
相反,如果我将(1/2) 替换为:
(0.5)0,5(0,5)^(1/2)^(0.5)
我收到一个解析错误。 (我尝试了我能想到的任何疯狂的事情)。
而且,如果我将(1/2) 替换为1/2,则会执行转换,但它是“错误的”。 (根据Modelica的语法,Pa1/2被解释为(Pa1)/2 = Pa/2;bar1/2也一样。因此这两个单位分别对应m3/(s.Pa/2)和l/(min.bar/2)。
有没有办法正确定义我需要的单位?
【问题讨论】:
标签: modelica openmodelica