| 查看: 4684 | 回复: 5 | ||
xyz52134新虫 (小有名气)
|
[求助]
仿真出现问题There may be a singularity in the solution
|
|
仿真时出现如下问题该怎么解决啊? Stopping simulation. There may be a singularity in the solution. If the model is correct, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances). 加入memory模块后,问题就变为 Embedded MATLAB Runtime Error: Simulation stopped due to data array bounds read error. Block a1,2,3^.b^. (#91) While executing: none. 请知道的人帮忙解答一下 |
» 猜你喜欢
一志愿上海交大生物与医药专硕324分,求调剂
已经有4人回复
一志愿重庆大学085700资源与环境,总分308求调剂
已经有4人回复
0854电子信息求调剂 324
已经有3人回复
303求调剂
已经有3人回复
336求调剂
已经有3人回复
306求调剂
已经有9人回复
工科0856求调剂
已经有4人回复
工科材料085601 279求调剂
已经有10人回复
081700 调剂 267分
已经有4人回复
276求调剂。有半年电池和半年高分子实习经历
已经有9人回复
» 本主题相关价值贴推荐,对您同样有帮助:
MATLAB_simulink仿真问题?
已经有2人回复
【答案】应助回帖
★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 鼓励讨论交流 2012-10-21 19:56:46
感谢参与,应助指数 +1
xiegangmai: 金币+2, 鼓励讨论交流 2012-10-21 19:56:46
|
MATLAB說你的模型裡面有代數迴路,用一般的數值方法沒辦法給出可靠的解答。 代數迴路是說,你要解的輸出,跟他自己此刻的值有關。例如: y(k)=a*y(k)+u(k)+u(k-1)... 左邊待解的y(k)出現在右邊,數值方法就傻了。 一般輸出只與他以前的值有關。因為輸出此刻的值還不知道,要拿此刻的輸出去解此刻的輸出,對程式?碚f,說不通。所以代數迴路對數值方法?碚f,不容易解出?怼#ㄓ梅柦鈪s很容易,我們隨便做個移項就好了,數值方法卻沒辦法這麼做)。 使用Memory相當於在回路中加入一個延遲方塊z^-1,這樣就消除了代數迴路. 手動找代數迴路也不難,在你的模型裡面找迴圈,繞一圈,沒碰到動態的部分,那就是代數迴路了。 |

2楼2012-10-20 19:37:24
xyz52134
新虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 204.1
- 散金: 35
- 帖子: 125
- 在线: 43.2小时
- 虫号: 1775207
- 注册: 2012-04-24
- 专业: 控制理论与方法
3楼2012-10-22 12:58:56

4楼2012-10-22 15:19:45
5楼2015-10-08 15:27:32
6楼2015-10-08 15:29:13













回复此楼