作业帮 > 综合 > 作业

用matlab求下面的方程,y=a*exp[-pi*(x-b)^2/c^2]+ d*exp[-pi*(x-e)2/f^2

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/05 20:43:08
用matlab求下面的方程,y=a*exp[-pi*(x-b)^2/c^2]+ d*exp[-pi*(x-e)2/f^2] x y 已知,求a 到f
X Y
4.165637 56.67814
4.180601 115.6369
4.198436 248.5788
4.214554 232.1993
4.224751 159.6338
4.25106 73.42854
最好附上编写的程序
function y=wtxy(beta,x)              %保存为 wtxy.m 文件
y=beta(1)*exp(-pi*(x-beta(2)).^2/beta(3)^3)+beta(4)*exp(-pi*(x-beta(5)).^2/beta(6)^2);
——————————————————————————————————————
运行以下:
A=[4.165637   56.67814   
   4.180601   115.6369   
   4.198436   248.5788   
   4.214554   232.1993   
   4.224751   159.6338   
   4.25106   73.42854];
beta0=[241.9;4.2;0.1;950.2;48.7;16.1];
beta=lsqcurvefit('wtxy',beta0,A(:,1),A(:,2))
%beta=nlinfit(A(:,1),A(:,2),'wtxy',beta0)
a=4.15:0.005:4.26;
plot(A(:,1),A(:,2),'*',a,wtxy(beta,a))