我想让一个参数说n = 1,该参数未显示在UI中,但是另一个参数n_add = n + 1显示在模型的图标上。
parameter Integer n = 1 "not to be displayed";
parameter Integer n_add = n + 1 "Displayed on the model";
在图标级别,我写为文本“%n_add”,其结果不是n + 1 =“ 2”的计算,而是要完成的计算(字面意义为“ n + 1”)。参数n_add在模型参数化期间的模拟/初始化之前应该是可见的。
这甚至可能吗?
答案 0 :(得分:3)
似乎与此类似:Displaying parameter in annotation in DYMOLA,但实际上这个问题读起来更紧凑,因此应该可以解决您问题的代码:
DISM /online /enable-feature /featurename:IIS-ISAPIFilter
DISM /online /enable-feature /featurename:IIS-ISAPIExtensions
DISM /online /enable-feature /featurename:IIS-NetFxExtensibility
DISM /online /enable-feature /featurename:IIS-ASPNET
对于模拟之前已知的值(例如参数),可以在模拟之前进行。 model showN1
parameter Integer n = 1 "not to be displayed";
final parameter Integer n_add = n + 1 "Displayed on the model";
annotation (Icon(graphics={Text(
extent={{-100,-20},{100,20}},
lineColor={0,0,0},
textString="n_add = " + DynamicSelect("?", String(n_add)))}));
end showN1;
还可以显示在仿真过程中必须首先计算的变化值。然后从结果文件中读取这些文件,该文件仅在仿真开始后可用。