/ Aarhus University / Physics / Subatomic Physics / Nuclear Theory >

Practical Programming [] and Numerical methods 2019

[ weekly notes | exercises | examples | examination problems ]

NB (reversed time ordering):

Schedule:

Onsdag12 - 15 Auditorium D4 (1531-219) uge 5-15, 17-20
Fredag13 - 16Auditorium G1 (1532-116) uge 5-15, 17-20

Exercises:

Interpolation; Linear equations; Eigenvalues; Least-Squares fit; Root finding; Minimization; ODEs; Adaptive integration; Monte Carlo integration; Artificial neural networks; FFT;

Weekly notes:

  1. Interpolation [chapter.pdf]

    • Polynomial interpolation; Spline interpolation: linear, quadratic, cubic splines, sub-splines: Akima and monotone; Other forms of interpolation; Multivariate interpolation.
    • Procedural, object-oriented, and functional programming styles.
  2. Linear equations [chapter.pdf]

    • Triangular systems, back-substitution, forward-substitution;
    • QR-decomposition: modified Gram-Schmidt algorithm, Householder reflection algorithm, Givens rotation algorithm;
    • LU-decomposition: Doolittle algorithm;
    • Cholesky decomposition;
    • Determinant of a matrix;
    • Matrix inverse.
  3. Eigenvalues and eigenvectors [chapter.pdf] (= Eigenvalue decomposition (EVD), = matrix diagonalization)

    • QR/QL algorithm; Jacobi eigenvalue algorithm.
    • Rank-1 and 2 updates of a symmetric eigenproblem.
    • Singular value decomposition (SVD) of a matrix.
  4. Linear least-squares problem [chapter.pdf]

    • Least-squares solution with QR-decomposition; ordinary least-squares fit; fit errors and covariance matrix.
    • Least-squares solution with singular value decomposition.
  5. Nonlinear equations (root-finding) [chapter.pdf]

    • Modified Newton's method; backtracking line search.
    • Quasi-Newton's methods: Broyden's and SR1 updates of the Jacobian matrix.

  6. Multidimensional Minimization [chapter.pdf]

    • Newton's method; Quasi-Newton's methods: Broyden's and SR1 updates.
    • Downhill simplex method.
    • Stochastic algorithms: simulated annealing; quantum annealing.
    • Evolutionary algorithms: genetic algorithm.

  7. Ordinary differential equations [chapter.pdf]

    • One-step (Runge-Kutta) methods; multi-step and predictor-corrector methods;
    • Error estimates; adaptive step-size strategy.

  8. Numerical integration (quadratures) [chapter.pdf]

    • Riemann sums: rectangle and trapezium rules;
    • Quadratures with equally spaced abscissas (Newton-Cotes);
    • Adaptive algorithms with equally spaced abscissas;

  9. Monte Carlo integration [chapter.pdf]

    • Plain Monte Carlo integration;
    • Importance sampling; Stratified sampling;
    • Quasi-random numbers: van der Corput and Halton sequences.

  10. Artificial Neural Networks [Wikibook "Artificial Neural Networks"]

    • Artificial neurons;
    • Typical three-layer neural networks; input and output neurons; hidden neurons.
    • Network training;
  11. Fast Fourier transform and applications. [chapter.pdf]

    • Discrete Fourier Transform and applications;
    • Fast Fourier Transform: Danielson-Lanczos lemma and Cooley-Tukey algorithm;

  12. Eigenvalues 2: Power methods and Krylov subspace methods [chapter.pdf]

    • Power methods; inverse iteration method.
    • Arnoldi and Lanczos methods;
    • GMRES (Generalized Minimum RESidual) method for solving systems of linear equations.

  13. Numerical integration 2

    • Quadratures with optimized abscissas (Gauss);
    • Gauss-Kronrod quadratures.
    • Variable substitution quadratures.

Literature:
D.V.Fedorov, Introduction to Numerical Methods, lecture notes [1M PDF file].
Evaluation:
Project and exercises, 7-scale grade.
Useful links:
[ Linuxbog.dk | GNU scientific library | Computer Language Benchmarks ]

"Copyleft" © 2004-2009 D.V.Fedorov (fedorov at phys dot au dot dk)
x= sin(x)=