Vous êtes sur la page 1sur 14

Introduction MatLab

I.
I.1.

Introduction Prsentation
Qu'est-ce que MatLab ?

MatLab est un systme interactif de programmation scientifique, pour le calcul numrique et la visualisation graphique. Dvelopp lorigine pour le calcul matriciel (le nom MatLab est drive de cette reprsentation MatLab = Matrix Laboratory), il offre aujourdhui bien dautres possibilits, dont certaines seront decrites dans la suite. Il contient des bibliothques spcialises (toolbox) qui rpondent des besoins spcifiques : analyse numrique, traitement du signal, traitement de limage, etc. MatLab est un logiciel qui permet de faire des calculs mathmatiques et numrique, et non un logiciel de calcul formel et symbolique comme Maple.. Matlab connat un grand nombre d'oprations ou de fonctions mathmatiques : fonctions usuelles, calcul matriciel, fonctions plus spcifiques du signal (FFT, etc). Exemple : Si a est un vecteur qui contient les chantillons d'un signal, A = fft(a,128) est le vecteur qui contient la transforme de Fourier rapide des 128 premiers chantillons du signal. Remarque : dans toute la suite, on utilisera la notation suivante : italique (nom donner par lutilisateur une variable, etc), gras (noms gnraux), rouge (nom de fonction ou dinstruction MatLab).

I.2. Accs MatLab :


MatLab est disponible sur diffrentes plateformes (unix, pc, mac, etc). On accde au logiciel en lanant l'excutable matlab suivant la procdure habituelle de l'environnement concern. On se retrouve alors dans la fentre de commande o on peut crire des commandes ou excuter des fonctions. On sort du logiciel en tapant quit ou exit.

I.3.

Aide en ligne :

La suite a pour but de vous familiariser avec MatLab. On peut se rendre compte de la puissance du logiciel en lanant la commande demo. Les complments d'information peuvent tre facilement obtenus grce l'aide en ligne incluse dont l'accs s'obtient en tapant au clavier :
?? ?? ??

help help : pour apprendre utiliser laide help : donne la liste des aides gnrales disponibles en ligne help general : liste de commandes de contrle

?? ?? ?? ?? ??

help function : pour plus d'info sur la fonction function help sujet : renvoie la liste des fonctions relatives sujet help opration : pour plus d'info sur lopration opration help nom-de-commande : pour plus d'info sur la commande nom-de-commande lookfor : recherche par mots cls dans les fichiers d'aide

I.4.

Oprations, fonctions, commandes :

