使用组件的内部变量时出错

Mar*_*vel 0 modelica dymola

我正在使用 Modelon 的热功率库。热电库中有一个冷凝器组件,用于发电厂建模。冷凝器组件中 wall_2 的默认传热面积为0.8*A_heat_tot,变量 ofA_heat_tot是冷凝器组件中的内部变量,但是当我尝试使用此变量时,出现错误显示此变量未定义。

我的问题是,如果我可以直接使用内部变量。如果没有,我应该如何使用它?

在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

Ren*_*sen 5

简短回答:您需要使用完整路径来寻址变量,即wall_2.A_heat_tot.

A_heat_tot定义在StandardWall,因此可以直接在类内部引用。但是,当您A_heat从 的实例外部StandardWall(即外部wall_2)进行更改时,您必须指向的来源A_heat_tot因为否则在您尝试使用它的范围内是未知的。

同样,如果您在仿真模型 ( Preheater_Model_Validation2)中进行修改,则必须使用完整路径,即hex.wall_2.A_heat = hex.A_heat_tot

顺便说一下,这与innerModelica 语言中的限定符无关。