集成-得到错误类型的结果

integration-get a result of wrong type

我的公式是

 $$\int_{a}^{b}\big(exp(x) +1 \big)^{i\cdot u} \cdot \text{cos} \big((x-\alpha) u \big)dx$$  

这是我用于集成的 R 代码:

 a<--2; b<-2; u<-0.15; alpha<-0.8

 integrand<-function(x)
{
 (exp(x)+1)^(1i*u)*cos((x-alpha)*u)
}

integrate(integrand,lower=a,upper = b)

在 运行 这段代码之后,我收到了来自 R 的错误信息:

Error in integrate(integrand, lower = a, upper = b) : 
evaluation of function gave a result of wrong type

我的错误在哪里?谢谢!

显然,integrate不能做复杂的整合。使用 elliptic 包的 myintegrate 代替:

 a<-2
 b<-2 
 u<-0.15
 alpha<-0.8

integrand<-function(x) {
   (exp(x)+1)^(1i * u)*cos((x-alpha)*u)
 }

 myintegrate(integrand,lower=a,upper = b)