Acquis d'apprentissage

Ce cours a pour objectif de conforter l'utilisation du calcul numérique dans des questions de physique, autant au niveau des expérimentateurs que des théoriciens. Les méthodes proposées pour aborder ces questions sont décrites et mises en pratique dans les séances de travaux dirigés exécutés sur ordinateur.

Contenu

Le cours commence par une mise à niveau permettant une utilisation plus avancée du Fortran 90 (travail en lignes de commande, compilation avec un Makefile, utilisation de scripts, notions avancées du Fortran 90). On rappelle brièvement les limites d'une représentation numérique des données. On aborde ensuite les problèmes suivants : (1) Résolution de systèmes d'équations linéaires (2) Interpolations numériques (3) Dérivées numériques (4) Quadratures numériques (5) Ajustements linéaires (6) Optimisation (7) Intégration d'équations différentielles. Les librairies permettant de résoudre ces problèmes en Fortran 90 ainsi qu'avec Octave/Matlab sont présentées.
 
AVERTISSEMENT : il est absolument nécessaire d'avoir suivi un cours de Fortan 90 pour aborder ce cours.

 

Table des matières

  1. Travailler avec le gfortran
    Fortran 90 : notions avancées
    Représentation des données numériques
  2. Résolution de systèmes d'équations linéaires
    Appendice : la librairie LAPACK
    Appendice : Octave (MATLAB)
  3. Méthodes d'interpolation
    Interpolation linéaire, interpolation parabolique, polynôme de Lagrange
    Interpolation par fonctions splines
    Interpolation dans un espace à plusieurs dimensions
    Appendice : le Numerical Recipes
    Appendice : interpolation avec Octave
  4. Dérivées numériques
    Formules asymétrique et symétrique pour une dérivée première
    Algorithme de Romberg
    Formule symétrique pour une dérivée seconde
    Formules à N points pour une dérivée d'ordre quelconque
  5. Quadratures numériques
    Règle des trapèzes, règle de Simpson
    Formules de Simpson généralisées
    Quadratures adaptatives (quanc8)
    Méthode de Gauss
    Appendice : intégration avec Octave
  6. Ajustements linéaires
    Méthode des moindres carrés
    Ajustements linéaires généralisés par une décomposition SVD
  7. Méthodes d'optimisation
    Minimisation à une dimension (golden search)
    Minimisation à plusieurs dimensions (gradient descend, conjugate gradient)
    Méthode de Monte Carlo (simulated annealing)
    Algorithmes génétiques
    Appendice : optimisation avec Octave
  8. Intégration d'équations différentielles
    Méthode d'Euler, méthode multi-step, méthode predictor-corrector, méthode de Runge-Kutta
    Méthode de Runge-Kutta du quatrième ordre (rkf45)
    Appendice : intégration d'équations différentielles avec Octave

Exercices

Les travaux pratiques se font sur ordinateur et consistent à écrire un programme en Fortran 90 en vue de résoudre des problèmes typiques de la Physique.

Méthodes d'enseignement

Le cours est donné à l'aide d'un vidéo-projecteur et d'un tableau pour les développements qui le nécessitent.

Méthode d'évaluation

L'examen consiste en deux parties: (i) un examen écrit sur la matière vue au cours théorique (14 points) et (ii) un examen pratique sur un problème semblable à ceux abordés aux travaux pratiques (6 points). La cote finale sera modulée en fonction du travail de l'année.
 

Sources, références et supports éventuels

W.H. Press, S.A. Teukolsky, W.T. Vetterling and B.P. Flannery, Numerical Recipes in Fortran, 2nd edition, Cambridge University Press (Cambridge, 1992).

Langue d'instruction