24小时热门版块排行榜    

查看: 417  |  回复: 1

lovext227

银虫 (小有名气)

[求助] 紧急求助matlab代码修改

各位朋友好,小弟初学matlab,遇到一个问题,跪求帮助啊。。明天导师就要meeting了。。。结果悲剧了。。

问题如下:
以下是一个A.scirpt的片段:
% Data Fitting Procedure
x = double (xdata); %assign x experimental data;
y = double (ydata); %assgin y experimental data
%plot(x,y,'O','LineWidth',0.5);hold on;
d1 = 0.1;      
data = ((1-d1)*d1*x)/((1-d1*x)*d1);
%plot(xdata,data,'r','LineWidth',1.5);hold on;
numIteration = 100;
d0 = d1; %initialise parameters matrix
lb = 0; %lower limit for parameters matrix
ub = 10; %upper limit for parameters matrix
[dsym, resnorm, residual] = lsqcurvefit(@DATAFIT,d0,x,y,lb,ub); %fitting procedure
display (dsym);
d1sym = dsym(1);
datasym = ((1-d1sym)*d1sym*x)/((1-d1sym*x)*d1sym);
plot(xdata,datasym,'g','LineWidth',1.5);hold on;

其中@DATAFIT的内容是:
function ydata = DATAFit(d, xdata)
A=d(1);     
ydata = ((1-A)*A*xdata)/((1-A*xdata)*A);

数据是:
0.1        0.02215
0.2        0.04836
0.3        0.09533
0.4        0.15719
0.5        0.22108
0.6        0.29566
0.7        0.39812
0.8        0.56943
0.9        1.0

总是提示

Error using lsqcurvefit (line 247)
Function value and YDATA sizes are incommensurate.

Error in IGA_FitDATA (line 57)
[dsym, resnorm, residual] = lsqcurvefit(@IGAFit,d0,x,y,lb,ub); %fitting
procedure

求助求助啊。。。麻烦不要复制。。。matlab的帮助,,,我看了没看懂。。。。谢谢啊

[ Last edited by lovext227 on 2013-1-24 at 05:08 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
感谢参与,应助指数 +1
lovext227: 金币+100, ★★★★★最佳答案 2013-01-24 17:49:23
ydata = ((1-A)*A*xdata)./((1-A*xdata)*A);
showmethemoney
2楼2013-01-24 11:36:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lovext227 的主题更新
信息提示
请填处理意见