Anda di halaman 1dari 5

Monte Carlo Simulation of Ising Spin Model

Requirement: How to simulate an Ising spin system?


To use Metropolis importance sampling method to study Let P(C) denote the probability that the Ising spin system
Ising square lattice. is in a microstate C. In a canonical ensemble of
microstates,
Model Introduction
1
In the Ising model, a spin has only two states: an up state P(C) = exp[- β E(C)] [3]
Ζ( β )
and a down state. Denote the spin variable by the symbol
S i . In the model: Where the normalization (partition function) is given by

S i = +1: denotes the up state Ζ( β ) = exp[− β E (C )] Z(ß) [4]


S i = -1 : denotes the down state C
E(C) is the energy of the microstate C.
Organize the spins on a square lattice. The index i refers
A Boltzmann weight given by exp[- β E (C ) ] is
to the lattice site. Let i and j refer to two nearest neighbor
associated with the microstate C. A simple minded
sites on the lattice and S i and S j be the spins on these
Monte Carlo approach will sample microstates from a
lattice sites. The energy associated with the pair of micro canonical ensemble, with each microstate having
nearest neighbor spins is given by: weight unity, and carry out weighted average. But the
time required to sample all the spin configurations is not
ε i, j = − J ⋅ S i ⋅ S j [1] feasible due to limitations of computing. Hence we resort
to importance sampling. The idea is to select spin
When the two spins are aligned (up or down), the energy configurations randomly and independently from the
associated with them is -J; when not, the energy distribution
associated with the pair is +J. The value of J measures
the strength of the spin-spin interaction. If J is positive, 1
P(C) = exp[- β E(C)] [5]
the interaction is ferro-magnetic. If J is negative, the Ζ( β )
interaction is anti-ferromagnetic.
This is done by generating Markov chain and using the
Consider now Ising spins on a lattice. The energy Metropolis algorithm. In the following sections I will be
associated with a spin configuration C is given by, concentrate on presenting the results of my simulations.

H(C) = -J S i (C ) ⋅S j (C ) Si(C) [2] How to calculate the required physical quantities?


i, j

Required macroscopic property is calculated by


Where, the symbol i, j denotes that the sites i and j are averaging over the ensemble constructed as per the
nearest neighbor sites in the lattice. The sum is taken Metropolis algorithm. For example, energy is given by,
over all distinct pairs of nearest neighbor sites in the
lattice. In the following discussion consider J > 0. E(C) = -J S i (C ) S j (C ) [6]
i, j

When the Ising spin system is in the configuration C.


Magnetization in the microstate C is given as:
M (C ) = S i (C ) [7] hence no net macroscopic magnetization. The system
i transforms from a disordered paramagnetic to an ordered
The above and any other macroscopic quantity of interest ferromagnetic phase, when the temperature is lowered
can be averaged over an ensemble generated by the below a critical value called the Critical Temperature
Monte Carlo algorithm. (Tc ) .
Let xi = x(C i ) be the value of a macroscopic variable x
when the system in the microstate C i . The macroscopic
variable x can denote M, E, E 2 , M 2 etc. Let {x i : i = 1,
N } be N successive values of x generated by Metropolis
Monte Carlo after the system has equilibrated. The
average of x can be evaluated over the sample of size N,
and is given as:

N
− 1
xN = xi [8]
N i =1

Which in the limit of N → ∞ gives x . From the


ensemble one can estimate all the macroscopic properties
of the Ising spin system like E , M , Specific heat is
given as :
2
δE E2 − E Plot [1]: Temperature variation of Internal Energy with
Cv = = [9]
δT k BT 2 varying Lattice Sizes
and the magnetic susceptibility given by
2 By varying the system size it is observed that the
δM M2 − M variation of internal energy becomes steeper near Tc as
χ= = [10]
δT k BT the system size is increased. This can be seen from plot
[1] .

The Monte Carlo estimate ( x N ) is always associated
with statistical error since N is finite. We must ensure
that the Markov process has equilibrated before using Temperature dependence of Order Parameter for
simulation data. Also we must check if the average different system sizes
converges to a constant value.
The energy remains the same if all the spins are flipped.
When the temperature is lowered below a critical
value (Tc ) , even in the absence of an external field, the
symmetry is broken. This is called spontaneous
symmetry breaking. By keeping in mind this
phenomenon of Ising model, I plotted the ensemble
Temperature dependence of Internal Energy for averages of absolute value of the order parameter.
different system sizes
From plot [2] it is observed that for T < Tc the order
From Ising Hamiltonian E.q. [2] the energy is lowest
when all the spins are aligned, either up or down. It is parameter behaves independent of lattice size. But for
seen that the Ising spin system at very low temperature, T > Tc the tail at the higher temperatures is prominently
k B T << J, will have low energy, aligned spins and large different for different lattice sizes.
magnetization. At very high temperature, the spin system
will have high energy, randomly oriented spins and
It can be seen that as the system size increases the
specific heat peak shifts towards the low temperature
such that the peak is centered with Tc .

