From a22cebb370c01378af67b6dc06851101546c0191 Mon Sep 17 00:00:00 2001 From: Tridip Das Date: Tue, 3 Feb 2015 15:11:56 -0500 Subject: [PATCH 1/6] first version of Ising --- ising.f | 171 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 171 insertions(+) create mode 100755 ising.f diff --git a/ising.f b/ising.f new file mode 100755 index 0000000..b87a6e0 --- /dev/null +++ b/ising.f @@ -0,0 +1,171 @@ + PROGRAM ISING + ! 2D Monte Carlo simulation of Ising Model with Metropolis algorithm + ! Program written by Tridip Das + ! This program calculates magnetization with temperature variation + ! Susceptibility, Energy and Specific heat with temperature + ! Also finds the critical temperature at which magnetization is + ! lost. Scaled temperature is used here and kB assumed as 1 + ! + IMPLICIT NONE + ! Variable Declaration + INTEGER :: I, J, M, N + INTEGER, ALLOCATABLE :: A(:,:),AOLD(:,:),ANEW(:,:) ! 2D array containing spins + INTEGER :: NROWS, NCOLS ! Defining # of rows and columns + ! + REAL :: TEMPERATURE, BETA, MAGNETIZATION, ENERGY + REAL :: MAG2_AVG, ENERGY2_AVG, SUSP, Cv + REAL :: DELTA_E, MAG_AVG, RAND_NUM, ENERGY_AVG + INTEGER :: TEMP_ITER, ITER_AVG, MC_ITER, TEMP_VAR + INTEGER :: NO_OF_MC_STEPS, NO_OF_ITER, TEMP_STEPS + REAL :: T_INITIAL, T_FINAL, TEMP_INTERVAL, START, FINISH + ! + ! + ! + PRINT *, " MONTE CARLO SIMULATION OF 2D ISING MODEL " + PRINT *, " SIMULATION WITH METROPOLIS ALGORITHM " + PRINT *, " APPLYING PERIODIC BOUNDARY CONDITION " + PRINT *, "--------Code developed by Tridip Das------" + CALL CPU_TIME(START) + PRINT *, " Start time ", START + PRINT *, "------------------------------------------" + ! INPUT PARAMETERS FROM inpfile + ! OPEN(UNIT=11,FILE='inpfile',STATUS='OLD',ACTION='READ') + ! Uncomment below lines to get input from user + ! PRINT *, " PROVIDE THE NUMBER OF ROWS FOR ISING MODEL" + ! READ(*,*) NROWS + ! PRINT *, " PROVIDE THE NUMBER OF COLS FOR ISING MODEL" + ! READ(*,*) NCOLS + ! PRINT *, " NUMBER OF SIMULATION STEPS TO RUN FOR MC & +! & EQULIBRIATION " + ! READ(*,*) NO_OF_MC_STEPS + ! PRINT *, " NUMBER OF ITERATIONS TO PERFORM AT EACH TEMPERATURE & +! & STEP TO CALCULATE AVERAGE OVER MC PREDICTION" + ! READ(*,*) NO_OF_ITER + ! PRINT *, " PROVIDE INITIAL, FINAL TEMPERATURE AND INTERVAL" + ! PRINT *, " SEPARATED BY ENTER " + ! READ(*,*) T_INITIAL + ! READ(*,*) T_FINAL + ! READ(*,*) TEMP_INTERVAL + ! READ(11,*);READ(11,*) NO_OF_STEPS + ! READ(11,*);READ(11,*) NO_OF_ITER + ! READ(11,*);READ(11,*) T_INITIAL + ! READ(11,*);READ(11,*) T_FINAL + ! READ(11,*);READ(11,*) TEMP_INTERVAL + ! CLOSE(11) + ! + NROWS = 10 ; NCOLS = 10; + NO_OF_MC_STEPS = 1000; NO_OF_ITER = 10 + T_INITIAL = 1.0; T_FINAL = 4.0; TEMP_INTERVAL = 0.1 + TEMP_STEPS = INT((T_FINAL - T_INITIAL)/TEMP_INTERVAL) + ! + ALLOCATE(A(NROWS+2,NCOLS+2)) + ALLOCATE(AOLD(NROWS+2,NCOLS+2)) + ALLOCATE(ANEW(NROWS+2,NCOLS+2)) + ! + ! Initialize Spin array + A(:,:) = 1 + ! Write in a OUTPUT file + ! + OPEN(UNIT=31,FILE='Spin_states.out',STATUS='REPLACE', & + & ACTION='WRITE') + ! + OPEN(UNIT=33,FILE='Magnetization.out',STATUS='REPLACE', & + & ACTION='WRITE') + ! WRITE(32,*) T_INITIAL + ! WRITE(32,*) TEMP_INTERVAL + ! WRITE(32,*) T_FINAL + ! + WRITE(33,*) "Temperature ", " Iteration ", " Magnetization" + ! + OPEN(UNIT=32,FILE='temperature_sweep.dat',STATUS='REPLACE', & + & ACTION='WRITE') + WRITE(32,*) " Temperature ", " Magnetization ", & + & " Susceptibility ", " Energy ", " Cv " + ! + MAGNETIZATION = 0.0; ENERGY = 0.0; + ! + TEMP_SCAN: DO TEMP_ITER = 0, TEMP_STEPS + ! + TEMPERATURE = T_INITIAL + TEMP_ITER * TEMP_INTERVAL + BETA = 1.0/TEMPERATURE + MAG_AVG = 0.0; MAG2_AVG = 0.0 + ENERGY_AVG = 0.0; ENERGY2_AVG = 0.0 + ! + TAKE_AVG: DO ITER_AVG = 1, NO_OF_ITER + AOLD = A + ! + MONTE_CARLO: DO MC_ITER = 1, NO_OF_MC_STEPS + ANEW = AOLD + ! Ramdomly change the spin + CALL RANDOM_NUMBER(RAND_NUM) + M = NINT((NROWS-1)*RAND_NUM+2) ! Choose a random row + ! + CALL RANDOM_NUMBER(RAND_NUM) + N = NINT((NCOLS-1)*RAND_NUM+2) ! Choose a random col + TEMP_VAR = -1*ANEW(M,N) + ANEW(M,N) = TEMP_VAR + ! Calculating change in energy due to new configuration + ! + DELTA_E = -2*ANEW(M,N)*(ANEW(M-1,N)+ANEW(M+1,N) & + & + ANEW(M,N-1)+ANEW(M,N+1)) + ! + CALL RANDOM_NUMBER(RAND_NUM) + ! + IF (EXP(-BETA*DELTA_E)> RAND_NUM) THEN + AOLD = ANEW + IF (M == 2) AOLD(NROWS+2,N) = TEMP_VAR + IF (M == NROWS+1) AOLD(1,N) = TEMP_VAR + IF (N == 2) AOLD(M,NCOLS+2) = TEMP_VAR + IF (N == NCOLS+1) AOLD(M,1) = TEMP_VAR + ELSE + CONTINUE + ENDIF + ! + MAGNETIZATION = SUM(AOLD(2:NROWS+1,2:NCOLS+1))/ & + & (NROWS*NCOLS*1.0) + ! + WRITE(33,*) TEMPERATURE, MC_ITER, MAGNETIZATION + ! + ENDDO MONTE_CARLO + ! + MAG_AVG = MAG_AVG + MAGNETIZATION + MAG2_AVG = MAG2_AVG + MAGNETIZATION**2 + ! + DO I = 2, NROWS + 1 + DO J = 2, NCOLS + 1 + ENERGY = ENERGY -ANEW(I,J)*(ANEW(I-1,J)+ANEW(I+1,J) & + & +ANEW(I,J-1)+ANEW(I,J+1)) + ENDDO + ENDDO + ENERGY = ENERGY/(NROWS*NCOLS*2) + ENERGY_AVG = ENERGY_AVG + ENERGY + ENERGY2_AVG = ENERGY2_AVG + ENERGY**2 + ! + ENDDO TAKE_AVG + ! + MAG_AVG = MAG_AVG/NO_OF_ITER + MAG2_AVG = MAG2_AVG/NO_OF_ITER + ENERGY_AVG = ENERGY_AVG/NO_OF_ITER + ENERGY2_AVG = ENERGY2_AVG/NO_OF_ITER + ! + SUSP = BETA*(MAG2_AVG - MAG_AVG**2) + Cv = (BETA/TEMPERATURE)*(ENERGY2_AVG - ENERGY_AVG**2) + ! + WRITE(32,*) TEMPERATURE, MAG_AVG, SUSP, ENERGY, Cv + ! + ! WRITE(31,*) TEMPERATURE + ! WRITE(31,"(10I2)") AOLD(2:NROWS+1,2:NCOLS+1) + 1 + ! WRITE(31,*) "..................................." +! + ENDDO TEMP_SCAN + WRITE(31,*) AOLD(2:NROWS+1,2:NCOLS+1) + CLOSE(31) + CLOSE(32) + CLOSE(33) + print "(12I2)", AOLD + PRINT *, "........................................" + PRINT *, ENERGY/(NROWS*NCOLS*2) + CALL CPU_TIME(FINISH) + PRINT *, " End time ", FINISH + END PROGRAM ISING + From 246b72d06e35a15d6dc7c5d45c59c57b70a60616 Mon Sep 17 00:00:00 2001 From: Tridip Das Date: Tue, 17 Feb 2015 00:52:10 -0500 Subject: [PATCH 2/6] code to find the number of steps required to take average on magnetization --- ising.f | 22 ++++++++++++---------- magnetization_plot.m | 27 +++++++++++++++++++++++++++ makeplots.R | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 78 insertions(+), 10 deletions(-) create mode 100755 magnetization_plot.m create mode 100755 makeplots.R diff --git a/ising.f b/ising.f index b87a6e0..469d053 100755 --- a/ising.f +++ b/ising.f @@ -1,14 +1,14 @@ PROGRAM ISING ! 2D Monte Carlo simulation of Ising Model with Metropolis algorithm - ! Program written by Tridip Das + ! Program written by Tridip Das (dastridi) ! This program calculates magnetization with temperature variation ! Susceptibility, Energy and Specific heat with temperature ! Also finds the critical temperature at which magnetization is - ! lost. Scaled temperature is used here and kB assumed as 1 + ! lost. Scaled temperature is used, Boltzmann const, kB assumed as 1 ! IMPLICIT NONE ! Variable Declaration - INTEGER :: I, J, M, N + INTEGER :: I, J, M, N ! counters INTEGER, ALLOCATABLE :: A(:,:),AOLD(:,:),ANEW(:,:) ! 2D array containing spins INTEGER :: NROWS, NCOLS ! Defining # of rows and columns ! @@ -19,7 +19,6 @@ PROGRAM ISING INTEGER :: NO_OF_MC_STEPS, NO_OF_ITER, TEMP_STEPS REAL :: T_INITIAL, T_FINAL, TEMP_INTERVAL, START, FINISH ! - ! ! PRINT *, " MONTE CARLO SIMULATION OF 2D ISING MODEL " PRINT *, " SIMULATION WITH METROPOLIS ALGORITHM " @@ -28,7 +27,7 @@ PROGRAM ISING CALL CPU_TIME(START) PRINT *, " Start time ", START PRINT *, "------------------------------------------" - ! INPUT PARAMETERS FROM inpfile + ! INPUT PARAMETERS FROM inp_file ! OPEN(UNIT=11,FILE='inpfile',STATUS='OLD',ACTION='READ') ! Uncomment below lines to get input from user ! PRINT *, " PROVIDE THE NUMBER OF ROWS FOR ISING MODEL" @@ -54,7 +53,7 @@ PROGRAM ISING ! CLOSE(11) ! NROWS = 10 ; NCOLS = 10; - NO_OF_MC_STEPS = 1000; NO_OF_ITER = 10 + NO_OF_MC_STEPS = 1000000; NO_OF_ITER = 1 T_INITIAL = 1.0; T_FINAL = 4.0; TEMP_INTERVAL = 0.1 TEMP_STEPS = INT((T_FINAL - T_INITIAL)/TEMP_INTERVAL) ! @@ -121,12 +120,15 @@ PROGRAM ISING CONTINUE ENDIF ! - MAGNETIZATION = SUM(AOLD(2:NROWS+1,2:NCOLS+1))/ & - & (NROWS*NCOLS*1.0) + MAGNETIZATION = ABS(SUM(AOLD(2:NROWS+1,2:NCOLS+1))/ & + & (NROWS*NCOLS*1.0)) ! - WRITE(33,*) TEMPERATURE, MC_ITER, MAGNETIZATION + IF ((MOD(NINT(TEMPERATURE*10),2) == 0) .AND. & + & MOD(MC_ITER,1000) == 0) THEN + WRITE(33,*) TEMPERATURE, MC_ITER, MAGNETIZATION + ENDIF ! - ENDDO MONTE_CARLO + ENDDO MONTE_CARLO ! MAG_AVG = MAG_AVG + MAGNETIZATION MAG2_AVG = MAG2_AVG + MAGNETIZATION**2 diff --git a/magnetization_plot.m b/magnetization_plot.m new file mode 100755 index 0000000..b7e6727 --- /dev/null +++ b/magnetization_plot.m @@ -0,0 +1,27 @@ +% This program plots all the magnetization data for Ising model for +% iteration vs magnetization for each temperature +clear all; +clc; +fileID = fopen('Magnetization.out'); +% +header = textscan(fileID,'%s',3); +datain = textscan(fileID,'%f %d %f',16000); +fclose(fileID); +% +%plot_mag = zeros(1:100); +%X = zeros(1:100); +Magnetization = datain{3}; +for j = 1:16 + for i = 1:1000 + plot_mag(i,j)= Magnetization((j-1)*i+1); + X(i) = i*1000; + end +end +plot(X,plot_mag(:,1),X,plot_mag(:,6),X,plot_mag(:,8),X,plot_mag(:,11),X,plot_mag(:,16)) +grid on +xlabel('# of iterations') +ylabel('|magnetization|') +legend('T=1.0','T=2.0','T=2.4','T=3.0','T=4.0') +set(gcf, 'PaperPosition', [0 0 5 5]); %Position plot at left hand corner with width 5 and height 5. +set(gcf, 'PaperSize', [5 5]); %Set the paper to have width 5 and height 5. +saveas(gcf, 'magnetization', 'pdf') %Save figure \ No newline at end of file diff --git a/makeplots.R b/makeplots.R new file mode 100755 index 0000000..acb0a38 --- /dev/null +++ b/makeplots.R @@ -0,0 +1,39 @@ +wolff <- read.table("temperature_sweep.dat",header=T) +attach(wolff) #Attaches wolff to R search path; wolff$Value becomes Value + + +sus.max = which.max(Susceptibility) +cv.max = which.max(Cv) +print(paste("Susceptibility max occurs at:",Temperature[sus.max]) ,sep = " ") +print(paste("Cv max occurs at:",Temperature[cv.max]) ,sep = " ") + +par(mfrow = c(2,2), oma = c(0,0,2,0), mar = c(5,5,2,2) - .3) +#opens graphics device with 2x2 matrix for plots, 2 line outer margin + +plot(Temperature,Magnetization,type="p", + xlab="Temperature",ylab="") +abline(v = Temperature[sus.max],col = "red",lty = 3) +abline(v = Temperature[cv.max],col = "green",lty = 3) + +plot(Temperature,Susceptibility,type="p", + xlab="Temperature",ylab="Susceptibility") +abline(v = Temperature[sus.max],col = "red",lty = 3) +abline(v = Temperature[cv.max],col = "green",lty = 3) + +plot(Temperature,Energy,type="p", + xlab="Temperature",ylab="") +abline(v = Temperature[sus.max],col = "red",lty = 3) +abline(v = Temperature[cv.max],col = "green",lty = 3) + +plot(Temperature,Cv,type="p", + xlab="Temperature",ylab="") +abline(v = Temperature[sus.max],col = "red",lty = 3) +abline(v = Temperature[cv.max],col = "green",lty = 3) + + +mtext("Monte Carlo simulation of Ising model", line = .5, outer = T) + + +detach(wolff) + +dev.copy2eps(file="system_plots.eps") From a51b4b5af92f7e21c474ed8978f058c1867aa4e1 Mon Sep 17 00:00:00 2001 From: Tridip Das Date: Wed, 18 Feb 2015 20:48:45 -0500 Subject: [PATCH 3/6] final version of code with report --- magnetization_plot.m | 7 +- plotspin.m | 13 +++ readme.txt | 19 ++++ report/figures/fig_1.pdf | Bin 4571 -> 9417 bytes report/figures/fig_2.pdf | Bin 0 -> 14126 bytes report/figures/fig_3.pdf | Bin 0 -> 3071 bytes report/figures/fig_4.pdf | Bin 0 -> 7645 bytes report/figures/fig_5.pdf | Bin 0 -> 7547 bytes report/figures/fig_6.pdf | Bin 0 -> 3396 bytes report/figures/fig_7.pdf | Bin 0 -> 5152 bytes report/report.tex | 210 ++++++++++++++++----------------------- spin_visualization.pdf | Bin 0 -> 2697 bytes spinviz.m | 57 +++++++++++ src/ising.f | 192 +++++++++++++++++++++++++++++++++++ 14 files changed, 372 insertions(+), 126 deletions(-) create mode 100644 plotspin.m create mode 100755 readme.txt mode change 100644 => 100755 report/figures/fig_1.pdf create mode 100755 report/figures/fig_2.pdf create mode 100755 report/figures/fig_3.pdf create mode 100755 report/figures/fig_4.pdf create mode 100755 report/figures/fig_5.pdf create mode 100755 report/figures/fig_6.pdf create mode 100755 report/figures/fig_7.pdf mode change 100644 => 100755 report/report.tex create mode 100755 spin_visualization.pdf create mode 100755 spinviz.m create mode 100755 src/ising.f diff --git a/magnetization_plot.m b/magnetization_plot.m index b7e6727..cda1240 100755 --- a/magnetization_plot.m +++ b/magnetization_plot.m @@ -1,8 +1,9 @@ % This program plots all the magnetization data for Ising model for % iteration vs magnetization for each temperature +% BEFORE execution check ising.f for parameter setup in WRITE(33,*) file clear all; clc; -fileID = fopen('Magnetization.out'); +fileID = fopen('Magnetization.out10pow6'); % header = textscan(fileID,'%s',3); datain = textscan(fileID,'%f %d %f',16000); @@ -21,7 +22,7 @@ grid on xlabel('# of iterations') ylabel('|magnetization|') -legend('T=1.0','T=2.0','T=2.4','T=3.0','T=4.0') +legend('T=1.0','T=2.0','T=2.4','T=3.0','T=4.0','Location','SouthWest') set(gcf, 'PaperPosition', [0 0 5 5]); %Position plot at left hand corner with width 5 and height 5. set(gcf, 'PaperSize', [5 5]); %Set the paper to have width 5 and height 5. -saveas(gcf, 'magnetization', 'pdf') %Save figure \ No newline at end of file +saveas(gcf, 'magnetization', 'pdf') %Save figure diff --git a/plotspin.m b/plotspin.m new file mode 100644 index 0000000..d67d0dc --- /dev/null +++ b/plotspin.m @@ -0,0 +1,13 @@ +function plotspin(i,j,k) + if k < 0 + xval = double(i) - 0.5; + yval = double(j) - 0.5; + text(xval,yval,'\downarrow','fontsize',15,'VerticalAlignment', ... + 'middle','HorizontalAlignment','center','Color','m') + else + xval = double(i) - 0.5; + yval = double(j) - 0.5; + text(xval,yval,'\uparrow','fontsize',15,'VerticalAlignment', ... + 'middle','HorizontalAlignment','center','Color','b') + end +end diff --git a/readme.txt b/readme.txt new file mode 100755 index 0000000..7fbb8ab --- /dev/null +++ b/readme.txt @@ -0,0 +1,19 @@ +To execute Ising model follow below instructions (download all the codes from github) +goto https://github.com/tridip66/ising or you found this 'text' here +1) Download ising.f from src folder +2) compile it in HPCC development node by: + f95 ising.f -o ising.exe +3) Execute it by ./ising.exe + +4) Download makeplots.R +Load R module to plot different parameters with temperature +5) module load R +6) R < makeplots.R [--save --no-save --vanilla] + +To visualize spin +7) Download spinviz.m and plotspin.m +8) module load Matlab +9) matlab -nodesktop < spinviz.m +10) you can download 'report' folder +11) Execute report by: pdflatex report.tex + diff --git a/report/figures/fig_1.pdf b/report/figures/fig_1.pdf old mode 100644 new mode 100755 index 629164b607ba734169bfd367385679d46aa8a8b1..a331634c25b177e0914539b964148c35b590a75e GIT binary patch delta 8110 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 OC|f}D_6~kKg!XSE{Ux~o diff --git a/report/figures/fig_2.pdf b/report/figures/fig_2.pdf new file mode 100755 index 0000000000000000000000000000000000000000..9360864e537f7afb9c104648db84345f319ab8c6 GIT binary patch literal 14126 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 a_a8?mD9Y)Njfe0F@$nKeGe1+8Bm6JDgH3(_ literal 0 HcmV?d00001 diff --git a/report/figures/fig_3.pdf b/report/figures/fig_3.pdf new file mode 100755 index 0000000000000000000000000000000000000000..2daafae6e77ee0ff6a36f571678dfec1676076cc GIT binary patch literal 3071 zcmb^zX>8k6SipXOIevf;AjEhKDz~us`G}o3OER@dJGLcVl>|B{UFF&@t*K*M_RHc< z`vC}nxPOfys6ZQHAc4d!ery79@6aUBkj9TqXpBRk!6XiW7}xibG;6z!L#n03&)v zj2aisyk6Qj_?~#dt`j$GzWbbOHa>pv((}HX-uma;%Wm%b>7{*lzS#Hsvcbolvk#wh z*Y-8V+9NBJjSoL}>9)aj`Y)Fp`aZpM!=37zXB|-{58ZKa!!0wPmG66S$8)=no}b?Q z{MxQ=bIr`R?`_)>e$*)YJB~aX9x|iLU*j$;A6@$6mN&jxe|_=dQsdoE3itM0pDOH$ z7jF7kR1b(-{&?ldIDO~vj?FU{`Aha*`F3!O-*qLq;jBHM|GMPI?dLvyQ|j^$lHHHK zvt;=ALG#wFKkr@p`ODXRzv|Pkb`)}NJ!4$;{?}PdtzojvOt#de6&i!aa{2BlgsH4@vfyGh^-x{H^cy>_oquc{@FEZgYwA~YfbTG5)n zQ4W_p3duksPzA)LNMV@*FbTbSV3H7WI23qhna~joSw^@*A_{!{5nWYovg$340S~w( zCcMN!R&fr#L12hjH8eqO^O%NKb$~Fi4>b)85ngLsAsXSB`6X@?frL5}$)vSer4DPG zGiOl4@g`&-D1Y0XKoWDRgv<4D%96z*0%mkPUf^Q@b zLh!Kd_PU|n`Oe$bDuH}L0!KJ0p<(1 zS4O^JP7#X6$%O4@_~Sd@;*o7-_+hmu7X2KVv~S!Lkn*O%in(dZ)GdBxmP@ZRph!t9 zGW=Mz+590Qp_y5hD-{NoF@h)+)%+Ud3q>`@4O3BuZ?dG|%)ppOO%ghl;nx?35cND~ z%BDybbU}(q%5qcZdSnG#Wxf5xigmOS-OO zQO2?y1BzHU?NTF(x#6{-uW5+AzQg8*LenO}^lI2%k0n9Gvx@TIPGI}g_FTji8{=M` zW_SyNXC>tE7^%vMm?V*EOoS(<8cNb6vXZnkb5@f-$HIB400Fub2mzc@(1ljrBteGn z4X9lu5n46rg|wv}B?UFkpI-Q3JlHp}hQe&bVlM>(= z;Bqk5VazYYWz!v`7gQjf*)#cr*t{7IY}grTypSo4S-9tTx~RSvi~sC>t;Pz|@QcM% z-ZSep7<8-i|1s^0m?g{XnCaI8r&-ySiHSp)MIj_g0y`};RrP|J0d;BkzGIsPD_0Cf z#b?uiq&9U(w%Iqm4s9JAoAp7;G2Dp^AH^(EHR=xKvzXR=O#P%KYf?O+jKRM#7AJCb zOxGlROwkB2$Hz_CN@{{1wvy!7+18;c9iP;AniMuc(7ljN+?fqo4lUBNc!Ew2MA#S^ zzQM*FoaQg*IYV`}eY?+8?LDwES;s(XSkH9lQ>>vxSxUfLR#m`5x19;qWc7mXVsE9; z+qWE5CJ8DUbaEI5W4Iixc1;1@OoEWjsidF?qM#}=x~;ne!sEtmJpx+ilK`~CMk-H- zl+;qFV7v7QCaoqYa!gL>f-1-YaWo-HYGYa)T`Qq7jO0q4px!zxvN-Irl%k~+9rfoc zh?$LAqyiXUVO7@s|LUiwvyY>IR5=kz3diPX>p_~TDk`d?S(qllZHPU{orTGY4EuOK zOjK1^=nG(qekvWr|5UmJTn!fRYDw7A3t)-U!DJ|ig>>qvyh-&`TXby>FAWUaApu;l z5iZ-C2*d@!P0oYc61z+wyxOgLh*ck4NLm}{&x;9NPUIw2=}RP3Mb`$jTt1#u fd;3*U$^JXVD7%P-)Cg!Z8M3A(xvsAMbpzbr$YZAI literal 0 HcmV?d00001 diff --git a/report/figures/fig_4.pdf b/report/figures/fig_4.pdf new file mode 100755 index 0000000000000000000000000000000000000000..b0f3c377c4cdb0b5156adf52128f3e85f55aac99 GIT binary patch literal 7645 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 MfT*aBi7w#(0Rrui2mk;8 literal 0 HcmV?d00001 diff --git a/report/figures/fig_5.pdf b/report/figures/fig_5.pdf new file mode 100755 index 0000000000000000000000000000000000000000..3e4e2cf5e2fa3d26eace424fee436396ec344ae0 GIT binary patch literal 7547 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 literal 0 HcmV?d00001 diff --git a/report/figures/fig_6.pdf b/report/figures/fig_6.pdf new file mode 100755 index 0000000000000000000000000000000000000000..9706390110089927f0e4fe427e02f096f313d06c GIT binary patch literal 3396 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
Kd_P5hjZJV_u<&YZD1z13 z7xNdR_tPP_`nNM-4Q@;9T!8{&C(Fu%i5)uq8tUP REe6ej%D`D#dis0e{u@eYzP$hd literal 0 HcmV?d00001 diff --git a/report/report.tex b/report/report.tex old mode 100644 new mode 100755 index 72d1253..b1edce6 --- a/report/report.tex +++ b/report/report.tex @@ -10,147 +10,111 @@ \begin{document} -\title{Manuscript Title:\\with Forced Linebreak}% Force line breaks with \\ -\author{Ann Author} -\date{\today}% It is always \today, today, but you can specify other dates manually +\title{Two-Dimensional Ising Model Simulation:\\with Metropolis Algorithm}% Force line breaks with \\ +\author{Tridip Das} +\date{February 18, 2015}% It is always \today, today, but you can specify other dates manually \maketitle \begin{abstract} -An article usually includes an abstract, a concise summary of the work -covered at length in the main body of the article. +This study on Ising model investigates the variation of magnetization with temperature in a ferromagnetic material. +The model try to predict Curie Temperature for a ferromagnetic material with scaled properties. The Monte Carlo simulation with Metropolis algorithm has been +used to predict new spin states by randomly changing spin of a lattice and henceforth trying to minimize the overall energy. +This model also predicts Susceptibility and Specific heat variation with scaled temperature. \end{abstract} -\section{First-level heading} %Title for the section +\section{Introduction} %Title for the section \label{sec:level1} %Label for the section, to be used for referencing in other parts of the document -This sample document demonstrates some common uses of \LaTeX\ in documents you'll write for ICCP. Further information can be found online at the \href{http://en.wikibooks.org/wiki/LaTeX}{\LaTeX\ wikibook} or in the distribution documentation. - -When we refer to commands in this example file, they always have their required formal arguments in normal \TeX{} format. In this format, \verb+#1+, \verb+#2+, etc. stand for required author-supplied arguments to commands. For example, in \verb+\section{#1}+ the \verb+#1+ stands for the title text of the author's section heading, and in \verb+\title{#1}+ the \verb+#1+ stands for the title text of the paper. - -Line breaks in section headings at all levels can be introduced using \textbackslash\textbackslash. A blank input line tells \TeX\ that the paragraph has ended. - -\subsection{\label{sec:level2} Second-level heading: Formatting} - -This file may be formatted in either the \texttt{preprint} or \texttt{reprint} style. \texttt{reprint} format mimics final journal output. The paper size may be specified with the option \texttt{letter}. These options are inserted in the square brackets inside the \texttt{\textbackslash documentclass[]\{article\}} command. - -\section{Math and Equations} -Inline math may be typeset using the \verb+$+ delimiters. Bold math symbols may be achieved using the \verb+bm+ package and the \verb+\bm{#1}+ command it supplies. For instance, a bold $\alpha$ can be typeset as \verb+$\bm{\alpha}$+ giving $\bm{\alpha}$. Fraktur and Blackboard (or open face or double struck) characters should be typeset using the \verb+\mathfrak{#1}+ and \verb+\mathbb{#1}+ commands respectively. Both are supplied by the \texttt{amssymb} package. For -example, \verb+$\mathbb{R}$+ gives $\mathbb{R}$ and \verb+$\mathfrak{G}$+ gives $\mathfrak{G}$ - -In \LaTeX\ there are many different ways to display equations, and a few preferred ways are noted below. Displayed math will center by default. Use the class option \verb+fleqn+ to flush equations left. - -Below we have numbered single-line equations; this is generally the most common type of equation in \LaTeX: -\begin{equation} +The Ising model is a simple representation of the ferromagnetic phase transition at Curie temperature. In this model at low temperature all the lattice site has same spin (say all are up). +The lattice sites preferably occupied by opposite (down) spins with increasing temperature and when it attains Curie temperature the spin distribution goes random in up or down. +The Hamiltonian for Ising model includes only neighbouring site interaction, the long range interaction are neglected. The spin directions may be "Up" (+1) or "Down" (-1). +\begin{equation} \label{eq:one} %Label for the equation, to be used for referencing in other parts of the document - i \hbar \frac{\partial \Psi}{\partial t} = -\frac{\hbar^2}{2m}\nabla^2 \psi + U(\mathbf{x}) \psi + H = - J \sum_{} S_i S_j \end{equation} +J is a coupling constant. For ferromagnetic model J $>$ 0. Here it is assumed to be 1. + +\section{Monte Carlo Simulation} +In the Ising model, each particle can occupy a site with up or down spin state. In Monte Carlo simulation one site is randomly choose, and the spin state of the particle is reversed. +The acceptance of the new state is determined with application of Metropolis algorithm. + +\subsection{Metropolis Algorithm} +The method is a modified Monte Carlo scheme. In this method instead of choosing configuration randomly, configurations are choose with a probability exp(-E/kT) and weight them evenly. +The change in energy is calculated as $\delta E$, if it is $<$ 0, change is accepted. Otherwise, the $\delta E$ with a weighting factor, $e^{-\beta \delta E}$ is compared with a random number $\in [0,1] $ and if the factor is greater, change is accepted. +\\ +\subsection{Calculating Observables} +Some quantitative information can be derived from spin array calculations. The magnetization is calculated from spin $\pm 1$ according to below formula: +\begin{equation} + m = \frac{1}{N}\sum_{i} \langle S_i \rangle +\end{equation} +\\ +The energy, $E$ is calculated as: +\begin{equation} + E = - J \sum_{} S_i S_j +\end{equation} +i,j are neighbouring lattice position of up, down, left and right.\\ +\\ +It is also possible to calculate heat capacity, $C_v$ at constant field according to below formula: +\begin{equation} + C_v = \frac{\beta}{T}[\langle E^2 \rangle - \langle E \rangle ^2] +\end{equation} +Where, $\beta = \frac{1}{k_B T}$ \\ -When the \verb+\label{#1}+ command is used [cf. input for Eq.~(\ref{eq:one})], the equation can be referred to in text without knowing the equation number that \TeX\ will assign to it. Just use \verb+\ref{#1}+, where \verb+#1+ is the same name that was used in the \verb+\label{#1}+ command. - -Unnumbered single-line equations can be typeset using the \verb+equation*+ environment: -\begin{equation*} - \hat{f}(\xi) = \int_{-\infty}^\infty f(x) e^{-2\pi i x \xi} \, \mathrm{d}x -\end{equation*} - -\subsection{Multiline equations} - -You'll generally want to use the \verb+align+ environment for multiline equations. Use the \verb+\nonumber+ command at the end of each line (again denoted with \textbackslash\textbackslash) to avoid assigning a number, or \verb+align*+ to disable numbering entirely: -\begin{align} - \sin(2\theta) &= 2 \sin(\theta) \cos(\theta) \nonumber \\ - &= \frac{2\tan(\theta)}{1 + \tan^2(\theta)} -\end{align} -Note how alignment occurs at the (unprinted) \verb+&+ character. - -Do not use \verb+\label{#1}+ on a line of a multiline equation if \verb+\nonumber+ is also used on that line. Incorrect cross-referencing will result. Notice the use \verb+\text{#1}+ for using a Roman font within a math environment. +We can also calculate isothermal susceptibility, $\chi$ with below equation: +\begin{equation} + \chi = \beta[\langle M^2 \rangle - \langle M \rangle ^2] +\end{equation} -\section{Cross-referencing} -\LaTeX\ will automatically number such things as sections, footnotes, equations, figure captions, and table captions for you. In order to reference them in text, use the \verb+\label{#1}+ and \verb+\ref{#1}+ commands\footnote{Check out the \texttt{cleveref} (one r) package, too!}. To reference a particular page, use the \verb+\pageref{#1}+ command. +\section{Results} +The Metropolis based Monte Carlo simulation of Ising model is implemented in Fortran. The code is available in github at \url{https://github.com/tridip66/ising/blob/master/ising.f}, also, other codes can be found in the parent directory, which are used +to generate the plots. -The \verb+\label{#1}+ should appear within the section heading (or immediately after), within the footnote text, within the equation, or within the table or figure caption. The \verb+\ref{#1}+ command is used in text at the point where the reference is to be displayed. Some examples: Section~\ref{sec:level1} on page~\pageref{sec:level1}, Table~\ref{tab:table1}, and Fig.~\ref{fig:epsart}. -\begin{figure}[b] +\subsection{Parameter selection} +The number of iterations to be performed for the magnetization value to reach equilibrium is plotted in figure 1, a magnetization vs temperature curve. In the plot each line corresponds to different number of iterations. It is observed $10^4$ number of iterations is good enough for equilibrium but based on execution time $10^5$ iterations are performed (look into appendix A for details). +\begin{figure}[H] \centering - \includegraphics{figures/fig_1}% Imports a figure - does not automatically scale - \caption{\label{fig:epsart} A figure caption. The figure captions are automatically numbered.} + \includegraphics[scale=0.9]{figures/fig_1}% Imports a figure - does not automatically scale + \caption{\label{fig:epsart} A magnetization vs Temperature plot for different number of iterations performed} +\end{figure} +\\ +\\ +The lattice site 10x10 is compared with 4x4 and it is observed that 10x10 provides a sharper change in magnetization (figure 3) at Curie temperature. Also, the specific heat and susceptibility change at Curie temperature is not sharp in 4x4 lattice as shown in figure 2. + +\begin{figure}[H] + % \centering + \includegraphics[scale=0.8]{figures/fig_4}% Imports a figure - does not automatically scale + \caption{\label{fig:epsart} Temperature vs diferent parameters plot for a 4x4 lattice} \end{figure} -\section{Floats: Figures, Tables, etc.} -Figures (images) and tables are usually allowed to ``float'', which means that their placement is determined by \LaTeX, while the document is being typeset. - -Use the \texttt{figure} environment for a figure, the \texttt{table} environment for a table. In each case, use the \verb+\caption+ command within to give the text of the figure or table caption along with the \verb+\label+ command to provide a key for referring to this figure or table. Insert an image using either the \texttt{graphics} or \texttt{graphix} packages, which define the \verb+\includegraphics{#1}+ command. (The two packages differ in respect of the optional arguments used to specify the orientation, scaling, and translation of the image.) To create an alignment, use the \texttt{tabular} environment. - -\begin{table} +\begin{figure}[H] \centering - \begin{tabular}{ |l|l|l| } - \hline - \multicolumn{3}{ |c| }{Team sheet} \\ - \hline - Goalkeeper & GK & Paul Robinson \\ \hline - \multirow{4}{*}{Defenders} & LB & Lucus Radebe \\ - & DC & Michael Duburry \\ - & DC & Dominic Matteo \\ - & RB & Didier Domi \\ \hline - \multirow{3}{*}{Midfielders} & MC & David Batty \\ - & MC & Eirik Bakke \\ - & MC & Jody Morris \\ \hline - Forward & FW & Jamie McMaster \\ \hline - \multirow{2}{*}{Strikers} & ST & Alan Smith \\ - & ST & Mark Viduka \\ - \hline - \end{tabular} - \caption{\label{tab:table1}A table, demonstrating the use of the \texttt{multirow} package for spanning rows and columns.} -\end{table} - -The best place for the \texttt{figure} or \texttt{table} environment is immediately following its first reference in text; this sample document illustrates this practice for Fig.~\ref{fig:epsart}, which shows a figure that is small enough to fit in a single column. In exceptional cases, you will need to move the float earlier in the document: \LaTeX's float placement algorithms need to know about a full-page-width float sooner. - -The content of a table is typically a \texttt{tabular} environment, giving rows of type in aligned columns. Column entries separated by \verb+&+'s, and -each row ends with \textbackslash\textbackslash. The required argument for the \texttt{tabular} environment specifies how data are aligned in the columns. -For instance, entries may be centered, left-justified, right-justified, aligned on a decimal point. - -Extra column-spacing may be be specified as well, although \LaTeX sets this spacing so that the columns fill the width of the table. Horizontal rules are typeset using the \verb+\hline+ command. Rows with that columns span multiple columns can be typeset using the \verb+\multicolumn{#1}{#2}{#3}+ command (for example, see the first row of Table~\ref{tab:table1}). - -\appendix - -\section{Appendixes} + \includegraphics[scale=0.8]{figures/fig_5}% Imports a figure - does not automatically scale + \caption{\label{fig:epsart} Temperature vs diferent parameters plot for a 10x10 lattice} +\end{figure} -To start the appendixes, use the \verb+\appendix+ command. This signals that all following section commands refer to appendixes instead of regular sections. Therefore, the \verb+\appendix+ command should be used only once---to setup the section commands to act as appendixes. Thereafter normal section commands are used. The heading for a section can be left empty. For example, -\begin{verbatim} -\appendix -\section{} -\end{verbatim} -will produce an appendix heading that says ``APPENDIX A'' and -\begin{verbatim} +\subsection{Visualization of spin} +A Matlab code, \url{https://github.com/tridip66/ising/spinviz.m} has been developed for visualization of spin states. The figure 4 shows a 10x10 lattice with randomly oriented spins at T=4. +\begin{figure}[H] + \centering + \includegraphics[scale=0.5]{figures/fig_6}% Imports a figure - does not automatically scale + \caption{\label{fig:epsart} Visualization of spins in a 10x10 lattice at T=4} +\end{figure} +\\ +\section*{References} +Charles Kittel and Herbert Kroemer. Thermal Physics. W. H. Freeman, January 1980. +\\ +\url{http://en.wikibooks.org/wiki/LaTeX/Mathematics} +\\ +\url{http://en.wikibooks.org/wiki/LaTeX/Importing_Graphics} +\\ \appendix -\section{Background} -\end{verbatim} -will produce an appendix heading that says ``APPENDIX A: BACKGROUND'' (note that the colon is set automatically). - -If there is only one appendix, then the letter ``A'' should not appear. This is suppressed by using the star version of the appendix command (\verb+\appendix*+ in the place of \verb+\appendix+). - -\section{A little more on appendixes} - -Observe that this appendix was started by using -\begin{verbatim} -\section{A little more on appendixes} -\end{verbatim} - -Note the equation number in an appendix: -\begin{equation} - E^2=p^2c^2 + m^2c^4. -\end{equation} - -\subsection{\label{app:subsec}A subsection in an appendix} - -You can use a subsection or subsubsection in an appendix. Note the numbering: we are now in Appendix~\ref{app:subsec}. - -Note the equation numbers in this appendix, produced with the subequations environment: -\begin{subequations} -\begin{align} - E^2 &= m^2c^4 \quad \text{(rest)}, \label{appa} \\ - E^2 &= m^2c^4 + p^2 c^2 \quad \text{(relativistic)}, \label{appb} \\ - E^2 &\approx p^2 c^2 \quad \text{(ultrarelativistic)} \label{appc} -\end{align} -\end{subequations} -They turn out to be Eqs.~(\ref{appa}), (\ref{appb}), and (\ref{appc}). +\section*{Appendix} +Figure 5 shows the iteration time increases linearly with number of iteration as expected. As $10^5$ steps takes around 2 minutes, which is reasonable time with accuracy, so it is selected for further calculations. +\begin{figure}[H] + \centering + \includegraphics[scale=0.6]{figures/fig_7}% Imports a figure - does not automatically scale + \caption{\label{fig:epsart} Iteration time vs number of iteration in 10x10 lattice} +\end{figure} \end{document} diff --git a/spin_visualization.pdf b/spin_visualization.pdf new file mode 100755 index 0000000000000000000000000000000000000000..023f9c8495c03501d30dcdb335458215190e5a0c GIT binary patch literal 2697 zcmb^zTWB0rRJ2GL1%>#b(2q+>I*DZF&Yjtv-P!I=*kqF$leKZP+CW;9$?TooF|#w% znY(5aTS2h22)5#*A601){pg3NAEM%;^nqd({OONWZK*$2v;k4H7J_GXH_x^{AQzTB zbKdWJJ4SK?0uf_e$LBvEdYy|S33*eGbLli5rf!*4kP4Ur9hoFmv~=f&`MG_M9ed$*;S2nu_Dfr^@$Pf`+xPG3d3Wf@mv2au(}!<+ z`uhvR`;_XTr@o&4>(8IA2176Zn%Vv7ma|8XkK%CQ$+sWu{rH|MSNXjszB>Bi!?~B< zzuG=Na@Xm5=O^83-)#Ef;&6^0*n0M)ed^7VnX@PF%kMe;`y{(xXuD!=+H`#3{MKhK zrxV|vNhbGB)}F1LQ9t?akA=4$nd#oW|HHP8TTd0QZOFFyN6x)-;P%PNE5|CA4!(E! zV8_Mu9nYN~yY=7`+`%muegic%9LB>IaV*D{AAnivwanU51n>uN*GW(5nR|4I$$rfoG0VHjbet zz}R1B+eR7W8zmdOkZ|1RxeTO36cwt#0jlLfq^?;wgd-nN!-){#A-fc!aV~PP!0key zp$68;3Q@8o+LG)unBjQkMHMYi^OPASpdf9H>BMUJWxqMReI$>FuD5)Q!e}*DA;Cpr zh2;Putu11!^N2!JU2i2n-Bb4sbDAQ75jm?fR4^R zR5a(NO|8WD=v=zTfSOUEZuo-LXyFji(9E>=6@~}eBZhjaUiGUG8mdJ@YOt{B3_q41LCo`r5jm+QKd6pFpY?)@}M#(S*b#9prsJLGJJ(G zKZWtk%#1jrh+a^}MAI}Z$yk;J;1I%Dml<`z4L5_mh9maal9(Hc4WC5Qt73Z$6H&s8 zhH?;2VEfGWTof5Lro0-<@QQ3$36h`!wUjA=5NZh$93erICRHTElr?kFlE1>kRi=Od zwiHMKKq=_XQq816hR+7fwrCw~t9T)6nny`79^-K<`gL#$Dt6=efzV6<0w|UDO13qd zgCWWAvP9y7Bnu<~kpZm_mJ=+iwKP4wMD&6plvBT1JP76x?Fekxd}+K^D2=0ZuZVPA zW6$URIr?ffYD~k==TkY)tW{wr4Cel0+1Ig3C3DG5zZN)+&MujlIyCYqghCPUvt*_$ zFQ^*Omxk{VPQp}7I&7y{CXrdoBi{#jP6KH71%NB1?!UhVa7pjSu zc7x8Lbvo;(Xn7&RcFpiJ(Yga@^<5<|FV)5I?YvpHcfsuvO$?MKnwidADjFzBCJ9+q zh@t@NjahWc|w1e#^kWEH{rV$@}w|F3_#mhP^4KrK!}MB<`7+B`^&$CWs; z&>}8Q;98Cjau;z?cx!P|EDn!|)qIj7UneU;{;%hgu9uA`;PzajPnF@>u@)Cw!N&r_ zc4z=kJ%mT?ISR2MT<|=297H!W!h^2mp{Rr4nKGC| RAND_NUM) THEN + AOLD = ANEW + IF (M == 2) AOLD(NROWS+2,N) = TEMP_VAR + IF (M == NROWS+1) AOLD(1,N) = TEMP_VAR + IF (N == 2) AOLD(M,NCOLS+2) = TEMP_VAR + IF (N == NCOLS+1) AOLD(M,1) = TEMP_VAR + ELSE + CONTINUE + ENDIF + ! + MAGNETIZATION = ABS(SUM(AOLD(2:NROWS+1,2:NCOLS+1))/ & + & (NROWS*NCOLS*1.0)) + ! Uncomment the write(33,*) if want to print mag with # of iter + IF ((MOD(NINT(TEMPERATURE*10),2) == 0) .AND. & + & MOD(MC_ITER,1000) == 0) THEN + ! WRITE(33,*) TEMPERATURE, MC_ITER, MAGNETIZATION + ENDIF + ! + ENDDO MONTE_CARLO + ! + MAGNET_DATA(ITER_AVG) = MAGNETIZATION + MAG_AVG = MAG_AVG + MAGNETIZATION + MAG2_AVG = MAG2_AVG + MAGNETIZATION**2 + ! + DO I = 2, NROWS + 1 + DO J = 2, NCOLS + 1 + ENERGY = ENERGY -ANEW(I,J)*(ANEW(I-1,J)+ANEW(I+1,J) & + & +ANEW(I,J-1)+ANEW(I,J+1)) + ENDDO + ENDDO + ENERGY = ENERGY/(NROWS*NCOLS*2) + ENERGY_AVG = ENERGY_AVG + ENERGY + ENERGY2_AVG = ENERGY2_AVG + ENERGY**2 + ! + ENDDO TAKE_AVG + ! + MAG_AVG = MAG_AVG/NO_OF_ITER + MAG2_AVG = MAG2_AVG/NO_OF_ITER + ENERGY_AVG = ENERGY_AVG/NO_OF_ITER + ENERGY2_AVG = ENERGY2_AVG/NO_OF_ITER + ! + SUSP = BETA*(MAG2_AVG - MAG_AVG**2) + Cv = (BETA/TEMPERATURE)*(ENERGY2_AVG - ENERGY_AVG**2) + ! Calculate standard deviation on the magnetization data + SUMFOR_STDDEV = 0 + DO I = 1, NO_OF_ITER + SUMFOR_STDDEV = SUMFOR_STDDEV + & + & (MAGNET_DATA(I) - MAG_AVG)**2 + ENDDO + sTDdEV = SQRT(SUMFOR_STDDEV/NO_OF_ITER) + ! + ! Write temp, magnetization and other data to generate plot + ! in the temperature_sweep.dat + WRITE(32,*) TEMPERATURE, MAG_AVG, SUSP, ENERGY, Cv, sTDdEV + ! + ! WRITE(31,*) TEMPERATURE + ! WRITE(31,"(10I2)") AOLD(2:NROWS+1,2:NCOLS+1) + 1 + ! WRITE(31,*) "..................................." +! + ENDDO TEMP_SCAN + ! Write spin states to Spin_states.out for visualization of spins + WRITE(31,*) AOLD(2:NROWS+1,2:NCOLS+1) + CLOSE(31) + CLOSE(32) + CLOSE(33) + print "(12I2)", AOLD + PRINT *, "........................................" + ! PRINT *, ENERGY/(NROWS*NCOLS*2) + CALL CPU_TIME(FINISH) + PRINT *, " End time ", FINISH + END PROGRAM ISING + From 4cdbe6037376e9a0f52df4dae9f536f0be69ff26 Mon Sep 17 00:00:00 2001 From: Tridip Das Date: Wed, 18 Feb 2015 20:53:22 -0500 Subject: [PATCH 4/6] final version of code with updated report --- report/report.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/report/report.tex b/report/report.tex index b1edce6..058ab96 100755 --- a/report/report.tex +++ b/report/report.tex @@ -67,7 +67,7 @@ \subsection{Calculating Observables} \end{equation} \section{Results} -The Metropolis based Monte Carlo simulation of Ising model is implemented in Fortran. The code is available in github at \url{https://github.com/tridip66/ising/blob/master/ising.f}, also, other codes can be found in the parent directory, which are used +The Metropolis based Monte Carlo simulation of Ising model is implemented in Fortran. The code is available in github at \url{https://github.com/tridip66/ising/blob/master/src/ising.f}, also, other codes can be found in the parent directory, which are used to generate the plots. \subsection{Parameter selection} @@ -94,7 +94,7 @@ \subsection{Parameter selection} \end{figure} \subsection{Visualization of spin} -A Matlab code, \url{https://github.com/tridip66/ising/spinviz.m} has been developed for visualization of spin states. The figure 4 shows a 10x10 lattice with randomly oriented spins at T=4. +A Matlab code, \url{https://github.com/tridip66/ising/blob/master/spinviz.m} has been developed for visualization of spin states. The figure 4 shows a 10x10 lattice with randomly oriented spins at T=4. \begin{figure}[H] \centering \includegraphics[scale=0.5]{figures/fig_6}% Imports a figure - does not automatically scale From 1f216d24cca104ff5b9caabbce9fdbb7bd7fc14f Mon Sep 17 00:00:00 2001 From: Tridip Das Date: Wed, 18 Feb 2015 22:09:53 -0500 Subject: [PATCH 5/6] updated magnetization file --- magnetization_plot.m | 6 ++++-- report/report.tex | 32 ++++++++++++++++---------------- 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/magnetization_plot.m b/magnetization_plot.m index cda1240..e57821d 100755 --- a/magnetization_plot.m +++ b/magnetization_plot.m @@ -3,9 +3,11 @@ % BEFORE execution check ising.f for parameter setup in WRITE(33,*) file clear all; clc; -fileID = fopen('Magnetization.out10pow6'); +fileID = fopen('Magnetization.out'); % header = textscan(fileID,'%s',3); +% update data point count according to Magnetization.out +% Look into isisng.f for exact calculation datain = textscan(fileID,'%f %d %f',16000); fclose(fileID); % @@ -13,7 +15,7 @@ %X = zeros(1:100); Magnetization = datain{3}; for j = 1:16 - for i = 1:1000 + for i = 1:1000 % get this number from saved number of iteration plot_mag(i,j)= Magnetization((j-1)*i+1); X(i) = i*1000; end diff --git a/report/report.tex b/report/report.tex index 058ab96..11b3416 100755 --- a/report/report.tex +++ b/report/report.tex @@ -22,13 +22,13 @@ This model also predicts Susceptibility and Specific heat variation with scaled temperature. \end{abstract} - \section{Introduction} %Title for the section \label{sec:level1} %Label for the section, to be used for referencing in other parts of the document The Ising model is a simple representation of the ferromagnetic phase transition at Curie temperature. In this model at low temperature all the lattice site has same spin (say all are up). The lattice sites preferably occupied by opposite (down) spins with increasing temperature and when it attains Curie temperature the spin distribution goes random in up or down. The Hamiltonian for Ising model includes only neighbouring site interaction, the long range interaction are neglected. The spin directions may be "Up" (+1) or "Down" (-1). + \begin{equation} \label{eq:one} %Label for the equation, to be used for referencing in other parts of the document H = - J \sum_{} S_i S_j @@ -69,38 +69,38 @@ \subsection{Calculating Observables} \section{Results} The Metropolis based Monte Carlo simulation of Ising model is implemented in Fortran. The code is available in github at \url{https://github.com/tridip66/ising/blob/master/src/ising.f}, also, other codes can be found in the parent directory, which are used to generate the plots. - -\subsection{Parameter selection} -The number of iterations to be performed for the magnetization value to reach equilibrium is plotted in figure 1, a magnetization vs temperature curve. In the plot each line corresponds to different number of iterations. It is observed $10^4$ number of iterations is good enough for equilibrium but based on execution time $10^5$ iterations are performed (look into appendix A for details). -\begin{figure}[H] +\begin{figure}[p] \centering \includegraphics[scale=0.9]{figures/fig_1}% Imports a figure - does not automatically scale \caption{\label{fig:epsart} A magnetization vs Temperature plot for different number of iterations performed} \end{figure} +\subsection{Parameter selection} +The number of iterations to be performed for the magnetization value to reach equilibrium is plotted in figure 1, a magnetization vs temperature curve. In the plot each line corresponds to different number of iterations. It is observed $10^4$ number of iterations is good enough for equilibrium but based on execution time $10^5$ iterations are performed (look into appendix A for details). \\ -\\ -The lattice site 10x10 is compared with 4x4 and it is observed that 10x10 provides a sharper change in magnetization (figure 3) at Curie temperature. Also, the specific heat and susceptibility change at Curie temperature is not sharp in 4x4 lattice as shown in figure 2. - -\begin{figure}[H] +\begin{figure}[p] % \centering \includegraphics[scale=0.8]{figures/fig_4}% Imports a figure - does not automatically scale \caption{\label{fig:epsart} Temperature vs diferent parameters plot for a 4x4 lattice} \end{figure} -\begin{figure}[H] +The lattice site 10x10 is compared with 4x4 and it is observed that 10x10 provides a sharper change in magnetization (figure 3) at Curie temperature. Also, the specific heat and susceptibility change at Curie temperature is not sharp in 4x4 lattice as shown in figure 2. + + +\subsection{Visualization of spin} +A Matlab code, \url{https://github.com/tridip66/ising/blob/master/spinviz.m} has been developed for visualization of spin states. The figure 4 shows a 10x10 lattice with randomly oriented spins at T=4. +\\ + +\begin{figure}[p] \centering \includegraphics[scale=0.8]{figures/fig_5}% Imports a figure - does not automatically scale \caption{\label{fig:epsart} Temperature vs diferent parameters plot for a 10x10 lattice} \end{figure} - -\subsection{Visualization of spin} -A Matlab code, \url{https://github.com/tridip66/ising/blob/master/spinviz.m} has been developed for visualization of spin states. The figure 4 shows a 10x10 lattice with randomly oriented spins at T=4. -\begin{figure}[H] +\begin{figure}[p] \centering \includegraphics[scale=0.5]{figures/fig_6}% Imports a figure - does not automatically scale \caption{\label{fig:epsart} Visualization of spins in a 10x10 lattice at T=4} \end{figure} -\\ + \section*{References} Charles Kittel and Herbert Kroemer. Thermal Physics. W. H. Freeman, January 1980. \\ @@ -111,7 +111,7 @@ \section*{References} \appendix \section*{Appendix} Figure 5 shows the iteration time increases linearly with number of iteration as expected. As $10^5$ steps takes around 2 minutes, which is reasonable time with accuracy, so it is selected for further calculations. -\begin{figure}[H] +\begin{figure}[p] \centering \includegraphics[scale=0.6]{figures/fig_7}% Imports a figure - does not automatically scale \caption{\label{fig:epsart} Iteration time vs number of iteration in 10x10 lattice} From 73a7c9240d669a540afca13ffd5bd03e0e4386c9 Mon Sep 17 00:00:00 2001 From: 3dip Date: Wed, 18 Feb 2015 22:11:21 -0500 Subject: [PATCH 6/6] Delete spin_visualization.pdf --- spin_visualization.pdf | Bin 2697 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 spin_visualization.pdf diff --git a/spin_visualization.pdf b/spin_visualization.pdf deleted file mode 100755 index 023f9c8495c03501d30dcdb335458215190e5a0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2697 zcmb^zTWB0rRJ2GL1%>#b(2q+>I*DZF&Yjtv-P!I=*kqF$leKZP+CW;9$?TooF|#w% znY(5aTS2h22)5#*A601){pg3NAEM%;^nqd({OONWZK*$2v;k4H7J_GXH_x^{AQzTB zbKdWJJ4SK?0uf_e$LBvEdYy|S33*eGbLli5rf!*4kP4Ur9hoFmv~=f&`MG_M9ed$*;S2nu_Dfr^@$Pf`+xPG3d3Wf@mv2au(}!<+ z`uhvR`;_XTr@o&4>(8IA2176Zn%Vv7ma|8XkK%CQ$+sWu{rH|MSNXjszB>Bi!?~B< zzuG=Na@Xm5=O^83-)#Ef;&6^0*n0M)ed^7VnX@PF%kMe;`y{(xXuD!=+H`#3{MKhK zrxV|vNhbGB)}F1LQ9t?akA=4$nd#oW|HHP8TTd0QZOFFyN6x)-;P%PNE5|CA4!(E! zV8_Mu9nYN~yY=7`+`%muegic%9LB>IaV*D{AAnivwanU51n>uN*GW(5nR|4I$$rfoG0VHjbet zz}R1B+eR7W8zmdOkZ|1RxeTO36cwt#0jlLfq^?;wgd-nN!-){#A-fc!aV~PP!0key zp$68;3Q@8o+LG)unBjQkMHMYi^OPASpdf9H>BMUJWxqMReI$>FuD5)Q!e}*DA;Cpr zh2;Putu11!^N2!JU2i2n-Bb4sbDAQ75jm?fR4^R zR5a(NO|8WD=v=zTfSOUEZuo-LXyFji(9E>=6@~}eBZhjaUiGUG8mdJ@YOt{B3_q41LCo`r5jm+QKd6pFpY?)@}M#(S*b#9prsJLGJJ(G zKZWtk%#1jrh+a^}MAI}Z$yk;J;1I%Dml<`z4L5_mh9maal9(Hc4WC5Qt73Z$6H&s8 zhH?;2VEfGWTof5Lro0-<@QQ3$36h`!wUjA=5NZh$93erICRHTElr?kFlE1>kRi=Od zwiHMKKq=_XQq816hR+7fwrCw~t9T)6nny`79^-K<`gL#$Dt6=efzV6<0w|UDO13qd zgCWWAvP9y7Bnu<~kpZm_mJ=+iwKP4wMD&6plvBT1JP76x?Fekxd}+K^D2=0ZuZVPA zW6$URIr?ffYD~k==TkY)tW{wr4Cel0+1Ig3C3DG5zZN)+&MujlIyCYqghCPUvt*_$ zFQ^*Omxk{VPQp}7I&7y{CXrdoBi{#jP6KH71%NB1?!UhVa7pjSu zc7x8Lbvo;(Xn7&RcFpiJ(Yga@^<5<|FV)5I?YvpHcfsuvO$?MKnwidADjFzBCJ9+q zh@t@NjahWc|w1e#^kWEH{rV$@}w|F3_#mhP^4KrK!}MB<`7+B`^&$CWs; z&>}8Q;98Cjau;z?cx!P|EDn!|)qIj7UneU;{;%hgu9uA`;PzajPnF@>u@)Cw!N&r_ zc4z=kJ%mT?ISR2MT<|=297H!W!h^2mp{Rr4nKGC|