UNIVERSITE FRANCAISE

DU PACIFIQUE

______

Université de la

 Polynésie Française

 

Examen terminal d'informatique

Licence Mathématiques

Année 2001-2002 - Première session

 

0.                Modalités

1.Vous disposez de deux heures,

2.seules vos notes personnelles sont autorisées,

3.le barème est donné à titre indicatif et pourra être modifié.

Maple interactif

1.                Approximation d’une intégrale par la méthode de Simpson (env. 5 pts)

On souhaite obtenir une approximation de l’intégrale de la fonction f(x) = sin(x2) +2 sur l’intervalle [0, 2] en utilisant la classique méthode des rectangles (cf. ci-dessous) et une méthode plus efficace dite méthode de Simpson.

 

Le principe de la méthode de Simpson est de trouver un polynôme de degrés 2 qui coïncide avec f(x) au début, au milieu et à la fin de l’intervalle considéré, l’intégrale de ce polynôme donne alors une bonne approximation de l’intégral de la fonction f(x).

 

Vous donnerez donc une session Maple permettant de trouver le polynôme de Simpson pour notre fonction f(x), de tracer sur un même graphique f(x) et le polynôme de Simpson et enfin de calculer les 3 aires (rectangles, Simpson, véritable).

 

Remarque : Cette méthode n’est, bien entendu, pas très efficace pour un intervalle découpé en seulement 2 rectangles mais dès que l’on passe à 4 ou 6, le gain en précision est significatif.

Maple programmation

2.                Décomposition LU

Il existe un beau théorème qui dit que toute matrice A carrée inversible peut se décomposer de manière unique en le produit d’une matrice L carrée triangulaire inférieure à diagonale unité (“ Lower ” en Anglais) et une matrice U triangulaire supérieure (“ Upper ” en Anglais). C’est cette décomposition que nous nous proposons de programmer en Maple.

2.1.           Ecrire une procédure Low construisant une matrice carrée triangulaire inférieure (coefficients nuls au dessus de la diagonale) à diagonale unité. La taille sera passée en paramètre (env. 3 pts).

2.2.           Ecrire une procédure Up construisant une matrice carrée triangulaire supérieure (coefficients nuls sous la diagonale) (env. 3 pts)

Exemple en dimension 3 :

> L:=Low(3);U:=Up(3);

 

                                            [     1                       0                       0           ]

                                            [                                                                    ]

                    L :=                 [     L2,1                  1                       0           ]

                                            [                                                                    ]

                                            [     L3,1                  L3,2                  1           ]

 

                                            [     U1,1                 U1,2                 U1,3     ]

                                            [                                                                    ]

                 U :=                    [     0                       U2,2                 U2,3     ]

                                            [                                                                    ]

                                            [     0                       0                       U3,3     ]

 

La méthode la plus simple (mais aussi la moins efficace) consiste à former la matrice LU-A et à résoudre le système de n2 équations à n2 inconnues donné par LU-A=0.

2.3.           Ecrire une procédure Maple permettant de trouver les matrices L et U (env. 6 pts)

Rappel : La fonction Maple entries permet d’isoler les différents coefficients d’une matrice

> entries(array([[1,3,x],[2*z,3.5,y],[12,t,58]]));

 

          [12], [t], [58], [1], [3], [3.5], [2 z], [x], [y]

2.4.           Proposer une nouvelle procédure de calcul de la décomposition LU exploitant la remarque ci-dessus (env. 3 pts)

Cette méthode est très loin d’être la meilleure. Considérons le résultat du calcul de LU qu’il faut identifier à A.

> evalm(L &* U);

 

   [           U1,1                                         U1,2                                                 U1,3                           ]

 

   [        L2,1 U1,1                          L2,1 U1,2 + U2,2                             L2,1 U1,3 + U2,3               ]

 

   [        L3,1 U1,1                     L3,1 U1,2 + L3,2 U2,2             L3,1 U1,3 + L3,2 U2,3 + U3,3 ]

 

En lisant le résultat précédant ligne par ligne on constate qu’il est possible de déterminer d’abord la première ligne de U (elle est égale à celle de A), puis la seconde ligne de L (seule inconnue L2,1), puis la troisième ligne de L et enfin la troisième ligne de U (réduite au coefficient U3,3). En d’autres termes, il ne faut pas résoudre le système dans n’importe quel ordre (méthode précédente) mais le faire ligne par ligne.