Les fonctions usuelles sont spares en deux : les fonctions lmentaires (elfun) et les fonctions spciales (specfun). Vous pouvez aussi crer vos propres fonctions (voir plus bas). Pour obtenir de laide, tapez : help elfun, help specfun Quelques oprations avec des matrices : ?? x = [1 2 4 5 7 3] retourne le vecteur (1,2,4,5,7,3). ?? (a:k:z) retourne le vecteur (a,a+k,a+2k,a+3k,...,a+Nk), avec N tel que a+Nk ? z?? ?a+(N+1)k. ?? x(m:n) retourne les valeurs de x d'indice compris entre m et n. ?? additionner deux vecteurs x et y de mme longeur z=x+y ?? multiplier terme terme deux vecteurs de mme longeur z = x.*y (notez le . avant le *) Liste non exhaustive de fonctions : ?? zeros (N) : cre une matrice N*N remplie de 0 ?? ones (N) : cre une matrice N*N remplie de 1 ?? rand (N) : cre une matrice N*N dont tous les lments sont alatoires ?? diag (N) : cre une matrice N*N diagonale ?? Les fonctions trigonomtriques (et trigonomtriques inverses) usuelles cos(x), sin(x), etc ?? abs(x) retourne la valeur absolue pour un rel, ou le module pour un complexe ?? angle(x) retourne l'argument du complexe x entre -? et ? ?? y = max(x) retourne la valeur maximale du signal x. (y est un scalaire) ?? y = max(x,40) retourne un vecteur contenant les chantillons de x lorsqu'ils sont ? ou ? ?40 ?? R = roots(a) retourne les racines du polynme dont les coefficients sont dans le vecteur a ?? fft, ifft : transformation de Fourier (Fourier rapide et son inverse) ?? fzero : zros de fonctions ?? fmin, fmins : minimisation ?? quad, quad8, trapz : calcul d'intgrales ?? ode23, ode23p, ode45 : quations diffrentielles ?? diff, gradient, del2 : quations aux drives partielles ?? poly : construit un polynme partir de ses racines Pour obtenir des tracs graphiques : ?? Graphiques 2d: plot, loglog (chelle logarithmique), polar (en polaire), title, xlabel, ylabel, text, gtext (commentaires), image (cration d'une image partir d'une matrice). ?? Graphiques 3d: plot3d, contour (contours), mesh (maillage), surf (surface) ?? Divers : clf (efface), hold on (garde les graphiques), figure (cr d'autres fentres graphiques), drawnow (force Matlab afficher immdiatemment).

Boucles et tests ?? boucles : for, while, end, break ?? tests : if, elseif, else, end ?? dialogue avec utilisateur : input, keyboard, pause Commentaires ?? une ligne de commentaires commence avec le symbole %

I.5.

Fichiers MatLab :

I.5.1. Fichiers script Un fichier script est une suite d'instructions MatLab (voir : help script). On peut le crer l'aide d'un diteur de texte standard et le sauvegarder avec une extension ''.m'' (do le nom fichiers M ou 'M-files'). what affiche la liste des fichiers ''.m'' dj crs. On peut facilement obtenir le listing d'un M-file en excutant type file_name sur la ligne de commande MatLab. Taper le nom dun fichier sans son extension sur la ligne de commande MatLab rsulte en l'xcution des instructions contenues dans le fichier. Un M-file peut en appeler un autre ou s'appeler rcursivement. Il est cependant plus courant d'utiliser des fichiers fonctions. Attention : il est impratif que les fichiers soient dans le rpertoire de travail de MatLab. I.5.2. Fichiers function Les fichiers fonctions (voir : help function) permettent d'tendre les possibilits de MatLab. Ils sont l'quivalent des Subroutine en langage Fortran, des fonctions C etc... Ces fonctions utilisent des variables qui par dfaut sont locales, mais peuvent tre dclares global. La syntaxe est de la forme: function [out1, out2, ...] = function_name(in1, in2, ...) o out i dsigne une variable de sortie, et ini dsigne une variable d'entre. 1.5.3. Fichiers de donnes Il est possible tout instant de sauvegarder une ou plusieurs variables dans un fichier spcifique MatLab dont l'extension sera .mat : la commande utiliser est save. Diffrents formats et options sont utiliss. Pour recharger un tel fichier on utilisera load fname. Chaque variable ayant t sauvegarde par son nom, les variables recharges auront mmes noms, dimensions et valeurs quau moment de la sauvegarde.

II. Guide sommaire dutilisation


II.1. Entre et traitement de matrices :

MatLab travaille essentiellement sur des matrices qui peuvent tre relles ou complexes. Ainsi, un scalaire est une matrice 11 et un vecteur une matrice N1. Une matrice peut tre dfinie sous forme d'une liste explicite, o les lments d'une mme ligne sont spars par un espace ou une virgule, les lignes sont elles-mmes spares par un point virgule ou un retour chariot.: 1 2 3 A = [ 1 2 3; 4 5 6; 7 8 9] est la matrice A= 4 5 6 7 8 9 Une matrice lments complexes sera dfinie par A = [ 1 2; 3 4] +i*[5 6; 7 8], ou par A = [ 1+5i 2+6i; 3+7i 4+8i]. Les imaginaires purs i ou j peuvent tre utiliss indiffremment. Attention : ne pas insrer d'espace dans la dfinition d'un nombre complexe. Chaque lment d'une matrice est accessible par ses indices strictement positifs entre parenthses. me L'indexation des lments d'un tableau commence toujours 1 : ainsi, l'lment de la 3 ligne et 4me colonne dune matrice A est A( 3,4) ; pour un vecteur X la 2me composante est X( 2).

II.2. Lignes d'instructions :


MatLab utilise un langage interprt et non un langage compil : chaque expression crite est interprte et value avant de passer la suivante. La syntaxe est gnralement de la forme: variable = expression(;) : expression value et rsultat assign la variable dfinie par variable ou bien expression(;) : expression est value et rsultat assign la variable interne ans Le point virgule de terminaison de ligne indique si le rsultat de l'valuation devra tre affich l'cran (; prsent) ou non (; absent). Des lignes trop longues peuvent tre continues sur plusieurs lignes en utilisant comme indicateur des points de suspension (). Ainsi: x = [ 1 2 3 4] est quivalent : x = [1 2 ... puis 3 4] sur la ligne suivante Il y a distinction entre majuscule et minuscule : ainsi, variable est diffrent de Variable. L'excution peut tre arrte par l'utilisation de CTRL_C ou de CTRL_BREAK. Pour visualiser l'tat d'une session, la commande who ou whos renvoie la liste des variables existantes ainsi que leur type (rel ou complexe) et leur taille. Pour librer de l'espace mmoire on peut liminer une variable par clear nom_de_la_variable.

II.3. Oprations sur les Matrices :

Les oprations suivantes sont directement accessibles: + addition - soustraction ? multiplication ^ lvation la puissance ' transpose conjugu \ division gauche / division droite Dans chaque cas, les dimensions des matrices sont vrifies et un message d'erreur est dlivr au cas o elles ne seraient pas compatibles. Certaines oprations, telles *, et /, peuvent agir lment par lment si on les fait prcder d'un point.

II.4. Exercices dapplication :


II.4.1. Exercice 1 : Manipulation et oprations avec des matrices a) Dfinir la matrice A = [1 2 3;4 5 6;7 8 9] et sa transpose B. b) Dfinir la matrice C comme produit de A par B. c) Dfinir D par: D = A.*B. Comparer C et D. d) Dfinir les vecteurs x = [-1;0;2] et y = [62;61;1]. Comparer u = x ?*y et v = x*y?. e) Dfinir le vecteur b par b = A*x. Que vaut le vecteur z = A\b? f) Dfinir les vecteurs x = [1;2;3] et y = [4;5;6]. g) Que donnent z1 = x.*y, z2 = x.\y, z3 = x./y, z4 = x.^y, z5 = 2.^[x y]? II.4.2. Exercice 2 : fabriquer 128 chantillons d'une sinusode Pour gnrer 128 chantillons d'une sinusode de frquence Freq, on peut procder ainsi : 1. Donner une valeur la frquence de la sinusode : Freq = 1300 ; 2. Choisir une frquence d'chantillonnage : Fe = 8000 ; 3. Crer le vecteur des temps : t = (0:127)/Fe ; 4. Enfin calculer les chantillons : x = sin(2*pi*t*F) ; 5. Regarder le rsultat : plot(x) ou plot(t,x). Notes : ?? Si vous oubliez le `;' la fin de la ligne, les valeurs sont affiches l'cran. ?? La commande (0:127) retourne le vecteur suivant : (0,1,2,...,126,127). ?? La commande (0:2:127) retourne (0,2,4,...,124,126). ?? 'sin' applique un vecteur retourne un vecteur form par les sinus des lments. ?? plot(x) dessine les chantillons du vecteur x sur l'cran. II.4.3. Remarques : 1. lorsqu'on additionne deux vecteurs, il faut faire attention qu'ils aient la mme dimension, et en particulier qu'ils soient tous les deux lignes, ou tous les deux colonnes. 2. n'oubliez pas le point `.' avant le `? ' ('? ' effectue la multiplication matricielle, alors que '.? ' effectue la multiplication terme terme. 3. La commande y(p:q)cre un vecteur y form des lments d'indices compris entre m et n dun vecteur x.

