[编程开发] 帮忙看看MATLAB里面自定义函数到底怎么调用?? 数值分析里面一个问题: function s=traprl(f,
[编程开发] 帮忙看看MATLAB里面自定义函数到底怎么调用??
数值分析里面一个问题:
function s=traprl(f,a,b,M)
h=(b-a)/M;
s=0;
for k=1:(M-1)
x=a+h*k;
s=s+feval(f,x);
end
s=h*(feval(f,a)+feval(f,b))/2+h*s;
% Detailed explanation goes here
end
输入
>> syms x
>> sum=traprl(x^2*exp(-2),0,4,10)
提示为
??? Error using ==> feval
Argument must contain a string or function_handle.
Error in ==> traprl at 6
s=s+feval(f,x);
到底怎么错哪了?
答案:调用traprl时,应该用句柄指定函数@(x)x^2*exp(-2),而不是直接输入函数表达式。
sum=traprl(@(x)x^2*exp(-2),0,4,10)
其他:同学,你是哪个单位的?
竟和我在相同的时间做同样的题,还犯相同的错误!
上一个:matlab运算循环上限?
下一个:Matlab/simulink:一个数组 不用排序的方法 找出它当中第K大的数