Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2009-11-15
帖子: 5
声望力: 0 ![]() |
![]()
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) 此帖于 2010-05-17 03:07 被 lincsu 编辑。 |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2009-11-15
帖子: 5
声望力: 0 ![]() |
![]()
初始值好像设置有问题,但是怎么找到合适的初始值 呢?
|
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2009-11-15
帖子: 5
声望力: 0 ![]() |
![]()
slgu兄可否帮忙看看,我看到你回答的上面一个醉酒酒精问题,我这个类似,但是我怎么知道初始值
|
![]() |
![]() |
![]() |
#4 |
高级会员
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21 ![]() |
![]()
数据文件打不开,我就很难帮你了。
另外,第一个系数以coeff(1)^2出现似乎不合常规。 |
![]() |
![]() |
![]() |
#5 |
初级会员
注册日期: 2009-11-15
帖子: 5
声望力: 0 ![]() |
![]()
您好,数据文件下载后,解压缩,
然后会发现一个txt文件,吧txt文件改成.mat文件就能读出来,是一个matlab数据文件,可否给我您的邮箱什么?我传给您 非常感谢 |
![]() |
![]() |
![]() |
#6 |
初级会员
注册日期: 2009-11-15
帖子: 5
声望力: 0 ![]() |
![]()
请查看这个附件,上传不了excel文件,附件是txt,吧后缀名字改成xlxs的excel文件就可以看到数据
非常感谢 |
![]() |
![]() |
![]() |
#7 |
高级会员
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21 ![]() |
![]()
[email protected]
最好用excel格式。 |
![]() |
![]() |