4. Dans MatLab, les polynmes sont reprsents par le vecteur de leurs coefficients par ordre de puissance dcroissante : par exemple, le polynme x 3 + 4x 2 - 3x +5 est reprsent par le vecteur : [1 4 -3 5]. 5. On peut calculer les racines d'un polynme quelconque en utilisant la fonction roots. R = roots([1 4 -3 5]) donne un vecteur contenant les racines du polynme x 3 + 4x 2 - 3x +5.

II.5. Instructions de contrle :


II.5.1. FOR La syntaxe est de la forme: for compteur = dbut : pas : fin, ou for Matrice expression, expression; end Exemple : La squence suivante va crer un vecteur x de longueur n : x = []; for k = 1:n, x = [x, 2*k], end ou de manire quivalente: x = []; for k = 1:n, x = [x, 2*k], end II.5.2. WHILE La syntaxe est de la forme: while relation expression; end La boucle est rpte tant que la relation reste vraie. II.5.3. IF La syntaxe peut revtir une des formes suivantes : if relation if relation expression; expression; end else expression; end

if relation expression; elseif relation expression; else expression; end

L'expression n'est excute que si la relation est vraie. II.5.4. Relations Les oprateurs de relation sont : < infrieur > suprieur

<= >= == ~=

infrieur ou gal suprieur ou gal gal diffrent de

