Model 1 model { for (i in 1:N) { lns[i] ~ dnorm(mu[i], tau[group[i]]) mu[i] <- alpha[group[i],1] + alpha[group[i],2] * mtetemp[i] } for (i in 1:Ngroups) { alpha[i, 1:2] ~ dmnorm(beta[1:2],taubeta[1:2,1:2]) tau[i] ~ dgamma(0.001, 0.001) sigma[i] <- pow(tau[i], -0.5) } taubeta[1:2,1:2] ~ dwish(Q[1:2,1:2],2) for (j in 1:2) { beta[j] ~ dnorm(0, 0.001) } for (i in 1:2) { for(j in 1:2) { Q[i,j] <- equals(i,j) } } } Model 2 model { for (i in 1:N) { lns[i] ~ dnorm(mu[i], tau[group[i]]) mu[i] <- alpha[group[i],1] + alpha[group[i],2] * temp[i] } for (i in 1:Ngroups) { alpha[i, 1:2] ~ dmnorm(beta[1:2], taubeta[1:2,1:2]) tau[j] ~ dgamma(0.001, 0.001) sigma[j] <- pow(tau[j], -0.5) } for (i in 1:N) { temp[i] ~ dnorm(mtetemp[i], tautemp) } taubeta[1:2,1:2] ~ dwish(Q[1:2,1:2],2) for (j in 1:2) { beta[j] ~ dnorm(0, 0.001) } for (i in 1:2) { for(j in 1:2) { Q[i,j] <- equals(i,j) } } sigmatemp ~ dnorm(0, 0.5) I(0,) tautemp <- pow(sigmatemp, -2) } Model 3 model { for (i in 1:N) { lns[i] ~ dnorm(mu[i], tau[group[i]]) mu[i] <- alpha[group[i],1] + alpha[group[i],2] * mtetemp[i] } for (j in 1:Ngroups) { tau[j] ~ dgamma(0.001, 0.001) sigma[j] <- pow(tau[j], -0.5) alpha[j, 1:2] ~ dmnorm(beta[j, 1:2],taubeta[1:2,1:2]) for (k in 1:2) { beta[j, k] <- gamma[1, k] + gamma[2,k]*log(latmean[j]) + gamma[3, k]*log(latrange[j]) } } for (j in 1:3) { for(k in 1:2) { gamma[j,k] ~ dnorm(0, 0.001) } } taubeta[1:2,1:2] ~ dwish(Q[1:2,1:2],2) for (i in 1:2) { for(j in 1:2) { Q[i,j] <- equals(i,j) } } }