次の構成では、方程式が多すぎるというエラーが生成されます。
model Model1
model myBlock
input Modelica.Blocks.Interfaces.RealInput u(start=1e99);
output Modelica.Blocks.Interfaces.RealOutput y;
parameter Real p=1 "Parameter";
equation
u=min(u,p);
u=y;
end myBlock;
myBlock b1;
myBlock b2 (p=0.5);
myBlock b3;
input Modelica.Blocks.Interfaces.RealInput u;
output Modelica.Blocks.Interfaces.RealOutput y;
equation
connect(y,b1.u);
connect(b1.y,b2.u);
connect(b2.y,b3.u);
connect(b3.y,u);
end Model1;
アイデアは、すべての「myBlock」コンポーネントで u と y の同じ最小値を取得することです。ただし、u (=min...) の割り当ては、すべてのコンポーネントに対して必須であり、次々に計算することはできません。
この問題を解決する方法はありますか? ありがとう。