Quand une relation intervient entre des scalaires, le rsultat est un scalaire qui vaut 1 ou 0 suivant que la relation soit vraie ou fausse. Quand une relation intervient entre deux matrices de mme dimension, le rsultat est une matrice constitue de 1 et de 0 selon la relation entre les lments correspondants des matrices.

II.6. Les Fonctions :


II.6.1. Les fonctions scalaires Bien quelles agissent principalement sur des scalaires, on peut aussi les faire agir sur des matrices (dans ce cas elles agissent lment par lment). Ce sont par exemple : sin asin cos acos tan atan exp log abs sqrt sign round etc... Exercices : 1. Dfinir la matrice A = [1 2 3;4 5 6]. Vrifier les rsultats de B = fix(pi*A) et C = cos( pi*B) . 2. Dfinir le vecteur x = ( 0:0.2:3.0) ?, et entrer la squence y = exp(-x);[ x y] . II.6.2. Les fonctions vectorielles Elles sont prvues pour oprer sur des vecteurs lignes ou colonnes. Ce sont, par exemple : max min sum prod mean std any etc... Comme pour les fonctions scalaires, on peut aussi les faire oprer sur des matrices : dans ce cas, elles agissent sur chacune des colonnes de la matrice. Exemple : A tant une matrice, max(A) renvoie un vecteur ligne dont chaque composante correspond au maximum de chacune des colonnes de A, alors que max(max(A)) renvoie l'lment maximum de A. II.6.3. Les fonctions matricielles Certaines fonctions de MatLab sont propres aux matrices. Ainsi : eig (vecteur propre, valeur propre), chol (dcomposition de Cholesky), svd (dcomposition en valeurs singulires), lu (factorisation LU), qr (factorisation QR), det (dterminant), rank (rang) etc... Toutes ces fonctions peuvent renvoyer un ou plusieurs arguments : [X, V] = eig[A] renvoie une matrice X dont les colonnes sont les vecteurs propres de A et une matrice diagonale V constitue des valeurs propres de A. Alors que X = eig[A] renvoie un vecteur colonne X dont les composantes sont les valeurs propres de A.

II.7. Notations et raccourcis :


II.7.1. Boucle implicite

