我必须计算一个F(x,k)=0函数200次。每次都具有不同的k参数值。F是一个非线性函数,所以我尝试使用fsolve。
我无法将k参数值传递给用于fsolve调用的匿名函数。
我使用的代码如下:
[x,fval,exitflag,output,jacobian] = fsolve(@(x)nucom,x0,options)其中''nucom'‘是必须为零的函数F。
我如何传递k?使用@(x,k)语法可以获得一些误差收益。
发布于 2013-07-11 22:41:25
假设nucom将k作为参数,您的语法应该如下所示:
xsolved=zeros(1,200);
for k=1:200
[x,fval,exitflag,output,jacobian]=fsolve(@(x)nucom(x,k),x0,options);
xsolved(k)=x;
end发布于 2013-07-11 22:41:39
我想你想要@(x) nucom(x,k)。
https://stackoverflow.com/questions/17596229
复制相似问题