24小时热门版块排行榜    

查看: 1757  |  回复: 14
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

XiaTriumph

新虫 (初入文坛)

[求助] 请教一个关于matlab拟合的问题,麻烦大神们解答一下。 已有3人参与

现在想用matlab软件解决下面问题:
X=[1 2 3 4 5 6] Y=[0.07049 0.14229 0.287221 0.287221 0.14229 0.07049]
已知拟合的函数为如下形式:Y=a*exp(-[(X-L/2)/b]^2) 其中L是一个人为给定量,利用matlab程序我想拟合出系数a和b关于L的方程。
请问怎么实现。谢谢各位大神!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

【答案】应助回帖

感谢参与,应助指数 +1
楼主是不是想进行非线性方程的系数拟合呀,最近刚做了一个,不知是不是你要的。主要使用nlinfit。
首先编写一个带有拟合方程的函数myfunc,代码如下
function y=myfunc(beta,x)
a=beta(1);
b=beta(2);
X=x;
y=a.*exp(-[(X-7/2)./b].^2);
期中的L我使用的是7.
再在命令窗口中输入以下代码
>> x=[1 2 3 4 5 6]';
>> y=[0.07049 0.14229 0.287221 0.287221 0.14229 0.07049]';
>> beta0=[1,1]';
>> [beta,r,j]=nlinfit(x,y,'myfunc',beta0)
最终会得到a和b的值。当然这依赖于beta0(初始值)的选取,但是一般都能满足。
好好学习,天天向上!
12楼2014-12-03 15:53:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

【答案】应助回帖

这是获得的图像。

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : untitled.jpg
  • 2014-12-03 15:56:39, 15.53 K
好好学习,天天向上!
13楼2014-12-03 15:57:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 XiaTriumph 的主题更新
信息提示
请填处理意见