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
-
Travailler avec le gfortran
Fortran 90 : notions avancées
Représentation des données numériques
-
Résolution de systèmes d'équations linéaires
Appendice : la librairie LAPACK
Appendice : Octave (MATLAB)
-
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
-
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
-
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
-
Ajustements linéaires
Méthode des moindres carrés
Ajustements linéaires généralisés par une décomposition SVD
-
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
-
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
Description des 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.
Disciplines
Programmation du calcul numérique
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.
Mode 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'enseignement
Français
Lieu de l'activité
NAMUR
Faculté organisatrice
Faculté des sciences
Rue de Bruxelles, 61
5000 NAMUR
Cycle
Etudes de 2ème cycle