Computational Simulations of Magnets at High Temperatures Utilizing the Ising Model and the Monte Carlo Technique

Similar documents
Cluster Algorithms to Reduce Critical Slowing Down

Progress toward a Monte Carlo Simulation of the Ice VI-VII Phase Transition

Monte Carlo Simulation of the Ising Model. Abstract

The Phase Transition of the 2D-Ising Model

Metropolis Monte Carlo simulation of the Ising Model

Numerical Analysis of 2-D Ising Model. Ishita Agarwal Masters in Physics (University of Bonn) 17 th March 2011

Simulation of the two-dimensional square-lattice Lenz-Ising model in Python

Liquid or Gas. New Mexico Super Computing Challenge Final Report April 1, 2006 Team #74 Oñate High School

Ising Model. Ising Lattice. E. J. Maginn, J. K. Shah

A Monte Carlo Implementation of the Ising Model in Python

The Monte Carlo Algorithm

Lab 70 in TFFM08. Curie & Ising

Physics Sep Example A Spin System

PHY331 Magnetism. Lecture 6

Markov Chain Monte Carlo The Metropolis-Hastings Algorithm

Molecular Dynamics Simulation of Argon

The XY-Model. David-Alexander Robinson Sch th January 2012

REVIEW: Derivation of the Mean Field Result

