根据另一个矩阵的行获取矩阵的动态行(Matlab)
Get dynamic rows of matrix based on the ones of another matrix (Matlab)
我是 Matlab 新手,需要一些帮助。
我想计算奇偶校验矩阵,然后使用生成器矩阵
对码字进行编码
我的矩阵如下:
1 0 0 0 1 1 1
0 1 0 0 1 1 0
0 0 1 0 1 0 1
0 0 0 1 0 1 1
密码为1 0 1 1。
我在 Matlab 中的代码如下:
printf('Generator Matrix\n');
G = [
1 0 0 0 1 1 1;
0 1 0 0 1 1 0;
0 0 1 0 1 0 1;
0 0 0 1 0 1 1
]
[k,n] = size(G)
P = G(1:k,k+1:n)
PT = P'
printf('Parity Check Matrix\n');
H = cat(2,PT,eye( n-k ))
printf('Encode the following word : \n');
D = [1 0 1 1]
C = xor( G(1,:), G(3,:) , G(4,:) )
我的问题是我想动态获取 G 矩阵的行以便进行异或运算。
你能帮帮我吗?
非常感谢
你只需要矩阵乘法模2:
C = mod(D*G, 2);
或者,计算 D
指示的 G
行的总和,模 2:
C = mod(sum(G(D==1,:), 1), 2);
我是 Matlab 新手,需要一些帮助。 我想计算奇偶校验矩阵,然后使用生成器矩阵
对码字进行编码我的矩阵如下:
1 0 0 0 1 1 1
0 1 0 0 1 1 0
0 0 1 0 1 0 1
0 0 0 1 0 1 1
密码为1 0 1 1。
我在 Matlab 中的代码如下:
printf('Generator Matrix\n');
G = [
1 0 0 0 1 1 1;
0 1 0 0 1 1 0;
0 0 1 0 1 0 1;
0 0 0 1 0 1 1
]
[k,n] = size(G)
P = G(1:k,k+1:n)
PT = P'
printf('Parity Check Matrix\n');
H = cat(2,PT,eye( n-k ))
printf('Encode the following word : \n');
D = [1 0 1 1]
C = xor( G(1,:), G(3,:) , G(4,:) )
我的问题是我想动态获取 G 矩阵的行以便进行异或运算。 你能帮帮我吗?
非常感谢
你只需要矩阵乘法模2:
C = mod(D*G, 2);
或者,计算 D
指示的 G
行的总和,模 2:
C = mod(sum(G(D==1,:), 1), 2);