what does "^" and ".^" difference ?

38 vues (au cours des 30 derniers jours)
Muhammad Faqih
Muhammad Faqih le 27 Sep 2019
Réponse apportée : Cam le 27 Sep 2019
surely "^" and ".^" had difference in their using. but what exactly they does?

Réponse acceptée

Walter Roberson
Walter Roberson le 27 Sep 2019
>> [1 2;3 4]^2
ans =
7 10
15 22
>> [1 2;3 4].^2
ans =
1 4
9 16
>> [1 2; 3 4]*[1 2; 3 4] %same as ^2
ans =
7 10
15 22
>> [1 2; 3 4].*[1 2;3 4] %same as .^2
ans =
1 4
9 16
The formal names of the operations are mpower (^) and power (.^) . ^ is for matrix multiplication repeated, where .^ is for element-by-element multiplication repeatedly.

Plus de réponses (1)

Cam
Cam le 27 Sep 2019
The dot is a element wise operator, this means that each element is operated on by the element of the same index when you use this. The other "^" will raise any value (scalar, or matrix) to the power of it. A bit difficult to explain in words here is an example:
a = [1 2;3 4]
b = [2 2;2 2]
a.^b = [1 4;9 16]
As you can see it went element by element and applied the operator. 1^2, 2^2; 2^3, 2^4
In contrast if you do:
a = [1 2;3 4]
b = [2 2;2 2]
a^b = %ERROR must be a scalar
a^2 = [1 4;9 16]
The dot is more applicable to other operators like multiplication and division its less used but still often needed as matlab always assumes matricies are being used first.

Catégories

En savoir plus sur Operators and Elementary Operations dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by