'Realloc'无法使用adaptItegrate重新分配内存

时间:2014-08-17 17:31:28

标签: r nlm

我尝试使用R中的nlm函数来最小化-2可能性。我的似然函数的一个组件是使用adaptItegrate计算的双积分。使用一些预先指定的起始值,我得到的似然值非常快(不到1分钟)。但是,当我使用nlm函数进行优化时,我花了很长时间(差不多1小时)进行第一次迭代,最终我得到了关于"内存重新分配"的错误消息。谁知道为什么会发生这种情况?我该如何解决这个问题。 这是我的双重积分函数:

doubleint= function(y){
    h<- function(x){
      sig1*sig2*exp(-sig1*(y-x[1]))*exp(-sig2*(y-x[2]))*
        laplace(alpha1/beta1*(exp(beta1*y)-exp(beta1*x[1]))+alpha2/beta2*(exp(beta2*y)-exp(beta2*x[2])))
    }    
    sol=adaptIntegrate(h,lowerLimit=c(0,0),upperLimit=c(y,y),fDim = 1,doChecking=FALSE,tol=1e-5)$integral
    return(sol)
  }

0 个答案:

没有答案