calcul numérique (avec maple) maplesoft maple version 9.5

42
Calcul numérique (avec Maple) Maplesoft http://www.maplesoft.com/ Maple version 9.5

Upload: jolie-guillemin

Post on 03-Apr-2015

126 views

Category:

Documents


0 download

TRANSCRIPT

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

Calcul numérique(avec Maple)

Maplesoft

http://www.maplesoft.com/

Maple version 9.5

Page 2: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Le logiciel de calcul formel Maple

• Sources utilisées pour ce cours :– Raphaël Giromini

http://www.giromini.org/maple/index.html

– M. Chare (cours-tds années précédant 2006).– José-Marconi Rodrigues (tps précédant 2006).

Page 3: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Modification sur l’emploi du temps

Mardi :– TD (gp2 : MIP) : 13h30 - 15h30– TD (gp1 : MI) : 15h30 - 17h30

– Salle

Fin des TDs le 18 avril ou le 25 avril

Page 4: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Chapitre 7 : Algèbre linéaire

Page 5: Calcul numérique (avec Maple) Maplesoft  Maple version 9.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 ...

Page 6: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 7: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 8: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 9: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 10: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 11: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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 :–

Page 12: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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))

Page 13: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

vector

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

Page 14: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Les structures de données vector et matrix (librairie linalg)

• La syntaxe pour construire une matrice est :matrix(m, n, list)où mn 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))

Page 15: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

matrix

Page 16: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Exemple de matrices particulières

Page 17: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Exemple de matrices particulières

Page 18: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opérations algébriques• On retrouve les opérations +,-,

&*, ^

• On peut utiliser directement matadd, multiply, scalarmul ...

Page 19: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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 : uv = uv

Remarque : |u|.|v|.cos = u.v

Page 20: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5
Page 21: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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).

Page 22: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opération diverse sur les matrices

• Illustration :

Page 23: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opération diverse sur les matrices

• Illustration :

Page 24: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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).

Page 25: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

matrix list

Page 26: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Rappel sur les matrices ...

• Soit le système linéaire suivant :

1 . x + 2 . y + 5 . z + 3 . w = 10

1 . x + 5 . y + 2 . z + 3 . w = -3

4 . x + 2 . y + 3 . z + 1 . w = 19

-2 . x + 5 . y + 4 . z + 5 . w = 7

Il peut s’écrire sous forme matriciel :

A . X = B

Page 27: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Rappel sur les matrices ...

A . X = B

Page 28: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 29: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 30: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Matrice transposé,matrice inverse

Page 31: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Matrice transposé,matrice inverse

Page 32: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Matrice transposé,matrice inverse

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

Page 33: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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

Page 34: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opérations diverses sur les matrices

Page 35: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

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) ...

Page 36: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opération élémentaire

Page 37: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Calcul du Jacobien

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

xnfm

xnf

xnf

xfm

xf

xf

xfm

xf

xf

...21............

2...

22

21

1...

12

11

Page 38: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Calcul du Jacobien

Page 39: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

EigenVector, EigenValue

Un vecteur propre d’une matrice A est tel que : .X = A.XOn 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).

Page 40: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

EigenVector, EigenValue

Page 41: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opérations diverses sur les matrices

• Famille maximale libre des vecteur-colonnes– rowspace

• Famille maximale libre des vecteur-colonnes– colspace

Page 42: Calcul numérique (avec Maple) Maplesoft  Maple version 9.5

Opérations diverses sur les matrices