假设:
X = [3 1 -1 -3];
Y = i.*X;
从 X 和 Y 获取矩阵 QAM 的最简单方法是什么:
QAM = [ 3+3i, 3+1i, 3-1i, 3-3i,
1+3i, 1+1i, 1-1i, 1-3i,
-1+3i,-1+1i,-1-1i,-1-3i,
-3+3i,-3+1i,-3-1i,-3-3i
]
最佳答案
使用bsxfun
当然-
bsxfun(@plus,X(:),1i*X(:).')
示例运行 -
>> X
X =
3 1 -1 -3
>> bsxfun(@plus,X(:),1i*X(:).')
ans =
3.0000 + 3.0000i 3.0000 + 1.0000i 3.0000 - 1.0000i 3.0000 - 3.0000i
1.0000 + 3.0000i 1.0000 + 1.0000i 1.0000 - 1.0000i 1.0000 - 3.0000i
-1.0000 + 3.0000i -1.0000 + 1.0000i -1.0000 - 1.0000i -1.0000 - 3.0000i
-3.0000 + 3.0000i -3.0000 + 1.0000i -3.0000 - 1.0000i -3.0000 - 3.0000i
关于arrays - Matlab:添加 'convolving'行和列以形成每个元素组合的方阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29571110/