Marc BUFFAT

Professeur au département de Mécanique, Lyon 1 e-mail contact

Blog scientifique et pédagogique utilisant des notebooks IPython et Linux

Videos et notebooks du cours INPROS


Cours INPROS

Ce cours utilise des outils web 2.0 interactifs (Jupyter Notebook) permettant d’apprendre la programmation scientifique sous Python avec un simple navigateur sans avoir à installer de logiciel. Pour les étudiants de l’université Lyon 1, vous avez accès à un serveur Jupyter Hub pour tester vos notebooks IPython. Les notebooks du cours ont été regroupés dans un livre jupyter-book INPROS ici

Vous trouverez ci dessous:

descriptif:

L’object est l’initiation à la programmation scientifique pour la modélisation numérique en sciences. Pour cela vous apprendrez une méthodologie de programmation scientifique, axé sur la pratique de la programmation sous Python. Il s’adresse à des étudiants scientifiques n’ayant pas ou peu de connaissances en programmation, niveau post-bac scientifique. A l’issue du cours l’étudiant aura acquis une méthodologie, ainsi que la capacité à écrire des programmes simples mais utiles pour simuler ou analyser des problèmes scientifiques .

Notebooks et video du cours

attention

Les vidéos utilisent un ancien interpréteur python 2.7, pour lequel print est un mot clé, soit print 'bonjour'.

Avec Python 3, print est une fonction et il faut donc utiliser des parenthèses, soit print('bonjour')

Video de présentation:

  • PLAN plan du cours

  • RAPPEL rappels de mathématique et de mécanique

  • INTRODUCTION chapitre 1: introduction

    • Introduction:
- Introduction au calcul scientifique
- Introduction à la programmation scientifique
- Introduction au langage Python
  1. ORDINATEUR chapitre 2: fonctionnement d’un ordinateur

    • Introduction:

    • architecture matérielle

    • binaire et flottant

    • performance

    • langages de programmation

  2. VARIABLE chapitre 3: utilisation des variables

    • Introduction
- types de base en Python
- variables
- fonctions mathématiques et liste
  1. LOOP chapitre 4: structures de contrôle

    • Introduction
- expression logique et test
- boucle itérative pour
- boucle itérative tantque
- exemples et exercices d'application
  1. FONCTION chapitre 5: procédures et fonctions

    • Introduction
- procédure et fonction
- arguments d'une fonction
- exemple de procédure et fonction
- paramètres optionnels
- notion de classes et méthodes
- Programmation structurée sur un exemple "Lunar Lander"
- Exercice "Lancer de balle"
  1. TABLEAU chapitre 6: les tableaux numpy

    • Introduction
- Tableaux 1D
- Manipulation des tableaux 1D
- Exemple d'utilisation de tableaux
- Tableaux 2D
- Manipulation des Tableaux 2D
- Notation matricielle avec Numpy
  1. TRACE chapitre 7: tracé avec matplotlib

    • Introduction
- Tracé de courbe
- Tracé en 3D et animation
  1. FICHIER chapitre 7: gestion de fichiers

  2. PRECISION chapitre 8: precision des calculs

  3. ALGORITHME chapitre 9: algorithmes numériques de base

  4. EFFICACITE chapitre 10: efficacités/complexités

  5. DEBUG chapitre 11: recherche d’erreur (debug)