找回密码
 注册
Simdroid-非首页
查看: 442|回复: 10

求助:matlab拟合

[复制链接]
发表于 2007-5-25 09:22:59 | 显示全部楼层 |阅读模式 来自 黑龙江哈尔滨
我有一组数据
x                   y
0.625e6      3.61629e-15
1.25e6       7.15725e-15
1.875e6     1.40634e-14
2.1875e6    2.06645e-14
2.5e6         3.01358e-14
2.8125e6    5.35747e-14
3.125e6     9.79413e-14
3.4375e6    1.64377e-13
3.75e6        2.63688e-13
4.0625e6    4.86809e-13
4.375e6     7.42632e-13
5e6            1.22427e-12
5.625e6     1.92534e-12
6.25e6       3.01358e-12
6.875e6     4.45188e-12
想把他们拟合成y=A*x^B的形式,请大家帮忙,怎么用matlab编程实现?
谢谢
发表于 2007-5-25 11:54:01 | 显示全部楼层 来自 北京西城
Simdroid开发平台
x变量值很大,y值又特小,虽然公式简单,但要求出精确的系数,不大容易。下面是1stOpt求得,差分进化算法,再“热执行两次”,可得唯一结果。如果a系数变为7.74614624485839E-40,虽为微小变化,拟合结果得图形就相差多了。

相关系数(R): 0.999459005604723
相关系数之平方(R^2): 0.998918303884383
决定系数(DC): 0.998755971049692
卡方系数(Chi-Square): 8.54624787656786E-14
F统计(F-Statistic): 10449.9175817284

参数        最佳估算
----------        -------------
a                  7.74614624485839E-41
b                  4.20658933794285

====== 结果输出 =====

No        实测值y        计算值y
1        3.61629E-15        1.8619704187284E-16
2        7.15725E-15        3.43781377310737E-15
3        1.40634E-14        1.89245673724149E-14
4        2.06645E-14        3.61945858376407E-14
5        3.01358E-14        6.34734226692926E-14
6        5.35747E-14        1.04176454534754E-13
7        9.79413E-14        1.62275346378715E-13
8        1.64377E-13        2.42311805088777E-13
9        2.63688E-13        3.49410160916613E-13
10        4.86809E-13        4.89288981433094E-13
11        7.42632E-13        6.68271871846039E-13
12        1.22427E-12        1.17192950265978E-12
13        1.92534E-12        1.92344221278046E-12
14        3.01358E-12        2.99614008474691E-12
15        4.45188E-12        4.47387806241091E-12
回复 不支持

使用道具 举报

发表于 2007-5-27 11:05:05 | 显示全部楼层 来自 河南郑州
数据拟合,觉得很有意思.可能我以后的方向也要搞这个
所以觉得很不错!

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2007-5-31 09:53:00 | 显示全部楼层 来自 黑龙江佳木斯
我也正在研究拟合,我的变量是3个.
回复 不支持

使用道具 举报

发表于 2007-5-31 11:50:08 | 显示全部楼层 来自 陕西西安
把待定方程两边取对数,把方程简化为一个线性的方程,那样就可以采用许多相当简单的拟合方法来拟合了。我试了用最小二乘拟合的方法来拟合了一下,b=3.3832,a=1.741E-35.不过感觉采用这种方法的误差比较大。

两者对比的曲线如下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

 楼主| 发表于 2007-6-1 19:53:07 | 显示全部楼层 来自 黑龙江哈尔滨
谢谢大家的帮助
回复 不支持

使用道具 举报

发表于 2007-6-1 21:09:49 | 显示全部楼层 来自 天津
使用cftool命令,进入曲线拟合工具箱的图形用户界面,然后,用鼠标点点就搞定。
回复 不支持

使用道具 举报

发表于 2016-11-15 15:19:02 | 显示全部楼层 来自 湖南长沙
wzgsohu 发表于 2007-5-31 09:53
我也正在研究拟合,我的变量是3个.

请问你现在知道怎么拟合了吗
回复 不支持

使用道具 举报

发表于 2017-7-7 14:04:15 | 显示全部楼层 来自 大连理工大学
MUKI 发表于 2016-11-15 15:19
请问你现在知道怎么拟合了吗

前边有一个发了拟合的例子
回复 不支持

使用道具 举报

发表于 2018-6-3 10:24:43 | 显示全部楼层 来自 贵州贵阳
waterbabyi 发表于 2007-5-31 11:50
把待定方程两边取对数,把方程简化为一个线性的方程,那样就可以采用许多相当简单的拟合方法来拟合了。我试 ...

请问一下,这个图是用的那个软件拟合的
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-27 08:18 , Processed in 0.043202 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表