用matlab拟合指数形式的曲线

比如已知多组点(x,y),它符合指数表达式,怎么把表达式求出来我的题目中x=[30300500800];y=[17501600950500];通过这些数据拟合出上面给出的... 比如已知多组点(x,y),它符合指数表达式
,怎么把表达式求出来
我的题目中x=[30 300 500 800];y=[1750 1600 950 500];通过这些数据拟合出上面给出的指数形式公式,求具体程序。
展开
 我来答
giantbrain
2013-11-06 · TA获得超过347个赞
知道小有建树答主
回答量:358
采纳率:100%
帮助的人:152万
展开全部
取对数,展开:log(y)=-x^2/c^2+2*x*b/c^2+log(a)-(b/c)^2
用matlab解超定方程组的功能求解:
[-x^2,2*x,1]*[1/c^2;b/c^2;log(a)-(b/c)^2]=log(y)

%代码:

x=[30 300 500 800 ]'
y=[1750 1600 950 500 ]'

A=[-x.^2,2*x,1&x]

B=log(y)

z=A\B

c=sqrt(1/z(1))
b=z(2)/z(1)
a=exp(b*z(2)+z(3))
追问
谢谢大神!请问能不能用最小二乘法拟合出结果呢?用matlab的polyfit命令来写。
追答
好像这样算和最小二乘法是等价的(非线性最小二乘法)。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式