MATLAB 的新手.获取错误 第一个输入参数必须是函数句柄.在尝试集成当前功能时



这就是我目前所拥有的

t=60;
q=integral(e(t)*i(t), t, 0, 2*pi);
function v=e(t)
v=160*sin(t);
end
function c=i(t)
c=2*sin(t-(pi/6));
end

但它返回以下错误,我不知道如何解决它。我查看了引用相同错误的其他帖子,但无法修复它。

Error using integral (line 82)
First input argument must be a function handle.
Error (line 10)
q=integral(e(t)*i(t), t, 0, 2*pi);

任何帮助将不胜感激

你应该有这样的东西:

e_times_i = @(t) e(t) .* i(t)
q=integral(e_times_i, 0, 2*pi);

事实上,integralmatlab 函数句柄的第一个参数。您提供了而不是函数句柄。

最新更新