Descriptif
Le cours proposé a pour objectif de fournir aux étudiants quelques clés importantes du développement logiciel dans ce contexte. Une partie importante du cours est dédiée au langage C++ afin que l’étudiant acquiert un niveau suffisant pour développer du code objet.
En parallèle, on aborde des problématiques spécifiques des codes de calcul scientifique : rapidité, efficacité, optimalité, stabilité des calculs.
Une place importante sera donnée à la pratique car pour bien programmer il faut programmer "beaucoup". Dans un premier temps, afin d’acquérir les bases, des séances de travaux pratiques sont proposées.
Objectifs pédagogiques
- Être capable de prendre en compte les problèmes spécifiques d’un code de calcul scientifique : rapidité, efficacité, optimalité, stabilité des calculs.
- Être capable de développer du code objet en langage C++ (héritage, programmation générique)
- Cours magistral : 7
- Travaux dirigés en salle info : 14
Diplôme(s) concerné(s)
- Master 1 Applied Mathematics ans statistics - Orsay
- Master 1 Parisien de Recherche Opérationnelle
- Diplôme d'Ingénieur de l'Ecole Nationale Supérieure de Techniques Avancées
- Master 1 Mathématiques Appliquées
Parcours de rattachement
Pour les étudiants du diplôme Master 1 Applied Mathematics ans statistics - Orsay
Programmation en C
Pour les étudiants du diplôme Master 1 Parisien de Recherche Opérationnelle
Programmation en C
Pour les étudiants du diplôme Diplôme d'Ingénieur de l'Ecole Nationale Supérieure de Techniques Avancées
Programmation en C
Pour les étudiants du diplôme Master 1 Mathématiques Appliquées
Programmation en C
Format des notes
Numérique sur 20Littérale/grade européenPour les étudiants du diplôme Master 1 Parisien de Recherche Opérationnelle
Vos modalités d'acquisition :
F=note finale, TD=Travaux dirigés, E=Examen final - Session 1 : F=0,3 TP4 + 0,7 TP7 rapport - Session 2 : F=1E
Le rattrapage est autorisé (Note de rattrapage conservée)- le rattrapage est obligatoire si :
- Note initiale < 7
- le rattrapage peut être demandé par l'étudiant si :
- 7 ≤ note initiale < 10
- Crédits ECTS acquis : 2.5 ECTS
Le coefficient de l'UE est : 1
La note obtenue rentre dans le calcul de votre GPA.
L'UE est évaluée par les étudiants.
Pour les étudiants du diplôme Master 1 Applied Mathematics ans statistics - Orsay
Vos modalités d'acquisition :
F=note finale, TD=Travaux dirigés, E=Examen final - Session 1 : F=0,3 TP4 + 0,7 TP7 rapport - Session 2 : F=1E
Le rattrapage est autorisé (Note de rattrapage conservée)- le rattrapage est obligatoire si :
- Note initiale < 7
- le rattrapage peut être demandé par l'étudiant si :
- 7 ≤ note initiale < 10
- Crédits ECTS acquis : 2 ECTS
- Scientifique acquis : 2
Le coefficient de l'UE est : 1
La note obtenue rentre dans le calcul de votre GPA.
L'UE est évaluée par les étudiants.
Pour les étudiants du diplôme Diplôme d'Ingénieur de l'Ecole Nationale Supérieure de Techniques Avancées
Vos modalités d'acquisition :
- le rattrapage est obligatoire si :
- Note initiale < 6
- le rattrapage peut être demandé par l'étudiant si :
- 6 ≤ note initiale < 10
- Crédits ECTS acquis : 2 ECTS
- Scientifique acquis : 2
Le coefficient de l'UE est : 1
La note obtenue rentre dans le calcul de votre GPA.
L'UE est évaluée par les étudiants.
Pour les étudiants du diplôme Master 1 Mathématiques Appliquées
Vos modalités d'acquisition :
F=note finale, TD=Travaux dirigés, E=Examen final - Session 1 : F=0,3 TP4 + 0,7 TP7 rapport - Session 2 : F=1E
L'UE est acquise si Note finale >= 10- Crédits ECTS acquis : 3 ECTS
Le coefficient de l'UE est : 1
La note obtenue rentre dans le calcul de votre GPA.
Programme détaillé
- CM: Introduction. C++ une extension du C:
TD: familiarisation avec un environnement de développement C++, rappel de C et utilisation des références - CM: Introduction à la notion d'objet:
TD: Ecriture d'une classe Matrice - CM: Surcharge des opérateurs:
TD: Surcharge des opérateurs sur une classe Matrice - CM: Héritage de classes:
TD: implémentation de classes héritées - CM: Programmation générique (classe modèle):
TD: Classe Vecteur<T> numérique héritant de la classe std::vector<T> - CM: Librairies et introduction à la stl:
TD: classe de matrice sparse utilisant la classe std::map - TP noté de 3h