modelica - 访问其他模型中的参数 - OpenModelica

标签 modelica openmodelica

我在 protected 部分下有一个参数,需要进一步计算:

parameter Integer Ns = integer(ceil(L / dx))

它不应该被修改,这就是我把它放在那里的原因。 但是,我想在构建通用模型时访问此参数。特别是要在其他组件中访问它,我可以执行以下操作:

Ns = componentName.Ns

但由于它位于 protected 部分,所以这是不可能的。我通过简单地在常规部分添加另一个参数来解决这个问题:

parameter Integer N=Ns

但是,这个参数出现在 GUI 中并且可以修改,我想尽一切办法避免这种情况。

有什么解决办法吗?我希望我的意思很清楚。

最佳答案

将我的评论转换为答案:
如果您希望参数在模型类外部可见且可访问,但不再可更改,那么您应该将其标记为 Final,如下所示:

final parameter Integer Ns = integer(ceil(L / dx))

正如您在示例中看到的,参数可以被计算并随后成为最终参数。

关于modelica - 访问其他模型中的参数 - OpenModelica,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58709281/

相关文章:

modelica - 取决于时间相关变量的条件组件声明

modelica - 使用实际信号的反馈循环 : How to initialize the model?

interpolation - Modelica Block 中的多维表

modelica - 平衡本地模型 Modelica

modelica - 热液压系统中的流量和体积连接器

modelica - 在 Modelica 中为连接器分配特定的连接样式

Modelica-方程和算法部分的区别

events - 如何在 Modelica 中使用 bool 开关来防止将库存消耗到零以下?

if-statement - OpenModelica 中 'when' 和 'if' 之间的区别?

modelica - 在 Modelica 中搜索类似 'verbosity' 的概念