Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> MATLAB

MATLAB - Tableaux

Toutes les variables de tous les types de données dans MATLAB sont des tableaux multidimensionnels. Un vecteur est un tableau unidimensionnel et une matrice est un tableau bidimensionnel.

Nous avons déjà parlé des vecteurs et des matrices. Dans ce chapitre, nous aborderons les tableaux multidimensionnels. Cependant, avant cela, discutons de certains types spéciaux de tableaux.

Tableaux spéciaux dans MATLAB

Dans cette section, nous aborderons certaines fonctions qui créent des tableaux spéciaux. Pour toutes ces fonctions, un seul argument crée un tableau carré, des arguments doubles créent un tableau rectangulaire.

Les zéros() la fonction crée un tableau de tous les zéros −

Par exemple −

Démo en direct
zeros(5)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans =
      0     0     0     0     0
      0     0     0     0     0
      0     0     0     0     0
      0     0     0     0     0
      0     0     0     0     0

Les ceux() la fonction crée un tableau de tous les uns −

Par exemple −

Démo en direct
ones(4,3)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans =
      1     1     1
      1     1     1
      1     1     1
      1     1     1

L'oeil() la fonction crée une matrice d'identité.

Par exemple −

Démo en direct
eye(4)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans =
      1     0     0     0
      0     1     0     0
      0     0     1     0
      0     0     0     1

Le rand() la fonction crée un tableau de nombres aléatoires uniformément distribués sur (0,1) −

Par exemple −

Démo en direct
rand(3, 5)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans =
   0.8147    0.9134    0.2785    0.9649    0.9572
   0.9058    0.6324    0.5469    0.1576    0.4854
   0.1270    0.0975    0.9575    0.9706    0.8003

Un carré magique

Un carré magique est un carré qui produit la même somme, lorsque ses éléments sont additionnés en ligne, en colonne ou en diagonale.

La magie() La fonction crée un tableau de carrés magiques. Il prend un argument singulier qui donne la taille du carré. L'argument doit être un scalaire supérieur ou égal à 3.

Démo en direct
magic(4)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans =
   16     2     3    13
   5    11    10     8
   9     7     6    12
   4    14    15     1

Tableaux multidimensionnels

Un tableau ayant plus de deux dimensions est appelé un tableau multidimensionnel dans MATLAB. Les tableaux multidimensionnels dans MATLAB sont une extension de la matrice bidimensionnelle normale.

Généralement, pour générer un tableau multidimensionnel, nous créons d'abord un tableau à deux dimensions et l'étendons.

Par exemple, créons un tableau à deux dimensions a.

Démo en direct
a = [7 9 5; 6 1 9; 4 3 2]

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

a =
   7     9     5
   6     1     9
   4     3     2

Le tableau a est un tableau 3 par 3 ; nous pouvons ajouter une troisième dimension à a , en fournissant les valeurs comme −

Démo en direct
a(:, :, 2)= [ 1 2 3; 4 5 6; 7 8 9]

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

a =

ans(:,:,1) =

   0   0   0
   0   0   0
   0   0   0

ans(:,:,2) =

   1   2   3
   4   5   6
   7   8   9

Nous pouvons également créer des tableaux multidimensionnels en utilisant les fonctions ones(), zeros() ou rand().

Par exemple,

Démo en direct
b = rand(4,3,2)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

b(:,:,1) =
   0.0344    0.7952    0.6463
   0.4387    0.1869    0.7094
   0.3816    0.4898    0.7547
   0.7655    0.4456    0.2760

b(:,:,2) =
   0.6797    0.4984    0.2238
   0.6551    0.9597    0.7513
   0.1626    0.3404    0.2551
   0.1190    0.5853    0.5060

Nous pouvons également utiliser le chat() fonction pour construire des tableaux multidimensionnels. Il concatène une liste de tableaux le long d'une dimension spécifiée −

La syntaxe de la fonction cat() est −

B = cat(dim, A1, A2...)

Où,

Exemple

Créez un fichier de script et tapez-y le code suivant −

Démo en direct
a = [9 8 7; 6 5 4; 3 2 1];
b = [1 2 3; 4 5 6; 7 8 9];
c = cat(3, a, b, [ 2 3 1; 4 7 8; 3 9 0])

Lorsque vous exécutez le fichier, il affiche −

c(:,:,1) =
      9     8     7
      6     5     4
      3     2     1
c(:,:,2) =
      1     2     3
      4     5     6
      7     8     9
c(:,:,3) =
      2     3     1
      4     7     8
      3     9     0

Fonctions de tableau

MATLAB fournit les fonctions suivantes pour trier, faire pivoter, permuter, remodeler ou décaler le contenu d'un tableau.

