Not enough input arguments.
古いコメントを表示
I have a file called F.m which contains the following code:
1 % INPUT:
2 % 3D vector x
3 %
4 % OUTPUT:
5 % function value at x
6
7 function val = f(x)
8 val= x(1)^2 + x(1)*x(2)^3 - 12*x(3) + 4;
9 end
I am trying to call F.m in an algorithm in another file, but when I run the code, I get the following error:
"Error using F (line 8) Not enough input arguments."
I'm new to MATLAB, so I'm not sure what I'm doing wrong here. Any help would be greatly appreciated!
2 件のコメント
Aaron Powers
2015 年 4 月 26 日
Could you include the code that calls your function f, with an example of what x is?
Anonymous Chupacabra
2015 年 4 月 26 日
採用された回答
その他の回答 (1 件)
Inside this line:
[a, b] = Algorithm2(f, xk, dk, T);
you call the function "f" without arguments. But You want top provide the function handle of this file instead:
[a, b] = Algorithm2(@f, xk, dk, T);
Note: In modern Matlab versions you can omit the feval and call the function handle directly, which looks nicer:
while norm(gradf(xk)) >= tol1
カテゴリ
ヘルプ センター および File Exchange で Startup and Shutdown についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!