lsqcurvefit和nlinfit函数Word格式文档下载.doc
- 文档编号:4642828
- 上传时间:2023-05-03
- 格式:DOC
- 页数:2
- 大小:25KB
lsqcurvefit和nlinfit函数Word格式文档下载.doc
《lsqcurvefit和nlinfit函数Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《lsqcurvefit和nlinfit函数Word格式文档下载.doc(2页珍藏版)》请在冰点文库上搜索。
这里仅简单介绍一下常用的方式。
格式:
lsqcurvefit(f,a,x,y)、nlinfit(x,y,f,a)
f:
符号函数句柄,如果是以m文件的形式调用的时候,别忘记加@.这里需要注意,f函数的返回值是和y匹对的,即拟合参数的标准是(f-y)^2取最小值,具体看下面的例子
a:
最开始预估的值(预拟合的未知参数的估计值)。
如上面的问题如果我们预估A为1,B为2,则a=[1
2]
x:
我们已经获知的x的值
y:
我们已经获知的x对应的y的值
例子1:
问题:
对于函数y=a*sin(x)*exp(x)-b/log(x)我们现在已经有多组(x,y)的数据,我们要求最佳的a,b值
%针对上面的问题,我们可以来演示下如何使用这个函数以及看下其效果
>
x=2:
10;
y=8*sin(x).*exp(x)-12./log(x);
%上面假如是我们事先获得的值
a=[1
2];
f=@(a,x)a
(1)*sin(x).*exp(x)-a
(2)./log(x);
%第一种方法使用lsqcurvefit
lsqcurvefit(f,a,x,y)
ans
=
7.999999999999987
11.999999999988997%和我们预期的值8和12结合得非常好
%第二种方法使用nlinfit
nlinfit(x,y,f,a)
8.000000000000000
11.999999999999998
%**********************************
%另一种方法,假如我们写了一个如下的m文件
function
f=test(a,x)
f=a
(1)*sin(x).*exp(x)-a
(2)./log(x);
end
%则在上面lsqcurvefit函数调用如下,不要忘记那个@
lsqcurvefit(@test,a,x,y)
例子2:
(多元的情况,注意看格式)
我们已知z=a*(exp(y)+1)-sin(x)*b且有多组(x,y,z)的值,现在求最佳系数a,b
y=10*sin(x)./log(x);
z=4.5*(exp(y)+1)-sin(x)*13.8;
f=@(a,x)a
(1)*(exp(x(2,:
))+1)-sin(x(1,:
))*a
(2);
lsqcurvefit(f,[1
2],[x;
y],z)%注意这里面的[x;
y],这里的[1
2]表示我们设置f函数里的初始值a
(1)=1,,a
(2)=2
4.499999999999999
13.800000000000024
nlinfit([x;
y],z,f,[1
2])
4.500000000000000
13.799999999999956
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- lsqcurvefit nlinfit 函数
![提示](https://static.bingdoc.com/images/bang_tan.gif)