Menu

#59 Unable to find sample for covariance matrix for clustered model

v1.0_(example)
open
None
1
2022-12-26
2022-12-26
Anonymous
No

Hi,
I am running the following model below and I am getting the error
"Error in checkForRemoteErrors(val) :
2 nodes produced errors; first error: Error in node D_inv[1:6,1:6,1]
Unable to find appropriate sampler"

model {

for(i in 1:nId)
{
#Construction of pi[i,c]

for(c in 1:(nCluster-1))
{
  pi_st[i,c]=exp((inprod(phi[c,1:n_fix],X_fix[i,2:12])))
}
pi_st[i,nCluster]=1

pi[i,1:nCluster]=pi_st[i,1:nCluster]/(sum(pi_st[i,1:nCluster]))


#Cluster
clus[i] ~ dcat(pi[i,1:nCluster])


#Random Effect
#----------
for(c in 1:nCluster)
{
  u[i,1:6,c] ~ dmnorm(ze[1:6],D_inv[1:6,1:6,c])
}

ldu[i] <- logdensity.mnorm(u[i,1:6,clus[i]], ze[1:6], D_inv[1:6,1:6,clus[i]])


#Longitudinal Process
#---------------------
for( j in offset[i]:(offset[(i+1)]-1))
{

  #Means
  mu_y[j,1]<-  (u[i,1,clus[i]] + u[i,4,clus[i]]*X[j,4]) + inprod(beta[1,1:4,clus[i]], X[j,3:6])   
  mu_y[j,2]<-  (u[i,2,clus[i]] + u[i,5,clus[i]]*X[j,4]) + inprod(beta[2,1:4,clus[i]], X[j,3:6])
  mu_y[j,3]<-  (u[i,3,clus[i]] + u[i,6,clus[i]]*X[j,4]) + inprod(beta[3,1:4,clus[i]], X[j,3:6])

  #Model for NA imputation
  y[j,3] ~ dnorm( mu_y[j,1], tau[clus[i],1])
  y[j,4] ~ dnorm( mu_y[j,2], tau[clus[i],2])
  y[j,5] ~ dnorm( mu_y[j,3], tau[clus[i],3])

  #log density
  ldy[j]<-(logdensity.norm(y[j,3], mu_y[j,1], tau[clus[i],1]) +
             logdensity.norm(y[j,4], mu_y[j,2], tau[clus[i],2]) +
             logdensity.norm(y[j,5], mu_y[j,3], tau[clus[i],3]) )

} #loop of j


#log probability (pi[i,c])
#-------------------------
log_pi[i]= log(pi[i,clus[i]])


#Zeros trick in JAGS for JM
#---------------------------------
loglk[i] = (log_pi[i] + sum(ldy[offset[i]:(offset[(i+1)]-1)]) + ldu[i] )

phi_poi[i] = Const- loglk[i]
zeros[i] ~ dpois(phi_poi[i])

}#loop of i

#Prior
#-------------------------------------

#The cluster
for(c in 1:(nCluster-1))
{

for(l in 1:n_fix)
{
  phi[c,l] ~dunif(-100,100) #Coefficients of intercept and covariates
}

}

for(c in 1:nCluster)
{

#Error Variance
#-----------------------------------
for(k in 1:3)
{
  tau[c,k] ~ dgamma(0.001,0.001)
  sig[c,k] = 1/tau[c,k]
}



#Cov matrix for Random Effect
#-----------------------------------

D_inv[1:6,1:6,c] ~ dwish(Omega[,], 7)
D[1:6,1:6,c] <-inverse(D_inv[1:6,1:6,c])


#Beta
#-----

for(h in 1:4)
{
  beta[1,h,c]~dnorm(0,0.001)
  beta[2,h,c]~dnorm(0,0.001)
  beta[3,h,c]~dnorm(0,0.001)
}

}
}

Please help me resolve this

Discussion

Anonymous
Anonymous

Add attachments
Cancel