Undefined function 'mtimes' for input arguments of type 'function_handle'.
18 views (last 30 days)
Show older comments
function [T,I]=fonk(f)
a=-1;
b=1;
y=@(x) f./sqrt(1-x.^2);
I=quad(f,a,b);
k=input('k yi giriniz...');
T=0;
for i=1:k
w=pi./k;
x=cos((2.*i-1).*pi./(2.*k));
h=f;
T=T+w*h;
end
fprintf(' T = %13.10f I= %9.2e\n',T,I)
end
Undefined function 'mtimes' for input arguments
of type 'function_handle'.
Error in fonk (line 12)
T=T+w*h;
what can i do to solve this error?
0 Comments
Answers (2)
Daniel Pollard
on 15 Dec 2020
Your function fonk takes f as an input. f must be a function handle in order to satisfy the quad requirements. Later, you set h=f and try to calculate w*h. h is a function handle, so this product doesn't make any sense, hence the error you got. In order to rectify this, you must make h be a number, not a function handle. Perhaps you could give the function its arguments, if its output is numeric.
2 Comments
Daniel Pollard
on 16 Dec 2020
I told you what the problem is and how you can solve it. I can't solve it because I don't know what the function is supposed to do. You need to either change the way it works, or give f an argument.
Steven Lord
on 16 Dec 2020
You cannot multiply a number and a function handle or two function handles.
You can multiply a number and the result of evaluating a function handle or the results of evaluating two function handles.
f = @(x) x.^2;
g = @(x) x.^3;
thisWorks1 = 2*f(5)
thisWorks2 = f(8)*g(4)
h = @(x) f(x)+g(x);
thisWorks3 = h(3)
thisWillNotWork1 = 2*f
thisWillNotWork2 = f*g
0 Comments
See Also
Categories
Find more on Symbolic Math Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!