matlab中拟合函数程序

matlab中拟合函数程序,第1张

程序如下:附件中data.txt必须和程序放在同一文件夹中。

load data.txt

y=data(:,1)

x=1:1:length(y)

a1=polyfit(x',y,5)

syms X

f3=vpa(poly2sym(a1,X),4)%多项式5次拟合结果

x1=1:0.1:356

h1=polyval(a1,x1)

plot(x,y,'.',x1,h1,'r')

xlabel('x')

ylabel('y')

title('拟合拟合曲线')

legend('原始数据点','拟合')

结果:

f3 =

 

- 5.582e-10*X^5 + 6.199e-7*X^4 - 0.0002665*X^3 + 0.05546*X^2 - 5.605*X + 237.2

x1=[150,160,170]'x2=[200,215,230]'y=[90.3,90.65,90.390.2,90.55,9090.6,90.85,90.25]'

A=[y x1 x2]

y=A(:,1)x1=A(:,2)x2=A(:,3)x=[x1 x2]

fun=inline('c(1)+c(2).*x(:,1)+c(3).*x(:,2)','c','x')

c=lsqcurvefit(fun,rand(1,3),x,y)

c =

25.3689655159132 1.68965517250985-0.965517241460331

y=25.3689655159132+1.68965517250985*X1 -0.965517241460331*X2


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11027456.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存