PHY 289.04 Methods of Computational Science
0. Introduction -- How does computational science help us?
(3 lectures and 1 Lab)
0.1 What is computational science?
(Lecture#1 (HM): 1/18)
- Scientific approach combining human intellect and computer technology
- How do we achieve a productive interaction between human thinking and computers?
- Keep in mind what computers can do and what they can't do.
- You are the boss!
- You must decide what you want a computer to do.
- You must assess and interpret scientific significance of results you obtain.
- Human scientific insight and imagination is the most important ingredient
in computational science, just as in other scientific approaches (theoretical
and experimental).
0.2 Impetus comes from the recent rapid progress in computer technology
(Lecture#1)
- What can computers offer?
- Large memory storage capacity
Fast operation speeds
- Sequential (or sometimes parallel) processing of sometimes repetitive
well-defined step-by-step operations --> Algorithms --> Computer
programs
- What can't computers offer?
- Numbers with an infinite # of digits
- No rational numbers w/ an infinite # of digits
- No exact irrational numbers
- All the numbers on computers are either real numbers with finite
# of digits or complex numbers whose real and imaginary parts are
such real numbers.
- Numbers w/ an infinite # of digits must be approximated w/ numbers
with a finite # of digits. --> Round-off errors!
- Operations involving an infinite # of steps
- Continuous analysis (tools from calculus)
- No differentiation and integration
- Differentiation --> Difference or subtraction
- Integration --> Summation
- No limiting process --> Approximate with a finite # of approaching
steps.
- No infinite iterative procedures --> Truncate the procedures.
- Symbolic computer mathematics (Mathematica, MACSYMA, and Reduce,
etc.) can handle some of these operations now, though.
- Human mental (conscious and subconscious) capacities
- Scientific insights and intuition --> No moments of Eureka!
or Aha!
- Synthetic or global thinking
- Making connections between seemingly different and remote notions
and concepts.
- Imaginative and creative thinking (i.e., coming up with new ideas)
0.3 Desire and needs for attacking previously intractable complex problems
(Lecture#2 (HM): 1/20)
Complex problems:
- With:
- A few variables but with complex time evolution
(e.g., chaotic dynamical systems)
- Many (up to a few million?) variables and complex interactions or inter-
relationships among these variables
(e.g., complex mechanical systems such as automobiles and satellites;
fluid motions w/ or w/o turbulence; chemical reactions w/ catalytic feedback;
weather forecasting; microscopic motions of electrons, atoms, ions, and
molecules in many-body systems such as gases, plasmas, liquids, glasses,
solids, and macromolecules such as polymers, DNAs, and proteins, etc.)
- Without:
- Exact analytical solutions
- Reliable, well-controlled, and systematic approximate analytical solutions
0.4 Goals and strategy in computational science (Lecture#2)
- Numerical results:
- Numerical calculus
- Numerical integration and differentiation of functions (of a single
or many variables) and data
- Numerical solution of ordinary and partial differential equations
- Numerical linear algebra
- Numerical solution of a set of linear equations
- Numerical diagonalization of symmetric or hermitian matrices
- Numerical solution of a set of non-linear transcendental equations
- Optimization problems
(e.g., circuit designs for LSI (Large Scale Integrated circuit), VLSI,
ULSI, etc: scheduling problems for air traffic, etc.)
- Linear programming problems
- Simulations:
- Modeling of real systems
- Based on detailed information (e.g., dynamics) at the level of constituent
units (e.g., small parts of machines, atoms in a gas, etc.).
- They allow for fine and close control of system parameters.
- Answering what-if questions.
- Setting system parameters to values unavailable or inaccessible
in labs.
- Visualization of system behaviors
- Careful selection of quantities to be observed and analyzed
- Comparison w/ analytical results for limiting cases.
- Symbolic computer mathematics:
- Symbolic manipulations of mathematical operations to get exact results
0.5 Programming versus canned (commercially available) software
(Lecture#2)
You must make a sensible choice between using a canned software and writing
your own program based on your goal and available resources including money,
your time and efforts. Ask yourself: "Is it worth writing a program or spending
money?"
- Canned software:
For well-established routines:
- Numerical integration (Numerical Recipes, Mathematica, Matlab, etc.)
- Numerical solution of a single equation or a set of several equations
(Numerical Recipes, Mathematica, Matlab, etc.)
- Numerical linear algebra
- Numerical inversion of matrices
- Numerical estimates of determinants
- Diagonalization of symmetric and hermitian matrices and eigenvalue
problems (LINPACK, EISPACK, IMSL)
- Fourier analysis (Mathematica, Matlab, etc.)
- Data analysis (Kaleidagraph)
- Simple and quick graphing (Mathematica, Matlab, Kaleidagraph)
Quick and dirty estimates
Symbolic computer mathematics (Mathematica, MACSYMA, REDUCE)
Even when you use a canned software, it's much safer to know a basic idea
and well-known advantages and disadvantages of the algorithm used by the
particular software so that you can make an intelligent judgment on the
accuracy and reliability of the results the canned software produces.
- Programming:
No canned software is available, because:
- Your problem calls for a special (not general) treatment.
- Your problem requires a new algorithm recently developed in your field
- You want to try a new algorithm you've just come up with.
- You just happen not to have an access to an appropriate canned software.
You need a precise result and you cannot trust canned routines not specifically
designed for your problem.
You know that your problem has delicate or special features for which
canned software may not work.
(e.g., a numerical integration of rapidly varying functions or functions
with singularities.)
You then tailor-make a program according to the particular nature of your
problem.
Sometimes your problem forces or prompts you to invent a new algorithm.
- Development of new algorithms occupies a significant place in the discipline
of computational science.
0.6 Programming language
(Lecture#3 (HM): 1/23)
- We use FORTRAN in this course because
(i) it is widely used in scientific and engineering communities
(ii) it is fairly straightforward to translate a FORTRAN program into
another in other languages such as PASCAL.
- Become proficient in at least one programming language!
0.7 Structured programming (more on this in I) (Lecture#3)
- Top-down hierarchical block structure of a program: a single task per block.
- General recyclable subroutines.
- Human errors and inflexible computers.
- Don't take personally what a computer does.
- Benefits:
- To reduce bugs (human errors!) in programs.
- To facilitate detection and correction of bugs.
0.8 How do we assess and trust computational results? (Lecture#3)
- Collect as much background information related to your problem as possible.
- Do some literature search and reading up on general background.
- Try to find mathematically rigorous or exact results related to your
problem.
(e.g., existence and uniqueness of solutions for ordinary differential
equations)
- Try to get some analytical handle on your problem.
- Derive analytical results for various limiting and analytically tractable
cases.
(e.g., linearize your problem)
- Apply known approximate methods:
- Expansion techniques such as perturbation theory
- Variational methods
- Use effective visualization of your results
- Effective and meaningful graphs
- You must know what you are trying to show with your computational results.
- Animation
- Scientific intuition and insights
- Healthy skepticism
- Try to estimate errors involved in your computation.
In computational science, you must have not only an attitude of an experimentalist
to carefully handle computational procedures and to analyze your results
but also an attitude of a theorist to carefully handle analytical and numerical
calculations and to draw a logical and intelligent theoretical conclusion.
Lab#1: 0.9 Introduction to our computer system and some software
(assigned on 1/23: due on 1/30)
- How to use "NCSA telnet" to log on "entropy" (IBM RS6000).
- How to create and edit a program using an editor "Jove".
- How to execute a FORTRAN program.
- How to transfer a file to a Macintosh using "ftp".
- How to use Kaleidagraph on a Macintosh.
- How to use Mathematica.
- How to send and to receive e-mail using "Eudora".
I. Nonlinear dynamical systems in chemistry and physics: an introduction
to chaotic motion
(20 lectures, 5 Labs, 1 hour exam)
How do we study dynamical systems?
I.1 What are dynamical systems? (Lecture#4 (JS): 1/25)
- Systems evolving (changing) in time:
Physics: Newtonian dynamics
(i) Second-order ordinary differential equations (ODEs)
(ii) First-order ODEs
Chemistry: chemical kinetics
Biology: population dynamics
- A dynamical system --> A set of ODEs!
I.2 Phase space (Lecture#4)
Solutions for ODEs?
I.3 Plane pendulum and 1-D projectile motion (Lecture #5 (HM): 1/27)
Lab#2: Plane pendulum and 1-D projectile motion by Mathematica
(assigned on 1/27: due on 2/6)
I.4 How to numerically solve a set of first-order ODEs?
(Lecture#6 (HM):1/30)
Basic strategy:
- Discretization of time --> discretization of time derivatives
Types of errors
- Round-off errors
- Due to the finite # of digits used to represent a number on computers
- Truncation errors
- Due to a particular algorithm for approximating a mathematical expression
- Due to discretization of time derivatives
Main criteria for accuracy of numerical solution
- Local truncation error: errors created in each time step
- Global truncation error: errors accumulated after many time steps
Criteria for an optimal algorithm
- Small well-controlled local truncation error
- Small well-controlled global truncation error
--> Convergence of numerical solutions
- Stability of numerical solutions
- No divergence of a numerical solution away from the exact solution
as time goes to infinity.
- Fast execution time
- Simplicity of an algorithm
- Easy debugging
- Easy to modify
- Portability: recyclable subroutines
You must weigh your priorities, available resources (money, time, and efforts),
and future plans (are you going to need similar algorithms later in solving
different but similar problems?). --> An optimization problem!
I.5 Types of ODE algorithms (Lecture#7 (JS): 2/1)
Derivatives in calculus and on computers
- Taylor series and discretization error
Dynamical systems: a set of 1st order ODEs
Numerical solution of 1st order ODEs
- Strategy: discretize time
Simplest approximation for dx/dt: the Euler method
- Local truncation error
- Global truncation error
- Example: a plane pendulum
Numerical algorithms for ODEs
I. Single step methods
A. The Euler method
B. The Runge-Kutta methods
II. Linear Multistep Methods
Explicit and implicit methods
A. The predictor-corrector method
Combining an explicit and implicit methods.
B. The Burlisch-Stoer method
Extrapolation with respect to time step size
I.6 The Euler method (Lecture#8 (JS): 2/3)
Programming the Euler method
- Implementation as a subroutine
Solving the linear pendulum using the Euler method
Solving the nonlinear pendulum using the Euler method
More programming tips
- The global truncation error for the Euler method
I.7 More programming tips (Lecture#8)
Lab#3: Programming the Euler method (assigned on 2/3: due on 2/10)
- Creating a main program to simulate pendulums
- Creating a subroutine for the Euler method
Solving the linear pendulum
- Compare numerical results with analytical solutions
- Time series starting w/ various initial conditions
- Phase space plots for various initial conditions
- Absolute error and time steps
Solving the non-linear pendulum
- Compare numerical results with the solutions by Mathematica in Lab#2
- Time series starting w/ various initial conditions
- Phase space plots for various initial conditions and total energies
- We need a better algorithm!
I.8 The Runge-Kutta (R-K) methods
The second-order R-K method (Lecture#9 (JS): 2/6)
- Basic idea: controlling local discretization (truncation) errors
- Derivation
- Comparison with the Euler method
- Local and global truncation error
The fourth-order R-K method (Lecture#10 (JS): 2/8)
- Systematic derivation of local truncation error
- Double Taylor series expansion
- Local truncation error in the second-order R-K method
- Algorithm and local truncation error in the fourth-order R-K method
Adaptive step size control (Lecture#10)
- To get the most out of the fourth-order R-K method.
I.9 Dimensional analysis and scaling of dynamical variables
(Lecture#11 (HM): 2/10)
Procedures
- Dynamical variables in dimensionless forms
- Time evolution equations in dimensionless form
Benefits
- Simplified equations
- Numerical solution ~ O(1)
- Scaling of dynamical variables
- Scaling forms for solution
I.10 Conservative and dissipative systems (Lecture#11)
Conservative systems?
- Force derived from a potential energy function
- Conservation of the total energy
Dissipative systems?
- Force that cannot be derived from a potential energy function
- No conservation of the total energy
How do we identify them?
- Physical criterion:
- Preserved phase space volume --> a conservative system
- Contracting phase space volume --> a dissipative system
- Mathematical criterion:
- Rewrite the first-order ODEs as first-order autonomous ODEs.
Examples:
- Linear pendulums
- Damped linear pendulums
- Damped driven plane pendulums
I.11 Damped pendulums and Fixed points in the phase space
(Lecture#12 (JS): 2/13)
Lab#4: The fourth-order Runge-Kutta method: application to the pendulum
(assigned on 2/13: due on 2/22)
Homework on conservative and dissipative systems
- The damped pendulum
- The Henon and Heiles model
The Runge-Kutta method with adaptive step size control
- Modifying the main program for pendulums to include the adaptive step
size control
- Creating a subroutine for the fourth-order R-K method
- Adding adaptive step size control
Simulating the plane pendulum without adaptive step size control
- Compare the phase space plot with that obtained by the Euler method.
- Compare the energy conservation in the R-K method with that in the Euler
method.
Simulating the plane pendulum with adaptive step size control
Simulating the damped pendulum
- Modifying the program
- Comparing damped and undamped pendulum trajectories
- Exploring the phase space of the damped pendulum
I.13 Damped driven pendulums (Lecture#13 (JS): 2/15)
Newton's equation of motion with a driving force
Extended phase space and equations of motion in autonomous form
Different types of motion as the driving amplitude is increased
- Limit cycles
- Rotational motion
- Rotational chaotic motion
- Focal points (point attractors)
Fixed points related to extrema in the potential energy function
- Elliptic points with minima
- Hyperbolic points with maxima
I.14 Limit cycles and chaotic orbits: Poincare surface of section
(Lecture#14 (JS): 2/17)
I.15 Chaotic trajectories (Lecture#15 (JS): 2/20)
I.16 Attractors (Lecture#16 (JS): 2/22)
I.17 Fractals (Lecture#16)
Fractal dimension
Cantor set
Koch snowflakes
I.18 What is chaos? (Lecture#16)
- Aperiodic long-term behaviors
- Deterministic systems
- Sensitive dependence on initial conditions
I.19 Review for Hour exam#1 (Lecture#16)
Hour exam#1 on Part I.1 - I.19 (2/24)
I.20 Review on Hour exam#1 (Lecture#17 (JS): 2/27)
I.21 Period doubling route to chaos (Lecture#17)
- Period doubling as the driving amplitude in the damped driven pendulum is
increased
Lab#5: The damped driven pendulum and the stroboscopic surface
of section method
(assigned on 2/27: due on 3/8)
Programming the stroboscopic method for the damped driven pendulum
Testing the stroboscopic method for the damped driven pendulum
- Limit cycles
- Chaotic attractor
Exploring the dynamics of the damped driven pendulum
- Limit cycles to chaotic attractors
- Period doubling
I.21 Application 1: chemical kinetics (Lecture#17)
Kinetics
- How do concentrations of chemical species change in time?
General chemical reaction
Rate law for a chemical reaction
I.22 Application 1: chemical kinetics (continued) (Lecture#18 (JS): 3/1)
I.23 Application 1: chemical kinetics (continued) (Lecture#19 (JS): 3/3)
Autocatalysis
- Mechanism of cubic autocatalysis
Cubic autocatalator
- Mechanism
- Dimensionless formalism
- Fixed points and limit cycles (chemical oscillations)
I.24 Application 1: chemical kinetics (continued) (Lecture#20 (JS): 3/6)
Autocatalator (continued)
- Comments
- Non-isothermal autocatalator
- T-dependence of rate constants
Oregonator model
I.25 Application 1: chemical kinetics (continued) (Lecture#21 (JS): 3/8)
- A class demonstration of oscillating chemical reactions.
I.26 Application 2: molecular vibrations (Lecture#21)
Triatomic (ABA) molecules
- Bond displacement coordinates
Potential energy
Hamilton's equations of motion
Equations of motion for an ABA triatomic molecule
I.27 Application 2: molecular vibrations (continued)
(Lecture#22 (JS): 3/10)
Dimensionless variables and equations of motion
Initial conditions
Coordinate space projection
Example: H2O
- Local modes
- Normal modes
- Bond energies
Laser control of chemical reactions
SPRING BREAK (3/11 - 3/19)
I.28 REVIEW ON PART I (Lecture#23 (JS): 3/20)
Lab#6: Chemical kinetics and molecular vibrations
(assigned on 3/20: due on 3/29)
PART A. Chemical kinetics
C-feedback system or a 3-variable autocatalator
- Rate equations
- Dimensionless variables
The adaptive step size R-K program for the C-feedback system
Numerical investigations of the C-feedback system
- Limit cycles
- Period doubling
- Chaotic motion and a strange attractor
PART B. Molecular vibrations
The fixed step size R-K program for an ABA triatomic molecule
Investigation of the vibrational dynamics of water
Investigation of the vibrational dynamics of different molecules
- Local modes to chaotic motion
- Stable normal modes
II. Molecular dynamics (MD) simulations of two-dimensional argon cluster
(12 lectures, 3 labs, and 1 hour exam)
How do we study the thermodynamics of many-body dynamical systems?
II.1 Molecular dynamics (MD) simulations
(Lecture#24 (HM): 3/22)
Simulating time evolution of many-body systems
- A large number of interacting particles
Examples
- Condensed matter (solid and liquids)
- Macromolecules
- Clusters
- Galaxies, etc.
Few-body vs. many-body
Few: behaviors of each individual degree of freedom
- Many: overall, collective, macroscopic behaviors
- Thermodynamics with average quantities
Microscopic atomic motion
- Length scale ~1A = 10-10 m
- Time scale ~ 10-12 sec
Macroscopic thermodynamics
- Length scale ~ 1 m
- Time scale ~ 1 sec
Computer memory and speed
- N < 106
- Time step < 106 --> 10-8 sec in real time
if each time step = 10-14 sec
- A MD simulation is still looking at short length and time scale phenomena.
Time evolution by solving equations of motion
- Classical MD -- Newton's equations of motion
- Inert gases, ionic and covalent systems, etc.
- Electrons are localized around nuclei.
- Quantum MD -- Schroedinger equations
- Metals / semiconductors
- Ions (classically) and electrons (quantum mechanically)
- Light atoms: H, He.
- Quarks and gluons, etc.
II.2 MD simulations on a two-dimensional Ar clusters
(Lecture#25 (HM): 3/24)
Newton's equations of motion
Verlet's algorithm
- Discretizing Newton's equation of motion
- No force --> inertial motion
- Force and inertia --> accelerated motion
- Velocity
Thermodynamics
- Total energy --> internal energy
- Total kinetic energy --> temperature
- Internal energy vs. temperature --> an equation of state
Atomic structures
- Low T: solid with an ordered lattice structure
- High T: liquid with disordered structure
- Pair distribution functions
Atomic motion
- Low T: thermal vibrations
- High T: migration (diffusion)
- Atomic trajectories
- Mean square displacements
II.3 Quantities to be computed and analyzed (Lecture#26 (HM): 3/27)
Quantities computed during a simulation
- Atomic positions --> interatomic forces and the total potential energy
- Velocities --> the total kinetic energy --> temperature
- The total energy: almost constant
Data analysis
- Time averaged total energy and temperature --> the equation of state
- Atomic trajectories
- Pair distribution functions
- Mean square displacements
II.4 Derivation of Verlet's algorithm (Lecture#26)
II.5 Interatomic pair potential (Lecture#27 (HM): 3/29)
II.6 Dimensionless variables (Lecture#27)
- Atomic positions
- Pair potential
II.7 Interatomic forces (Lecture#27)
Hamilton's equations and interatomic forces
- 2-body forces due to the pair potential
- Dimensionless forces
- Net forces: Newton's 3rd law of motion
Lab#7: Molecular dynamics (MD) simulations on a 2-dimensional Ar cluster
(assigned on 3/29: due on 4/7)
Initial data
- Create the initial data program
MD program
- Create the MD program
- A test run
II.8 How to control truncation error (Lecture#28 (HM): 3/31)
Remedy
- Displacement vectors
- Revised Verlet's algorithm
II.9 Dimensionless variables (Lecture#28)
- Dimensionless atomic positions
- The dimensionless Lennard-Jones potential
- Dimensionless 2-body forces
II.10 Interatomic forces revisited (Lecture#28 & Lecture#29 (HM): 4/3)
Physical meaning of 2-body forces
- Short-range repulsive force
- Long-range attractive force
II.11 Verlet's algorithm revisited (Lecture#29 & Lecture#30 (HM):4/5)
Dimensionless time evolution equations
- Updating the displacement vectors
- Atomic positions from the displacement vectors
Dimensionless variables
- Velocity vectors from the displacement vectors
- The dimensionless total kinetic energy
- The dimensionless instantaneous kinetic temperature
- The dimensionless total energy
Time step
- Shorter than a typical vibrational period
Initial conditions
- Initial positions and displacements
- Vanishing initial displacement vectors
- Vanishing total linear and angular momenta
II.12 MD for molecular systems (Lecture 31 (JS): 4/7)
Intermolecular and intramolecular potential energy functions
- Bond stretching and bending potentials
- Torsional potentials
- van der Waals interactions
- Electrostatic terms
- Hydrogen bonds
Applications
- Conformational energy differences
- Solvent effects
- Macromolecular simulations
Lab#8: Data analysis -- <E> vs. <T> and atomic trajectories
(assigned on 4/7: due on 4/14)
Production runs
- At 8 different values of the total energy
The total energy as a function of time steps (Kaleidagraph)
Time average program
- Time averages of the total energy and temperature
The equation of state (Kaleidagraph)
Atomic trajectory program (NCAR graphics)
II.13 Thermodynamic quantities (Lecture#32 (HM): 4/10)
Total energy: almost constant
Kinetic and potential energies
- Approach toward thermal equilibrium: transient and equilibrium time intervals
Macroscopic quantities as time averages
The equipartition theorem
- Time averaged temperature and time averaged kinetic energy
How to control the total energy
II.14 Atomic structure and motion (Lecture#33 (HM): 4/12)
Lab#9: Data analysis -- atomic structure and motion
(assigned on 4/14: due on 4/21)
Pair distribution function program
Mean square displacement program
Animation of atomic motion (Mathematica)
II.15 Review for Hour exam#2 (Lecture#33 (HM & JS))
Hour exam#2 on Part I.21-I.27 and Part II (4/14)
II.16 Review on Hour exam#2 (Lecture#34 (HM & JS): 4/17)
II.17 REVIEW ON PART II (Lecture#35 (HM): 4/19)
Various types of MD
A. Microcanonical MD
Closed system with constant total energy
Types of boundary conditions (BC)
(i) Free BC
(ii) Box BC
(iii) Periodic BC
B. Canonical MD with fixed volume
System in contact with a heat bath at constant temperature
C. Canonical MD with constant pressure
III. Monte Carlo (MC) simulations of phase transitions
(8 lectures and 1 lab)
How do we study phase transitions in many-body systems?
III.1 Stochastic simulations (Lecture#35)
Deterministic simulations
- Few-body: numerical solution of ODEs with the Runge-Kutta method
- Many-body: MD with Verlet's algorithm
Stochastic simulations
- Updating a system's state with probability
- Example: a random walk by tossing a coin
III.2 Two-dimensional Ising model (Lecture#35)
Two-dimensional Ising model on a square lattice
- A spin on a lattice site
- 2 states for a spin
- A state for the entire system: a spin configuration
- Total energy for each spin configuration
III.3 Ferromagnetic interactions (Lecture#36 (HM): 4/21)
III.4 Temperature control (Lecture#36)
- System in contact with a heat reservoir at constant temperature
III.5 Time evolution of the system (Lecture#36)
III.6 The Boltzmann factor (Lecture#36)
Probability for the system to be in a state with energy E
- States with lower energy are favored.
- At T = 0: the lowest energy state has probability one
- As T is increased, more and more high E states become probable.
III.7 Replacing time averages with expectation values
(Lecture#37 (HM): 4/24)
III.8 Phase transitions and critical phenomena in the Ising model
(Lecture#37)
What do we already know about the 2-D Ising model analytically?
Spontaneous magnetization as a function of temperature
- The low temperature ordered phase
- The high temperature disordered phase
Total energy as a function of temperature
Divergence in the specific heat at the critical temperature
Evolution of spin domain patterns and critical fluctuations
III.9 Monte Carlo simulations (Lecture#38 (HM): 4/26)
Goal:
- Create a sequence of states whose histogram is proportional to the Boltzmann
factor.
Markov process
- A single step process
- The accessibility condition
- The detailed balance
III.10 The heat bath algorithm (Lecture#38 & Lecture#39 (HM): 4/28)
Procedure
Flow chart
Dimensionless scheme
Lab#10: Monte Carlo (MC) simulations on a 2-dimensional Ising model
(assigned on 4/26: due on 5/5)
The MC program
Production runs
- At 6 different values of temperature
The total energy per spin as a function of MC sweeps
The magnetization per spin as a function of MC sweeps
The time average program
- Times averages for the total energy per spin, magnetization per spin,
and the heat capacity per spin.
The average total energy per spin, the average magnetization per spin,
and the average heat capacity per spin as functions of temperature.
III.11 Quantities to be calculated (Lecture#40 & 41 (HM): 5/1 &
5/3)
How do we calculate the following quantities in MC simulations
- The total energy per spin as a function of temperature
- The spontaneous magnetization per spin as a function of temperature
- The specific heat as a function of temperature
- The spin domain patterns as a function of temperature
Specific heat and fluctuations in the total energy
- The specific heat as a measure for energy fluctuations
The spin domain patterns and fluctuations in magnetization
III.12 The heat bath algorithm revisited (Lecture#42 (HM): 5/5)
- The accessibility condition
- The detailed balance
Review for the Final exam (Lecture#42 (JS & HM): 5/5)
Final exam on Part I, II, and III (5/10)
Go back
to Computational Science Courses |