Enseignements#
Cette page est dédiée à l’ensemble des cours dans lesquels j’interviens dans le cadre de mes vacations.
Cours ENSTA#
APM_4SIM1_TA - Programmation Scientifique en C++#
APM_4SIM2_TA - Projet de Simulation Numérique#
APM_5MS01_TA - Calcul Scientifique Parallèle#
Un
tutoriel
GMSHUne
prise en main
GMSHUn aide-mémoire pour faire des
Makefile
Un aide-mémoire
FORTRAN 90
Un aide-mémoire
Unix
Formation LaTeX#
Ma documentation personnelle :
Immersion dans LaTeX (deuxième édition)
Le
poly
pour les L3 MFA d’OrsayLes
transparents
pour les L3 MFA d’OrsayLe fichier de démarrage
tutorial.tex
Le fichier de démarrage
cv.tex
Le fichier de démarrage
beamer.tex
Cours ATER#
MAM1 - Outils du calcul scientifique#
Un aide-mémoire pour faire des
Makefile
Un aide-mémoire
FORTRAN 90
Un aide-mémoire
Gnuplot 4.0
MAM2 - Génie Logiciel#
Liens utiles pour Java:
L’API de Java, la documentation de référence
La page de Java Native Interface, pour interfacer Java avec C++.
Java Developers Almanach 1.4, des exemples nombreux et variés de la plupart des classes Java.
Liens utiles pour BOUML:
La documentation en ligne de BOUML
Tutoriel en français : Premiers pas avec BOUML
Tutoriel en français : Les classes et la génération de code
MAM3 - Méthodes Numériques pour le Calcul Haute Performance#
Utiliser MPI sur les portables MAM#
L’implémentation MPI installée sous linux sur les portables MAM est MPICH2. À la différence de l’implémentation sur ouessant (version native de la distribution unix SGI).
On peut essayer de bricoler quelque chose qui devrait marcher, mais il vaut mieux s’attaquer au problème de fond : la version MPICH2 installée sur les portables n’est pas vraiment compatible avec Fortran 90. Il faut donc recompiler MPICH2 :
se placer dans le répertoire ~/mpich2-1.0.6pl ;
exécuter la commande (une seule commande) :
$ FC="gfortran ${BUILD32}" CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \ ./configure --enable-cxx --enable-f77 --enable-f90
qui va préparer la recompilation de MPICH2 en précisant que l’on veut une version F77, une version F90 et une version C++;
exécuter la commande
make
pour recompiler MPICH2;exécuter la commande
make install
pour réinstaller MPICH2.
Ceci étant fait, nous pouvons maintenant écrire les bonnes options de compilation dans le Makefile :
FC= mpif90
FFLAGS = -O3 -I/usr/local/mpich2/include/
LDFLAGS = -O3 -L/usr/local/mpich2/lib -lmpif90
le LDFLAGS sera utilisé en remplacement du FFLAGS dans le linkage (la commande qui génère l’exécutable).
Il nous reste maintenant à modifier l’environnement de travail Unix pour que tout fonctionne :
dans le fichier ~/.bashrc, ajouter l’instruction :
PATH=/usr/local/mpich2/bin/:${PATH}
dans le répertoire racine, créer un fichier .mpd.conf contenant :
MPD_SECRETWORD=mr45-j9z
lancer la commande
mpd &
avant toute exécution de programme MPI
On peut alors utiliser use mpi
comme avant.
Structure d’un programme parallèle de calcul scientifique#
Initialisation
Voisinage
Champs
(Début de boucle) Calcul
Communications (Fin de boucle)
Avec des communications bloquantes, les communications se font toujours après les calculs, pour synchroniser la mise à jour de toutes les valeurs.
Cours Monitorat#
Tutorat MAP 431#
En tant que moniteur du cours MAP 431, voici quelques liens utiles :
Besoin d’aide pour Scilab ? Un petit tutoriel est disponible
ici
Besoin d’aide en Freefem++ ? Un petit tutoriel est disponible
ici
D’autres tutoriels et docs sont disponibles en cliquant sur docs et liens dans le menu.
Pour le cours de tutorat du jeudi 23 mars 2006, le sujet
, ainsi que le fichier generatrices.txt <../docs/generatrices.txt>. Une archive complète de l’énoncé et des corrections au format .tar.gz est disponible ici
.