• Aucun résultat trouvé

Pour sauver (respectivement charger) le contenu d’un tableau Numpy dans (resp. depuis) un fichier texte :

N/A
N/A
Protected

Academic year: 2022

Partager "Pour sauver (respectivement charger) le contenu d’un tableau Numpy dans (resp. depuis) un fichier texte :"

Copied!
2
0
0

Texte intégral

(1)

TP : Numérique (révisions)

I) Des matrices

Pour sauver (respectivement charger) le contenu d’un tableau Numpy dans (resp. depuis) un fichier texte :

1

>>> a

2

array([[ 0, 1, 2, 3, 4],

3

[ 5, 6, 7, 8, 9],

4

[10, 11, 12, 13, 14],

5

[15, 16, 17, 18, 19],

6

[20, 21, 22, 23, 24]])

7

>>> np. s a v e t x t ( ’ t a b l e a u . t x t ’ , a)

8

>>> c = np. l o a d t x t ( ’ t a b l e a u . t x t ’ )

Pour sauver (resp. charger) dans un format binaire compressé et optimisé, on utilise np.save (resp.

np.load). L’extension est .npy. Ce format est obligatoire pour les tableaux de dimension 3 ou plus.

Exercice 1

Dans cet exercice, avec Python on pourra utiliser la fonction array de la bibliothèque numpy, ainsi que la fonction eigvals de la sous-bibliothèque numpy.linalg. (ex : from numpy import linalg as LA)

1) Créer deux matrices R = 1 2 3 4 5 6

!

et S =

1 2 3 4 5 6 7 8 9

 et les faire afficher.

2) Créer une fonction test, d’argument M , renvoyant la valeur n si M est une matrice carrée d’ordre n (entier naturel non nul), et zéro dans tous les autres cas. Vérifier la fonction test sur R et sur S.

3) Le fichier matrice1.txt, situé sur ma page web, contient un tableau de valeurs flottantes. Lire ce tableau dans le fichier et vérifier qu’il correspond bien à une matrice carrée d’ordre 5 que l’on désignera par M1.

4) Déterminer les valeurs propres de la matrice M1.

5) Créer une fonction dansIntervalle, d’arguments une liste L et deux réels a et b, renvoyant la valeur True si tous les éléments de la liste L sont dans l’intervalle [a, b] et False sinon. Vérifier que toutes les valeurs propres de la matrice M1 sont dans l’intervalle [0, 1].

6) Déterminer la matrice de passage P telle que M = P DP

−1

avec D une matrice diagonale que l’on précisera (Il existe une commande pour créer une matrice diagonale) . Vérifiez les calculs. Que constate-t-on ? Exercice 2

Soit H

n

la matrice de Hilbert d’ordre n, de coefficients h

ij

= 1

i + j − 1 pour 1 6 i, j 6 n.

1) Créer une fonction hilbert d’argument n qui renvoie la matrice de Hilbert d’ordre n sous forme de tableau numpy.

2) Inverser

1

H

10

et faire afficher le coefficient en bas à droite. Le résultat attendu (formel) est 44914183600.

Que constate-t-on ? Pour n = 20, le coefficient correspondant devrait être 48722219250572027160000.

3) Résoudre le système H

5

X = Y avec Y =

−7.7

−6 2.1

−0.5 0

puis Y =

−7.7

−6 2.1

−0.4 0

 .

Que peut-on en conclure ?

1. A l’aide de votre pivot de Gauss de l’an dernier, soigneusement rangé, ou bien de la fonction ad hoc de

numpy.linalg

1

(2)

TP Numérique (révisions)

4) Rappel : dans le cas d’une matrice symétrique réelle A, on appelle conditionnement de A le réel

κ(A) =

λ∈Sp (A)

max |λ|

min

λ∈Sp (A)

|λ|

Si AX = Y et A(X + δX) = Y + δY , alors kδX k

kXk 6 κ(A) kδY k kY k .

Donc κ(A) permet de mesurer la perturbation sur la solution X lorsqu’on perturbe l’entrée Y (on a un résultat analogue lorsqu’on perturbe A).

L’an dernier, nous l’avions vu dans le cas d’une matrice diagonale. Désormais, nous savons diagonaliser.

Déterminer les valeurs propres maximale et minimale de H

n

pour un certain nombre de valeurs de n.

Conclure.

5) Le cas des matrices tridiagonales V

n

=

2 −1 (0)

−1 . .. ...

. .. ... ...

. .. ... −1

(0) −1 2

est plus intéressant en pratique : ce

sont des matrices qui servent à résoudre les équations aux dérivées partielles de type ∆f = g.

Les valeurs propres sont λ

k

= 2

1 + cos n + 1

pour 1 6 k 6 n, et un rapide calculs de DL donne

κ(V

n

) ∼ 4n

2

π

2

2

Références

Documents relatifs

public static void lireEnreg (String nomFichier) Lit dans le fichier client client dont le nom est passé en paramètre, un enregistrement et affiche sur la console les informations

Vue d'ensemble des sources de trafic 1 avr..

• Pour les tissus de 1,10 m de large, comptez sur une longueur de 1,05 m pour le rétrécissement

Quatre tests sont automatiquement calculés : le test de SHAPIRO WILK – utilisable uniquement pour un effectif inférieur à 5000 observations ; le test de

Pour cette fois-ci, les parents de madame Manège les ont accompagnés.. Calcule ce que la famille Manège va payer en passant à la caisse du

P.4.J - Simon a fait un tableau avec ce qu'il a mangé chaque jour de la semaine.. Réponds aux questions en t'aidant

On cherche 0 sur la 1 re ligne du tableau et on lit son image sur la 2 de ligne.. Donne un encadrement de l’antécédent

Parmi les films étrangers, sont disponibles : 67 films policiers,78 comédies et un grand choix de films