![]() |
曲线拟合求助
1 个附件
coeff是所求的未知系数,一共三个参数
xdata=【0:0.001:3】。。。。1x3001 ydata=不规则的数据,请见附件,长度1x3001 是一个公式求出来的数值 附件是matlab中.mat文件,下载后可以改成.mat后缀 求解的曲线是: F=coeff(3)^2./((coeff(2)-xdata.^2).^2+(coeff(1)*xdata).^2); 非常感谢,我使用了: coeff0 = [5; 8; 0.00001]; % Starting guess [coeff,resnorm] = lsqcurvefit(@myfun,coeff0,xdata,ydata) function F = myfun(coeff,xdata) F=coeff(3)^2./((coeff(2)-xdata.^2).^2+(coeff(1)*xdata).^2); 但是一直出错: ??? Error using ==> optim\private\snls at 304 lsqcurvefit cannot continue: user function is returning Inf or NaN values. Error in ==> optim\private\lsqncommon at 221 [x,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msg]=... Error in ==> lsqcurvefit at 182 [x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ... Error in ==> white_noise_to_color at 25 [coeff,resnorm] = lsqcurvefit(@myfun,coeff0,omega,S_FF) |
回复: 曲线拟合求助
初始值好像设置有问题,但是怎么找到合适的初始值 呢?
|
回复: 曲线拟合求助
slgu兄可否帮忙看看,我看到你回答的上面一个醉酒酒精问题,我这个类似,但是我怎么知道初始值
|
回复: 曲线拟合求助
数据文件打不开,我就很难帮你了。
另外,第一个系数以coeff(1)^2出现似乎不合常规。 |
回复: 曲线拟合求助
您好,数据文件下载后,解压缩,
然后会发现一个txt文件,吧txt文件改成.mat文件就能读出来,是一个matlab数据文件,可否给我您的邮箱什么?我传给您 非常感谢 |
回复: 曲线拟合求助
1 个附件
请查看这个附件,上传不了excel文件,附件是txt,吧后缀名字改成xlxs的excel文件就可以看到数据
非常感谢 |
回复: 曲线拟合求助
[email][email protected][/email]
最好用excel格式。 |
回复: 曲线拟合求助
你提供的模型可能不恰当,请用该模型进行拟合:
fx=@(b,x)b(1)*exp(b(2)*x+b(3)*x.^2+b(4)*x.^3+b(5)*x.^4); 请运行下列小程序: clear,clc x=[...]';%清输入x数据 y=[...]';%请输入y数据 b=[2.5540354806*10^(-41), 2653.32513908, -30459.7660992, 153943.375849, -292083.699481] fx=@(b,x)b(1)*exp(b(2)*x+b(3)*x.^2+b(4)*x.^3+b(5)*x.^4); b=lsqcurvefit(fx,b,x,y) b=nlinfit(x,y,fx,b) n=length(x) SSy=var(y)*(n-1) y1=fx(b,x); q=(y-y1)'*(y-y1) rsquare=(SSy-q)/SSy figure(1),clf plot(x,y,'ko') hold on plot(x,y1,'linewidth',2) legend('data','fit','location','best') axis tight |
所有时间均为北京时间。现在的时间是 11:25。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.