警告:找不到显式积分。

时间:2014-02-12 14:47:29

标签: matlab int warnings integration explicit

我正在尝试进行简单的集成,我已经附加了代码。你可以帮助我,因为我在代码中做错了什么。

function [f_value] = SurfArea ()

        a=[1.78E-05 3.39E-04 0.0104 -0.05791 -16.36];

        R = 30;

        da = polyder(a);

        syms x

        integrand = int((x*sqrt(1+1/(poly2sym(da)).^2)),-R,0);

        f_value = sym2poly(integrand);

end

我想删除警告,请帮助。

1 个答案:

答案 0 :(得分:0)

如果您发出命令

>> [~,ID] = lastwarn

发出警告后,您将获得相关的警告ID。您可以这样使用:

%// Force the warning off
warnstate = warning('off', 'symbolic:sym:int:warnmsg1');

%// ... do the integration etc.

%// Switch warning back into original state
warning(warnstate);

顺便说一下:

  • 您似乎想要返回多项式系数向量。你如何期望积分导致多项式?!
  • 如果您想要数字结果,请查看integral(R2013)或quadgk(< = R2012)。它比使用符号工具箱快很多