Participant : Jean-Michel Malé
Le projet SINUS participe au thème 2 du projet d'ingénierie concourante GéNIE . Le thème 2 est plus particulièrement concerné par la manipulation logicielle de programmes de calcul. Plusieurs types de manipulations de codes sont étudiés dans ce thème ; nous nous occupons ici plus particulièrement de l'aspect différentiation automatique de programmes écrits en FORTRAN-77. Le but de l'étude en cours est de démontrer, pour les numériciens, l'intérêt du concept de différentiation automatique de code, dès lors qu'il s'agit de développer un programme d'optimisation à partir d'un programme de résolution déjà écrit.
En effet, beaucoup de méthodes numériques d'optimisation sont basées sur des calculs de gradient d'une certaine fonctionnelle à minimiser ; le différentiateur automatique Odyssée , développé au sein du projet SAFIR , doit permettre de disposer d'un gradient exact avec un minimum d'efforts et de modifications du programme original. Le travail, entamé au début de l'année, a consisté à reformatter et à adapter un programme de résolution des équations de la dynamique des gaz (équations d'Euler, de Navier-Stokes) pour lui permettre d'être différencié sans encombre par Odyssée , tout en minimisant l'occupation mémoire des procédures générées, et donc du programme d'optimisation tout entier. La précision de la résolution a également été étendue au second ordre en espace et le code dérivé a été inclus dans une boucle de gradient conjugué. L'ensemble constitue une maquette démonstrative qui sera présentée à la fin de la première phase de GéNIE .