In my last post, I mentioned that I was trying to estimate the critical temperature of the Potts model by simulation. As it turns out, there is an equation to calculate the critical value of β exactly for a 2D lattice. Details after the jump.

Kramers & Wannier derived the critical temperature of the Ising model on a regular 2D lattice in their 1941 paper:

$\frac{J}{kT_c} = 0.8814$

The book chapter of Hurn, Husby & Rue (2003; p94) states in equation (3.13) that $\beta_{\textrm{critical}} = \log\left(1 + \sqrt{2}\right) = 0.881373\dots$

However, this is contradicted by Marin & Robert (2007) who report a value of $2.269185$

So, which is it? First of all, the parameter β is known as the inverse temperature by reference to the origins of the Potts/Ising model in statistical mechanics. The relationship between the critical temperature $\mathrm{T}_c$ and the value of the parameter $\beta_c$ is as follows:

$\beta_c = \frac{2\mathrm{J}}{k\mathrm{T}_c}$

Therefore it makes sense that the value reported by Marin & Robert happens to be $2 \times \beta_c^{-1}$. Now that I’ve fixed the major bugs in my code, I’m able to verify this by simulation:

library(PottsUtils)
library(bayesImageS)

k <- 2
bcrit <- 2/log(1 + sqrt(k))
beta <- seq(0,2.5,by=0.1)
counts <- matrix(0,length(beta),1000)
neigh <- getNeighbors(matrix(1,100,100), c(2,2,0,0))
block <- getBlocks(matrix(1,100,100), 2)
for (i in 1:length(beta)) {
print(beta[i])
print(system.time(result <- mcmcPottsNoData(beta[i],k,neigh,block,11000)))
counts[i,] <- result\$sum[10001:11000]
}

## [1] 0
## user system elapsed
## 19.53 2.89 8.29
## [1] 0.1
## user system elapsed
## 44.36 2.35 15.79
## [1] 0.2
## user system elapsed
## 43.88 2.42 14.68
## [1] 0.3
## user system elapsed
## 41.12 2.65 14.19
## [1] 0.4
## user system elapsed
## 39.34 2.48 14.08
## [1] 0.5
## user system elapsed
## 38.47 2.45 13.16
## [1] 0.6
## user system elapsed
## 38.69 2.70 13.12
## [1] 0.7
## user system elapsed
## 35.56 2.67 12.52
## [1] 0.8
## user system elapsed
## 34.88 3.06 12.27
## [1] 0.9
## user system elapsed
## 31.38 2.28 11.45
## [1] 1
## user system elapsed
## 29.72 2.55 10.87
## [1] 1.1
## user system elapsed
## 29.73 2.27 10.73
## [1] 1.2
## user system elapsed
## 27.68 2.69 10.45
## [1] 1.3
## user system elapsed
## 28.69 2.31 11.03
## [1] 1.4
## user system elapsed
## 28.03 2.73 10.51
## [1] 1.5
## user system elapsed
## 28.07 2.78 10.55
## [1] 1.6
## user system elapsed
## 26.43 2.46 10.30
## [1] 1.7
## user system elapsed
## 27.35 2.42 10.55
## [1] 1.8
## user system elapsed
## 26.46 2.67 10.30
## [1] 1.9
## user system elapsed
## 29.42 2.29 10.50
## [1] 2
## user system elapsed
## 28.47 2.45 10.45
## [1] 2.1
## user system elapsed
## 27.98 3.12 10.38
## [1] 2.2
## user system elapsed
## 28.38 2.69 10.48
## [1] 2.3
## user system elapsed
## 29.08 2.48 10.45
## [1] 2.4
## user system elapsed
## 28.32 2.51 10.51
## [1] 2.5
## user system elapsed
## 27.68 2.59 10.54

x <- rep(beta,each=1000)
y <- as.vector(t(counts))
plot(x, y, xlab = expression(beta), ylab = "identical neighbours", main = "Critical temperature of the 2D Ising model")
abline(v = bcrit, col = "red")
abline(v = log(1 + sqrt(2)), col = "blue")

## References

Hurn M A, Husby O K & Rue H (2003) A Tutorial on Image Analysis in Møller J (ed.) Spatial Statistics and Computational Methods Lecture Notes in Statistics 173, Springer-Verlag: Berlin

Kramers H A & Wannier G H (1941) Statistics of the Two-Dimensional Ferromagnet. Part I Phys. Rev. 60 252, 263

Marin J M & Robert C P (2007) Bayesian Core: A Practical Approach to Computational Bayesian Statistics Springer-Verlag: New York

Onsager L (1944) A Two-Dimensional Model with an Order-Disorder Transition Phys. Rev. 65 117

From → R

1. Critical point, continued | Matt Moores
2. Interactive image stacks in R | Matt Moores
Ella Kaye on Ella Kaye

Computational Bayesian statistics

Bayes' Food Cake

A bit of statistics, a bit of cakes.

RWeekly.org - Blogs to Learn R from the Community

Computational Bayesian statistics

Richard Everitt's blog

Computational Bayesian statistics

Let's Look at the Figures

David Firth's blog

Nicholas Tierney

Computational Bayesian statistics

Sweet Tea, Science

Two southern scientistas will be bringing you all that is awesome in STEM as we complete our PhDs. Ecology, statistics, sass.

Musings, useful code etc. on R and data science

Another Astrostatistics Blog

The random musings of a reformed astronomer ...

Darren Wilkinson's research blog

Statistics, computing, data science, Bayes, stochastic modelling, systems biology and bioinformatics

Computational Bayesian statistics

Igor Kromin

Computational Bayesian statistics

Statisfaction

I can't get no

Xi'an's Og

an attempt at bloggin, nothing more...

Sam Clifford

Postdoctoral Fellow, Bayesian Statistics, Aerosol Science