Magma代数软件利用KroneckerProduct扩展矩阵

Magma代数软件代码
 

// 定义二元域
F2 := GF(2);
F3 := GF(3);

v1:=[1,0,0,0,0,0,0,0,0,0,0];
v2:=[0,1,0,0,0,0,0,0,0,1,0];
v3:=[0,0,1,0,0,1,0,0,1,0,0];
v4:=[0,0,0,1,0,1,0,1,0,0,0];
v5:=[0,0,0,0,1,0,1,0,0,0,0];

G1 := Matrix(F2, [
    v1,v2,v3,v4,v5
]);

G1;
"******************";
// 构造 G2 (反转G1的列序)
G2 := ReverseColumns(G1);

// 设置扩展参数(需用户指定!)
m := 2;  // 修改m值
s := 1;  // 修改s值

// 构造全1行向量
one_m := Matrix(F2, 1, m, [1 : i in [1..m]]);
one_s := Matrix(F2, 1, s, [1 : i in [1..s]]);

// 计算扩展矩阵
G1_extended := KroneckerProduct(G1, one_m);
G2_extended := KroneckerProduct(G2, one_s);

// 水平拼接得最终矩阵 G
G := HorizontalJoin(G1_extended, G2_extended);
G;

扩展前矩阵:

Magma代数软件利用KroneckerProduct扩展矩阵_第1张图片

扩展后矩阵:

Magma代数软件利用KroneckerProduct扩展矩阵_第2张图片

你可能感兴趣的:(算法,MAGMA,矩阵)