Not enough input arguments for an anonymous function.
4 次查看(过去 30 天)
显示 更早的评论
I have this anonymous function:
g = @(x,k) exp(cos(x))^k
I am getting this error:
Not enough input arguments.
Error in solution>@(x,k)exp(cos(x))^k (line 5)
g = @(x,k) exp(cos(x))^k
Im not sure the fix for this because x and k are both represented in the function.
2 个评论
Voss
2023-2-12
x and k are both represented in the function, yes, but how are you calling the function? If you call it with fewer than two arguments you'll get that error.
% defining g:
g = @(x,k) exp(cos(x))^k
% calling g with 2 arguments:
g(pi,2) % ok
% calling g with 1 argument:
g(pi) % error
You haven't shown how you are calling the function g, so check on that.
回答(1 个)
the cyclist
2023-2-12
编辑:the cyclist
2023-2-12
I think you probably wanted to raise to the power element-wise, so I changed your function to
g = @(x,k) exp(cos(x)).^k;
But that won't cause the error you got.
How are you calling it? This works:
g = @(x,k) exp(cos(x)).^k;
g(1:5,3)
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!