Sysplorer报错内置操作符Reinit只允许用在when方程中,为什么?
技术分享
发布于 2025-10-15 18:29:31
查看 3过去230天
按照modelica规范进行语法检查,对于reinit操作符在算法中使用是不被允许的
将reinit操作符,由在算法中使用修改为在方程中使用,如下例所示:
示例:旧版中不会报错
model Use_reinit “reinit用法”
Real a(start = 0);
equation
der(a) = time;
algorithm
when time >= 0.5 then
reinit(a, 0);
end when;
end Use_reinit;
修改方法:将算法改成方程即可
model Use_reinit “reinit用法”
Real a(start = 0);
equation
der(a) = time;
when time >= 0.5 then
reinit(a, 0);
end when;
end Use_reinit;
所属专栏:Sysplorer基础平台
产品信息:Sysplorer系统建模仿真环境