Teacher: Paolo Giannozzi, room L12BE, Department of Mathematics,
Computer Science and Physics, Via delle Scienze 208, Udine
tel. +39 0432 558216, fax +39 0432 558222
web:
http://www.fisica.uniud.it/~giannozz,
email: paolo . giannozzi at uniud . it
Office hours: during the semester I'll be in the Physics building
on Tuesday and Thursday from 9:30 to 11:00. Send me an email or phone me
to get an appointment (in Trieste or in Udine) at a different time.
Goals: this course provides an introduction to numerical methods and techniques useful for the numerical solution of quantum mechanical problems, especially in atomic and condensedmatter physics. The course is organized as a series of theoretical lessons in which the physical problems and the numerical concepts needed for their resolution are presented, followed by practical sessions in which examples of implementatation for specific simple problems are presented. The student will learn to use the concepts and to practise scientific programming by modifying and extending the examples presented during the course.
Syllabus: Schroedinger equations in one dimension: techniques for numerical solutions. Solution of the Schroedinger equations for a potential with spherical symmetry. Scattering from a potential. Variational method: expansion on a basis of functions, secular problem, eigenvalues and eigenvectors. Examples: gaussian basis, planewave basis. Manyelectron systems: Hartree and HartreeFock equations: selfconsistent field, exchange interaction. Numerical solution of HartreeFock equations in atoms with radial integration and on a gaussian basis set. Introduction to numerical solution of electronic states in molecules. Electronic states in solids: solution of the Schroedinger equation for periodic potentials. Introduction to exact diagonalization of spin systems. Introduction to DensityFunctional Theory.
Bibliography
Lecture Notes (updated March 2, 2016):
Introduction,
Ch.1,
Ch.2,
Ch.3,
Ch.4,
Ch.5,
Ch.6,
Ch.7,
Ch.8,
Ch.9,
Ch.10,
Ch.11,
Ch.12,
Appendix,
all
See also:
J. M. Thijssen, Computational Physics, Cambridge University Press,
Cambridge, 1999, Ch.24, 5, 6.16.4, 6.7.
A rather detailed introduction to DensityFunctional techniques can
be found in the first chapters of the lecture notes of my (now defunct)
course on
Numerical Methods in Electronic Structure.
Requirements: basic knowledge of Quantum Mechanics, of Fortran or C programming, of an operating system (preferrably Linux).
Exam: personal project consisting in the numerical solution of a problem, followed by oral examination (typically consisting in the discussion of a subject, different from the one of the personal project, chosen by the student). Contact me a few weeks before the exam to receive the personal project (if not yet assigned) and to set a date. A short written report on the personal project and the related code(s) should be provided no later than the day before the exam.
N.

Date

Subject

1.

1 March

Onedimensional Schroedinger equation: general features of the discrete spectrum, relationship between energy, parity, number of intersections of a solution. Harmonic oscillator: analytical solution. Discretization, Numerov algorithm, numerical stability, eigenvalue search using stable outwards and inwards integrations. (Notes: Ch.1) 
2.

3 March
practical session 
Numerical solution of the onedimensional Schroedinger equation: examples for the harmonic oscillator (code harmonic0: fortran, C; code harmonic1: fortran, C). 
3.

8 March

Spherically symmetric potentials: radial and angular equations; logarithmic grids, change of variables, radial integration, perturbative estimate to accelerate eigenvalue convergence. (Notes: Ch.2) 
4.

10 March
practical session 
Numerical solution for spherically symmetric potentials: example for Hydrogen atom (code hydrogen_radial: fortran, C) 
5.

15 March

Scattering from a potential: cross section, phase shifts, resonances. (Notes: Ch.3; Thijssen: Ch.2) 
6.

17 March
pratical session 
Calculation of cross sections: numerical solution for LennardJones potential (code crossection: fortran, C). 
7.

22 March

Variational method: Schroedinger equation as minimum problem, expansion on a basis of functions, secular problem, introduction to diagonalization algorithms. (Notes: Ch.4; Thijssen: Ch.3) 
8.

31 March
pratical session 
Variational method using an orthonormal basis set: example of a potential well in plane waves (code pwell: fortran, C). 
9.

5 April

Nonorthonormal basis sets: gaussian functions. (Notes: Ch.5) 
10.

7 April
practical session 
Variational method with gaussian basis set: solution for Hydrogen atom (code hydrogen_gauss: fortran, C). 
11.

12 April

Identical particles: Pauli principle, solution of manybody problems, Hartree method, selfconsistent field. (Notes: Ch.6) 
12.

14 April
practical session 
He atom with Hartree approximation: solution with radial integration and selfconsistency (code helium_hf_radial: fortran, C). 
13.

19 April

HartreeFock method: Slater determinants, HartreeFock equations (Notes: Ch.7; Thijssen: Ch.4.14.5) 
14.

21 April
practical session 
Helium atom with HartreeFock approximation: solution with gaussian basis and diagonalization (code helium_hf_gauss: fortran, C). 
15.

26 April

Molecules: BornOppenheimer approximation, potential energy surface, diatomic molecules. introduction to numerical solution for molecules. (Notes: Ch.8; Thijssen: Ch.4.64.8) 
16.

28 April
practical session 
Molecules with gaussian basis: solution of HartreeFock equations on a gaussian basis for a H_{2} molecule (code h2_hf_gauss: fortran, C). 
17.

3 May

Electronic states in crystals: Bloch theorem, band structure. (Notes: Ch.9; Thijssen: Ch.4.64.8) 
18.

5 May
practical session 
Periodic potentials: numerical solution with plane waves of the KronigPenney model (code periodicwell: fortran, C). 
19.

10 May

Electronic states in crystals II: threedimensional case, methods of solution, plane wave basis set, introduction to the concept of pseudopotential. (Notes: Ch.10; Thijssen: Ch.6.16.4, 6.7) 
20.

12 May
pratical session 
Pseudopotentials: solution of the CohenBergstresser model for Silicon (code cohenbergstresser: fortran, C). 
21.

17 May

Spin systems Introduction to spin systems: Heisenberg model, exact diagonalization, iterative methods for diagonalization, sparseness. (Notes: Ch.11) 
22.

19 May
practical session 
Exact Diagonalization Solution of the Heisenberg model with Lanczos chains (code heisenberg_exact: fortran, C). 
23.

24 May

DensityFunctional Theory Introduction to the theory and to the planewave pseudopotential method (Notes: Ch.12) 
24.

26 May 
DensityFunctional Theory II Fast FourierTrasform and iterative techniques (dumb and less dumb code, only Fortran, solving Si with AppelbaumHamann pseudopotentials). Assignment of exam problems. 