叠代的初始值.y=U-x(1)*I.^x(2)就是这里x(1),x(2)的初始值.x0 = [0.3 0.4] %可以这么设定,大小自己可以修改
你的fun.m是不是没有放到当前目录下?另外一般我都是把x,y 直接定义到fun里面:function E = fun(a);global x y;x = x(:);y = y(:);...这样的话,在外面运行的时候,你定义 global x y;x = ...y = ...a0 = ...options = ...a = lsqnon(@fun, ......
MATLAB中lsqnonlin函数的用法,出现错误,求高手帮忙 只看楼主 收藏 回复yeyi0719 1L喂熊 1 %我在M文件中输入function E=fun(a,x,y)x=(:);y=(:);Y=a(1)+a(2)*exp(0.05*x(3)*x);E=y-Y;%然后再窗口中输入:x=[3 4 5 7 9 15]; y=[1 2 4 6 8 10]; a0=[1 1]; options=optimset...