what does "^" and ".^" difference ?
28 views (last 30 days)
Show older comments
surely "^" and ".^" had difference in their using. but what exactly they does?
0 Comments
Accepted Answer
Walter Roberson
on 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.
0 Comments
More Answers (1)
Cam
on 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.
0 Comments
See Also
Categories
Find more on Operators and Elementary Operations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!