爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 10262|回复: 15

[源程序] 指定公式的MATLAB拟合

[复制链接]

新浪微博达人勋

发表于 2014-4-20 19:02:40 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
有感于MATLAB的强大,此处记下多元回归的指定公式拟合代码,分为两个:

文件1:

  1. <P> clc;clear all;
  2. hc = load('HC_position.txt');   
  3. x = hc(:,3:2:19);
  4. y = load('mean_tide.txt');  </P>
  5. <P>% 拟合选项一
  6. % 根据指定的公式,进行系数的拟合
  7. c0(9) = 0;
  8. c = lsqcurvefit('myfun',c0,x,y)</P>
  9. <P>% 拟合选项二
  10. % 直接进行线性拟合</P>
  11. <P> </P>
复制代码

文件二:
  1. function val=myfun(c,x)
  2. val = c(1)*x(:,1)+c(2)*x(:,2).^2+c(3)*x(3).^2   ...,
  3.      +c(4)*x(:,4).^2+c(5)*x(:,5).^2+c(6)*x(:,6).^2   ...,
  4.      +c(7)*x(:,7).^2+c(8)*x(:,8).^2+c(9)*x(:,9).^2;
  5. end

复制代码




密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-4-20 19:03:40 | 显示全部楼层
lsqcurvefit 这个事最关键的万能函数
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-24 20:30:09 | 显示全部楼层
额,没太看明白楼主这个函数是怎么拟合的。myfun是指x,y之间的函数关系式?得出结果是c1~c9这么9个值?那么文件一中的c0(9)=0的设定是用来干嘛的,进行拟合时用的c0是指的什么?能请楼主给解答下吗?谢谢啦~~~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-26 15:57:16 | 显示全部楼层
真是好东西,再次琢磨
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-5-5 07:48:57 | 显示全部楼层
做梦的蚊子 发表于 2014-4-24 20:30
额,没太看明白楼主这个函数是怎么拟合的。myfun是指x,y之间的函数关系式?得出结果是c1~c9这么9个值?那么 ...

myfun是自己写的函数的形式,的确是指x,y之间的函数关系式,得出的结果就是需要拟合的系数c1~c9,c0(9)=0是用来设置初始的迭代值,因为matlab在进行拟合的时候是通过迭代进行计算的,需要设置初始值,一般设置为0,如果你有比较好的备选参数,也可以换掉。
另外,matlab拟合的基本原理因方法而已,不要拘泥于某种思路,因地制宜。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-5-7 21:47:46 | 显示全部楼层
haobang008 发表于 2014-5-5 07:48
myfun是自己写的函数的形式,的确是指x,y之间的函数关系式,得出的结果就是需要拟合的系数c1~c9,c0(9)=0 ...

好的,谢谢楼主~~~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-5-19 23:18:30 | 显示全部楼层

客气了,没啥的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-9 20:32:59 | 显示全部楼层
好东西 谢谢分享  
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-9 20:33:51 | 显示全部楼层
好东西 谢谢分享  
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-10 12:56:17 | 显示全部楼层
谢谢楼主,学习了
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

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