InformatiquesTélécommunications

Initiations a Matlab

  1. Intoduction

« Matlab » est un logiciel conçu pour les calculs numériques.  Le nom « Matlab » est l’abréviation des deux mots «  Matrix Laboratory » .Comme ce nom indique, Matlab est basé sur le traitement des matrices. Autrement dit,Matlab manipule les données,les variables,les image,… comme étant des matrices. Ce logiciel est developpé par la société américainne « mathworks » ( le site www.mathworks.com). Le logiciel Matlab permet d’analyser les données , de developper les algorithmes,de faire les calculs mathématiques , de faire des simulations et des modélisations des différents systémes et de representer graphiquement les résultats obtenus. 

  1. Démarrage du « Matlab »
H:\Documents and Settings\PC\Bureau\Matlab_small_icon.png

Pour démarrer «Matlab » il suffit un double clik sur l’icone Matlab  . Une fenétre appelée « fênetre de commandes » ( anglais : command window)apparait(figure 1).

Figure 1. Fênetre de commandes

Pour quitter Matlab, vous pouvez taper « quit » ou bien «  exit » mais  il est conseillé d’eviter de quitter Matlab directement par le boutton .

  1. Opérations arithmétiques.

Matlab permet de faire les différentes opérations arithmétiques telles que l’addition, la soustraction, la multiplication et la division. 

Exemples :

Tapez :

» 2+3   <entrée>

On remarque que Matlab fait le calcul est affiche le résultat qui est automatiquement affecté à la variable spécifique « ans ». On appel l’écriture « 2+3  »   une commande ou une expression Matlab.

Essayer de taper les commandes suivantes et indiquer le rôle de chaque commande.

» 3-2            <entrée>

» 3*2            <entrée>

» 1/2            <entrée>

» 2^3          <entrée>

» 2\1          <entrée>

 Que remarquez-vous pour ce qui concerne les commandes suivantes ?

» 0/1            <entrée>

» 1/0            <entrée>

» 0/0            <entrée>

Pour la première commande, on remarque que le résultat est 0. Dans la deuxième le résultat est Inf (infini) et pour la troisième expression le résultat est NaN qui signifie Not-a-Number ( c’est pas un nombre).

  1. Manipulation des variables

Lorsque nous avons tapé la commande 2+3, nous avons vu que Matlab affecte le résultat automatiquement  à la variable spécifique « ans ».  

Maintenaient taper  la commande 

» a=2+3    <entrée>

Cette commande affecte le résultat de 2+3 à la variable a. 

Exemple

  •  tapez les commandes suivantes :

» a=a+5   <entrée>

» a=a*3    <entrée>

  • tapez la commande suivante :

» b=3 ;    <entrée>

» b          <entrée>

Quel est le rôle du  « ; » ?

»c = a+b;  <entrée>

»d = c/2;  <entrée>

»who       <entrée>

»whos     <entrée>

»clear  b <entrée>

»who       <entrée>

La commande « who » est utilisé pour afficher les variables stocké dans le Workspace (espace de travail)). La fonction « whos » donne plus de détails sur ces variables. La fonction « clear » sert pour effacer une variable. Lorsqu’on tape « clear b » puis on tape « who », on remarque que la variable « b » disparait car elle est effacée. 

  1. Les variables spécifiques

Certaines variables existent déjà  sous MATLAB et il est fortement déconseillé de les utiliser comme des variables quelconques.ces variables sont :  pi, eps, i, j.

» pi                  <entrée>

» eps              <entrée>

» i                    <entrée>

» j                    <entrée>

»realmax       <entrée>

»realmin       <entrée>

  1. L’affichage

» x=2/3 ;                  <entrée>

» disp(x)              <entrée>

» format long   <entrée>

» disp(x)                  <entrée>

» format short            <entrée>

» x                      <entrée>

  1. Les fonctions mathématiques 

Matlab contient les fonctions mathématiques usuelles telles que cos, sin, log,…etc. 

Exemples :

»cos( pi)                  <entrée>

» sin(pi)                    <entrée>

» tan(pi)                   <entrée>

» log(2)                    <entrée>

» exp(pi)                   <entrée>

» sqrt(4)                    <entrée>

» gcd(6,9)                  <entrée>

» lcm(4,3)                  <entrée>

Pour savoir le rôle et comment utiliser une fonction, on utilise la fonction « help ».

Exemple

 » help   sqrt     <entrée>

» help   sinh     <entrée>

