?? h2g.m
字號(hào):
function [G,valid]=H2G(H)
% H=[1 1 1 0 0 0 0 0;0 0 0 1 1 1 0 0;1 0 0 1 0 0 1 0;0 1 0 0 1 0 0 1];
[m,n]=size(H);
valid=1;
for k=1:m %逐行進(jìn)行高斯消元,使前m行×m列形成單位陣,從而使校驗(yàn)矩陣寫成[I|P]形式
vec=[k:n];
if (H(k,k)==0) %高斯消元使H(k,k)==1
a=find(H(k+1:m,k)~=0);
if isempty(a)
valid=0;
break
end
a_major=a(1);
x=k+a_major;
H(k,vec)=rem(H(x,vec)+H(k,vec),2);
end
a=find(H(:,k)~=0)'; %高斯消元使的第k列初H(k,k)==1外其余位置為0
for x=a
if x~=k
H(x,vec)=rem(H(x,vec)+H(k,vec),2);
end
end
end
P=H(:,m+1:n);
I=eye(n-m);
G=cat(2,P',I); %[P'|I]即為生成矩陣
t=mod(G'*H,2);
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -