attributes - 为什么 Dymola/Modelica 中的属性 min、max 不起作用?

标签 attributes modelica dymola

我正在尝试使用 'min'、'max' 属性来限制值,如下所示。

SI.Angle thetta_out(start=0, min=0, max=31.4)

但是 min 和 max 属性不起作用。该值不受约束地变化,并且仅开始值按照我的设置工作。

谁能找出问题所在?

我不想像 if 语句那样创建一个逻辑来处理这个问题,因为这会使系统变得缓慢和扭曲。

最佳答案

您需要在

中手动激活检查

Simulation Setup -> Debug

看起来像这样:

Min/Max assertion settings

如果我没记错的话,该设置默认不活动的原因与激活它时性能下降有关,再加上它通常不需要它。

要获得更准确的描述,您可以查看 Dymola 手册 1,第 5.6.8 节“变量绑定(bind)检查”,其中提供了一些更详细的解释。这也是上面截图的来源。

关于attributes - 为什么 Dymola/Modelica 中的属性 min、max 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58602357/

相关文章:

modelica - 如何在 Dymola 中隐藏模拟变量

modelica - 在 Modelica 中返回可替换记录的函数

ios - 如何通过索引属性从核心数据中获取对象?

attributes - 产品变体的属性值

c++ - C++/STL 中是否支持按属性对对象进行排序?

python - 如何使用 Python 函数联合模拟 fmu?

c# - 如何添加类型约束以在泛型方法中包含任何可序列化的内容?

arrays - 从 Modelica 中的字符串参数访问数组元素

modelica - 基于 bool 参数的开关类型(不继承)?

python - 如何使用 Python 界面获取 Dymola 中模型的仿真时间?