0% ont trouvé ce document utile (0 vote)
78 vues9 pages

Vecteurs Et Matrices

Transféré par

labrunettewisso
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
78 vues9 pages

Vecteurs Et Matrices

Transféré par

labrunettewisso
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre2 : Vecteurs et Matrices 2021/2022

1. Les vecteurs
Un vecteur est une liste ordonnée d’éléments. Si les éléments sont arrangés horizontalement, on dit
que le vecteur est un vecteur ligne, par contre si les éléments sont arrangés verticalement on dit que
c’est un vecteur colonne.
Pour créer un vecteur ligne il suffit d’écrire la liste de ses composants entre crochets [et] et de les
séparés par des espaces ou des virgules comme suit :
--> u=[1,2,3,4] //Création d’un vecteur ligne u
u =
1. 2. 3. 4.
--> v=[4 5 6 7] //Création d’un vecteur ligne v
v =
4. 5. 6. 7.

Pour créer un vecteur colonne il est possible d’utiliser une des méthodes suivantes :
• écrire les composants du vecteur entre crochets [ et ] et de les séparés par des points
virgules (;) comme suit :
--> U=[1;2;3;4] //Création d’un vecteur colonne U
U =
1.
2.
3.
4.

• écrire verticalement le vecteur :


--> V=[5
>6
> 7]
V =
5.
6.
7.

• calculer le transposé d’un vecteur ligne :


--> U=[1 2 3 4]' //Création d’un vecteur colonne U
U =
1.
2.
3.
4.

Si les composants d’un vecteur X sont ordonnés avec des valeurs consécutives, nous pouvons le
noter avec la notation suivante : X = premier_élément : dernier_élément.
(Les crochets sont facultatifs dans ce cas).
--> X = 1:8
X =
2. 3. 4. 5. 6. 7. 8.
--> X = [1:8]
X =
1. 2. 3. 4. 5. 6. 7. 8.

Si les composants d’un vecteur X sont ordonnés avec des valeurs consécutives mais avec un pas
(d’incrémentation/décrémentation) différent de 1, nous pouvons spécifier le pas avec la notation :

[Link] Page 1
Chapitre2 : Vecteurs et Matrices 2021/2022

X = premier_élément : le_pas : dernier_élément (Les crochets sont facultatifs).


--> X = [Link]
X =
0. 2. 4. 6. 8. 10.

--> Y = [10:-2:0]
Y =
10. 8. 6. 4. 2. 0.
On peut écrire des expressions plus complexes comme :
--> V = [ [Link] , -[Link] ]
V =
3. 5. -2. 0.
--> B= [A 4 5 6]
B =
1. 2. 3. 4. 5. 6.

1.1. Référencement et accès aux éléments d’un vecteur


L’accès aux éléments d’un vecteur se fait en utilisant la syntaxe générale suivante :
nom_vecteur ( positions )
Les parenthèses (et) sont utilisées pour la consultation.
Exemples :
--> U=[1 -2 3 -4 0]; //création du vecteur U qui contient 5 éléments

--> U(4) //la 4ème position


ans =
-4.
--> U(2:4) // de la deuxième position jusqu'au quatrième
ans =
-2. 3. -4.
--> U(4:-2:1) // de la 4ème pos jusqu'à la 1ère avec le pas = -2
ans =
-4. -2.
--> U([1,3,4]) // la 1ére, la 3ème et la 4ème position uniquement
ans =
3. -4.
--> U(1) = 8 // donner la valeur 8 au premier élément
U =
8. -2. 3. -4. 0.
--> U(6) = -1 // ajouter un sixième élément avec la valeur -3
U =
8. -2. 3. -4. 0. -1.
--> U(9) = 5 //ajouter un neuvième élément avec la valeur 5
U =
8. -2. 3. -4. 0. -1. 0. 0. 5.
--> U(2) = [] // Supprimer le deuxième élément
U =
8. 3. -4. 0. -1. 0. 0. 5.
--> U(3:5) = [] // Supprimer du 3ème jusqu’au 5ème élément
U =
8. 3. 0. 0. 5.

