La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Calcul numérique (avec Maple)

Présentations similaires


Présentation au sujet: "Calcul numérique (avec Maple)"— Transcription de la présentation:

1 Calcul numérique (avec Maple)
Maplesoft Maple version 9.5

2 Le logiciel de calcul formel Maple
Sources utilisées pour ce cours : Raphaël Giromini M. Chare (cours-tds années précédant 2006). José-Marconi Rodrigues (tps précédant 2006).

3 Modification sur l’emploi du temps
Mardi : TD (gp2 : MIP) : 13h h30 TD (gp1 : MI) : 15h h30 Salle Fin des TDs le 18 avril ou le 25 avril

4 Chapitre 7 : Algèbre linéaire

5 Structures de données Représentation de vecteurs et de matrices :
via les structures de données list et listlist via la structure de donnée array calcul simple : +, -, &*, ^ ou via les structures de données vector et matrix (librairie linalg) transposer, inverser, diagonaliser, choisir une base, trouver des vecteurs propre, des valeurs propre ...

6 via les structures de données list, listlist et array

7 via les structures de données list, listlist et array

8 via les structures de données list, listlist et array

9 via les structures de données list, listlist et array

10 via les structures de données list, listlist et array

11 Les structures de données vector et matrix (librairie linalg)
Pour des opérations plus compliquées sur les matrices et les vecteurs, on utilise la librairie linalg via la commande :

12 Les structures de données vector et matrix (librairie linalg)
La syntaxe pour construire un vecteur est : vector(n, [x1,...,xn]) où n est la dimension du vecteur et les xi sont les les composantes du vecteurs. Remarque : L’un des deux arguments (au choix) est optionnel. Il est également possible d’appliquer une fonction (f) aux index pour définir le vecteur : vector(n, f(x))

13 vector Remarque 1 : Le type d’un vecteur est array
Remarque 2 : Aide en ligne : ?linalg[vector]

14 Les structures de données vector et matrix (librairie linalg)
La syntaxe pour construire une matrice est : matrix(m, n, list) où mn est la dimension de la matrice et list est une liste ou une liste de listes de coefficients. Remarque : L’un des arguments ‘ list ’ ou ‘ m, n ’ est optionnel. Il est également possible d’appliquer une fonction (f) aux index pour définir la matrice : matrix(m, n, f(i,j))

15 matrix

16 Exemple de matrices particulières

17 Exemple de matrices particulières

18 Opérations algébriques
On retrouve les opérations +,-, &*, ^ On peut utiliser directement matadd, multiply, scalarmul ...

19 Opérations diverses sur les vecteurs
La commande vectdim retourne la dimension du vecteur. La commande norm retourne la norme du vecteur. La commande basis retourne une base à partir d’un ensemble de vecteurs. La commande crossprod retourne le produit vectoriel de deux vecteurs. La commande angle retourne l’angle entre deux vecteurs. Notation : uv = uv Remarque : |u|.|v|.cos  = u.v

20

21 Opération diverse sur les matrices
La commande stackmatrix permet de créer une matrice à partir d’une liste de vecteurs Les commandes concat et augment permettent de faire une seule matrice à partir de plusieurs matrices. Les matrices doivent avoir le même nombre de ligne. Les commandes row et col permettent d’extraire les colonnes et les lignes d’une matrice (attention au type de retour).

22 Opération diverse sur les matrices
Illustration :

23 Opération diverse sur les matrices
Illustration :

24 matrix  list Pour passer d’une liste de liste à une matrice on utilise la commande convert(…, matrix). Pour passer d’une matrice à une liste de liste on utilise également la commande convert(…, listlist).

25 matrix  list

26 Rappel sur les matrices ...
Soit le système linéaire suivant : 1 . x y z w = 10 1 . x y z w = -3 4 . x y z w = 19 -2 . x y z w = 7 Il peut s’écrire sous forme matriciel : A . X = B

27 Rappel sur les matrices ...
A X = B

28 Rappel sur les matrices … et intérêt de celles-ci !
Soit le système linéaire de la forme : A . X = B a) Existe-il une solution ? b) Si oui, la calculer. a) Il existe une solution si det(A)  0 c’est-à-dire que la matrice A est inversible (A. A-1 = I) b) X = A-1.B

29 Matrice transposé, matrice inverse
det permet de calculer le déterminant de la matrice inverse permet d’inverser la matrice si le déterminant est non nul. linsolve permet de résoudre un système de la forme A.X = B. transpose permet de transposer la matrice

30 Matrice transposé, matrice inverse

31 Matrice transposé, matrice inverse

32 Matrice transposé, matrice inverse
Remarque : La matrice A est non inversible, le système n’a donc pas de solution.

33 Opérations diverses sur les matrices
Rang d’une matrice (nombre de lignes ou colonnes linéairement indépendantes) : rank Noyau d’une matrice (noyau d’une application linéaire) kernel

34 Opérations diverses sur les matrices

35 Opération élémentaire du pivot de Gauss
addrow(mat, l1, l2, m) permet d’ajouter m fois la ligne l1 de la matrice mat à la ligne l2. addcol(mat, c1, c2, m) ... mulrow(mat, l, exp) permet de multiplier la ligne r de la matrice mat par exp. mulcol(mat, c, exp) … swaprow(mat, l1, l2) échange les lignes l1 et l2. swapcol(mat, c1, c2) ...

36 Opération élémentaire

37 Calcul du Jacobien Le Jacobien d’un vecteur f = (f1, f2, …, fm) dont les paramètres des expression fi sont x1, …, xn vaut :

38 Calcul du Jacobien

39 EigenVector, EigenValue
Un vecteur propre d’une matrice A est tel que : .X = A.X On appel le scalaire  la valeur propre. La procédure eigenvectors calcule les vecteurs propre de la matrice A. (résolution de (I. - A) X = 0 pour chaque X). Remarque : utile pour l’analyse de donnée et la réduction de la dimension des données (taille des vecteurs).

40 EigenVector, EigenValue

41 Opérations diverses sur les matrices
Famille maximale libre des vecteur-colonnes rowspace colspace

42 Opérations diverses sur les matrices


Télécharger ppt "Calcul numérique (avec Maple)"

Présentations similaires


Annonces Google