Susceptibility Using Magnetization Fluctuations

From plot. [4]: Of magnetic susceptibility and


temperature it can be seen that as the system size
increases the width of the magnetic susceptibility curve
decreases and the corresponding height of the peak
increases such that the area under the curve is constant. It
is also observed that the rate (exponent) with which the
susceptibility increases as T → Tc is greater than that of
specific heat curve

Plot [2]: Temperature variation of Order Parameter


with varying Lattice Sizes

Specific Heat Using Energy Fluctuations

From e.q [9] the specific heat can be calculated for the
equilibrated ensemble for various system sizes. Plot [3]
shows the variation of specific heat with temperature for
varying system sizes. It can be seen that as the system
size increases the width of the specific heat curve
decreases and the corresponding height of the peak
increases such that the area under the curve is constant.

Plot [4]: Temperature variation of Magnetic


Susceptibility with varying Lattice Sizes

As the system size increases the susceptibility curve peak


shifts towards the low temperature side such that the
peak is centered with Tc .

Comparison of Specific Heats Using Fluctuations and


Numerical Differentiation

Eq. [9] shows two ways of computing the specific heat:


using numerical differentiation of internal energy and
using the energy fluctuations. In this section the results
obtained from two mentioned ways of calculations are
presented along with statistical error bars.
Plot [3]: Temperature variation of Specific heat with
varying Lattice Sizes
Comment on dependence of Data on Runs

It can be seen in plot. [7] that for a fixed system size (10
x 10) as the no. of MC runs increases the accuracy of the
estimate increases, standard deviation (error) also
decreases (as expected from formula). With varying
temperatures, the ensemble average values the
observables for e.g. order parameter are smoother with
less variations, as the number or runs is increased. This is
seen in plot. [8].

Plot. [5]: compares the ‘data-quality’ of specific heat


calculations using numerical differentiation and
fluctuations in internal energy.

We need to sample the system at very small temperature


increments near the critical temperature to study the
critical phenomenon. In the plot, near the T c the
temperature increment is smaller as compared to other
regions of temperature ‘away’ from T c . But having a
very small temperature increment introduces large
statistical errors in the derivative calculations as can be Plot. [7]: Effect of varying the MC runs on precision
seen from plot. [5]. These errors are reduced when (error) of data
specific heat is calculated using the fluctuations in
internal energy.

Dependence of Data on Lattice Size

This has been discussed in previous sections while


explaining plots. [1], [2], [3], [4]. The locations of the
peaks for specific heat and magnetic susceptibility curves
are summarized below in Tables. [1], [2]:

Size T c estimate Max C v


10 2.36 1.309(2)
20 2.30 1.667(5)
40 2.29 2.004(1)
Table. [1]: locations of peaks of C v

Size T c estimate Max χ


10 2.47 2.027(6) Plot. [8]: Effect of varying the MC runs on accuracy
20 2.38 9.05(5) (average values) of data
40 2.32 31.12(4)
Table. [2]: locations of peaks of χ
Estimate for Infinite Lattice T c (L = ∞ )

Suppose we plot U L 4 against T for some lattice of size


L'
L. Then plot U 4 for another lattice of size L'> L.

'
If T < T c : we shall obtain U L 4 >UL 4
L' L
If T > T c : then U 4 <U 4

L
Thus when graphs of U 4 against T are plotted for a
number of lattice sizes they should intersect at a point (or
at least their pairwise intersections should be fairly
close), the T-value of the intersection point gives an
estimate of T c .

For a suitable scaling function U, Plot. [9]: Variation of U 4 with T for three system sizes
1
L T
U 4 = U [ ( - 1). L n ] [11]
Tc

where n is the critical exponent of the correlation length.


~END~
Thus when T = T c:
1
L
U 4 = U ( 0. L ) = U (0), so at (T c . U L 4 )
n

has a value independent of L, and so the graphs of U L 4


against T for various L should all pass through a single
point at T c

Thus to get the estimate for the T c for infinite system size
I plot Fourth-order cumulant against T for three values of
sizes. The plot. [9] Shows these plots showing the
temperature-region where they intersect each other.

I see that the U 4 plots mutually intersect at three points


which give an average T c (L = ∞ ) = 2.26(1). Thus I
choose 2.26 as T c (L = ∞ ) . The precision of my estimate
is limited by the temperature increment (=0.01) I used in
the simulation.

T c (L = ∞ ) = 2.26(1) [12]

Anda mungkin juga menyukai