matlab - 如何在 Simulink 仿真期间捕获所有警告?

标签 matlab warnings try-catch simulink

我想捕获在 Matlab/Simulink 模型仿真期间发出的所有警告。模拟的结果应该是一系列警告,因为可能有不止一个警告。

理想的代码看起来像这样(除了 catch 不能处理警告):

try
   sim('myModel');
catch warnings
   for i=1:length(warnings)
      <process each warning>
   end
end

我已经尝试过但没有成功的事情:

  • 将警告变成异常并没有帮助,因为我只会收到第一个警告,而不是所有警告。
  • 用我自己的“@char\warnings.m”覆盖内置警告函数只会在我自己的脚本中捕获警告,而不会在 sim 函数中捕获。
  • lastwarn 只会给我最后一条警告信息,而不是所有的警告信息。

P.S.:我在 Windows 上使用 Matlab 2010b。

最佳答案

解决方法是用diary记录sim的输出,模拟后分析文件(warnings的格式比较有规律)。

关于matlab - 如何在 Simulink 仿真期间捕获所有警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7790929/

相关文章:

matlab - SVM - 训练样本数与特征数之间的关系

perl - 使用perl评估归档的解码文件

image - 均衡多个图像的对比度和亮度

matlab - 如何在续行中添加注释

Python如何过滤特定警告?

warnings - python setup.py Egg_info 未成功运行。警告 : Ignoring invalid distribution -yaudio

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

javascript - 在 Google Sheets Apps Script 中,如何检查工作表是否存在以及是否不添加

java - 在 java 中的 try-catch block 之后使用 "finally"有什么好处?

matlab调用scala函数