积分分段函数matlab
我试图集成一个函数积分分段函数matlab,matlab,integral,piecewise,Matlab,Integral,Piecewise,我试图集成一个函数F,其定义如下: function F x = -3:0.1:3; F = zeros(1, length(x)); for i = 1:length(x) if (1.4<= x(i)) && (x(i) <= 1.6) F(i) = x(i).^2; else F(i) = 2; end end end
F
,其定义如下:
function F
x = -3:0.1:3;
F = zeros(1, length(x));
for i = 1:length(x)
if (1.4<= x(i)) && (x(i) <= 1.6)
F(i) = x(i).^2;
else
F(i) = 2;
end
end
end
函数F
x=-3:0.1:3;
F=零(1,长度(x));
对于i=1:长度(x)
如果(1.4函数的问题是,integral
无法将您提供的参数传递给函数F
。函数不知道它只能从您创建的向量中提取某些元素。如果您将函数重写为输入(或x值),将返回F
的输出,然后integral
将在给定两个值之间进行积分时工作。为了让我们所有人都感到震惊,请正确缩进该代码。同时,向我们展示出错的代码。您本质上不了解如何调用integral。函数的形式是F(x)
,你的F没有输入。你不应该定义x
,否则F
是一个数组,而不是一个函数。问题是你调用积分
函数的那一行,也给我们看看那一行代码!我像integral(F,0,1)一样调用int函数我使用了太多的输出参数得到了错误。正如你所说的,我认为我的函数F是一个数组,如果这就是问题所在,那么我如何将F定义为一个函数呢?