Mean field self consistency single site.py
From Werner KRAUTH
(Difference between revisions)
Revision as of 16:01, 8 November 2016 Werner (Talk | contribs) ← Previous diff |
Revision as of 21:39, 3 November 2019 Werner (Talk | contribs) Next diff → |
||
Line 1: | Line 1: | ||
+ | This page presents the Python2 program Mean_field_self_consistency_single_site.py, that obtains the most basic self-consistency solution for the Ising model. | ||
+ | |||
+ | __FORCETOC__ | ||
+ | =Reference= | ||
+ | |||
+ | This program is discussed in [[ICFP_Stat_Physics_2019|Lecture 08]] of my 2019 ICFP lecture on Statistical physics: "Mean-field theory: The three pillars". | ||
+ | |||
+ | =Description= | ||
+ | |||
+ | |||
+ | =Program= | ||
+ | |||
+ | |||
import random, math, pylab | import random, math, pylab | ||
Line 22: | Line 35: | ||
pylab.show() | pylab.show() | ||
- | [[Category:ICFP Lectures]] | + | =Version= |
+ | See history for version information. | ||
+ | |||
+ | [[Category:Python]] [[Category:ICFP]] |
Revision as of 21:39, 3 November 2019
This page presents the Python2 program Mean_field_self_consistency_single_site.py, that obtains the most basic self-consistency solution for the Ising model.
Contents |
Reference
This program is discussed in Lecture 08 of my 2019 ICFP lecture on Statistical physics: "Mean-field theory: The three pillars".
Description
Program
import random, math, pylab dim = 2 q = 2.0 * dim Tc = 2.0 * dim m_vec = [1.0] T_vec = [0] for iter in range(-1000, 1000): t = iter / float(1100.0) beta = (t * Tc + Tc) ** (-1) T_vec.append(1.0 / beta) m = 0.1 for iter2 in range(1000): m = math.tanh(beta * q * m) m_vec.append(m) pylab.plot(T_vec, m_vec) pylab.title('Weiss self-consistency for the Ising model in $d$ = ' + str(dim) + ' dimensions') pylab.xlabel('$T$ (Temperature)', fontsize=18) pylab.ylabel('$m$ (magnetization per site)', fontsize=18) pylab.savefig('mean_field_self_consistency_Ising.png') pylab.show()
Version
See history for version information.
Categories: Python | ICFP