Fonction Objectif
longueur Longueur du vecteur ou plus grande dimension du tableau
ndims Nombre de dimensions du tableau
numel Nombre d'éléments du tableau
taille Dimensions du tableau
iscolumn Détermine si l'entrée est un vecteur colonne
estvide Détermine si le tableau est vide
ismatrix Détermine si l'entrée est une matrice
isrow Détermine si l'entrée est un vecteur ligne
isscalaire Détermine si l'entrée est scalaire
estvecteur Détermine si l'entrée est vectorielle
blkdiag Construit une matrice diagonale de bloc à partir des arguments d'entrée
circshift Décale le tableau de manière circulaire
transposer Transposition conjuguée complexe
diag Matrices diagonales et diagonales de matrice
flipdim Inverse le tableau le long de la dimension spécifiée
fliplr Inverse la matrice de gauche à droite
flipud Inverse la matrice de haut en bas
ipermute Inverse permute les dimensions du tableau N-D
permuter Réorganise les dimensions du tableau N-D
repmat Répliques et tableau de tuiles
remodeler Reforme le tableau
rot90 Fait pivoter la matrice de 90 degrés
shiftdim Déplace les dimensions
sorti Détermine si les éléments de l'ensemble sont triés
trier Trie les éléments du tableau par ordre croissant ou décroissant
trier les lignes Trier les lignes par ordre croissant
presser Supprime les dimensions singleton
transposer Transposer
vectoriser Vectorise l'expression

Exemples

Les exemples suivants illustrent certaines des fonctions mentionnées ci-dessus.

Longueur, Dimension et Nombre d'éléments −

Créez un fichier de script et tapez-y le code suivant −

Démo en direct
x = [7.1, 3.4, 7.2, 28/4, 3.6, 17, 9.4, 8.9];
length(x)      % length of x vector
y = rand(3, 4, 5, 2);
ndims(y)       % no of dimensions in array y
s = ['Zara', 'Nuha', 'Shamim', 'Riz', 'Shadab'];
numel(s)       % no of elements in s

Lorsque vous exécutez le fichier, il affiche le résultat suivant −

ans =  8
ans =  4
ans =  23

Déplacement circulaire des éléments du tableau −

Créez un fichier de script et tapez-y le code suivant −

Démo en direct
a = [1 2 3; 4 5 6; 7 8 9]  % the original array a
b = circshift(a,1)         %  circular shift first dimension values down by 1.
c = circshift(a,[1 -1])    % circular shift first dimension values % down by 1 
                           % and second dimension values to the left % by 1.

Lorsque vous exécutez le fichier, il affiche le résultat suivant −

a =
   1     2     3
   4     5     6
   7     8     9

b =
   7     8     9
   1     2     3
   4     5     6

c =
   8     9     7
   2     3     1
   5     6     4

Trier les tableaux

Créez un fichier de script et tapez-y le code suivant −

Démo en direct
v = [ 23 45 12 9 5 0 19 17]  % horizontal vector
sort(v)                      % sorting v
m = [2 6 4; 5 3 9; 2 0 1]    % two dimensional array
sort(m, 1)                   % sorting m along the row
sort(m, 2)                   % sorting m along the column

Lorsque vous exécutez le fichier, il affiche le résultat suivant −

v =
   23    45    12     9     5     0    19    17
ans =
   0     5     9    12    17    19    23    45
m =
   2     6     4
   5     3     9
   2     0     1
ans =
   2     0     1
   2     3     4
   5     6     9
ans =
   2     4     6
   3     5     9
   0     1     2

Matrice de cellules

Les tableaux de cellules sont des tableaux de cellules indexées où chaque cellule peut stocker un tableau de dimensions et de types de données différents.

La cellule La fonction est utilisée pour créer un tableau de cellules. La syntaxe de la fonction de cellule est −

C = cell(dim)
C = cell(dim1,...,dimN)
D = cell(obj)

Où,

Exemple

Créez un fichier de script et tapez-y le code suivant −

Démo en direct
c = cell(2, 5);
c = {'Red', 'Blue', 'Green', 'Yellow', 'White'; 1 2 3 4 5}

Lorsque vous exécutez le fichier, il affiche le résultat suivant −

c = 
{
   [1,1] = Red
   [2,1] =  1
   [1,2] = Blue
   [2,2] =  2
   [1,3] = Green
   [2,3] =  3
   [1,4] = Yellow
   [2,4] =  4
   [1,5] = White
   [2,5] =  5
}

Accéder aux données dans les tableaux de cellules

Il existe deux façons de faire référence aux éléments d'un tableau de cellules −

Lorsque vous placez les index entre les premières parenthèses, cela fait référence à l'ensemble de cellules.

Les indices de tableau de cellules entre parenthèses lisses font référence à des ensembles de cellules.

Par exemple −

Démo en direct
c = {'Red', 'Blue', 'Green', 'Yellow', 'White'; 1 2 3 4 5};
c(1:2,1:2)

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans = 
{
   [1,1] = Red
   [2,1] =  1
   [1,2] = Blue
   [2,2] =  2
}

Vous pouvez également accéder au contenu des cellules en indexant avec des accolades.

Par exemple −

Démo en direct
c = {'Red', 'Blue', 'Green', 'Yellow', 'White'; 1 2 3 4 5};
c{1, 2:4}

MATLAB exécutera l'instruction ci-dessus et renverra le résultat suivant −

ans = Blue
ans = Green
ans = Yellow

MATLAB

  1. Tableaux C#
  2. Tableau Jagged C #
  3. Tableaux de copie Java
  4. Tableaux en C++ | Déclarer | Initialiser | Pointeur vers des exemples de tableaux
  5. Allocation dynamique C++ de tableaux avec exemple
  6. MATLAB - Aperçu
  7. MATLAB-Variables
  8. MATLAB - Commandes
  9. MATLAB - Matrice