用MATLAB拟和经验公式Y=AX^(1/2)+BX.A,B为要求的参数。 X=(2,4,6,7) Y=(2,6,4,8)具体编程语句。 5
请把具体编程语句写一下,急求。谢谢!ruifengcao,你好!怎样使用lsqnonlin函数进行拟合?...
请把具体编程语句写一下,急求。谢谢!
ruifengcao,你好!怎样使用lsqnonlin函数进行拟合? 展开
ruifengcao,你好!怎样使用lsqnonlin函数进行拟合? 展开
2个回答
展开全部
你可以使用lsqnonlin函数来做这个拟合,它是一个非线性拟合函数
首先定义自己要拟合的函数的形式,其中a是函数中的系数,x和y是已知的数据
function E=fun(a,x,y)
x=x(:);
y=y(:);
Y=a(1)*x.^0.5 + a(2)*x;
E=y-Y;
下面的程序是调用上面的函数进行拟合
x = [2;4;6;7]'
y = [2;6;4;8]'
a0=[1 1];
options=optimset('lsqnonlin');
a=lsqnonlin(@fun,a0,[],[],options,x,y)
首先定义自己要拟合的函数的形式,其中a是函数中的系数,x和y是已知的数据
function E=fun(a,x,y)
x=x(:);
y=y(:);
Y=a(1)*x.^0.5 + a(2)*x;
E=y-Y;
下面的程序是调用上面的函数进行拟合
x = [2;4;6;7]'
y = [2;6;4;8]'
a0=[1 1];
options=optimset('lsqnonlin');
a=lsqnonlin(@fun,a0,[],[],options,x,y)
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询