Vous êtes sur la page 1sur 6

ANNEXE

Affectation variable = valeur;

Affichage fprintf('Le ... de %g et … %g … est: %g', nombre1, nombre2, nombre3);

Affichage avec disp disp(V) affiche la valeur de la variable V quelque soit son type
Retour à la ligne fprintf('\n');

Lecture d’un nombre a = input('Entrer un nombre :');

Fonctions mathématiques élémentaires


factorial(a) : calcule la factorielle de a
rem(a,b) : renvoie le reste de la division entière
de a par b
abs(x) : renvoie la valeur absolue de x
floor(x) : arrondit x à l’entier le plus proche ceil(x) : arrondit x à l’entier le plus proche
inférieur ou égal à x supérieur ou égal à x
fix(x) : arrondit x à l’entier le plus proche vers 0 round(x) : arrondit x à l’entier le plus proche

exp(x) : exponentielle de x log(x) : logarithme à base e de x


log10(x) : logarithme à base 10 de x sqrt(x) : racine carrée de x

cos(x) : cosinus de x acos(x) : arc ϵ [0,π] dont le cosinus est x


sin(x) : sinus de x asin(x) : arc ϵ [-π/2,π/2] dont le sinus est x
tan(x) : tangente de x atan(x) : arc ϵ [-π/2,π/2] dont la tangente est x
atan2(x,y) : arc ϵ [-2π,2π] correspondant au
point (x,y) du plan

Nombres complexes

Définir le nombre complexe z = a+ib : z = complex(a,b); ou i=sqrt(-1);


z=a+i*b;
abs(z) : module du complexe z real(z): partie réelle du nombre complexe z
angle(z) : phase du complexe z imag(z): partie imaginaire du nombre complexe z
conj(z) : complexe conjugué de z

Structures conditionnelles
Structure if Structure if/elseif Structure switch/case/otherwise
switch(variable)
if(condition1) case (valeur1)
Annexe 1

if(condition) … …
… elseif(condition2) case (valeur2)
… . .
End . .
else otherwise
… …
end end
Opérateurs relationnels Opérateurs logiques
Relation Opérateur Matlab Opérateur
Relation logique
Égal == Matlab
Différent ~= ET (AND) &&
Strictement inférieur < OU (OR) ||
Strictement supérieur > NON (NOT) ~
Inférieur ou égal <=
Supérieur ou égal >=

Boucles
Boucle while Boucle for avec un incrément = 1 Boucle for avec un incrément ≠ 1
while(condition) for i = valeur initiale : valeur finale for i = valeur initiale: incrément : valeur finale
… … …
… … …
end end end

Commandes break et continue


Lorsque la commande break apparaît dans une boucle, Matlab passe après la commande end de la
boucle, c.à.d. à la commande qui suit la boucle.
Lorsque la commande continue apparaît dans une boucle, Matlab saute à la commande end de la boucle
et exécute ainsi l’itération suivante de la boucle.
Si les commandes break et continue sont à l'intérieur de boucles imbriquées, seule la petite boucle est
terminée.

Vecteurs et matrices
Définir une matrice
Vecteur–ligne Vecteur–Colonne Matrice
V = [1 2 3 4 5]; C=[1;2;3;4;5]; M=[1 2 3 4; 5 6 7 8;9 10 11 12];
Ou ou ou
V = [1,2,3,4,5]; C=[1 M=[1,2,3,4
2 5,6,7,8
3 9,10,11,12];
4
5];

Lecture des éléments V(i) d’un vecteur V (num2str)


V(i) = input(['Entrer valeur de V(',num2str(i),':']);

Lecture des éléments A(i,j) d’une matrice A (num2str)


A(i,j) = input(['Entrer valeur de A(',num2str(i),',',num2str(j),'):']);

Créer des vecteurs qui forment une séquence de valeurs à incrément constant
Opérateur ':' Vecteur = 1ère valeur : incrément : dernière valeur
Annexe 2

Commande linspace Vecteur = linspace(1ère valeur, dernière valeur, nombre de valeurs)

Vecteurs dont les valeurs sont à espacement logarithmique


