
simulink出错,运行时卡住,但不出现error描述,怎么办? 5
simulink模块如下图所示。其中matlabfunction分别为:function[ki,b]=try2(m,y)%#codegenki=zeros(3,1);b=...
simulink模块如下图所示。其中matlab function分别为:function [ki,b] = try2(m,y)%#codegenki = zeros(3,1);b = zeros(3,1);for i=2:1:3 ki(i,1) =(y(i,1)-y(i-1,1))/(m(i,1)-m(i-1,1)); b(i,1) = m(i-1,1);end%%%%%%%%%%%%%%%%%function fe = try2a(ki,b,m)%#codegencoder.extrinsic('test20');fe = 0;fe = test20(ki,b,m);%%%%%%%%%%%%%%%%%function fe = test20(ki,b,m)se = zeros(3,1);for i=2:1:3 syms x fs = x/(ki(i,1)*x+b(i,1)); ffs = int(fs,x); x = m(i-1,1); se(i-1,1) = eval(ffs); x = m(i,1); se(i,1) = eval(ffs); fe = se(i,1)-se(i-1,1)+fe;endend%%%%%%%%%%%%%%%%%%单独放在matlab中都可以运行得到结果的。可是在simulink中总是卡在fe = test20(ki,b,m);求大神帮忙解决问题!
已经解决啦!加了fe=0;就可以了。改好的程序为:
function fe = test20(ki,b,m)
se = zeros(3,1);
fe = 0;
for i=2:1:3
syms x
fs = x/(ki(i,1)*x+b(i,1));
ffs = int(fs,x);
x = m(i-1,1);
se(i-1,1) = eval(ffs);
x = m(i,1);
se(i,1) = eval(ffs);
fe = se(i,1)-se(i-1,1)+fe;
end
end 展开
已经解决啦!加了fe=0;就可以了。改好的程序为:
function fe = test20(ki,b,m)
se = zeros(3,1);
fe = 0;
for i=2:1:3
syms x
fs = x/(ki(i,1)*x+b(i,1));
ffs = int(fs,x);
x = m(i-1,1);
se(i-1,1) = eval(ffs);
x = m(i,1);
se(i,1) = eval(ffs);
fe = se(i,1)-se(i-1,1)+fe;
end
end 展开
1个回答
2017-09-28
展开全部
把红框内的工作文件夹换一个位置,
不要在MATLAB安装目录下就可以了。
不要在MATLAB安装目录下就可以了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询