0% found this document useful (0 votes)
2 views14 pages

SM CompLecture3

This document outlines a computational lab for PHYS3934 Statistical Mechanics focused on universality and critical exponents, specifically in the context of the Ising model. It includes tasks for simulating cluster-size statistics and understanding power-law distributions near critical points, as well as an introduction to the renormalization group concept. The lab encourages exploration of statistical behaviors and transformations in the Ising model to illustrate critical phenomena and universality in physical systems.

Uploaded by

gzl18121101406
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views14 pages

SM CompLecture3

This document outlines a computational lab for PHYS3934 Statistical Mechanics focused on universality and critical exponents, specifically in the context of the Ising model. It includes tasks for simulating cluster-size statistics and understanding power-law distributions near critical points, as well as an introduction to the renormalization group concept. The lab encourages exploration of statistical behaviors and transformations in the Ising model to illustrate critical phenomena and universality in physical systems.

Uploaded by

gzl18121101406
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

PHYS3934 Statistical Mechanics (Adv)

Computer Lab 3:
In this computational lab we will cover:
- PART 1: Universality and Critical Exponents

We will not cover


- PART 2: The Renormalization Group ( )
but it is fun and we leave the material in the slides as a (FYI) in
case you are interested to learn more about this framework
PART 1: Universality and Critical Exponents
• Re-download this GitHub repository (We made some minor changes to the [Link] function )
• We'll use the [Link] function to get statistics on cluster sizes
• Second-order phase transitions are characterized by additional distinguishing features near their critical point:
• Power-law decay of correlations
• Power-law statistics of macroscopic thermodynamic quantities.
• Universality: (amazingly) these features depend on basic properties of the system (e.g., its dimension, the range of interactions) but
not on the microscopic details of the underlying Hamiltonian.
• The power-law scaling of thermodynamic quantities can be characterized by critical exponents, in terms of a dimensionless
temperature, :

• Heat capacity, .

• Magnetization, ;
• Magnetic susceptibility, ,
• Correlation length, ,

Cluster-size statistics in the Ising Model
❓ !
• Let's test the power-law statistics of the Ising
model at
• The distribution of cluster sizes.
• Define a cluster as a set of spins that are
connected through pairs of aligned neighbors
• Clusters of an example grid shown.
• The ClusterSizeStats function labels all clusters
(shown using coloring) and returns their sizes.
• What do you think the distribution of cluster
sizes will look like at low and high ?
• Note: At , if powerlaw, , then we
have a straight line on loglog:
Cluster-size statistics in the Ising Model

• Task 1. Simulate a typical equilibrium state • Task 2. [Doesn't work in Python] Incorporate
of the 2D Ising Model at: (i) low ; (ii) ; the ClusterSizeStats function into
and (iii) high . SampleGrid, replacing IsingPlot with code
shown below.
• Recall: Wolff sampling is efficient near
. • Watch the cluster-size distribution
change as the sampler settles down to
• Use as big a grid as you can
the equilibrium distribution.
( ) Why is bigger better?
• Use intuition from Task 1 to interpret the
• Zoom in/out! Are the statistics self-similar? cluster distributions.
(is the structure similar at different
scales?) % Matlab: (Replace IsingPlot in SampleGrid with):
if mod(t,everyT)==0
ClusterSizeStats(grid);
• Use ClusterSizeStats to investigate how drawnow()
the cluster-size distribution depends on . end
The critical point ('between order and disorder')
The critical point ('between
order and disorder')
!
• A sight you will never forget!!
• Straight line on logarithmic axes
consistent with the power-law
distribution, .

• Zoom in/out! Does the cluster structure


look self-similar across different scales?
• (consistent with rescaling space,
for some scaling factor, )?
• Another name for this is a scale-free
distribution
!
PART 2: (FYI) The
Renormalization Group ( )
!
• A general framework for understanding critical
phenomena
• (FYI: not a group, and unrelated to renormalized
fields ).
• The basic idea is to reduce the enormous number
of degrees of freedom in a typical many-body
system to a smaller number of variables that leave
the essential physics that we're interested in
intact.
• In the Ising model we will think of a spatial coarse-
graining:
• Does smearing out the microscopic details of
the model leave the physics intact?
The Block-Spin Transformation

• Let's play with an example of a


renormalization group transformation: a
block-spin transformation:

1. Start with a lattice

2. Divide (coarse-grain) into non-


overlapping blocks.

3. For each block, replace the spins in


that block by a single spin whose
state is given by the majority vote of
the spins in the block.
The Block-Spin Transformation
❓ # "
• We can think about the transformation as mapping
a state at to a new state at new state at , as
.
• So continued applications the block-spin
transformation define a flow through .

• What would it mean about the physics at a fixed-


point of the flow ( )

• The physics is invariant to rescaling in space

• This idea of flows through a given transformation is


key to understanding universality
• the common macroscopic properties of systems
with different microscopic physics (esp. near
critical points).
Spoiler: Renormalization Group
Flow
!
• See if you can numerically deduce a flow like
this:

• The critical point of the Ising model, , is a


fixed point of the block-spin renormalization
group flow.
• The statistics of the Ising model are scale
invariant at the critical point.

• And not just the Ising Model!


• Universality: We can unite the macroscopic
behavior of systems with different
microscopic details via their renormalization
group flow.
Your mission
• Q1 Write a function, CoarseGrain(), that • Q3 Run a Metropolis sampler on a grid at
implements a block-spin transformation of a given temperature until it settles on a typical
a given input grid. equilibrium state.
• Complete the missing parts (labeled ...) from • What do you notice about the block
the template on the next slide. transformation?
• Q2 Plot the result on a sample grid (e.g., a random • You should find that the coarse-grained
) and check that it works. ( ) grid resembles a typical state of the
system at a different temperature.
• Edit SampleGrid so that you can watch both the
full-size and coarse-grained version as you run • Repeat for different temperatures. At what
a sampling algorithm. temperatures does the transformed grid look
like a lower- or higher-temperature version of
the original?
• Reason about the fixed points of repeated
applications of the block-spin transformation?
(the renormalization group flow).
Matlab version Python version
function newGrid = CoarseGrain(grid) import numpy as np
% 3 x 3 majority-vote coarse-graining of an input grid
%------------------------------------------------------------- def coarse_grain(grid):
# 3 x 3 majority-vote coarse-graining of an input grid
% Check square grid #------------------------------------------------------------
assert(size(grid,1)==size(grid,2))
N = size(grid,1); # Check square grid
% Check 3N x 3N grid for some integer N assert [Link][0] == [Link][1]
assert(rem(N,3)==0) N = [Link][0]

newGrid = zeros(N/3,N/3); # Check 3N x 3N grid for some integer N


assert N % 3 == 0
for i = 1:N/3
ii = (i-1)*3+1; new_grid = [Link]((N // 3, N // 3), dtype=int)
for j = 1:N/3
jj = (j-1)*3+1; for i in range(N // 3):
ii = i * 3
% Get the local 3x3 grid: for j in range(N // 3):
localGrid = ...; jj = j * 3

% Determine majority spin: # Get the local 3x3 grid:


newGrid(i,j) = ...; local_grid = ...
end
end # Determine majority spin (mode of the 3x3 block):
new_grid[i,j] = ...
end
return new_grid
We done here
" ! #
• Thank you all for your engagement with this course—hope you
enjoyed it

• Please fill the USS survey and share feedback with your
friendly staff-student liaison

You might also like