y = logspace(a,b,n) génère n points entre les décades 10^a et 10^b.
Fonctions matricielles
l = length(V) Renvoie la longueur du vecteur V
Renvoie un vecteur de 2 valeurs, la 1ère étant le nombre de lignes et la 2ème le nombre de
V = size(A) colonnes de la matrice A. On peut aussi utiliser la commande : [m,n] = size(A), ou deux
commandes : m = size(A,1) pour le nbre de lignes et : n = size(A,2) pour le nbre de colonnes

Si A est une matrice, diag(A) renvoie un vecteur-colonne contenant les éléments diagonaux de A
diag(A) Si A est un vecteur, diag(A) renvoie une matrice carrée dont la diagonale est formée à partir des
éléments du vecteur V (et les éléments non-diagonaux nuls)
Si A est une matrice, diag(A,k) renvoie un vecteur-colonne V contenant les éléments de la kième
diagonale de A. Si A est un vecteur, diag(A,k) renvoie une matrice carrée dont la kième diagonale
diag(A,k)
est formée à partir des éléments du vecteur V (k=0 est la diagonale principale, k>0 est au-
dessus de la diagonale principale, et k<0 est en dessous de la diagonale principale).

Range les éléments du vecteur A par ordre croissant. Si A est une matrice, la fonction sort traite
sort(A)
les colonnes de A comme vecteurs, et range chaque colonne par ordre croissant.
Renvoie le maximum (resp. minimum) des éléments du vecteur A.
max(A)
Si A est une matrice, la fonction max (resp. min) traite les colonnes de A comme des vecteurs, et
min(A)
renvoie un vecteur-ligne contenant le maximum (resp. minimum) de chaque colonne.
Renvoie la somme (resp. produit) des éléments du vecteur A.
sum(A)
Si A est une matrice, la fonction sum (resp. prod) traite les colonnes de A comme des vecteurs,
prod(A)
et renvoie un vecteur-ligne contenant la somme (resp. produit) de chaque colonne.
Renvoie la valeur moyenne (resp. écart-type) des éléments du vecteur A.
mean(A)
Si A est une matrice, la fonction mean (resp. std) traite les colonnes de A comme des vecteurs,
std(A)
et renvoie un vecteur-ligne contenant la moyenne (resp. l’écart-type) de chaque colonne.
trace(A) Renvoie la somme des éléments de la diagonale de la matrice A
norm(V) Renvoie la norme du vecteur V, donnée par : V1 2 + V2 2 + ... + Vn 2 , n étant la dimension de V

zeros(m,n) Crée une matrice de dimension m×n dans laquelle tous les éléments sont nuls
zeros(n) Crée une matrice carrée de dimension n×n dans laquelle tous les éléments sont nuls
zeros(size(A)) Crée une matrice formée de zéros et ayant la même dimension qu’une matrice A
ones(m,n) Crée une matrice de dimension m×n dans laquelle tous les éléments sont égaux à 1
eye(n) Crée une matrice identité de dimension n

Renvoie la partie triangulaire inférieure de A en fixant à 0 tous les éléments au-dessus de la


tril(A)
diagonale
Renvoie la partie triangulaire inférieure à la kième diagonale de la matrice A, donc fixe à 0 tous les
tril(A,k) éléments au-dessus de la kième diagonale (k=0 est la diagonale principale, k>0 est au-dessus de la
diagonale principale, et k<0 est en dessous de la diagonale principale).
Renvoie la partie triangulaire supérieure de A en fixant à 0 les éléments au-dessous de la
triu(A)
diagonale
Annexe 3

Renvoie la partie triangulaire supérieure à la kième diagonale de la matrice A, et donc fixe à 0


triu(A,k)
tous les éléments de la matrice qui sont au-dessous de la kième diagonale.
fliplr(A) (flip left-right) Fait tourner la matrice de gauche à droite
flipud(A) (flip up-down) Fait tourner la matrice de haut en bas
rot90 Effectue une rotation de la matrice de 90º dans le sens contraire des aiguilles d’une montre
Fonctions matricielles (suite)
det(A) Calcule le déterminant de la matrice A. A doit être une matrice carrée
inv(A) Calcule la matrice inverse de la matrice A. A doit être une matrice carrée
Renvoie un vecteur E contenant les valeurs propres de la matrice A. A doit être une matrice
eig(A)
carrée
transpose(A) Calcule la matrice transposée de la matrice A (A n’est pas nécessairement une matrice carrée)

