急求:matlab三维拟合用什么函数
现已知x,y,z的坐标,如何求相关的系数?x=[503808.4 503793.6
503793.7 503793.7 503793.7 503793.8 503779.2 503779.2 503779.2 503779.2];
>> y=;
>> z=;
>> z=a0+a1*x+a2*y+a3*x^2+a4*x*y+a5*y^2
如何求a0,a1,a2,a3,a4,a5
[ 本帖最后由 sigma665 于 2008-8-21 17:23 编辑 ] a0=0.99985439453757 a1=0.00000000775977 a2=0.00000002833754 a3=0.00000000667078 a4=0.00000000276494a5=-0.00000000583760
可以参考此贴
http://forum.vibunion.com/forum/viewthread.php?tid=1005&highlight=%C7%FA%C3%E6%C4%E2%BA%CF 这道题似乎不太容易得到最优解。如果参数没有限制,不知道是否还有比下面更好的结果,用1stOpt做的:
均方差(RMSE): 0.101611152016971
残差平方和(SSE): 0.10324826214216
相关系数(R): 0.974641549177399
相关系数之平方(R^2): 0.949926149382921
决定系数(DC): 0.949926145450986
卡方系数(Chi-Square): 0.000341786730176189
F统计(F-Statistic): 15.9764014015923
参数 最佳估算
---------- -------------
a0 -1936920007.90191
a1 5726.92338602312
a2 1527.74493551411
a3 -0.00470843313695677
a4 -0.00151863227521023
a5 -0.000589273650456929 这道题不太好………… 好的,谢谢大家! 2楼说的这个程序,之前我也看过了,不过没有看懂,你能把你的程序传上来吗?
3楼说的用1stopt这个方法我试了,我还先问一下,matlab和1stopt拟合出来的结果为什么相差这么大啊?
回复 6楼 suntonghe1983 的帖子
那个贴你进去看了吗那个readme你下载了吗
回复 6楼 suntonghe1983 的帖子
同样的程序,传来传去的也没有意义 原帖由 suntonghe1983 于 2008-8-22 15:36 发表 http://www.chinavib.com/forum/images/common/back.gif3楼说的用1stopt这个方法我试了,我还先问一下,matlab和1stopt拟合出来的结果为什么相差这么大啊?
把两者的结果带回去验证一下,就能判断哪个结果好。
非线性拟合实际上是非线性最优化问题,而对这种问题还没有任何算法或软件保证100%能找到最优。Matlab的拟合或优化工具箱对初值依赖太重,对复杂问题效果不是太好。 看了,也下载了,不过看不懂,把他写的程序放到matlab中会出错. 1stOpt是个独立的程序,不是Matlab的插件。 原帖由 dingd 于 2008-8-22 20:53 发表 http://www.chinavib.com/forum/images/common/back.gif
1stOpt是个独立的程序,不是Matlab的插件。
谢谢,这个我知道,用1stopt我可以做出来,也想用matlab做一下.
页:
[1]