[Link] Page 2
Chapitre2 : Vecteurs et Matrices 2021/2022

1.2. Les opérations élément-par-élément pour les vecteurs


Avec deux vecteurs u et v, il est possible de réaliser des calculs élément par élément en utilisant les
opérations suivantes :

L’opération Signification Exemple avec : --> u=[1 2 3];v=[4 5 6];

+ Addition des vecteurs --> u+2


ans =
3. 4. 5
--> u+v
ans =
5. 7. 9.

- Soustraction des vecteurs --> u-2


ans =
-1. 0. 1.
--> v-u
ans =
3. 3. 3.

.* Multiplication élément par élément -> u.*2


ans =
4. 6.
--> u.*v
ans =
4. 10. 18.

./ Division élément par élément --> u./2


ans =
0.5 1. 1.5
--> v./u
ans =
4. 2.5 2.

.^ Puissance élément par élément --> u.^2


ans =
4. 9.
--> v.^u
ans =
4. 25. 216.

1.3. La fonction linspace


La création d’un vecteur dont les composants sont ordonnés par intervalle régulier et avec un
nombre d’éléments bien déterminé peut se réaliser avec la fonction :
linspace (début, fin, nombre d’éléments)
Le pas d’incrémentation est calculé automatiquement par Scilab selon la formule :
le pas =(fin - debut)/(nombre d'éléments - 1)
Exemple :
--> X = linspace(1,10,4) //un vecteur de quatre élément de 1 à 10
X =
1. 4. 7. 10.

--> Y = linspace(15,40,5) //un vecteur de cinq élément de 15 à 40


Y =
15. 21.25 27.5 33.75 40.

[Link] Page 3
Chapitre2 : Vecteurs et Matrices 2021/2022

La taille d’un vecteur (le nombre de ses composants) peut être obtenue avec la fonction
length comme suit :
--> length(X) //la taille du vecteur X
ans =
4.
--> length(Y) //la taille du vecteur Y
ans =
5.

2. Les matrices
Une matrice est un tableau rectangulaire d’éléments (bidimensionnels). Les vecteurs sont des
matrices avec une seule ligne ou une seule colonne (monodimensionnels).
Pour insérer une matrice, il faut respecter les règles suivantes :
• Les éléments doivent être mises entre des crochets [ et ]
• Les espaces ou les virgules sont utilisés pour séparer les éléments dans la même ligne.
• Un point-virgule (ou la touche entrer) est utilisé pour séparer les lignes.
Pour illustrer cela, considérant la matrice suivante :
1 3 5
𝐴𝐴 = �2 4 6�
3 5 7
Cette matrice peut être écrite en Scilab avec une des syntaxes suivantes :
--> A = [1,3,5 ; 2,4,6 ; 3,5,7]
A =
1. 3. 5.
2. 4. 6.
3. 5. 7.

--> A = [1 3 5 ; 2 4 6 ; 3 5 7]
A =
1. 3. 5.
2. 4. 6.
3. 5. 7.

--> A = [[1;2;3] , [3;4;5] , [5;6;7]]


A =
1. 3. 5.
2. 4. 6.
3. 5. 7.

--> A=[1 3 5
>246
> 3 5 7]
A =
1. 3. 5.
2. 4. 6.
3. 5. 7.

Le nombre d’éléments dans chaque ligne (nombre de colonnes) doit être identique dans toutes les
lignes de la matrice, sinon une erreur sera signalée par Scilab. Par exemple :
--> B = [1 3 ; 2 4 6 ; 3 5 7]
!--error 6
Dimensions rangée/colonne incohérentes.

[Link] Page 4
Chapitre2 : Vecteurs et Matrices 2021/2022

Une matrice peut être générée par des vecteurs comme le montre les exemples suivants :
--> x=1:4 //création d’un vecteur x
x =
1. 2. 3. 4.

--> y = [Link] //création d’un vecteur y


y =

5. 10. 15. 20.


--> z = linspace(20,35,4) //création d’un vecteur z
z =
20. 25. 30. 35.
--> A = [x ; y ; z] // A est formée par les vecteurs lignes x, y et z
A =
1. 2. 3. 4.
5. 10. 15. 20.
20. 25. 30. 35.

--> B = [x' y' z'] // B est formée par les vecteurs colonnes x, y et z
B =
1. 5. 20.
2. 10. 25.
3. 15. 30.
4. 20. 35.

--> C = [x ; x] // C est formée par le même vecteur ligne x 2 fois


C =
1. 2. 3. 4.
1. 2. 3. 4.

2.1. Référencement et accès aux éléments d’une matrice


L’accès aux éléments d’une matrice se fait en utilisant la syntaxe générale suivante :
nom_matrice ( positions_lignes , positions_colonnes )
Il est utile de noter les possibilités suivantes :
L’accès à un élément de la ligne i et la colonne j se fait par : A(i,j).
L’accès à toute la ligne numéro i se fait par : A(i,:).
L’accès à toute la colonne numéro j se fait par : A(:,j).
Exemples
--> A = [1 3 5 ; 2 4 6 ; 3 5 7] // création de la matrice A
A =
1. 3. 5.
2. 4. 6.
3. 5. 7.

--> A(2,3) // l’élément sur la 2ème ligne à la 3ème colonne


ans =
6.

--> A(1,:) // tous les éléments de la 1ère ligne


ans =
3. 5.

--> A(:,2) // tous les éléments de la 2ème colonne


ans =
3.
4.
5.

--> A(2:3,:) // tous les éléments de la 2ème et la 3ème ligne

[Link] Page 5
Chapitre2 : Vecteurs et Matrices 2021/2022

ans =
2. 4. 6.
3. 5. 7.
A(:,3) = [] //Supprimer la troisième colonne
A =
1. 3.
2. 4.
3. 5.
--> A(2,:) = [] // Supprimer la deuxième ligne
A =

1. 3. 5.
3. 5. 7.
--> A = [A ; [1,1,1]] //Ajouter une nouvelle ligne
A =
1. 3. 5.
2. 4. 6.
3. 5. 7.
1. 1. 1.

Les dimensions d’une matrice peuvent être acquises en utilisant la fonction size. Cependant,
avec une matrice A de dimension m × n le résultat de cette fonction est un vecteur de deux
composants, une pour m et l’autre pour n.
--> A = [1 3 5 ; 2 4 6 ; 3 5 7] // création de la matrice A
A =
1. 3. 5.
2. 4. 6.
3. 5. 7.

--> size(A)
ans =
3. 3.
Pour obtenir les dimensions séparément on peut utiliser la syntaxe :
--> m=size (A, 1) // le nombre de ligne (m)
m =
3.

--> n=size (A, 2) // le nombre de colonne (n)


n =
3.

--> B = [1 3 5 7 ; 2 4 6 8; 3 5 7 9] // création de la matrice B


B =
1. 3. 5. 7.
2. 4. 6. 8.
3. 5. 7. 9.

--> size(B)
ans =
4.
--> m=size (B, 1) // le nombre de ligne (m)
m =
3.
-->n=size (B, 2) // le nombre de colonne (n)
n =
4.

2.2. Génération automatique des matrices

[Link] Page 6
Chapitre2 : Vecteurs et Matrices 2021/2022

En Scilab, il existe des fonctions qui permettent de générer automatiquement des matrices
particulières. Dans le tableau suivant nous présentons-les plus utilisées :

La fonction Signification

zeros(m,n) Génère une matrice m × n avec tous les éléments = 0

ones(m,n) Génère une matrice m × n avec tous les éléments =1

eye(n,n) Génère une matrice identité de dimension n × n

rand(m,n) Génère une matrice de dimension m × n de valeurs aléatoires

Exemples :
--> zeros(2,3)
ans =
0. 0. 0.
0. 0. 0.

--> ones(2,3)
ans =
1. 1. 1.
1. 1. 1.

-->eye(2,2)
ans =

1. 0.
0. 1.

-->rand(2,3)
ans =

0.2113249 0.0002211 0.6653811


0.7560439 0.3303271 0.6283918

2.3. Les opérations de base sur les matrices


L’opération Signification
+ L’addition
- La soustraction
.* La multiplication élément par élément
.\ La division inverse élément par élément
.^ La puissance élément par élément
* La multiplication matricielle
/ La division matricielle (A/B) = (A*B^(-1))
Les opérations élément par éléments sur les matrices sont les mêmes que ceux pour les vecteurs (la
seule condition nécessaire pour faire une opération élément par élément est que les deux matrices
aient les mêmes dimensions). Par contre la multiplication ou la division des matrices requiert
quelques contraintes (consulter un cours sur l’algèbre matricielle pour plus de détail).

2.4. Fonctions utiles pour le traitement des matrices


Voici quelques fonctions parmi les plus utilisées concernant les matrices :

[Link] Page 7
Chapitre2 : Vecteurs et Matrices 2021/2022

La fonction L’utilité Exemple A = [1 0 5 ; 2 -4 6 ; 3 5 7]

det Calcule de déterminant d’une matrice -->det(A)


ans =
52.
inv Calcule l’inverse d’une matrice -->inv(A)
ans =

- 1.1153846 0.4807692 0.3846154


0.0769231 - 0.1538462 0.0769231
0.4230769 - 0.0961538 - 0.0769231
rank Calcule le rang d’une matrice --> rank(A)
ans =
3.
trace Calcule la trace d’une matrice -->trace(A)
ans =

4.
spec Calcule les valeurs propres -->spec(A)
ans =

10.875879
- 0.7849780
- 6.0909007
norm Calcule la norme d’une matrice -->norm(A)
ans =

11.186436
diag Renvoie le diagonal d’une matrice -->diag (A)
ans =

1.
- 4.
7.
diag(V) Crée une matrice ayant le vecteur V --> V= [1 3 5];
dans le diagonal et 0 ailleurs. --> diag(V)
ans =

1. 0. 0.
0. 3. 0.
0. 0. 5.
tril Renvoie la partie triangulaire inferieure -->tril(A)
ans =

1. 0. 0.
2. - 4. 0.
3. 5. 7.
triu Renvoie la partie triangulaire supérieure -->triu(A)
ans =

1. 0. 5.
0. - 4. 6.
0. 0. 7.
‘ Calcule le transposé de la matrice -->A'

[Link] Page 8
Chapitre2 : Vecteurs et Matrices 2021/2022

ans =

1. 2. 3.
0. - 4. 5.
5. 6. 7.
Il est souvent intéressant de travailler sur les lignes ou les colonnes d’une matrice avec Scilab.
A(i,:) désigne la 𝑖𝑖 𝑖𝑖è𝑚𝑚𝑚𝑚 ligne de la matrice A
-->A = [1 0 5 ; 2 -4 6 ; 3 5 7];

-->A(1,:)
ans =

1. 0. 5.
A(2:3,:) désigne la sous matrice formée des 2𝑖𝑖è𝑚𝑚𝑚𝑚 et 3𝑖𝑖è𝑚𝑚𝑚𝑚 lignes de la matrice A
-->A(2:3,:)
ans =

2. - 4. 6.
3. 5. 7.

A(:,j) désigne la 𝑗𝑗 𝑖𝑖è𝑚𝑚𝑚𝑚 colonne de la matrice A.


-->A(:,1)
ans =

1.
2.
3.

[Link] Page 9

Vous aimerez peut-être aussi