arrays - Matlab:添加 'convolving'行和列以形成每个元素组合的方阵?

标签 arrays matlab matrix

假设:

    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/

相关文章:

javascript - 在一个变量中定义多个类,然后检索它们

matlab - sortrows 是否始终保留排序组内的原始顺序?

matlab - 在 matlab 绘图的刻度标签中打印 '_' 作为下划线

Python:将矩阵转换为半正定

image - Chrome 中的高质量图像渲染

r - 查找矩阵行中位数和绝对偏差

java - java比较同一数组的元素

arrays - 如何按空行将文本文件拆分为数组?

matlab - 如何为所有并行工作的 MATLAB session 强制使用 100% 的 CPU?

java - 使用循环和数组在 Java 中生成随机数列表