小编这次要给大家分享的是Matlab中共轭、转置和共轭装置有什么区别,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
共轭
转置
共轭转置
The symbols (·)T , (·)∗, and (·)H are,respectively,
the transpose, complex conjugate
and Hermitian transpose operators.
这里使用随机产生的矩阵来说明问题,例如:
A=randn(2,2)+randn(2,2)*i
A=randn(2,2)+randn(2,2)*j
A=randn(2,2)+randn(2,2)*1i
三种方式结果一致,为了程序的稳定性,建议使用第三种产生
共轭
使用共轭符号后
conj(A)
矩阵的每一个元素都取了共轭
转置
A.'
对矩阵进行了转置
共轭转置
conj(A.')
或者
conj(A).'
先共轭还是转置,结果都是一致的,不分先后顺序
%上诉的写法比较麻烦,但是不容易搞混淆,尤其有程序中有共轭,有装置,有共轭装置
%如果程序中没有这些可以使用以下符号
A'
这个是埃尔米特转置运算符,进行转置和共轭,结果一致;如果进行操作的数是实数,那么可以直接使用这个符号,这时候共轭的作用消失了,起到的是和转置一样的作用,之前没有接触复数,以为这个就是转置,事实上不是的
补充知识:matlab 复矩阵共轭
A 为复矩阵
A =
1.0000 + 0.0000i 2.0000 - 3.0000i 3.0000 + 0.0000i 4.0000 + 0.0000i
4.0000 + 0.0000i 3.0000 + 4.0000i 2.0000 + 5.0000i 1.0000 + 0.0000i
7.0000 + 0.0000i 8.0000 + 2.0000i 9.0000 + 0.0000i 6.0000 + 0.0000i
A':共轭转置
>> A'
ans =
1.0000 + 0.0000i 4.0000 + 0.0000i 7.0000 + 0.0000i
2.0000 + 3.0000i 3.0000 - 4.0000i 8.0000 - 2.0000i
3.0000 + 0.0000i 2.0000 - 5.0000i 9.0000 + 0.0000i
4.0000 + 0.0000i 1.0000 + 0.0000i 6.0000 + 0.0000i
A.':只转置不共轭
>> A.'
A =
1.0000 + 0.0000i 2.0000 - 3.0000i 3.0000 + 0.0000i 4.0000 + 0.0000i
4.0000 + 0.0000i 3.0000 + 4.0000i 2.0000 + 5.0000i 1.0000 + 0.0000i
7.0000 + 0.0000i 8.0000 + 2.0000i 9.0000 + 0.0000i 6.0000 + 0.0000i
conj(A):只共轭
>> conj(A)
ans =
1.0000 + 0.0000i 2.0000 + 3.0000i 3.0000 + 0.0000i 4.0000 + 0.0000i
4.0000 + 0.0000i 3.0000 - 4.0000i 2.0000 - 5.0000i 1.0000 + 0.0000i
7.0000 + 0.0000i 8.0000 - 2.0000i 9.0000 + 0.0000i 6.0000 + 0.0000i
A.*conj(A) == abs(A).^2
>> A.*conj(A)
ans =
1 13 9 16
16 25 29 1
49 68 81 36
>> abs(A).^2
ans =
1.0000 13.0000 9.0000 16.0000
16.0000 25.0000 29.0000 1.0000
49.0000 68.0000 81.0000 36.0000
看完这篇关于Matlab中共轭、转置和共轭装置有什么区别的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。