English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
MATLAB permet deux types différents d'opérations arithmétiques-
Les opérations arithmétiques des matrices
Les opérations arithmétiques des arrays
Les opérations arithmétiques des matrices sont identiques à celles définies en algèbre linéaire. Les opérations sur les arrays sont exécutées élément par élément sur les arrays unidimensionnels et multidimensionnels.
Les opérateurs de matrice et les opérateurs d'array sont distingués par le point d'exclamation (.) Cependant, en raison des opérations d'addition et de soustraction identiques des matrices et des arrays, les opérateurs dans les deux cas sont les mêmes.
Le tableau suivant présente de manière succincte les opérateurs-
序号 | Opérateurs et descriptions |
---|---|
1 | + Addition ou addition unilatérale. A + B ajoutera les valeurs stockées dans les variables A et B. Sauf si l'une des deux est un scalaire, les tailles de A et B doivent être identiques. On peut ajouter un scalaire à toute taille de matrice. |
2 | - Soustraction ou soustraction unilatérale. AB soustrait la valeur de B de A. Sauf si l'une des deux est un scalaire, les tailles de A et B doivent être identiques. On peut soustraire un scalaire de toute taille de matrice. |
3 | * Multiplication de matrice. C = A * B est le produit algébrique des matrices A et B. Plus précisément, Pour A et B non scalaires, le nombre de colonnes d'A doit être égal au nombre de lignes de B. Les scalaires peuvent être multipliés par des matrices de toute taille. |
4 | .* Multiplication de tableau. A. * B est le produit élémentaire des tableaux A et B. A et B doivent avoir la même taille, sauf si l'une d'elles est un scalaire. |
5 | / Diviseur ou division matricielle à droite. B / et B *Presque identique à inv(A). Plus précisément, B / A = (A'\ B')'. |
6 | ./ Séparation de tableau à droite. A./B est l'élément A(i,j)/de la matrice B(i,j). Les tailles de A et B doivent être identiques, sauf si l'une d'elles est un scalaire. |
7 | \ Diviseur oblique ou division matricielle à gauche. Si A est une matrice carrée, alors A \ B est égal à inv(A)* B est presque identique, mais son mode de calcul est différent. Si A est une matrice n×n et B est une colonne vectorielle avec n composantes ou une matrice avec plusieurs telles colonnes, alors X = A \ B est l'équationAX = Bde la solution. Si A est mal échelonné ou proche de singulier, un message d'avertissement est affiché. |
8 | .\ Séparation de tableau à gauche. A. \ B est l'élément B(i,j)/du tableau A(i,j). Les tailles de A et B doivent être identiques, sauf si l'une d'elles est un scalaire. |
9 | ^ Puissance de matrice. Si p est un scalaire, alors X ^ p est X à la puissance p. Si p est un entier, la puissance est calculée par répétition de la multiplication. Si l'entier est négatif, X est d'abord inversé. Pour d'autres valeurs de p, le calcul implique les valeurs propres et les vecteurs propres, donc si [V, D] = eig(X), alors X ^ p = V * D. ^ p / V. |
10 | .^ Puissance de tableau. A. ^ B est la matrice avec des éléments A(i,j) à la puissance B(i,j). Les tailles de A et B doivent être identiques, sauf si l'une d'elles est un scalaire. |
11 | ' Transposition de matrice. A' est la transposition algébrique de A. Pour les matrices complexes, c'est la transposition conjuguée. |
12 | '. Transposition de tableau. Une. ' est la transposition du tableau A. Pour les matrices complexes, cela ne concerne pas la conjuguée. |
Les exemples suivants montrent l'utilisation des opérateurs arithmétiques pour les données scalaires. Créez un fichier de script avec le code suivant-
a = 10; b = 20; c = a + b d = a - b e = a * b f = a / b g = a \ b x = 7; y = 3; z = x ^ yL'exécution du fichier génère les résultats suivants-
c = 30 d = -10 e = 200 f = 0.50000 g = 2 z = 343
除了上述算术运算符,MATLAB还提供了以下用于类似目的的命令/函数-
序号 | 功能说明 |
---|---|
1 | uplus(a) 一元加号;按a的数量递增 |
2 | plus (a,b) 加; 返回a + b |
3 | uminus(a) 一元减;减少量a |
4 | minus(a, b) 减; 返回a-b |
5 | times(a, b) 数组乘法;返回a。* b |
6 | mtimes(a, b) 矩阵乘法;返回a * b |
7 | rdivide(a, b) 右数组除法;返回一个./ b |
8 | ldivide(a, b) 左数组除法;返回a。\ b |
9 | mrdivide(A, B) 求解线性方程组的系统XA = B为X |
10 | mldivide(A, B) 求解线性方程组的系统Ax = b的用于X |
11 | power(a, b) 数组幂;返回a.^ b |
12 | mpower(a, b) 矩阵幂;返回a ^ b |
13 | cumprod(A) 累积积;返回与包含累积积的数组大小相同的数组。
|
14 | cumprod(A, dim) 返回沿dim的累积乘积。 |
15 | cumsum(A) 累计和 返回包含累积和的数组A。
|
16 | cumsum(A, dim) 返回沿维度dim的元素的累积和。 |
17 | diff(X) 差异和近似导数;计算X的相邻元素之间的差。
|
18 | diff(X,n) 递归地应用diff n次,导致第n个差异。 |
19 | diff(X,n,dim) C'est la fonction de différence n-ième calculée le long de la dimension spécifiée par l'angle inférieur de la scalarité. Si le degré n est égal ou supérieur à la longueur de la dimension dim, alors diff retourne un tableau vide. |
20 | prod(A) Produit des éléments du tableau ; retourne le produit des éléments du tableau A.
Si l'entrée A est un nombre unique, la fonction prod calcule et retourne B comme unique. Pour tous les autres types de données numériques et logiques, prod calcule B et le retourne comme double. |
21 | prod(A,dim) Retourne le produit de dimension dim. Par exemple, si A est une matrice, alors prod(A,2) est une colonne vectorielle contenant le produit de chaque ligne. |
22 | prod(___,datatype) Multiplie et retourne un tableau de la catégorie spécifiée par le type de données. |
23 | sum(A)
|
24 | sum(A,dim) Sur le scalairedimSpécifiéASomme des dimensions. |
25 | sum(..., 'double') sum(..., dim,'double') Même si A a un type de données unique ou un type de données entier, effectue l'addition avec double précision et retourne une réponse de type double précision. C'est le réglage par défaut pour le type de données entier. |
26 | sum(..., 'native') sum(..., dim,'native') Effectue l'addition avec le type de données natif d'A et retourne une réponse du même type de données. C'est le réglage par défaut pour la somme d'une et de deux pages. |
27 | ceil(A) Rond vers l'infini positif ; arrondi les éléments de A à l'entier le plus proche supérieur ou égal à A. |
28 | fix(A) Rond vers zéro |
29 | floor(A) Rond vers l'infini négatif ; arrondi les éléments de A à l'entier le plus proche inférieur ou égal à A. |
30 | idivide(a, b) idivide(a, b, 'fix') Division entière avec option d'arrondi; avec a./b est identique, sauf que le quotient décimal est arrondi au plus proche entier zéro. |
31 | idivide(a, b, 'round') Le quotient fractionnaire est arrondi au plus proche entier. |
32 | idivide(A, B, 'floor') Le quotient fractionnaire est arrondi vers l'infini négatif au plus proche entier. |
33 | idivide(A, B, 'ceil') Le quotient fractionnaire est arrondi vers l'infini positif au plus proche entier. |
34 | mod (X,Y) Reste après division; retourne X-n.* Y, où n = floor(X./Y). Si Y n'est pas un entier, et le quotient X./Y est dans l'erreur de arrondi des entiers, alors n est cet entier. Les entrées X et Y doivent être des tableaux ou des scalaires réels de la même taille (fournissant Y〜= 0). Veuillez noter-
|
35 | rem (X,Y) restes après division; retourne X-n.* Y, où n = fix(X./Y). Si Y n'est pas un entier, et le quotient X./Y est dans l'erreur de arrondi des entiers, alors n est cet entier. Les entrées X et Y doivent être des tableaux ou des scalaires réels de la même taille (fournissant Y〜= 0). Veuillez noter-
|
36 | round(X) arrondie au plus proche entier; les éléments de X sont arrondis au plus proche entier. La partie décimale est 0.5Les éléments positifs seront arrondis au plus proche entier positif. La partie décimale est-0.5Les éléments négatifs seront arrondis au plus proche entier négatif. |