» help   gcd     <entrée>

  1. Calcul complexe 

Matlab manipule les variables complexes facilement :

Exemple :

» z1=2+3*i                      <entrée>

» z2=3+sqrt (-1)*5         <entrée>

Toutes les opérations arithmétiques vues précédemment s’appliquent normalement sur les variables complexes. 

» sqrt(z1)                       <entrée>

» exp(i*pi)                     <entrée>

Cependant, il existe des fonctions spécifiques pour faire les calculs complexes, par exemple :

» real(z1)                     <entrée>

» imag(z2)                  <entrée>

» conj(z1)                 <entrée>

Un nombre complexe peut être représenté par ses coordonnées polaires (z=  r e)

» abs(z2)                <entrée>                        % le module de z2

» angle(z2)            <entrée>                        % la phase de z2

  1. Les vecteurs :

Création de vecteurs par les commandes suivantes :

» v1 = [ 1  3 0 -1 5 ] <entrée>

» v2 = [ 2,4,8,-3,7,-2,1] <entrée>

» v3 = [ ] <entrée>

Création de vecteurs à partir d’autres vecteurs :

» a = [1 2 3];  <entrée>

» b = [4 5]; <entrée>

» c = [a -b] <entrée>

» a = [ a  0 -1] <entrée>

 Noter ces deux règles importantes :

  • Les éléments du vecteurs sont cités entre deux crochet et non pas des parenthèses.
  • Ces éléments sont séparés par un espace ou par une virgule.

Création de vecteurs en utilisant les deux points « : » :

Exemple :

» x = 1 : 10 <entrée>

» x = 1 : 0.5 : 4 <entrée>

» x = 10 : -1 : 1 <entrée>

» x =  5 : 1 <entrée>

Que remarquez-vous ? Expliquez ?

Création de vecteurs en utilisant la commande  «linspace» :

» linspace(0 : pi/2 :10)

Permet de créer un vecteur qui contient 10 éléments équidistants entre 0 et pi/2

 La transposition « ‘ » :

» x = 1 : 5 <entrée>

» x = x’ <entrée>

» y = [ 1  4 8 0 -1 ]’ <entrée>

Les indices :

On peut repérer un élément d’un vecteur par son indice, 

»    r = [ 2  8 -5 6 -1  0 3] <entrée>  

»    r (3) <entrée>

Permet d’afficher le 3eme élément du vecteur r

»  r (2 :4) <entrée>

»  r (1 :2 :7) <entrée>  

»  r ([ 1 7 2 6 ]) <entrée> 

 »    r (2)=-7 <entrée>

On peut utiliser le vecteur vide pour éliminer des éléments du vecteur, par exemple : 

» r ([ 1 7 2 ]) = [ ] <entrée>  

Noter que :

  • L’indice est toujours citer entre parenthèses et commence par 1
  •  L’indice est un scalaire ou un vecteur (x(1.7) est égale a x(1))

On peut aussi repérer un élément par la commande « find », exemple 

»    r = [ 2  8 -5 6 -1  0 3] <entrée>  

»  find(r)                                          <entrée>  

» find(r>4)                                        <entrée>  

» find (r<1)                                       <entrée>  

Operations élément par élément  :

Matlab contient des commandes qui permettent de faire des calculs élément par élément. Ces opérations sont :

  • Produit élément par élément : « .* »
  • division élément par élément : « ./ »

» v = [ 2 4 20 5] ;             <entrée>  

» w = [1 3  0 -4] ;         <entrée>  

» q=v*w <entrée>  

» z=v*w’             <entrée>  

» p=v.*w                           <entrée>  

» d=v./w ;                         <entrée> 

 » d=v^2 ;                          <entrée>  

» d=v.^2 ;                      <entrée>  

Que remarquez – vous ? Expliquez ?

  1. Les matrices :

Matlab permet de manipuler les matrices comme étant des variables. Les éléments de la même ligne sont séparés par espace et les lignes sont séparées par des points virgules « ; ». 

»  a=[5 7 2; -6 8 -3] <entrée>

 »  a=a’ <entrée>

» x = 0 : 30 : 180 <entrée>

» m = [ x’   sin(x*pi/180)] <entrée>

On peut créer des matrices à partir d’autres matrices.

» a = [1 2; 3 4]; <entrée>

» x = [5 6]; <entrée>

» a = [a; x] <entrée>

Pour créer une matrice à partir d’autre matrice il faut faire attention à la taille des  matrices. 

