1

我必须计算一个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)语法一些错误收入。

4

2 回答 2

2

假设 nucomk作为参数,你的语法应该是这样的:

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-11T14:41:25.050 回答
1

我想你想要@(x) nucom(x,k)

于 2013-07-11T14:41:38.903 回答