On considère un espace euclidien E, muni d'un produit scalaire que
l'on représentera par une variable dans un
logiciel de calcul formel. Par exemple on peut le noter
f
, où f
est une fonction de 2 variables, telle que
si x
et y
sont deux variables représentant
des éléments x et y de E, alors le produit scalaire de x et y
est donné par f(x,y)
.
Exercice 1 : (à rendre à la fin de la séance)
Définissez sur votre logiciel le produit scalaire de 2 vecteurs dans
les cas suivants :
Exercice 2 : (à rendre à la fin de la séance)
Il s'agit d'écrire un programme ortho
mettant en oeuvre l'algorithme
d'orthonormalisation de Gram-Schmidt. Le programme ortho
aura
deux paramètres: une liste l
de longueur k représentant
une famille
v1,..., vk de vecteurs de E avec
k dim(E),
et une fonction f
représentant le produit scalaire. Il renverra
une liste formé de k vecteurs normés et orthogonaux
w1,..., wk de E tels que l'espace vectoriel
engendré par
w1,..., wl soit le même que celui engendré
par
v1,..., vl pour
1 l k.
Pour des raisons d'efficacité, on pourra commencer par
orthogonaliser la famille.
Exercice 3 : (à rendre au début du TP12)
Tester votre programme avec une famille de 3 vecteurs aléatoires de
E1 = 3 (si la famille n'est pas libre, refaites un tirage aléatoire).
Tester avec E2 les polynômes de degré inférieur ou
égal à 5 et la famille
1, x, x2, x3, x4, x5. Tester avec E3
pour n = 5 et la famille
1, cos(x), cos(x)2, cos(x)3, cos(x)4, cos(x)5.
Exercice 4 : (à rendre au début du TP12)
Dans l'exemple de
3 ci-dessus, on écrit en colonnes les 3 vecteurs
aléatoires, ce qui constitue une matrice M carrée de taille 3.
On écrit en colonnes les 3 vecteurs de la famille orthonormalisé
obtenue, ce qui constitue une matrice orthogonale Q. On pose
M = QR. Calculez R, que peut-on dire de cette matrice? Montrez que
l'on peut faire ce type de décomposition pour toute matrice carrée
inversible (on rappelle que le processus d'orthonormalisation
vérifie Vect
(v1,..., vl)=Vect
(w1,..., wl)).