"V = V.';" What Does This Syntax Mean?

35 views (last 30 days)
Michael Cappello
Michael Cappello on 4 Mar 2020
Edited: Stephen23 on 4 Mar 2020
The Matlab function interp2 is sprinkled with the following "V.'". For example, lines 194:196 in 2019a is
X = X.':
Y = Y.';
Z = Z.';
Why is the "." before the transpose. What does it accomplish? I've never seen this syntax before. And it doesn't seem to accomplish anything because if I let
X = rand(3,5)
then isequal(X.',X') is indeed equal.
Thanks in advance!

Accepted Answer

Stephen23
Stephen23 on 4 Mar 2020
Edited: Stephen23 on 4 Mar 2020
The difference is:
Several basic numeric operations have two versions, one for linear algebra (without the dot) and one for element-wise operations (with a dot). If you are not doing linear algebra then you should be using array operations (yes, this includes transpose rather than ctranspose). Read more here:
"I've never seen this syntax before."
Understanding the difference between array and matrix operations is an important step to learning MATLAB.
"And it doesn't seem to accomplish anything"
Try it on some arrays with complex numbers in them.
Note that both the ctranspose or transpose pages include at the bottom:
  • a link to the other transpose, and also
  • a link to the page explaining the difference between array and matrix operations.
  1 Comment
Michael Cappello
Michael Cappello on 4 Mar 2020
Ahhh! I see. I tried it on an array of complex numbers and there is difference, as you say. Thanks.

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!