» a = [10 20 30 ; 31 41 51 ;4 8 12]; <entrée>

» x = [5 6]; <entrée>

» a = [a; x] <entrée>

Indexation des éléments d’une matrice

On peut repérer les différents éléments de la matrice en donnant sa position par rapport aux lignes et sa position par rapport aux colonnes.

» a(3,3) <entrée>

» e= a(2,1) <entrée>

» a(1,3)=-11 <entrée>

» a(2) <entrée>

» a(5) <entrée>

» a(3,[1 2 3]) <entrée>

» a(3,1:1:3) <entrée>

» a(3,:) <entrée>

Comparer les trois dernières commandes. 

» a(3,1:2:3) <entrée>

» a(:,1) <entrée>

» a(2:3,1) <entrée>

» a([3 2 1],1) <entrée>

» a(3:-1:1,1) <entrée>

» a([3 1 2],1) <entrée>

Extraction des sous-matrices à partir d’une matrice  

Exemples : 

» A = [10 11 12 13 ; -5 6 0 7 ; 3 9 4 2] <entrée>

» B = A(1:2,1:2) <entrée>

» C = A(1:3,2:3) <entrée>

» D = A(:,1:3) <entrée>

» D = A(:,3:-1 :1) <entrée>

Calcul matricielle

» a = [1 2 3;4 5 6; 7 8 9] <entrée>

» b = [ 7 9 ; 12 23] <entrée>

» c = a*b <entrée>

»d=[1 0; 3 4; 8 6] <entrée>

»a*d <entrée>

»a.*d <entrée>

» e=[11 22 33;1:3;9:-2:5] <entrée>

»a.*e <entrée>

» a./e <entrée>

Des commandes matricielles spécifiques 

Exemple : (Utilisez la fonction help pour avoir l’aide sur une fonction)

» a = [10 20 30;40 50 60; 70 80 90] <entrée>

» b = [ 17 19 ; 12 23] <entrée>

» help size <entrée>

» size(a) <entrée>

» size(b) <entrée>

» length(a) <entrée>

» diag(a) <entrée>

» trace(a) <entrée>

» det(a) <entrée>

» sum(a) <entrée>

» max(a) <entrée>

» sort(a) <entrée>

» inv(a) <entrée>

» a*inv(a) <entrée>

Des matrices particulières :

» ones(3) <entrée>

» ones(2,4) <entrée>

» zeros(3,4) <entrée>

» eye(4) <entrée>

» diag([1 8 4]) <entrée>

» rand(3,2) <entrée>

  1. Les opérateurs de comparaison et logiques :

MATLAB représente la constante logique « FAUX » par 0 et la constante « VRAIE par 1.

Exemple 

» A= [1 -5 7 ; -3  8 2] <entrée>

» A>0 <entrée>

Les opérateurs de comparaison sont: 

== :égal à (x == y)
>:strictement plus grand que (x > y)
<:strictement plus petit que (x < y)
>=:plus grand ou égal à (x >= y)
<=:plus petit ou égal à (x <= y)
~ = :différent de (x ~ = y)

Les opérateurs logiques sont:   

:et (x & y)
:ou (x | y)
~:non (~ x)

Exemples : 

»  v= [ 8  3 4 5 -2  0 7 -9]

»  v (v==8) = 80

»  v (v <= 1) = 2

»  w= v (v ~= 2  & v > 6 )

Version numérique:

Mourad ELGORMA

Fondateur de summarynetworks, passionné des nouvelles technologies et des métiers de Réseautique , Master en réseaux et système de télécommunications. ,j’ai affaire à Pascal, Delphi, Java, MATLAB, php …Connaissance du protocole TCP / IP, des applications Ethernet, des WLAN …Planification, installation et dépannage de problèmes de réseau informatique……Installez, configurez et dépannez les périphériques Cisco IOS. Surveillez les performances du réseau et isolez les défaillances du réseau. VLANs, protocoles de routage (RIPv2, EIGRP, OSPF.)…..Manipuler des systèmes embarqués (matériel et logiciel ex: Beaglebone Black)…Linux (Ubuntu, kali, serveur Mandriva Fedora, …). Microsoft (Windows, Windows Server 2003). ……Paquet tracer, GNS3, VMware Workstation, Virtual Box, Filezilla (client / serveur), EasyPhp, serveur Wamp,Le système de gestion WORDPRESS………Installation des caméras de surveillance ( technologie hikvision DVR………..). ,

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *