0% ont trouvé ce document utile (0 vote)
100 vues6 pages

TP Informatique (Matlab)

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1/ 6

UNIVERSITE KASDI MERBAH-OUARGLA

Faculté : FHERSTU
Département : Forage et MCP
Module : informatique

Manuelle du TP Langage matlab

Découverte de matlab 05 : à propos des vecteurs, matrices et tableaux.

1) manipulation des scalaires, vecteurs et matrices


>> a = 3
a =
3

>> b = [ 1 2 3 ]
b =
1 3 8

>> c = [ 3 2 ; 4 1]
c =
3 2
4 1

>> d = [ 3 -6 2 ]
d =
3 -6 2

>> d = [ 3 ; 5 ; 4 ]
d =
3
5
4

En matlab il existe un seul type d’objet défini par les matrices :


 Les scalaires sont définis par des matrices (1 × 1).
 les vecteurs lignes définis par des matrices (1 × n).
 les vecteurs colonnes définis par des matrices (n × 1).

Pour créer une matrice en mettre les différentes valeurs entre des crochets [ ] , avec un virgule(,)
ou un espace ( ) entre chaque valeur de la même ligne , un point-virgule (;) indiquant le passage
`a la ligne suivante.

Chargé par : LANANI sadok Page 1


%... whos : afficher les variables présentes dans l’espace de travail en détailles ….. %

>> whos

Name Size Bytes Class Attributes

a 1x1 8 double
 a est un scalaire ( une matrice 1x1).
b 1x3 24 double
 b est un vecteur ligne (une matrice 1x3).
c 2x2 32 double
 c est une matrice (2x2).
d 3x1 24 double
 d est un vecteur ligne (une matrice 1x3).
e 1x3 24 double
 e est un vecteur colonne (une matrice 3x1).

2) Les Fonctions vectorielles et opérations matricielles :

2-1 Fonctions vectorielles

Un vecteur V

 max(V) retourne le maximum d'éléments d'un vecteur V.

 min(V) retourne le minimum d'éléments d'un vecteur V.

 sort(V) le tri par ordre croissant d’un vecteur V.

 [y, I] = sort(V) retourne en plus les indices des éléments de V.

 find(V) retourne les indices non nuls de V.

 [y, I] = find(V) retourne des lignes (dans le vecteur I) et des colonnes (dans le
vecteur J) des éléments non nuls du V.

 sum(V) retourne la somme des éléments de V.

 cumsum(V) retourne un vecteur contenant la somme cumulée des éléments de V.

 prod(V) retourne le produit des éléments de V.

Chargé par : LANANI sadok Page 2


 cumprod(V) retourne un vecteur contenant le produit cumulée des éléments de V.

 diff(V) retourne un vecteur des différences entre deux éléments consécutifs de V.

 mean(V) retourne le moyenne des éléments de V

 median(V) retourne le médiane

 std(V) retourne l écart type

2-2 opérations matricielles

Une matrice A

 A’  transposée de A
 rank(A)  rang de A
 inv(A)  inverse de A
 expm(A)  exponentielle de A
 det(A)  déterminant de A
 trace(A)  trace de A
 poly(A)  polynôme caractéristique de A
 eig(A)  valeurs propres de A
 [U,D]=eig(A) vecteurs propres et valeurs propres de A
 + -  Opérations arithmétiques : addition, soustraction
 * ^  Opérations arithmétiques : multiplication, puissance (matricielles)
 .* .^  multiplication, puissance terme `a terme
 A \b  résultat du Ax = b
 b/ A  résultat de xA = b
 ./  division terme `a terme
On peut aussi utiliser les deux points pour extraire une sous-matrice d’une matrice A.
 A ( : , j ) extrait la j ème colonne de A. On considère successivement toutes les
lignes de A et on choisit le j ème élément de chaque ligne.
 A ( i, : ) extrait la i ème ligne de A.
 A(:) reforme le matrice A en un seul vecteur colonne en concaténant toutes les
colonnes de A.
 A(j:k) extrait les éléments j à k de A et les stocke dans un vecteur ligne
 A(:,j:k) extrait la sous-matrice de A formée des colonnes j à k.
 A(j:k,:) extrait la sous-matrice de A formée des lignes j à k
 A(j:k,q:r) extrait la sous-matrice de A formée des éléments situés dans les lignes j à
k et dans les colonnes q à r.

3- Indexation du vecteurs et de matrices

Chargé par : LANANI sadok Page 3


Pour extraire un élément d’un vecteur V , il suffit de spécifier l’indice dans la ligne où se

trouve cet élément.

>> V = [ 1 3 8 4 ]

>> V(3)

ans = 8
Pour extraire un élément d’une matrice, il suffit de spécifier l’indice de la ligne et celui de la
colonne où se trouve cet élément.

A(m,n) est l’élément en ligne m et en colonne n de la matrice A.


ème
A(k) est le K élément de la matrice en la parcourant en colonne.

m, n et k peuvent être des vecteurs d’indices. Dans Matlab, l’indexation commence à 1.

Applications :

En utilisant le langage de programmation MATLAB , écrire le programme de résolution


de systèmes linéaires par les méthodes directes(GAUSS) et appliquer pour les exemples
suivant :
1)
a=[6 1 3;
4 2 7;
3 1 5];
b=[3 2 5 ];

2)
a=[2 -1 -1;
1 -1 1;
1 -2 -1];
b=[4 -1 0 ];
3)
a=[2 -1 1;
-1 -1 1;
1 22 -1];
b=[4 1 0 ];

Chargé par : LANANI sadok Page 4


Réf :
 MATLAB : prise en main F. Delebecque et J.C. Pesquet
 travaux pratique à matlab : Nicolas.Szafran http://www-ljk.imag.fr/
 introduction à A MATLAB : http://www.math.ens.fr/cours-
apprentissage/TP/TPIntro.pdf
 matlab pour tous : https://matlabpourtous.com/matlab/les-matrices/indexation-de-matrices/
 Matlab, à propos des scalaires, vecteurs, matrices et tableaux : Fabrice Sincère
 Algèbre linéaire et applications de David Lay (éd. Pearson) https://cpge.lyc-montesquieu-
72.fr/IMG/pdf/pivotdegauss.pdf

Chargé par : LANANI sadok Page 5


Rappels sur le pivot de Gauss
L’algorithme du pivot de Gauss se déroule de la façon suivante :
— on choisit un pivot non nul dans la première colonne, disons sur la ligne i ;
— on échange la première et la i-ème ligne ;
ak1
— on effectue les opérations suivantes sur les lignes 2 ≤ k ≤ n : Lk ← Lk − L1 ;
a11
— on passe à la colonne suivante ;
À la colonne j, on effectue les opérations suivantes :
— on choisit un pivot non nul dans la colonne j dans une ligne d’indice supérieur (≥) à j ;
— on ramène le pivot sur la ligne j en effectuant éventuellement un échange de lignes ;
akj
— on effectue les opérations suivantes sur les lignes j < k ≤ n : Lk ← Lk − Lj .
ajj
Ces opérations ont pour effet de transformer le système en un système triangulaire. Une fois arrivé à un système
triangulaire de la forme :  ∗

 a11 u1 + a∗12 u2 + · · · + a∗1n un = b∗1

 a∗22 u2 + · · · + a∗2n un = b∗2
 ..

 .

a∗nn un = b∗n
il suffit d’effectuer les opérations suivantes :
b∗n
un = (1)
a∗nn
1
un−1 = (b∗ − a∗n−1,n un ) (2)
an−1,n−1 n−1

..
. (3)
1
u1 = (b∗ − a∗12 u2 − · · · − a∗1n un ) (4)
a∗11 1

Vous aimerez peut-être aussi