solution (pdf file)

H*13.1*L
x := 2 RandomInteger@D - 1;
p@n_D := Table@x, 8n<D;
q@n_D := Accumulate@p@nDD;
r@n_D := ListLinePlot@q@nDD;
p@10D
q@10D
r@10D
81, 1, - 1, - 1, - 1, 1, 1, - 1, - 1, - 1<
8- 1, - 2, - 1, - 2, - 3, - 4, - 3, - 2, - 1, - 2<
2
1
2
4
6
8
10
100
200
300
400
500
-1
-2
r@500D
-5
-10
-15
-20
-25
-30
-35
Show@Table@r@500D, 820<D, PlotRange ® 8- 50, 50<D
40
20
100
-20
-40
200
300
400
500
2
Chapt13.prob.nb
fig1 = ListPlot@Variance@Table@q@10 000D, 81000<DD, PlotStyle ® YellowD
10 000
8000
6000
4000
2000
2000
4000
6000
8000
10 000
fig2 = Plot@x, 8x, 0, 10 000<, PlotStyle ® RedD
10 000
8000
6000
4000
2000
2000
4000
6000
8000
10 000
4000
6000
8000
10 000
Show@fig1, fig2D
10 000
8000
6000
4000
2000
2000
H*13.2*L
x := 2 RandomInteger@D - 1;
p@n_D := Table@8x, x<, 8n<D;
q@n_D := Accumulate@p@nDD;
r@n_D := ListLinePlot@q@nD, AspectRatio ® 1D;
s@n_D := ListLinePlot@q@nD, AspectRatio ® Automatic,
PlotRange ® 88- Sqrt@4 nD, Sqrt@4 nD<, 8- Sqrt@4 nD, Sqrt@4 nD<<D
Chapt13.prob.nb
p@10D
q@10D
r@10D
881, 1<, 81, 1<, 8- 1, 1<, 8- 1, 1<, 81, 1<, 8- 1, 1<, 8- 1, - 1<, 8- 1, 1<, 8- 1, - 1<, 8- 1, 1<<
88- 1, 1<, 80, 0<, 81, 1<, 80, 0<, 8- 1, - 1<, 80, - 2<, 81, - 1<, 82, 0<, 83, 1<, 82, 0<<
-1
-2
-3
-4
-5
-6
-1.0
0.5
-0.5
1.0
1.5
2.0
r@5000D
100
80
60
40
20
-40
20
-20
-20
40
3
4
Chapt13.prob.nb
Show@Table@s@5000D, 820<DD
100
50
-100
50
-50
-50
-100
100
Chapt13.prob.nb
fig0 = ParametricPlot@Sqrt@2D Sqrt@5000D 8Cos@tD, Sin@tD<, 8t, 0, 2 Pi<, PlotStyle ® RedD;
fig1 = ListPlot@Table@q@5000D@@5000DD, 81000<D, AspectRatio ® 1D;
Show@fig1, fig0D
200
100
-200
100
-100
200
-100
-200
H*13.3*L
H* def *L
H* Nearlest Neibher *L
nn@f_, p_D := Table@f@@Mod@i - 1 - p, NND + 1DD + f@@Mod@i - p, NND + 1DD, 8i, 1, NN<D;
H* p = H0 or 1L for Heven or oddL site *L
SeSo@f_, g_D :=
Table@If@EvenQ@iD, g@@Mod@i  2 - 1, NND + 1DD, f@@Mod@Hi - 1L  2, NND + 1DDD, 8i, 1, 2 NN<D;
H* Heat Bath Method ; spin = 2Hn-12L = 1,-1 ; n=1,0 *L
hbm@f_D := Table@RandomChoice@
8E ^ HBB 2 Hf@@iDD - 1LL, E ^ H- BB 2 Hf@@iDD - 1LL<
® 81, 0<D, 8i, 1, NN<D;
H* initial data *L
NN = 30;
BB = 1;
Mag = 8<;
Se = Table@RandomInteger@D, 8NN<D;
5
6
Chapt13.prob.nb
Do@8
nnSe = nn@Se, 0D; So = hbm@nnSeD;
nnSo = nn@So, 1D; Se = hbm@nnSoD;
S = SeSo@Se, SoD;
Mag = Append@Mag, Total@SD  NN - 1D
<, 8500<D
ListLinePlot@MagD
ArrayPlot@8S<D
0.6
0.4
0.2
100
200
300
400
500
-0.2
-0.4
-0.6
-0.8
H*13.4*L
H* def *L
NN = 2 MM;
nn@s_, p_D := H* p=1 or 0 for even or odd *L
Table@
s@@Mod@i - 2, NND + 1, Mod@j - 1, MMD + 1DD +
s@@Mod@i - 1, NND + 1, Mod@j - Mod@i + p, 2D - 1, MMD + 1DD +
s@@Mod@i - 1, NND + 1, Mod@j - Mod@i + p, 2D
, MMD + 1DD +
s@@Mod@i
, NND + 1, Mod@j - 1, MMD + 1DD, 8i, 1, NN<, 8j, 1, MM<D;
SeSo@f_, g_D := Table@
If@EvenQ@i + jD, f@@i, Ceiling@j  2DDD, g@@i, Ceiling@j  2DDDD, 8i, 1, NN<, 8j, 1, NN<D;
hbm@s_D := Table@RandomChoice@8E ^ HBB 2 Hs@@i, jDD - 2LL, E ^ H- BB 2 Hs@@i, jDD - 2LL< ® 81, 0<D,
8i, 1, NN<, 8j, 1, MM<D;
H* magnetization *L
magnetization@B_D := H
BB = B;
Do@8
nnSe = nn@Se, 1D; So = hbm@nnSeD;
nnSo = nn@So, 0D; Se = hbm@nnSoD;
S = SeSo@Se, SoD;
Mag = Append@Mag, Total@Total@SDD  HNN MML - 1D;
<, 81000<D;
ListLinePlot@MagD
L;
H* initial data *L
Clear@Se, So, S, MM, BB, kkD
NN = 30;
MM = 15;
Se = Table@RandomInteger@D, 8NN<, 8MM<D;
Mag = 8<;
Chapt13.prob.nb
magnetization@0D
ArrayPlot@SD
0.05
200
-0.05
400
600
800
1000
7
8
Chapt13.prob.nb
Se = Table@RandomInteger@D, 8NN<, 8MM<D;
Mag = 8<;
[email protected]
ArrayPlot@SD
0.4
0.2
200
-0.2
-0.4
-0.6
400
600
800
1000
Chapt13.prob.nb
Se = Table@RandomInteger@D, 8NN<, 8MM<D;
Mag = 8<;
[email protected]
ArrayPlot@SD
0.95
0.90
0.85
0.80
200
400
600
800
1000
9
10
Chapt13.prob.nb
-0.70
-0.75
-0.80
-0.85
-0.90
200
400
600
800
1000
H* B = 0 to 1 *L
kk = 0;
Se = Table@RandomInteger@D, 8NN<, 8MM<D;
Mag = 8<;
Do@8
kk = kk + 1;
BB = kk  1000;
nnSe = nn@Se, 1D; So = hbm@nnSeD;
nnSo = nn@So, 0D; Se = hbm@nnSoD;
S = SeSo@Se, SoD;
Mag = Append@Mag, Total@Total@SDD  HNN MML - 1D;
<, 8800<D
ListLinePlot@MagD
Chapt13.prob.nb
1.0
0.8
0.6
0.4
0.2
200
400
600
800
200
400
600
800
-0.2
0.2
-0.2
-0.4
-0.6
-0.8
-1.0
11