| 查看: 2083 | 回复: 4 | |||
[求助]
请教matlab非线性拟合结果不唯一的问题已有2人参与
|
|
我用matlab拟合一组实验数据,函数是y=a*(b+x)^c+d*(1-f*exp(-g*x)),现在的问题是发现只要改一次初值就会得到不同的拟合结果,或者改一下上下限,也会得到不同的拟合结果,这么一来,我觉得就不可能找到最优解,虽然上下限可以取得很大,认为是无界,但是初值怎么取?因为我不可能尝试所有的参数初值,因为我要拟合多组实验数据,获得公式中参数a(1)~a(6)的变化规律,如果参数结果不唯一,我怎么确定哪个参数才是最优的参数呢?事实上,如果从物理意义来限定参数取值也可以,但是那样得到的参数并不是最优解,而最优解的参数又不一定符合物理意义。 我该怎么处理呢?哪位能帮忙看一下,非常感谢! 实验数据和代码如下: 主程序 clc xdata=load('78028-ta.txt'); %read section1 size1=size(xdata); %section1 行、列数 sizen(1)=size1(1); %section1数据量 for i=1:size1; xd(i)=xdata(i,1); yd(i)=xdata(i,2); end set(gca,'Fontsize',15); plot(xd,yd,'ro'); xlabel('True Strain'); ylabel('True Stress/MPa'); hold on lb=[-100000, 0, 0, -10000, -10000, -10000]; ub=[ 100000, 0.02, 1, 10000, 10000, 10000]; a1=1898;a2=0.00002;a3=0.136;a4=542;a5=0.784;a6=62.4; a0=[a1,a2,a3,a4,a5,a6]; options = optimset('TolFun',1e-6,'LargeScale','on','TolCon',1.0e-6,'MaxFunEvals',2.e10,'MaxIter',2000000,'TolX',1e-6); exitflag=0; while (exitflag<=0) %反复迭代 [a,resnorm,residual,exitflag]=lsqnonlin(@SV,a0,lb,ub,options); %nonlinear fitting, solve coefficient a a0=a; end R2=1-resnorm/sum((yd-mean(yd)).^2); standard=sqrt(resnorm/size(residual,2)); stp=1; out(stp,1)=R2; out(stp,2)=standard; out(stp,3)=a(1); out(stp,4)=a(2); out(stp,5)=a(3); out(stp,6)=a(4); out(stp,7)=a(5); out(stp,8)=a(6); hold on fid=fopen('SV-fit-78028-ta.txt','wt'); for i=1:size1; G(i)=a(1)*(a(2)+xd(i))^a(3)+a(4)*(1-a(5)*exp(-a(6)*xd(i))); fprintf(fid,'%8.6f %10.6f\n',xd(i),G(i)); end fprintf(fid,' R2 standard s1 s2 s3 V1 V2 V3\n'); fprintf(fid,'%10.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f\n',out(i,1),out(i,2),out(i,3),out(i,4),out(i,5),out(i,6),out(i,7),out(i,8)); fclose(fid); plot(xd,G,'b','LineWidth',2) hold on legend('EXP','SV'); hold off clear 函数 function F=SV(a) xdata=load('78028-ta.txt'); size1=size(xdata); sizen(1)=size1(1); for i=1:sizen(1); xd(i)=xdata(i,1); yd(i)=xdata(i,2); end for i=1:sizen(1); F(i)=a(1)*(a(2)+xd(i))^a(3)+a(4)*(1-a(5)*exp(-a(6)*xd(i))); F(i)=F(i)-yd(i); end 实验数据 78028-ta.txt 0 223.634 0.0005 261.9 0.001 373.358 0.0015 425.658 0.002 462.61 0.0025 492.699 0.003 513.549 0.0035 524.142 0.004 538.681 0.0045 546.22 0.005 554.575 0.0055 563.233437 0.006 570.27162 0.0065 577.07317 0.007 583.656651 0.0075 590.037892 0.008 596.230537 0.0085 602.246461 0.009 608.09609 0.0095 613.788651 0.01 619.332371 0.0105 624.734633 0.011 630.002102 0.0115 635.14083 0.012 640.156342 0.0125 645.053702 0.013 649.837576 0.0135 654.512279 0.014 659.081814 0.0145 663.549911 0.015 667.920058 0.0155 672.19552 0.016 676.379368 0.0165 680.474496 0.017 684.483635 0.0175 688.409373 0.018 692.254165 0.0185 696.020341 0.019 699.710123 0.0195 703.325629 0.02 706.4514911 0.025 735.7217232 0.03 758.4120509 0.035 778.3482998 0.04 794.7567166 0.045 809.6868333 0.05 822.8422861 0.055 834.8128986 0.06 846.1687589 0.065 856.1567004 0.07 866.0042315 0.075 874.4658077 0.08 882.1951827 0.085 890.0445724 0.09 897.0900675 0.095 903.7413962 0.1 910.0615411 0.105 915.8285085 0.11 921.8803708 0.115 927.2834332 0.12 932.4186891 0.125 937.3558307 0.315 1073.901289 |
» 收录本帖的淘帖专辑推荐
Matlab |
» 猜你喜欢
第一性原理计算方向2026级博士申请 PRB*1,四级484
已经有1人回复
求助VISSIM破解版软件
已经有0人回复
物理学I论文润色/翻译怎么收费?
已经有184人回复
求2026年在台湾举行的物理和材料领域国际学术会议信息
已经有0人回复
求国际会议网站
已经有1人回复
求取一些关于纳米材料和纳米技术相关的英文PPT。
已经有0人回复
【复旦大学】二维材料方向招收2026年博士研究生1名
已经有0人回复
北京纳米能源与系统研究所 王中林院士/曹南颖研究员课题组2026级硕/博/博后招生
已经有10人回复
荷兰Utrecht University超快太赫兹光谱王海教授课题招收2026 CSC博士生
已经有16人回复
反铁磁体中的磁性切换:两种不同的机制已成功可视化
已经有0人回复
» 本主题相关价值贴推荐,对您同样有帮助:
求关于非线性材料的电阻及微分电阻意义的解释及matlab 计算方法
已经有1人回复
求关于非线性材料的电阻及微分电阻意义的解释及matlab 计算方法
已经有0人回复
请教大家一个数值问题
已经有4人回复
求关于非线性材料的电阻及微分电阻意义的解释及matlab 计算方法
已经有0人回复
用MATLAB模拟介质圆柱外的等势线
已经有1人回复
matlab 拟合方法
已经有4人回复
请教一个多元线性回归的问题(非常实际)
已经有3人回复
基于等高线渲染的地形图高程数据提取技术的matlab代码
已经有0人回复
紧急请教大牛们关于幅频响应曲线的matlab作图
已经有0人回复
Matlab画图legend显示部分曲线的图例问题请教
已经有1人回复
请教非线性拟合问题
已经有1人回复
【讨论】请教三维线条图,非渲染
已经有0人回复
dingd
铁杆木虫 (职业作家)
- 计算强帖: 4
- 应助: 1641 (讲师)
- 金币: 15037.3
- 散金: 101
- 红花: 234
- 帖子: 3410
- 在线: 1223.5小时
- 虫号: 291104
- 注册: 2006-10-28
【答案】应助回帖
★ ★ ★ ★
感谢参与,应助指数 +1
anarky: 金币+4, ★★★很有帮助, 非常感谢! 2015-12-09 21:24:24
感谢参与,应助指数 +1
anarky: 金币+4, ★★★很有帮助, 非常感谢! 2015-12-09 21:24:24
2楼2015-12-08 10:18:31
yanshuiting
新虫 (正式写手)
- 应助: 1 (幼儿园)
- 金币: 1484.8
- 散金: 50
- 红花: 7
- 帖子: 448
- 在线: 68.7小时
- 虫号: 2633300
- 注册: 2013-09-03
- 专业: 计算机科学
3楼2015-12-08 12:36:50
4楼2015-12-16 21:03:30

5楼2015-12-16 21:54:02













回复此楼