为了账号安全,请及时绑定邮箱和手机立即绑定

在MATLAB中使用转置与ctranspose

在MATLAB中使用转置与ctranspose

慕容森 2019-07-23 15:03:00
在MATLAB中使用转置与ctranspose在MATLAB中转置向量/矩阵时,我已经看到并使用了'(撇号)运算符很长一段时间。例如:>> v = [ 1 2 3 ]'v =      1     2     3然而,这是我最近发现的共轭转置,或者ctranspose。这似乎只涉及涉及复杂数字的情况,如果您想要转换矩阵而不获取共轭,则需要使用.'opertator。那么使用.'真实矩阵和向量是否是好习惯?我们应该怎样教MATLAB初学者
查看完整描述

3 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

我非常偏见:我使用的大多数情况'都是纯粹的“正式”,也与数学计算无关。我很可能想要将索引序列的矢量旋转1:1090度。

我罕使用'矩阵,因为它是不明确的,为什么要进行转置你已经回答了第一个问题是- ?

如果矩阵最初是在错误的方向上定义的,我宁愿矩阵定义为正确的矩阵,但之后不要将其转动。

为了转置矩阵进行数学计算,我明确地使用transposectranspose。因为通过这样做,代码更容易阅读(不必专注于那些小点)和调试(不必关心丢失的点)。像往常一样执行以下作业,例如点积。


查看完整回答
反对 回复 2019-07-23
?
万千封印

TA贡献1891条经验 获得超3个赞

这实际上是许多MATLAB程序员争论的主题。有人说,如果你知道自己在做什么,那么你可以继续使用,'如果你知道你的数据是纯粹的,并且.'如果你的数据很复杂就可以使用。然而,有些人(比如Luis Mendo)主张你应该一直使用这一事实,.'这样你就不会感到困惑。

这样就可以正确处理函数输入,以防输入这些函数所需的数据变得复杂。有一段时间需要复杂的换位,例如计算复矢量的幅度平方。事实上,Loren Shure在她的一个MATLAB摘要中(我记不清哪一个......)说这是引入复杂转置的原因之一。


我的建议是,.'如果您的目标是转置数据,则应始终使用。如果你想要做一些复杂的运算,然后使用'.'依赖于何种操作/计算你在干什么。显然,Luis Mendo的良好做法已经让我感到震惊。


查看完整回答
反对 回复 2019-07-23
  • 3 回答
  • 0 关注
  • 1474 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信