Hyowinner的MBD技术论坛

 找回密码
 立即注册
搜索
查看: 499|回复: 5

运行过程中的除0错误

[复制链接]

1

主题

3

帖子

23

积分

MBD实习生

Rank: 1

积分
23
发表于 2026-1-7 21:44:52 | 显示全部楼层 |阅读模式
运行过程中报如下错误,但是生成代码正常:
An error occurred while running the simulation and the simulation was terminated.Caused byivision by zero occurred. Quotient was saturated.
被除数明明是个非零常数,该如何把error信息改成warning?或者遇到此类问题该如何处理?使用的版本是2016b
鼓捣了好久也没找到有效的方法,请各位大神赐教,十分感谢。

回复

使用道具 举报

79

主题

139

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051
发表于 2026-1-8 07:36:44 | 显示全部楼层
这种错误不是因为被除数为0,而是要看除数是不是0.

回复

使用道具 举报

1

主题

3

帖子

23

积分

MBD实习生

Rank: 1

积分
23
 楼主| 发表于 2026-1-8 07:44:04 | 显示全部楼层
admin 发表于 2026-1-8 07:36
这种错误不是因为被除数为0,而是要看除数是不是0.

感谢!我表达有误,是除数明明是一个非零常数,但依然会报错
回复

使用道具 举报

99

主题

247

帖子

4216

积分

管理员

校长

Rank: 9Rank: 9Rank: 9

积分
4216
QQ
发表于 2026-1-8 07:47:36 | 显示全部楼层

Simulink中非0除以0,返回Inf;0/0返回NaN。所以在诊断中开启上述红框内的诊断报警或报错可以在模型仿真遇到此类问题时提示。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
持续学习 未来有你
基于场景 解决问题
项目合作联系微信:Hyo_Matlab
回复

使用道具 举报

1

主题

3

帖子

23

积分

MBD实习生

Rank: 1

积分
23
 楼主| 发表于 2026-1-8 09:40:35 | 显示全部楼层
hyowinner 发表于 2026-1-8 07:47
Simulink中非0除以0,返回Inf;0/0返回NaN。所以在诊断中开启上述红框内的诊断报警或报错可以在模型仿真遇 ...

感谢校长回复。可是设置了Inf or NaN block output:none,运行过程依然会报出除0错误,真不知道是咋回事了
回复

使用道具 举报

99

主题

247

帖子

4216

积分

管理员

校长

Rank: 9Rank: 9Rank: 9

积分
4216
QQ
发表于 2026-1-8 14:37:16 | 显示全部楼层
Wper 发表于 2026-1-8 09:40
感谢校长回复。可是设置了Inf or NaN block output:none,运行过程依然会报出除0错误,真不知道是咋回事 ...

你这个就不是模块外部计算得到Nan了,是某些带有状态量的模块内部计算发生的问题,方便的话用一个最小模型复现一下这个问题,附件上传,校长看下。
持续学习 未来有你
基于场景 解决问题
项目合作联系微信:Hyo_Matlab
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|MBD全栈技术学校|苏ICP备2025212294号-1|Hyowinner校长B站首页|手机版|小黑屋|Hyowinner的MBD技术论坛

GMT+8, 2026-5-7 12:02 , Processed in 0.099933 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表