[英]Matlab coder fzero function
我正在嘗試使用“ MATLAB Coder”將MATLAB代碼轉換為C代碼,但不允許使用匿名函數。
我如何將例如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);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.