Langage C++ et calcul scientifique

Résumé : La simulation numérique est devenue essentielle dans de nombreux domaines tels que la mécanique des fluides et des solides, la météo, l'évolution du climat, la biologie ou les semi-conducteurs. Elle permet de comprendre, de prévoir, d'accéder là où les instruments de mesures s'arrêtent.

Ce livre présente des méthodes performantes du calcul scientifique : matrices creuses, résolution efficace des grands systèmes linéaires, ainsi que de nombreuses applications à la résolution par éléments finis et différences finies. Alternant algorithmes et applications, les programmes sont directement présentés en langage C++. Ils sont sous forme concise et claire, et utilisent largement les notions de classe et de généricité du langage C++.

Le contenu de ce livre a fait l'objet de cours de troisième année à l'école nationale supérieure d'informatique et de mathématiques appliquées de Grenoble (ENSIMAG) ainsi qu'au mastère de mathématiques appliquées de l'université Joseph Fourier. Des connaissances de base d'algèbre matricielle et de programmation sont recommandées. La maîtrise du contenu de cet ouvrage permet d'appréhender les principaux paradigmes de programmation du calcul scientifique. Il est alors possible d'appliquer ces paradigmes pour aborder des problèmes d'intérêt pratique, tels que la résolution des équations aux dérivées partielles, qui est abordée au cours de ce livre. La diversité des sujets abordés, l'efficacité des algorithmes présentés et leur écriture directe en langage C++ font de cet ouvrage un recueil fort utile dans la vie professionnelle d'un ingénieur.

Le premier chapitre présente les bases fondamentales pour la suite : présentation du langage C++ à travers la conception d'une classe de quaternions et outils d'analyse asymptotique du temps de calcul des algorithmes. Le second chapitre aborde l'algorithme de transformée de Fourier rapide et développe deux applications à la discrétisation d'équations aux dérivées partielles par la méthode des différences finies. Le troisième chapitre est dédié aux matrices creuses et à l'algorithme du gradient conjugué. Ces notions sont appliquées à la méthode des éléments finis. En annexe sont groupés des exemples de génération de maillage et de visualisation graphique.

S'il est cependant recommandé de maîtriser les notions du premier chapitre pour aborder le reste du livre, les chapitres deux et trois sont complètement indépendants et peuvent être abordés séparément. Ces chapitres sont complétés par des exercices qui en constituent des développements, ainsi que des notes bibliographiques retraçant l'historique des travaux et fournissant des références sur des logiciels et librairies récents implémentant ou étendant les algorithmes présentés.

Les codes C++ présentés au long de ce livre ainsi que dans les exercices sont disponibles librement à l'adresse \url{http://www-ljk.imag.fr/membres/Pierre.Saramito/books} sous la licence GNU public licence.

Ce livre est publié sous licence GNU FDL avec les références suivantes : P. Saramito, Language C++ et calcul scientifique, College Publications, London, 2013. ISBN 978-1-84890-101-8.
Type de document :
Cours
DEA. Grenoble, France, 2005, pp.167
Liste complète des métadonnées

Littérature citée [61 références]  Voir  Masquer  Télécharger

https://cel.archives-ouvertes.fr/cel-00573975
Contributeur : Pierre Saramito <>
Soumis le : lundi 16 décembre 2013 - 10:12:57
Dernière modification le : lundi 9 avril 2018 - 12:22:15
Document(s) archivé(s) le : mardi 18 mars 2014 - 15:30:45

Identifiants

  • HAL Id : cel-00573975, version 4

Collections

Citation

Pierre Saramito. Langage C++ et calcul scientifique. DEA. Grenoble, France, 2005, pp.167. 〈cel-00573975v4〉

Partager

Métriques

Consultations de la notice

2097

Téléchargements de fichiers

18765