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

31 vues (au cours des 30 derniers jours)
Michael Cappello
Michael Cappello le 4 Mar 2020
Modifié(e) : Stephen23 le 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!

Réponse acceptée

Stephen23
Stephen23 le 4 Mar 2020
Modifié(e) : Stephen23 le 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 commentaire
Michael Cappello
Michael Cappello le 4 Mar 2020
Ahhh! I see. I tried it on an array of complex numbers and there is difference, as you say. Thanks.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing 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