MatLab tant un langage interprt l'utilisation de boucles ralentit considrablement son excution. La boucle implicite limine en partie cet inconvnient : elle est excute vectoriellement donc plus rapidement. Ainsi crire n = 1:5, revient crer le vecteur ligne n = [1 2 3 4 5]. On peut changer le pas d'incrmentation en crivant n = 1:2:7, ce qui quivaut n = [1 3 5 7]. Ceci s'tend aux nombres non entiers (x = .1:.01:1.) et le pas d'incrmentation peut tre ngatif. Exercice : Essayer la squence suivante: B(:,n) = ones(n,1); for j = n-1:-1:1 B(:,j) = t.*B(:,j+1); end II.7.2. Utilisation du ':' La notation ':' est trs utile pour travailler sur des sous matrices : ?? A(1:3,4) est le vecteur colonne dont les composantes sont les trois premiers lments de la quatrime colonne de la matrice A. ?? A(:,2) est la deuxime colonne de la matrice A ?? A(1:3,:) est la matrice constitue des trois premires lignes de A ?? A(:,[3 6]) est la matrice deux colonnes qui correspondent aux colonnes 3 et 6 de A. ?? A(:,[3 6]) = B(:,1:2) remplace les colonnes 3 et 6 de A par les deux premires colonnes de B. II.7.3. Chanes de caractres et messages Les chanes de caractres sont dfinies entre des 'quotes' simples : c = 'Ceci est un texte' dfinira la variable c comme une chane de caractres qui pourra tre utilise pour afficher le message entre les quotes. disp(c) affichera la chane c l'cran. La fonction error('Erreur dans la fonction func') affichera le texte et arrtera l'excution du programme Z = input('Entrez la valeur de Z: ') affichera le texte et attendra quune valeur de Z soit entre au clavier. Exercices : 1. Dfinir la chane s = 'Bonjour'; 2. Vrifier successivement: size(s) et abs(s). 3. Ajouter s = [s, ' tous']. II.7.4. Format d'affichage Tous les calculs effectus dans MatLab sont en double prcision. Cependant le format d'affichage des rsultats peut tre contrl par la commande format : format short 4 dcimales (dfaut) format long 14 dcimales format short e 4 dcimales notation scientifique format long e 14 dcimales notation scientifique

Un format reste actif tant qu'il n'a pas t redfini par la commande format, l'exception des commandes qui servent supprimer (format compact) et celles qui servent restaurer (format loose) les lignes blanches qui pourraient apparatre l'affichage. II.7.5. Copie d'cran texte La commande diary file_name permet de sauvegarder dans le fichier file_name toute la partie active de l'cran l'exception des graphiques. La sauvegarde s'effectue sous forme de texte ce qui permet une dition ultrieure du fichier.

II.8. Les graphiques :


MatLab peut afficher des courbes planes ( plot), des courbes 3D (plot3), des surfaces mailles 3D (mesh) ou des surfaces facettes 3D (surf). Toutes ces commandes ouvrent une fentre graphique pour tracer la courbe. Les fentres graphiques sont numrotes, la fentre active tant par dfaut la fentre 1. Pour rendre active une fentre graphique on fera prcder le trac par la commande figure(n), o n est le numro de la fentre. La commande graphique suivante effacera le premier trac pour dessiner le nouveau dans la mme fentre si la commande figure n'a pas t utilise entre temps. Il est possible de tracer des graphiques en surimpression l'aide de la commande hold on. Cette commande a pour effet de conserver le graphe prsent avant de tracer le suivant. La commande hold off annule cette possibilit. II.8.1. Courbes planes plot(y) trace la courbe correspondant au vecteur y en fonction du numro des composantes. plot(x,y) tracera le vecteur y en fonction du vecteur x sils sont de mme taille. MatLab permet galement de tracer directement partir d'une fonction avec la commande fplot. Exemple : Soit la fonction sinus dfinie dans le fichier sinus.m par : function y = sinus(x) y = sin(x); En excutant: fplot('sinus', [-pi pi]), on obtiendra le graphe. On peut ajouter un titre, des lgendes ou du texte un graphe par les commandes : ?? title('Ceci est le titre de la figure'); ?? xlabel('Lgende des abscisses'); ?? ylabel('Lgende des ordonnes'); ?? gtext et text positionnement et criture dans la zone graphique. Un graphe possde des attributs quon peut modifier avec des commandes telles que axis et plot. Il est galement possible de tracer plusieurs graphes dans la mme fentre l'aide de la commande subplot (voir aide). Enfin des reprsentations types sont obtenues l'aide des commandes polar, bar, hist, etc... Exercices :

