2017-01-20 28 views

回答

1

是否設定了自己的集成方案的東西,如:

  • 使用diff功能
  • 乘它以f計算xf(x)矢量
  • 計算dx(x)和取所有元素的總和

或者您使用Matlab的內置函數q = integral(fun,xmin,xmax,Name,Value)

問候

1

有點除了M_Tornack's answer

1)如果你知道函數f(x)你可以在一些這方面計算的話:

計算象徵

syms x f 
f=1./x; % for example 
integral(f,x,-inf,0); 

或另一種方式: 使用quadgk函數 - 數值計算e積分,自適應Gauss-Kronrod正交

2)另一種方法:用小值代替Infzero,然後用trapz內置函數。 或者您可以使用M_Tornack's answer中的第一個算法使用一些公差 - 不使用Inf的值x,但在增加結果積分小於公差時增加它。

希望它有幫助!