好的,我有这样的事情:
model MolarAmount
import SI = Modelica.SIunits;
SI.AmountOfSubstance nu "moles of stuff";
parameter Real lambda = 42 "some variable on which nu depends";
equation
nu = 1 - lambda;
end MolarAmount;
这样运行得很好,但它会像预期的那样抱怨不兼容的单元。如何让它忽略这一点?
答案 0 :(得分:1)
这很奇怪。我一直认为Dymola在单元检查中将文字(1
)和没有单位的变量(lambda
)作为通配符。您可以尝试将units
上的lambda
属性设置为" 1" (我认为那是默认的)。您还可以查看标准库中的二极管模型。它使用参数公式,也必须解决这种单位检查问题。
很抱歉没有验证这些建议。我真的没有Dymola的副本可以用来测试。
HTH
答案 1 :(得分:1)
你在跑什么版本的Dymola? Dymola 2015(2014-04)接受此模型。
我猜设置lambda(unit="mol")
可以解决您的问题。它也会减少单位检查的魔力。