使用黎曼和来近似积分

时间:2013-09-30 22:18:34

标签: r

我试图使用黎曼和逼近从-inf到+ inf的函数f(x)的积分。

2 个答案:

答案 0 :(得分:2)

 integrand<-function(x){exp(x)/sum(exp(x))}
    integrate(integrand,lower=-Inf,upper=Inf)
Error in integrate(integrand, lower = -Inf, upper = Inf) : 
  non-finite function value

如果这是您的真实功能,则该解决方案不存在

答案 1 :(得分:1)

您仍未澄清要集成的功能。你能用普通的数学符号写出你想要评估的积分吗?暂时忘记R?

这是你写的东西,以及为什么它没有意义:

x<- seq(-1000,1000, length=1000)

好的,现在x是长度为1000的向量:(-1000,-997.998,...,997.998,1000)

v <- sum(exp(x))

好的,现在v等于为exp矢量值评估的x之和。而且,从exp(1000)=Inf开始,这意味着,从R的角度来看,v等于无穷大。

f <-(exp(x))/(v)

此时,您已将x定义为向量,将v定义为标量,因此此表达式将f设置为长度为1000的向量。但是,由于v是无限的,因此f上的每个值都将是0NaN

这就意味着

integrate(f,  ????  ) 

没有意义,因为f不是函数。

如果你能用普通的数学符号写出你想要评估的积分,那么有人可能会帮助你。