x = -pi : .01 : pi; y = sin(x); plot(x,y) tracera la fonction sinus(x) dans l'intervalle [ -? ,? ] avec un pas de 0.01. Rajouter titres et lgendes chaque figure. II.8.2. Courbes 3D La commande plot3 est identique la commande plot, elle ne fait appel qu' une coordonne supplmentaire. La syntaxe de base est plot3(x,y,z). Les axes, titres et lgendes se traitent comme dans le cas des courbes planes. Exercice: A l'aide de plot3, tracer la courbe (x=sin(t), y=cos(t), z=t) pour t = 0:pi/50:10*pi. II.8.3. Maillages et surfaces 3D La commande mesh permet de visualiser des courbes 3D sous forme de surfaces mailles. La surface maille est dfinie par les cotes (coordonnes z) de points situs au-dessus d'une grille rectangulaire du plan (x,y). La commande surf s'utilise de la mme faon mais produit une surface facettes colores dont le coloriage est modifiable avec la commande shading. L'angle de vue est gr par la commande view. D'autres fonctions telles que meshz, surfc, surfl, contour et pcolor sont relies la visualisation 3D. II.8.4. Copie d'cran graphique La commande print effectue la copie d'une fentre graphique dans un fichier (voir help print pour les options).

III.

Rsum des commandes MATLAB

On a regroup par sujet d'intrt les diffrentes commandes et fonctions de MatLab. Il en existe bien d'autres regroupes dans des options spcialises, les botes outils (ou toolbox).

III.1. Commandes gnrales :


Gestions des commandes et des fonctions help aide what listing du nom des M_files prsents type impression d'un M_file lookfor recherche d'une entre dans le help which localise les fonctions et fichiers demo lance la dmonstration diary sauvegarde le texte d'une session MatLab Gestion des variables et de l'espace de travail who affiche les variables courantes whos affiche les variables en format long save sauve l'espace de travail sur disque load charge l'espace de travail clear efface la mmoire quit quitter MatLab (aussi exit)

III.2. Oprateurs :
Oprateurs courants + addition - soustraction * multiplication ^ puissance / division droite \ division gauche ' transpose conjugu .' transpose Oprations sur les Tableaux + addition soustraction .* multiplication .^ puissance ./ division droite .\ division gauche Oprateurs Relationnels < infrieur > suprieur <= infrieur ou gal >= suprieur ou gal == gal ~= diffrent de Oprateurs Logiques & et | ou ~ non xor ou exclusif

( ) gre la priorit des oprations arithmtique ou ensre les arguments d'entre des fonctions

III.4. Instructions :
if else elseif end for while break return error Instruction de contrle test conditionnel complte if complte if terminaison de if, for et while instruction de rptition avec compteur instruction de rptition avec test interrompt une boucle for ou while retour affiche un message et interrompt l'excution Instructions spcifiques indicateur d'attente d'entre gnre un menu de choix pour l'utilisateur pause attente function dfinition de fonction global dfinit les variables comme globales Caractre spciaux = assignation . point dcimal ... indique une ligne suite , sparateur d'arguments ou d'instructions ; fin de lignes (matrices) ou suppression de l'affichage % commentaires : manipulation de sous matrices gnration de vecteurs input menu

III.3. Noms rservs :

Variables prdfinies ans nom donn lvaluation dune expression sans assignation realmax plus grand nombre flottant realmin plus petit nombre flottant positif pi ? i, j [? (-1)] inf ? NaN Not a Number flops nombre d'oprations par seconde etime dure d'excution size renvoie la taille d'une matrice length renvoie la longueur d'un vcteur disp affiche une matrice de texte Fonctions mathmatiques lmentaires abs valeur absolu ou module angle argument d'un complexe sqrt racine carre real partie relle imag partie imaginaire conj complexe conjugu gcd PGCD lcm PPCM round arrondi l'entier le plus proche fix troncature floor arrondi vers -? ceil arrondi vers +? sign signe de rem reste de la division exp exponentiel log log nprien log10 log dcimal

Matrices prdfinies zeros matice de 0 ones matrice de 1 eye matrice identit diag matrice diagonale rand nombres alatoires (rpartition uniforme) randn nombres alatoires (rpartition normale) Fonctions trigonomtriques sin, asin, sinh, asinh cos, acos, cosh, acosh tan, atan, tanh, atanh cot, acot, coth, acoth