( (Chapter 5)(Magnetism and Matter)

J ij S i S j B i S i (1)

Spontaneous Symmetry Breaking

11/13/2018. The Hall Effect. The Hall Effect. The Hall Effect. Consider a magnetic field perpendicular to a flat, currentcarrying

Consider a magnetic field perpendicular to a flat, currentcarrying

Phase transition and spontaneous symmetry breaking

Immigration, integration and ghetto formation

In this approach, the ground state of the system is found by modeling a diffusion process.

Phase Transitions of Random Binary Magnetic Square Lattice Ising Systems

Transition Elements. pranjoto utomo

Electromagnetic Radiation. Chapter 12: Phenomena. Chapter 12: Quantum Mechanics and Atomic Theory. Quantum Theory. Electromagnetic Radiation

Lecture 6. Statistical Processes. Irreversibility. Counting and Probability. Microstates and Macrostates. The Meaning of Equilibrium Ω(m) 9 spins

The Spring-Mass Oscillator

LECTURE 10: Monte Carlo Methods II

Lectures 16: Phase Transitions

Introduction to the Renormalization Group

Calculations of the Partition Function Zeros for the Ising Ferromagnet on 6 x 6 Square Lattice with Periodic Boundary Conditions

Chapter 1 Review of Equations and Inequalities

Ferromagnetism. Iron, nickel, and cobalt are ferromagnetic.

What was Aristotle s view of motion? How did Galileo disagree with Aristotle? Which answers agrees with Aristotle s view? Eliminate the others.

E = <ij> N 2. (0.3) (so that k BT

3.320 Lecture 18 (4/12/05)

WORLD SCIENTIFIC (2014)

Lecture 24 Origins of Magnetization (A number of illustrations in this lecture were generously provided by Prof. Geoffrey Beach)

Lecture 5. Chapters 3 & 4. Induced magnetization: that which is induced in the presence of an applied magnetic field. diamagnetic.

Light carries energy. Lecture 5 Understand Light. Is light. Light as a Particle. ANSWER: Both.

Entropy online activity: accompanying handout I. Introduction

Phase Transition & Approximate Partition Function In Ising Model and Percolation In Two Dimension: Specifically For Square Lattices

Monte Carlo Simulations in Statistical Physics

Phase transitions and finite-size scaling

Physics 115/242 Monte Carlo simulations in Statistical Physics

2D and 3D Ising model using Monte Carlo and Metropolis method

Kinetic Monte Carlo (KMC) Kinetic Monte Carlo (KMC)

MONTE CARLO METHODS IN SEQUENTIAL AND PARALLEL COMPUTING OF 2D AND 3D ISING MODEL

C++ For Science and Engineering Lecture 14

ON ISING'S MODEL OF FERROMAGNETISM

Chapter 12: Phenomena

Advanced Optical Communications Prof. R. K. Shevgaonkar Department of Electrical Engineering Indian Institute of Technology, Bombay

3 Dimensional String Theory

Operation and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Simulation of Hysteresis In Permalloy Films

Sedimentation and creaming An introduction

UNIT - IV SEMICONDUCTORS AND MAGNETIC MATERIALS

S j H o = gµ o H o. j=1

PHYS 1444 Section 003 Lecture #18

Phase Transitions. Phys112 (S2012) 8 Phase Transitions 1

CS 7B - Fall Final Exam (take-home portion). Due Wednesday, 12/13 at 2 pm

Section 24.8 Magnets and Magnetic Materials Pearson Education, Inc.

PHYSICS LAB FREE FALL. Date: GRADE: PHYSICS DEPARTMENT JAMES MADISON UNIVERSITY

A New Algorithm for Monte Carlo Simulation of king Spin Systems* A. B. BORTZ M. H. KALOS J. L. LEBOWITZ

Complexity of the quantum adiabatic algorithm

3.091 Introduction to Solid State Chemistry. Lecture Notes No. 9a BONDING AND SOLUTIONS

Computational Physics (6810): Session 13

The mixed-spins 1/2 and 3/2 Blume Capel model with a random crystal field

LAB 2 - ONE DIMENSIONAL MOTION

3.091 Introduction to Solid State Chemistry. Lecture Notes No. 5a ELASTIC BEHAVIOR OF SOLIDS

Examination paper for TFY4245 Faststoff-fysikk, videregående kurs

Work and Energy Experiments

Janus: FPGA Based System for Scientific Computing Filippo Mantovani

Magnetic Monopoles in Spin Ice

Phase transitions in the Ising model with random gap defects using the Monte Carlo method

Vocabulary. Magnet. a material that can create magnetic effects by itself. Electromagnet

Spectral Resolution. Spectral resolution is a measure of the ability to separate nearby features in wavelength space.

Name: Hour: Teacher: ROZEMA. Chemistry Isotopes, Decay & Half Lives

Lecture contents. Magnetic properties Diamagnetism Band paramagnetism Atomic paramagnetism Ferromagnetism. Molecular field theory Exchange interaction

Monte Carlo Simulation of Spins

Title: Search for Strangelets at RHIC Author: Brandon Szeliga

PHY331 Magnetism. Lecture 3

Lab 1: Damped, Driven Harmonic Oscillator

Intro. Each particle has energy that we assume to be an integer E i. Any single-particle energy is equally probable for exchange, except zero, assume

Physics I: Oscillations and Waves Prof. S. Bharadwaj Department of Physics and Meteorology. Indian Institute of Technology, Kharagpur

Kyle Reing University of Southern California April 18, 2018

Parallel Tempering Algorithm in Monte Carlo Simulation

Lab 1: damped, driven harmonic oscillator

CHEMISTRY SEMESTER ONE

Classical Monte Carlo Simulations

Kinetic Monte Carlo (KMC)

Interaction of matter with magnetic fields

Intermission: Let s review the essentials of the Helium Atom

Let us start with a general overview of MRI...

16 Singular perturbations

Random number generators

Transcription:

Computational Simulations of Magnets at High Temperatures Utilizing the Ising Model and the Monte Carlo Technique Project SEED Dr. Ken Ahn Mayrolin Garcia

Introduction How does the property of magnetism behave at high temperatures? That is the behavior my SEED partners and I tried to simulate this summer by writing our own C++ computer programs. By using the one dimensional and two dimensional Ising Model, we were able to simulate systems of atoms. Theory Within any material, atoms behave like little magnets. Each atom s electrons have something called a magnetic moment caused by the electron s spin and motion. It is what gives each atom a magnetic behavior. However, since each atom interacts with each other, a material as a whole may not have visible magnetic properties. This interaction is called exchange interaction. It is an additive interaction where atoms can add or cancel out their magnetic behavior between each other. This interaction is driven by the alignment of each magnetic moment. Therefore, if all the magnetic moments are aligned similarly, a material will exhibit magnetic attributes. If they align randomly, a material may show weak, if any, magnetic attributes. These alignments are not set in stone and can be manipulated. In the case of permanent magnets, ferromagnetism causes the alignments to change. Ferromagnetism is the method by which a material becomes a permanent magnet after interacting with a magnetic field. Once enough atoms and molecules are aligned in one direction by the pull of the external magnetic field, their small magnetic moments combine to create a much larger quantifiable magnetic field. It is also because of this fluidity of the alignments that permanent magnets exposed to high temperatures will lose their magnetism. The Curie temperature, or Curie point, of a magnetic material is the temperature boundary at which it loses its permanent magnetism. At this temperature, unique to each material, spontaneous magnetization does not occur. This is due to the destruction of the alignment by the increase of thermal energy. Once this occurs, the material will become paramagnetic and will only show magnetic characteristics when an external magnetic field is present. When this external magnetic field is removed, the material will not retain any magnetization. This temperature boundary is an indication of how much energy is needed to disrupt the long-range ordering of the material. Method To find the energy of a randomly aligned magnetized system, we used the Ising Model in conjunction with the Monte Carlo technique.

Ising Model Ernst Ising developed this mathematical model now used to describe many phenomena. By using this model in regards to ferromagnetism, we make the following assumptions: 1. Bits of information interact in pairs called spins to produce an additive effect. 2. Each spin, S i,can take the value of 1 or -1. 3. Spins are either aligned in one or two dimensions. 4. Nearest neighbor interactions are the only interactions taken into account. 5. First and last spin sites interact in something called the Periodic Boundary Condition. After we consider all of these conditions, we are able to measure the energy using the following equation: N-1 E= Σ -J (S i x S i+1 ) i=1 Where S i is the spin index, and J is a positive number constant. 2D Ising Model While the 2D Ising Model keeps the same conditions, it differs from the 1D Model in that the atoms are aligned in two dimensions and because of this there will be more periodic boundaries. Figure 1 The blue coded periodic boundaries (P.B.) on the 2D model happen for each top and bottom element of each column.

This yields a new energy formula, which is as follows: General Form: E 2D = -J Σ (S i x S j ) i j Simplified Form: E 2D = Σ S i (S i+1 + Si -1 ) i j Magnetization While similar to energy, magnetization describes the state of system in a current configuration. The magnetization of a material can rage from M max = 1, where all its spins are directed to one direction, or M min =, where an equal number of spins are pointing up and down; thus canceling each other out. To calculate magnetization, one simply needs to add all the values of the spins, and then divide by the total number of spins. Because magnetization needs to be a positive number, we take the absolute value of the answer. Monte Carlo Technique M = abs (1/N Σ S i ) By using the Monte Carlo technique, we are able to introduce temperature into the system. We utilize a Boltzmann distribution as well as random numbers. f = exp ( E / k B T) Where E is the change in energy, k B is Boltzmann constant, and T is temperature. This function becomes our probability function in our C++ code: prob = exp ( E/ k B T) It expresses the idea that although a system may be in thermal equilibrium at a relatively low energy state, there is still the chance that the system can reach an even lower energy state.

Energy General Sequence of C++ Program The basic steps we took to create a system and measure its energy and magnetism were: 1. Create a random spin configuration 2. Calculate its energy. 3. Randomly select a spin site. 4. If the value of that site is 1, change it to -1, or vice versa. 5. Calculate the new energy. 6. If the new energy is less than or equal to the old energy, accept the new configuration. Otherwise, calculate probability and generate a random number. 7. If the probability is less than the random number, accept the new configuration. 8. If neither, return the site to its original value, and start from step three. Results Using our C++ code, we were able to print out and graph our results. Energy T=.9-5 -1-15 -2-25 5 1 15 2 25 Steps

Magnetization Magnetization T=.9 1.2 1.8.6.4.2 -.2 5 1 15 2 25 Steps As demonstrated by the graphs for T=.9, we can see that a system at such low temperature will easily find its ground state, and give the maximum value for magnetism. This model tells us that the spins are easily aligned at low temperatures, thus creating visible magnetic properties.

Magnetization Energy Energy T=2.3-5 5 1 15 2 25-1 -15-2 -25 Steps Magnetization T=2.3 1.2 1.8.6.4.2 -.2 5 1 15 2 25 Steps

Energy At a point very close to the Curie temperature, we can start to see signs of the decay in alignment. The system is able to reach its ground state, but not maintain it. In terms of magnetism, it is considerably declining. Energy T=3.7-2 5 1 15 2 25-4 -6-8 -1-12 -14 Steps

Magnetization Magnetization T=3.7.7.6.5.4.3.2.1 -.1 5 1 15 2 25 Steps At such high temperature, the system has too much energy that it can t find its ground state. It just varies from -2 to -8. Its magnetism is considerably low, since barely any spins are aligned with each other.

Magnetism Magnetism vs Temperature Array: 1x1 1.2 1.8.6.4.2.5 1 1.5 2 2.5 3 3.5 4 Temperature This graph correlates my results for magnetism at different temperatures. As was expected, magnetism drops immensely once the temperature hits a certain range. This is the Curie point: the start of the destruction of the alignments due to an increase in thermal energy. Discussion As can be seen in Magnetism vs. Temperature graph, my T c was off. My decline started at about 2.16, whereas the accepted value is 2.26. My percent error is -4.42%. In addition, our simulation does not clearly exemplify real world conditions. In real materials, magnetism is zero at temperatures above T c. However, in our simulation, magnetism is reduced to very low numbers, but not zero.

Magnetism Magnetism T = 4.5 (14x14).5.4.3.2.1 -.1 5 1 15 2 Steps This is because in our C++ code only takes into account spin interactions between up, down, left, and right neighbors, not in front or behind. In addition, the random generator used by C++ is actually a pseudorandom generator, and because of this our probability will never be below our random number. Conclusion Through our simulations, we were able to get very close results that acted like real material systems. Although our percent error was -4.42% and our magnetism is unable to reach zero, the program was able to reproduce the mechanism that imitates real magnetic systems closely. Acknowledgements I would like to thank the American Chemical Society for making this great opportunity possible. I would also like to show my gratitude to Dr. Ken Ahn and Tsezar Seman for allowing me to be part of their research. My thanks also go to the New Jersey Institute of Technology, as well as Dr. Fahrenholtz for arranging the summer internship. Appendix: C++ Code

//2D Ising Model //Mayrolin Garcia ~ August 27, 29 #include <iostream> #include <cstdlib> #include <fstream> #include <cmath> #include <stdio.h> using namespace std; #define NX 14 #define NY 14 #define N (NX*NY) ///////////////////////////////////////////////////////////////////// // Function to Calculate Energy // double EnergyCalc(int spins[][nx]) double energy =.; int ir, ic, row, col; for (row = ; row < NY; row++) for (col = ; col < NX; col++)

// periodic... boundary... if (row == NY-1) ir = ; else ir = row + 1; if (col == NX-1) ic = ; else ic = col + 1; energy = energy + spins[row][col] * (spins[row][ic] + spins[ir][col]); return -1. * energy; ///////////////////////////////////////////////////////////////////// // Function to Calculate Magnetization // double Magnetization(int spins[][nx]) int MG = ; int row, col; for (row = ; row < NY; row++) for (col=; col < NX; col++) MG += spins[row][col]; if (MG < ) MG = MG * -1;

return (double)mg / N; ///////////////////////////////////////////////////////////////////// // Function to Export Spin-Map // void SaveSpins(int spins[][nx], char filename[]) ofstream fout(filename, fstream::out); int row, col; for (row = ; row < NY; row++) for (col = ; col < NX; col++) fout << spins[row][col]; if (col < NX-1) fout << ","; fout << "\n"; fout.close(); ///////////////////////////////////////////////////////////////////// // Function to Get Spins // int GetRandomSpin() if ( ((double)rand() / RAND_MAX) <.5)

return 1; else return -1; ///////////////////////////////////////////////////////////////////// // Function to Initialize Array // void Initialize(int spins [][NX]) int row, col; for (row = ; row < NY; row++) for (col = ; col < NX; col++) spins[row][col] = GetRandomSpin(); //////////////////////////////////////////////////////////////////// // Random Function Generator // double UnitRandom ()

return (double)rand()/rand_max; ///////////////////////////////////////////////////////////////////// // Code entry point // int main() double en_old, en_new, T; int p,q; int steps = ; int spins[ny][nx]; //energy gound state int en_grst = -2 * N; int counter = ; srand (77); Initialize(spins); SaveSpins(spins, "init-config.8.txt"); ofstream fout("ground-state.8.txt", fstream::out); ofstream fout2("magentization.8.txt", fstream::out);

en_old = EnergyCalc(spins); while (steps < 5)//en_old>en_grst && // pick random spin site p = rand() % NY; q = rand() % NX; spins[p][q] = -1 * spins[p][q]; // calculate the new energy of the new configuration en_new = EnergyCalc(spins); // calculate delta Energy double denergy = en_new-en_old; T =.8; if(denergy <= ) en_old = en_new; fout << steps << "\t" << en_old << "\n"; fout2 << steps << "\t" << Magnetization(spins) << "\n"; //totalmag += calcmagnetization(ddarray);

else double prob = exp(-denergy/t); if (prob > UnitRandom() )//(newenergy <= oldenergy) en_old = en_new; fout << steps << "\t" << en_old << "\n"; fout2 << steps << "\t" << Magnetization(spins) << "\n"; //totalmag += calcmagnetization(ddarray); else spins[p][q] = -1 * spins[p][q]; fout << steps << "\t" << en_old << "\n"; fout2 << steps << "\t" << Magnetization(spins) << "\n"; steps++; SaveSpins(spins, "final-config.8.txt"); fout.close(); fout2.close(); // pausing the screen, comment this out when don't need it

system("pause"); return ; References Britannica Online, www.britannicaonline.com C. Kittel, Introduction to Solid State Physics. 6 th edition