在matlab中如何根据f(i)
明确整合向量x(i)
,其中x(i)
从zero
变为infinity
,即某种类型f(i)dx(i)
?
答案 0 :(得分:1)
您是否自己设置了集成方案,例如:
x
和f(x)
向量dx
函数diff
或者您使用Matlab的内置函数q = integral(fun,xmin,xmax,Name,Value)
。
祝你好运
答案 1 :(得分:1)
M_Tornack's answer的一点点补充:
1)如果你知道函数f(x)
,你可以通过以下方式计算它:
象征性地计算
syms x f
f=1./x; % for example
integral(f,x,-inf,0);
或其他方式: 使用quadgk函数 - 数值评估积分,自适应Gauss-Kronrod积分
2)另一种方式:使用小值代替Inf
和zero
,然后使用trapz
内置函数。
或者您可以使用M_Tornack's answer中的第一个算法使用一些容差 - 不使用Inf
x
值但增加它,同时增加结果积分小于容差。
希望它有所帮助!