Création de matrices à partir d’autres matrices


B = A(:,n) Renvoie la nième colonne de A dans un vecteur-colonne B. Exemple :
B = A(:,1) renvoie dans B la première colonne de A
B = A(n,:) Renvoie la nième ligne de A dans un vecteur B
B = A(l:m,c:d) Renvoie une matrice B avec les éléments des lignes l à m et des colonnes c à d de A
B = A(l:i:m,c:j:d) Renvoie une matrice B contenant les éléments des lignes l à m (avec un incrément i) et des
colonnes c à d (avec un incrément j) de A
V(i)=[ ] Élimine le ième élément du vecteur V
V(i:j)=[ ] Élimine les éléments de V qui sont entre le ième élément et le jème élément inclus
A(:,n)=[ ] Élimine la nième colonne de la matrice A
A(n,:)=[ ] Élimine la nième ligne de la matrice A
A(l:m,:) = [ ] Élimine les lignes l à m de A
A(:,c:d) = [ ] Élimine les colonnes c à d de A

Génération de nombres aléatoires


x=rand(1) Crée une valeur x aléatoire de distribution uniforme dans l’intervalle [0,1]
x=a+(b – a)*rand(1) Crée une valeur x aléatoire de distribution uniforme dans l’intervalle [a,b]
Crée une matrice (M×N) de valeurs aléatoirement choisies à partir d’une distribution
A=rand(M,N)
uniforme de nombres dans [0,1]
Crée une matrice (M×N) de valeurs aléatoirement choisies à partir d’une distribution
A=a+(b – a)*rand(M,N)
uniforme de nombres dans [a,b]

Solution d’un système linéaire d’équations AX = B A = [a11 a12 a13 … a1n


 a11 a12 ... a1n  x1   b1  a21 a22 a23 … a2n
    
 a 21 a 22 ... a 2n  x 2   b2  .
 . .  .   .  .
   =   an1 an2 an3 … ann];
 . .  .   . 
     b = [b1;b2;b3; … ;bn];
 . .  .   . 
a a nn  x n   bn 
 n1 a n2 ... X = inv(A)*B;

Fichiers de fonctions prédéfinies


Annexe 4

function[paramètres de sortie] = nom_fonction(paramètres d’entrée)


function[y1, y2, ..., yn] = nom_fonction(x1,x2,x3,..., xm)
Graphiques
Trace le graphe Y = f(X) avec une ligne continue joignant les points
plot(X,Y)
(X et Y sont deux vecteurs de même dimension)
plot(X,Y,'symbol') Trace le graphe Y=f(X) en points distincts avec le symbole indiqué
Utilisée à la place de la commande plot, cette commande trace y = f(x) avec une
semilogx(x,y)
échelle logarithmique pour l’axe x
Utilisée à la place de la commande plot, cette commande trace y = f(x) avec une
semilogy(x,y)
échelle logarithmique pour l’axe y
Utilisée à la place de la commande plot, cette commande trace y = f(x) avec une
loglog(x,y)
échelle logarithmique pour les deux axes x et y
Crée une courbe polaire en coordonnées polaires (t, r) au lieu des coordonnées
polar(t,r)
cartésiennes
hist(y,n) Trace un histogramme des valeurs du vecteur y, avec n barres
(où x est un vecteur) Représente les valeurs du vecteur y dans un histogramme
hist(y,x)
dont les centres de barres sont spécifiés par les valeurs du vecteur x

Graphiques multiples
plot(X,Y1,X,Y2,X,Y3, …) Trace Y1=f(X), Y2=f(X), … Yn=f(X) sur la même figure
plot(X,Y1)
hold on
plot(X,Y2)
hold on Trace Y1=f(X), Y2=f(X), … Yn=f(X) sur la même figure

