matlab如何拟合方程,如何用MATLAB拟合曲线来求参数?

满意答案

02ae427d08e371d7e90d5b995e828d6d.png

www.kq189.com

推荐于 2018.03.28

02ae427d08e371d7e90d5b995e828d6d.png

采纳率:57%    等级:12

已帮助:10878人

^^令x=(cos(k)./sin(k))./c,这个就是xdata向量

y=252/(2.016129032*10^9)*a*x^b

取log得到

log(y)=b*log(x)+log(252/(2.016129032*10^9)*a)

所以log(y)与log(x)是线性关系,用p=polyfit(log(xdata),log(y),1)求出

b=p(1);

a=exp(p(2))/252*(2.016129032*10^9); % 因为log(252/(2.016129032*10^9)*a)=p(2)

所以最终程序是如下:

clear all

c=[2.7,2.8,2.9,3,3.1,3.2,3.45,3.7,3.95,4.2,4.45,4.7,4.95,5.2];

k=[0,47,93,140,186,279,372,465,558,651];

y=[18.98,27.35,34.86,38.52,38.44,37.73,38.43,43.87,42.77,46.22];

xdata=(cos(k)./sin(k))./c;

p=polyfit(log(xdata),log(y),1);

b=p(1);

a=exp(p(2))/252*(2.016129032*10^9);

01分享举报

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值