• 主页
  • 使用断言调试Modelica

使用断言调试Modelica

在Modelica中,可以定义一个protected final constant Boolean debug,然后在assert语句中使用它在调试时打印出一些值,类似于下面显示的代码(或as seen on github)。

在最终版本中,debug将被设置为false。这会减慢模拟速度,还是会消除断言,因为debug是一个常量?

model debugexample
  parameter Real a;
  parameter Real b;
  Real sum;

protected 
  final constant Boolean debug = false "set to true while debugging";

equation 
  assert(not debug, "a=" + String(a), level=AssertionLevel.warning);
  sum = a+b;
end debugexample;

转载请注明出处:http://www.jxbyjx.net/article/20230511/2361762.html