plot(X,Yn)
hold off
subplot(m,n,1),plot(x,y1);
Crée une matrice (m × n) de sous-figures (m lignes par n colonnes de sous-figures).
subplot(m,n,2),plot(x,y2);
y1=f(x) est tracé sur la première figure
subplot(m,n,3),plot(x,y3);
y2=f(x) sur la deuxième figure

y3=f(x) sur la troisième figure …

plot(X,Y1)
figure
plot(X,Y2)
Trace Y1=f(X), Y2=f(X), … Yn=f(X) dans des fenêtres différentes
figure

plot(X,Yn)

Commandes supplémentaires pour les graphiques


title('...') Donner un titre au graphe
xlabel('...')/ylabel('...') Donner un titre à l’axe des abscisses/ordonnées
text(x0,y0,'...') Ajouter un texte sur la figure au point (x0,y0)
legend('...','...','...',…) Ajouter une légende à chacune des courbes de la figure
Annexe 5

axis([xmin xmax ymin ymax]) Fixer les limites de la figure en abscisses et en ordonnées
set(gca,'XTick', xmin : xi : xmax) Représenter les graduations de xmin à xmax avec un incrément xi
set(gca,'YTick',ymin : yi : ymax) Représenter les graduations de ymin à ymax avec un incrément yi
Polynômes
Un polynôme a0 + a1 x + a 2 x 2 + ... + a k x k est représenté par le vecteur : P = [a k , a k -1 ,..., a 1 , a 0 ] .
Un polynôme de degré k est donc forcement représenté par un vecteur de dimension (k + 1).

Commandes polynômiales
w = conv(u,v) Renvoie le polynôme w, produit des deux polynômes u et v
Renvoie le polynôme q, quotient des deux polynômes u et v, et le polynôme r, reste de la
[q, r] = deconv(u,v)
division
r = roots(p) Renvoie un vecteur r contenant toutes les racines du polynôme p
p = poly(r) Renvoie le polynôme p dont les racines sont celles données dans le vecteur r
d = polyder(p) Renvoie le polynôme d, dérivée du polynôme p
Renvoie le polynôme i intégrale du polynôme p (en prenant la constante d’intégration
i = polyint(p)
égale à 0)
Regréssion polynômiale (fitting)
Renvoie un vecteur p contenant les coefficients du polynôme de degré d qui permet la
p = polyfit(X, Y, d); meilleure régression des valeurs (X, Y). X et Y sont deux vecteurs nécessairement de
même dimension
Évalue le polynôme p pour les valeurs du vecteur X, c.à.d. renvoie un vecteur Y2 dont
Y2 = polyval(p, X);
chaque élément est donné par : Y2i = p(Xi)
b = polyval(p, a); Évalue le polynôme p pour la valeur a, donc calcule b = p(a)

Interpolation
Renvoie un vecteur yi de même dimension que xi, et dont les valeurs sont
yi = interp1(X, Y, xi, 'linear'); obtenues par interpolation linéaire des valeurs des vecteurs X et Y. xi peut
aussi être une seule valeur, dans ce cas yi l’est aussi
Identique à la commande précédente, mais dans ce cas, la commande renvoie
yi = interp1(X, Y, xi, 'nearest'); dans yi la valeur du vecteur Y correspondant à la valeur du vecteur X la plus
proche de xi
yi = interp1(X, Y, xi, 'spline'); Identique mais avec une interpolation cubique des données (X, Y)

Importation et exportation de données Excel


M = xlsread('data.xls') Crée une matrice M contenant les valeurs du fichier Excel data.xls
Crée une matrice M contenant les valeurs du fichier Excel data.xls
contenues dans la plage spécifiée. La plage est précisée en utilisant la syntaxe
M = xlsread('data.xls', 'case1:case2')
'Case1:Case2', où Case1 et Case2 sont les deux cases aux coins
opposés qui définissent la région.
Si le fichier Excel data.xls contient des valeurs et des chaînes de
caractères, cette commande crée :
[A,B] = xlsread('data.xls')
- Une matrice A contenant les valeurs numériques
- Une matrice B contenant les chaînes de caractères
Annexe 6

Crée un fichier Excel appelé data.xls et contenant les valeurs de la


xlswrite('data.xls',A)
matrice A

Vous aimerez peut-être aussi