大家好,近两个月要参加网络营销能力秀,参赛其中要求写一些博客,因此近一段时间我会将我在数学建模中遇到的问题和大家说一下。
多元非线性拟合是非常困难的事情,我选用matlab进行拟合,以下为我找到的三种方法以及具体数据。
1.使用“nlinfit”
x1=1150,1000,900,850,700,625,550,475,3350,3500,5900,5800,5700,4600,4625,4725,11650,11200,11200]';
x2=[175,100,25,0,75,100,150,200,50,600,500,225,100,1225,1600,2000,1200,1000,1550
]';
x=[x1,x2];
y=[1.44E-02,1.80E-02,6.08E-02,5.59E-02,3.42E-02,7.74E-03,1.17E-03,6.16E-03,1.91E-04,1.91E-04,1.02E-03,2.83E-03,9.52E-05,3.77E-04,2.70E-04,1.87E-04,3.98E-04,4.04E-04,4.02E-04]';
beta0=[0.1 0.1 1 1];
myfun=@(a,x)4030.0./pi./4.2./(a(1).*x(:,1).^a(2).*a(3).*x(:,1).^a(4)).*exp(-(x(:,2).^2./2./(a(1).*x(:,1).^a(2)).^2+30.0.^2./2./(a(3).*x(:,1).^a(4)).^2));
[a,b,c,d,res]=nlinfit(x,y,myfun,beta0);a,res
plot3(x1,x2,y,'o',x1,x2,myfun(a,x))
值的选取没有定法,