model {
	### Calculate x from log x
	for (i in 1:N) {
		x[i] <- pow(10, log10x[i])
	}
	
	### Calibration data
	# Each ISE emf response is based on x and a, b, c, and tau for the particular ISE
	for (i in 1:N) {
		emf[i] ~ dnorm(mu.emf[i], Tau[i])
		mu.emf[i] <- a[ISEID[i]] + b[ISEID[i]] *log(x[i] + c[ISEID[i]])/log(10)
		Tau[i] <- tau[ISEID[i]]
	}
	
	### Priors for each ISE
	for (j in 1:R) {
		a[j] ~ dnorm(0, 0.000001)
		#############################
		# ISE-specific priors       #
		b[j] ~ dnorm(mu.b, 0.01)    #
		cstar[j] ~ dunif(0.1, 0.5)  #
		sigma[j] ~ dunif(0,10)      #
		#############################

		# Logical nodes
		c[j] <- pow(cstar[j], 10)
		logsigma[j] <- log(sigma[j])
		tau[j] <- 1/(sigma[j]*sigma[j])

	}

	### Experimental samples
	for (i in 1:M) {
		##################################
		# Prior on log x                 #
		log10x.exp[i] ~ dunif(-12, -2)   #
		################################## 
		x.exp[i] <- pow(10, log10x.exp[i])
	}
	
	for (i in 1:M.obs) {
		x.sa[i] <- (V.s[i]*x.exp[xID.exp[i]] + V.add[i]*conc.add[i])/(V.s[i] + V.add[i])	
		delta.emf[i] ~ dnorm(mu.delta.emf[i], Tau.delta.emf[i])
		mu.delta.emf[i] <- b[ISEID.exp[i]] *log((x.sa[i] + c.sa[i])/(x.exp[xID.exp[i]] + c[ISEID.exp[i]]))/log(10)
		c.sa[i] <- c[ISEID.exp[i]]*(V.s[i]/(V.s[i]+V.add[i]))

		# SD of an individual measurement
		Tau.exp[i] <- tau[ISEID.exp[i]]
		SD.exp[i] <- 1/sqrt(Tau.exp[i])

		# SD of difference of two measurements
		SD.delta.emf[i] <- sqrt(2)*SD.exp[i]
		Tau.delta.emf[i] <- 1/(pow(SD.delta.emf[i], 2))		
	}
}