Fonctions prdfinies bessel fonction de Bessel beta fonction beta gamma fonction gamma rat approximation par un rationnel rats format de sortie pour rat erf fonction erreur erf erfinv inverse de erf ellipke intgrale elliptique complte ellipj fonction elliptique de Jacobi expint fonction intgrale exponentielle pour n=1 log2 logarithme base 2 ou dcomposition mantisse, exposant pow2 calcule 2 puissance y fft FFT de dimension 1 (frquences de 0 1) fft2 FFT bidimensionnelle ifft FFT inverse de dimension 1 ifft2 FFT inverse bidimensionnelle

III.5. Matrices :
Dcompositions et factorisations de Matrices inv inversion lu dcomposition LU chol factorisation de Cholesky qr dcomposition QR nnls moindres carrs non-ngatif orth orthogonalisation eig valeurs et vecteurs propres cdf2rdf forme complexe diagonale vers forme relle diagonale par blocs rsf2csf forme relle diagonale par blocs vers forme complexe diagonale balance mise l'chelle pour le calcul des valeurs propres qz valeurs propres gnralises polyeig polynme aux valeurs propres svd dcomposition en valeurs singulires expm expm1 expm2 expm3 logm sqrtm funm poly det trace cond rcond norm rank Fonctions de Matrices exponentiation (fonction interne) M_file correspondant expm expm par srie de taylor expm par valeurs et vecteurs propres logarithme racine carre ex: funm(A,'sin') donne sin(A) polynme caractristique dterminant trace Conditionnement suivant norme L2 ( [(? max)/( ? min )]) ? 1 bon , ? 0. mauvais normes L1 ,L2 ,Lp et L? rang

[ ] dfinition de matrices ou vecteurs; ou ensre les arguments de sortie des fonctions

III.6. Calcul et analyse :


Polynmes construit un polynme partir des racines roots calcul des racines polyval valuation en un point polyvalm valuation en une matrice de points conv multiplication deconv division residue dcomposition en lments simples et residus polyfit polynme d'approximation polyder diffrentiation Diffrences finies et Interpolation diff approximation de la drive gradient approximation du gradient Intgration numrique quad intgrale de Simpson quad8 intgrale de Newton-Cotes trapz mthode des trapzes poly Equations non linaires et Optimisation fmin minimisation d'une fonction d'une variable fmins minimisation d'une fonction de plusieurs variables fsolve rsolution d'un systme d'quations non-linaires fzero zro d'une fonction d'une variable Analyse de donnes par colonne max valeur max min valeur min mean valeur moyenne median valeur mdiane std cart type sort tri en ordre croissant sum somme des lments prod produit des lments hist histogramme

III.7. Graphiques :
Graphiques 2D graphe linaire graphe log-log graphe semi-log (x) graphe semi-log (y) graphe (coord. polaires) bar histogramme btons stairs fonction en marches d'escalier errorbar graphe avec barres d'erreur hist histogramme compass reprsentation polaire (module,argument) feather reprsentation linaire (module, argument) fplot graphe d'une fonction Sauvegarde et copie graphique print imprime ou sauvegarde dans un fichier plot loglog semilogx semilogy polar Annotation de graphiques title titre du graphique xlabel lgende abscisse ylabel lgende ordonne zlabel lgende cote grid dessin d'une grille text texte Contrle des fentres graphiques figure ouvre une fentre graphique hold gre la surimpression ishold tat de la surimpression subplot sous-fentres graphique axis contrle de l'apparence et de l'chelle des axes Graphiques 3D surface maille surface 3D facettes plot3 dessin de lignes et points en 3D contour dessin 2D des qui -niveaux contour3 dessin 3D des qui -niveaux clabel tiquettes des qui -niveaux pcolor dessine en pseudocouleur Apparence des graphiques view spcifie l'angle de vue viewmtx matrice de transformation hidden gre les lignes caches mesh surf