Algèbre linéaire (GCI –100)
1
variable temporaire choisie
>>8/10 «↵» par Matlab
ans =
0.8000 4 décimales par omission
>>r = 8/10 « ↵ »
r=
0.8000 variable choisie par
l’utilisateur
>>r «↵»
r=
0.8000 r conserve la dernière valeur
calculée
2
>>R = 123.123456
>>format long, R
>>format short e, R
>>format short, R
>>A,B (deux vecteurs ou deux matrices)
>>format compact, A,B
>>format, A,B
3
valeur de r retenue
>>s=10*r «↵»
s= fonction dans Matlab
8
>>v=sin(s) «↵»
v=
0.9894 ; ne pas imprimer la
réponse
>>u=[0:.1:10]; «↵»
>>z=sin(u);
>>u(7) «↵» faire varier u de 0 à
ans = 10 par pas de 0.1
0.6000
u est une variable indicée
dont on veut la 7ième
valeur 4
>>x=[0:.01:10];
>>y=sin(2*x);
>>plot(x,y),xlabel(‘x’),ylabel(‘sin(2x)’)
1
0.8
0.6
0.4
0.2
s in(2x )
-0.2
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7 8 9 10
x 5
Opérateurs arithmétiques
Symbole Opération Forme Matlab
^ exponentiation : ab a^b
* multiplication : ab a*b
/ div. vers la droite : a/b a/b
\ div. vers la gauche : a/b b\a
+ addition : a + b a+b
- soustraction : a – b a-b
6
Variables spéciales
ans variable temporaire contenant la réponse
la plus récente
eps spécifie la précision d’un nombre en point
flottant
i, j le nombre imaginaire (-1)1/2
Inf l’infini
NaN indique un résultat numérique non défini
pi le nombre π
7
Commandes pour la gestion d’une session :
clc nettoie la fenêtre dite Command
clear enlève les variables de la mémoire
exist (‘nom’) détermine si un fichier existant ou
une variable a le nom ‘nom’
help nom recherche en ligne pour le sujet nom
lookfor nom recherche l’aide pour le mot-clé nom
quit arrête Matlab
who énumère les variables courantes en
mémoire
whos énumère les variables actuelles et
leur dimension
8
Création de vecteurs
et de matrices
9
Création de vecteurs
>>r = [2,4,10] «↵»
r=
2.0000 4.0000 10.0000 Crochets carrés
>>s = [2 4 10] «↵»
s=
2.0000 4.0000 10.0000 Séparateurs
vecteurs lignes
10
Vecteurs colonnes Vecteurs (suite)
>>g = [3;7;9] «↵»
g=
3 Séparateur pour les
7 lignes
9
ou
>>g = [3,7,9]´ «↵»
g= Transposée
3
7
9 11
Création d’une matrice
>>A = [2,4,10;16,3,7] «↵»
A=
2 4 10 Séparateurs
16 3 7
>>a = [1,3,5]; «↵»
>>b = [7,9,11]; «↵»
vecteur
>>c = [a b] «↵»
c=
1 3 5 7 9 11 2 vecteurs séparés par ,
ou un espace
>>D = [a;b] «↵»
D=
1 3 5 2 vecteurs lignes avec
7 9 11 séparateur de lignes 12
Transposée d’une matrice
Matrice transposée : matrice dont on remplace les
lignes par les colonnes
⎡ − 2 6⎤
A=⎢ ⎥
⎣ − 3 5 ⎦
T ⎡− 2 − 3⎤
A =⎢ ⎥
⎣ 6 5 ⎦
>>A= [-2,6;-3,5]’ apostrophe
A=
-2 -3
6 5
13
Jeu des indices
v(:) tous les éléments du vecteur v
v(2:5) du 2e au 5e élément
A(:, 3) tous les éléments de la 3e colonne
A(:,2:5) tous les éléments de la 2e à la 5e colonne
A(2:3,1:3) tous les éléments dans la 2e et 3e ligne et qui
sont aussi dans la 1ère à la 3e colonne
A( [1 4] ) = [ ] élimine les colonnes 1 et 4
>>A= [6, 9, 4; 1, 5, 7];
>>A(1,5) = 3 «↵»
agrandissement
A=
6 9 4 0 3 remplissage avec
14
1 5 7 0 0 des 0
Commandes pour les vecteurs et matrices
find(x) Fournir une variable indicée contenant les indices
des éléments non nuls de x
[u, v, w] = find (A) Fournir des variables indicées contenant
les indices des lignes et colonnes des
éléments non nuls de la matrice A
length(A) Fournir le nombre d’éléments de A si A est un vecteur
ou la valeur max de m ou n si A est une matrice m x n
max(A) Fournir l’élément ayant la valeur algébrique max
si A est un vecteur ou un vecteur contenant l’élément
max dans chaque colonne de la matrice A
[x, k] = max(A) Même définition que max(A) sauf que le stockage
des valeurs max s’effectue dans le vecteur ligne
x et leurs indices dans le vecteur ligne k
... suite à la diapositive suivante 15
Commandes pour les vecteurs et matrices
(... suite)
min(A) Même signification sauf qu’il s’agit des valeurs
[x, k] = min(A) min
size(A) Fournir un vecteur ligne contenant les dimensions
m x n de la variable indicée A
sort(A) Classer chaque colonne de la variable indicée A par
ordre croissant des grandeurs et fournir une variable
indicée ayant les mêmes dimensions que A
sum(A) Effectuer la somme des éléments de chaque colonne
de A et fournir le résultat dans un vecteur ligne
(Fin)
16
Opérations élément par élément
Définitions à l’aide d’un exemple :
>>A = [6 , 3];
>>B = [4 , 8];
>>c = 2;
addition d’un scalaire
>>d = 5
>>A + c
ans
8 5 soustraction d’un scalaire
>>A – d
ans
1 -2
17
(... suite à la diapositive suivante)
(... suite)
>>A + B addition matricielle
ans
10 11
>>A – B soustraction matricielle
ans
2 -5
>>A .* B
ans
multiplication élément par élément
24 24
>>A ./ B
ans
6/4 3/8 division par la droite
(... suite à la diapositive suivante)
18
(... suite)
>>A .\ B
ans division par la gauche
0.6667 2.6667
>>A .^ c
ans
36 9
exponentiation
(Fin)
19
Opérations matricielles (multiplication)
Posons que
A : matrice m x p
B : matrice p x n
Produit matriciel C = AB ⇒ C = matrice m x n
IMPORTANT :
Nombre de colonnes de A = nombre de lignes de B
(... suite à la diapositive suivante)
20
(... suite)
Multiplication de 2 vecteurs :
>>u = [1, 2];
>>v = [-2, -1];
>>w = u * v’ 1 x n par n x 1
w=
-4 vecteur colonne
vecteur ligne
scalaire produit scalaire
ou produit intérieur
(... suite à la diapositive suivante) 21
(... suite)
>>y = u’ * v produit extérieur
y vecteur ligne 1 x n
-2 -1
-4 -2 vecteur colonne n x 1
matrice n x n
(Fin)
22
Exemple (illustration des 2 produits) :
Vitesses d’un avion et durée entre escales :
Trajet 1 2 3 4
vitesse (mph) 200 250 400 300
durée (h) 2 5 3 4
>>v = [200, 250, 400, 300];
>>t = [2, 5, 3, 4];
>>% Distance parcourue entre chaque escale
>>D = v .* t
D= Commentaires
400 1250 1200 1200
>>% Distance totale parcourue
>>d = v * t’
d=
4050 23
Création de matrices spéciales :
Commande Description
eye(n) Créer une matrice identité I n x n
Eye(size(A)) Créer une matrice nulle même dimension que A
ones(n) Créer une matrice n x n remplie de 1
ones(m,n) Créer une matrice m x n remplie de 1
ones(size(A)) Créer une matrice remplie de 1 et de
même dimension que A
zeros(n) Créer une matrice n x n remplie de 0
zeros(m,n) Même signification qu’avec ones(m,n)
zeros(size(A)) et ones(size(A)) sauf 1 remplacé par 0
24