model { Tau.noninformative <- 1.0E-2 Tau.gamma <- 1.0E-2 # Observation for (i in 1:N.quad) { Total.mass[i] ~ dnorm(top.mass[i], tau[1]) top.mass[i] <- pnpp[i, Top.sp[i]] for (j in 1:N.sp) { MassA[i, j] ~ dnorm(massA[i, j], tau[1]) massA[i, j] <- pnpp[i, j] * pnpp[i, j] / sum.pnpp[i] } } # Potential GPP and competitive ability for (i in 1:N.quad) { sum.pnpp[i] <- sum(pnpp[i,]) for (j in 1:N.sp) { pnpp[i, j] <- exp(log.pnpp[i, j]) log.pnpp[i, j] ~ dnorm(mu.log.pnpp[i, j], tau[2]) mu.log.pnpp[i, j] <- ( betaB[1] + betaB[2] * Alt[i] + betaS[1, j] + betaS[2, j] * Alt[i] + betaB[3] * Tree[j] + betaB[4] * Evergreen[j] ) } } # Parameters and hyper parameters for (k in 1:N.betaB) { betaB[k] ~ dnorm(0, Tau.noninformative) } for (k in 1:N.betaS) { for (j in 1:N.sp) { betaS[k, j] ~ dnorm(0, tau.betaS[k]) } tau.betaS[k] ~ dgamma(Tau.gamma, Tau.gamma) } for (k in 1:N.tau) { tau[k] ~ dgamma(Tau.gamma, Tau.gamma) } }