model { mu ~ dbeta(1,1) degrees <- mu*360 cosmu <- cos(mu*2*3.14159265359) sinmu <- sin(mu*2*3.14159265359) kappa ~ dnorm(1,1) lambda <- kappa*kappa/4 I0 <- 1 + lambda + pow(lambda,2)/4 + pow(lambda,3)/36 + pow(lambda,4)/576 + pow(lambda,5)/14400 for (i in 1:n) { zeros[i] <- 0 eta[i] <- 360*(hr[i]+min[i]/60)/24 coseta[i] <- cos(eta[i]*3.14159265359/180) sineta[i] <- sin(eta[i]*3.14159265359/180) phi[i] <- -kappa*coseta[i]*cosmu-kappa*sineta[i]*sinmu+log(I0)+6 zeros[i] ~ dpois(phi[i]) } } data; list(n=21, hr=c(00,03,04,07,08,10,11,12,13,14,16,16,17,17,17,18,18,18,19,20,22), min=c(56,08,52,16,08,00,24,08,28,16,20,44,04,20,24,08,16,56,32,52,08)) inits; list(mu=0.5,kappa=1) Note: We use here the section "Tricks: Advanced Use of the BUGS Languge", subsection "Specifying a new sampling distribution" from the WinBUGS User Manual at http://www.mrc-bsu.cam.ac.uk/bugs/winbugs/manual14.pdf