我想使用“MATLAB编码器”将MATLAB代码转换为C代码,但匿名函数是不允许的。Matlab编码器fzero函数
我如何转换例如一个fzero
功能
myfun = @(x,c) cos(c*x); % parameterized function
c = 2; % parameter
fun = @(x) myfun(x,c); % function of x alone
x = fzero(fun,0.1)
成一个正常的功能,例如,整个代码转换为C.
我想使用“MATLAB编码器”将MATLAB代码转换为C代码,但匿名函数是不允许的。Matlab编码器fzero函数
我如何转换例如一个fzero
功能
myfun = @(x,c) cos(c*x); % parameterized function
c = 2; % parameter
fun = @(x) myfun(x,c); % function of x alone
x = fzero(fun,0.1)
成一个正常的功能,例如,整个代码转换为C.
你有“匿名”的功能,而不是“未定义“的功能,只是为了清除术语。
以下转换为命名函数:
myfun = @(x,c) cos(c*x); % parameterized function
这样写:
function result = myfun(x,c)
result = cos(c*x);
end
对于第二个功能,这样写:
function result = myfun2(x)
c = 2;
result = cos(c*x);
end
最后,调用fzero像这个:
x = fzero(@myfun2, 0.1);
在这种情况下什么是“未定义函数”?我没有看到任何未定义的内容。 – rayryeng
对不起,我会重命名它。你是对的 – Mauro