Exercice : Simulation de lois classiques

Pour simuler des variables aléatoires, on aura besoin du module random que l'on import avec l'instruction import random as rd

On pourra alors utiliser les fonctions de ce module :  # rd.random(), rd.choice(L), rd.randint(a,b), rd.shuffle(L), rd.sample(L,n)

Calcul intégral - Méthode des rectangles - Méthode d'Euler

Calcul d'intégrales par la méthode des rectangles

[Principe]

On veut calculer $\displaystyle\int_a^b f(t)\ dt$.

Pour cela, on divise le segment [a,b] en n parties égales définissant ainsi une suite $x_0=a < x_1 < \dots <x_n=b$.

Alors $\displaystyle p=\frac{b-a}{n}\ ;\ \int_a^b f(t)\ dt\simeq p\sum_{k=0}^{n-1} f(a+kp)$.

[Python]

Écrire le programme qui prend en paramètres f,a,b et n

L'algorithme revient à calculer une somme avec l'indice k variant de 0 à  n-1

Les Tris

Trier est une opération courante en informatique. Pour résoudre un problème on commence souvent par trier. Si L est une liste, la méthode pour trier une liste est

L.sort().

NB : la liste est triée sur place et ne renvoie aucune valeur (ne pas écrire L=L.sort() mais seulement  L.sort()).

Exemple d'application : Médiane d'une liste L de nombres

[Principe]

Il faut d'abord trier la liste L. La médiane correspond à la valeur qui sépare la série en 2.

Travail sur les listes

Voici une série de programmes élémentaires sur les listes. Il s'agit de reproduire des fonctions ou des méthodes qui sont déjà implantées dans Python. Pour chacune de ces questions, il faudra décrire en une ligne la méthode (algorithme), rédiger le programme en Python, enfin donner le nom et la syntaxe de la fonction.

Création de listes aléatoires

Pour pouvoir tester nos fonctions, il nous faut des listes aléatoires de n nombres entre 1 et 100, créer une fonction CreeListe de paramètre qui fasse ce travail. On pourra utiliser le module random

Résolution numérique d'équations

L'objet du TP est de trouver une solution, si elle existe à l'équation $f(x)=0$.

En plus de trouver la solution, on s'intéresse aussi à la qualité de l'algorithme c'est à dire à sa rapidité.

Méthode par balayage

La méthode par balayage consiste à partir du point $a$, à progresser par pas $p$ jusqu'à ce que la fonction change de signe ou que une valeur limite $b$ soit dépassée

Les suites

représentation des suites

Une suite $(u_n)$, ou du moins les premiers termes peut être représentée de deux manières différentes :

  • [par deux variables :] U contient la valeur courante de un, et n contient l'indice correspondant n.

 Remarque :  dans certaines suites, on a besoin de connaître deux ou  trois termes ($u_n$ mais aussi $u_{n-1}$, $u_{n-2} $...), il suffit alors de réserver des variables pour cela : U1 pour $u_{n-1}$, U2 pour $u_{n-2} $ ...

Le traitement des images

Le programme d'informatique limite le traitement des images en niveau de gris, ce qui permet de travailler avec une matrice à deux dimensions.

Ceci étant, il est d'étendre les différentes techniques à des images en couleurs en les applications successivement aux matrices R, G et B, voire A (correspondant à la transparence)

Le format de travail est le format png. On utilise numpy pour traiter les matrices, matplotlib.pyplot pour les afficher.

Les images

Lecture d'une image.

Les images fournis par les appareils photo sont généralement en couleur. Une image en couleur est constituée de trois couche : une couche rouge (R), une couche verte (G) et une couche bleue (B), R, G et B sont des entiers entre 0 et 255 ou des flottants entre 0 et 1, mesurant l'intensité du rouge.

Si l est le nombre de lignes de l'image et c le nombre de colonne, une image est donc constituée de l x c pixels, chaque pixel étant lui-même un vecteur de trois valeurs (R, G, B).

Les Fichiers

Se déplacer dans les répertoires

 Lorsqu'un programme termine son exécution, toutes les informations stockées dans des variables sont perdues. Un moyen de les conserver est de les enregistrer dans un fichier sur un disque dur. A l'intérieur de celui-ci, les informations peuvent apparaître sous un format de texte (qui est alors lisible par divers logiciels et tout traitement de texte) mais on peut le stocker dans d'autres format (compressé ou en binaire ou codé).

Le module Numpy

Ce document est une introduction au module numpy. Il n'est en aucun cas exhaustif :

Dans toute la suite on supposera qu'on a effectué :

  •   import numpy as np

 Numpy fournit le type array qui est similaire à une liste de listes (list) mais correspond  à des tableaux (une, deux, trois dimensions ou plus).

Pages

S'abonner à bcpst.feray RSS