【问题标题】:What does the .'* operator mean in Matlab?.'* 运算符在 Matlab 中是什么意思?
【发布时间】:2023-03-21 14:37:02
【问题描述】:

.'* 运算符在 Matlab 中是什么意思?

例如:

n1=0:30;
n2=1:30;
x1=sin((pi/4)*n1);
x2=cos((pi/7)*n2);
x1.'*x2

我知道 .* 表示元素乘法,- x1.'*x2 表示元素乘法与它共轭?

【问题讨论】:

  • 如果他们中的任何一个对您有帮助,请考虑接受答案(以及您问题的所有其他答案),这样,如果事情是正确的,未来的人们现在会接受。 meta.stackexchange.com/questions/5234/…
  • 基本上它是在做kron(x1.',x2) 或者有人称它为外部产品或二元产品或排名第一的产品或许多其他同样无聊的名字
  • 这是一个 MATLAB 严重误用/过度使用“.”的例子。做完全不同的事情。我最喜欢的例子之一是,对于两个兼容的矩阵 ab,比较 a*2.0/ba*2./b

标签: matlab operators


【解决方案1】:

这是 2 个运算符。第一个.' 是矩阵的transpose。通常您可能将其视为单独的',但这给出了矩阵的complex conjugate transpose,实数是转置。第二个运算符是matrix multiplication operator*

基本上,您的代码会创建 2 个不同的向量,然后计算它们之间所有可能的乘法排列。

【讨论】:

  • 是的,+1。另请参阅 ctransposetranspose 的帮助/文档。
  • 可能还想消除 .'' 的歧义,因为复共轭经常被混淆和错误使用。
猜你喜欢
  • 2013-05-07
  • 2015-09-18
  • 2017-03-29
  • 2011-03-16
  • 2011-07-09
  • 2016-07-23
  • 1970-01-01
相关资源
最近更新 更多