信息论上机1.docx

上传人:b****5 文档编号:30245817 上传时间:2023-08-13 格式:DOCX 页数:19 大小:67.05KB
下载 相关 举报
信息论上机1.docx_第1页
第1页 / 共19页
信息论上机1.docx_第2页
第2页 / 共19页
信息论上机1.docx_第3页
第3页 / 共19页
信息论上机1.docx_第4页
第4页 / 共19页
信息论上机1.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

信息论上机1.docx

《信息论上机1.docx》由会员分享,可在线阅读,更多相关《信息论上机1.docx(19页珍藏版)》请在冰豆网上搜索。

信息论上机1.docx

信息论上机1

 

信息论实验报告

 

班级:

通信11-4

姓名:

李阳

学号:

11101060427

指导教师:

范锦宏

完成日期:

2014.6.8

 

2.1

程序代码:

clearall;

closeall;

clc;

p=0:

0.01:

1;

I=-log2(p+eps);

plot(p,I);

xlabel('\it{p(x_i)}');

ylabel('\it{I(x_i)}','rotation',0,'position',[-0.05,3.5,0]);

ylim([0,7]);

运行结果:

2.2

程序代码:

clearall;

closeall;

clc;

p=0:

0.01:

1;

q=1-p;

H=-p.*log2(p+eps)-q.*log2(q+eps);

plot(p,H);

xlabel('\it{p}');

ylabel('\it{H[p]}','rotation',0,'position',{-0.1,0.5,0]);

xlim([0,1]);

ylim([0,1]);

运行结果:

3.1

(1)

程序代码:

%画出作为r函数的差错概率图

clearall;

gamma_db=[-20:

0.1:

20];

gamma=10.^(gamma_db./10);

p_error=0.5.*(sqrt(2.*gamma));

semilogx(gamma,p_error)

xlabel('SNR/bit')

title('ErrorprobilityversusSNR/bit')

ylabel('ErrorProb.')

运行结果:

3.1

(2)

程序代码:

clearall;

gamma_db=[-20:

0.1:

20];

gamma=10.^(gamma_db./10);

p_error=0.5.*(sqrt(2.*gamma));

capacity=1.-sum(-p_error.*log2(p_error));

semilogx(gamma,capacity)

xlabel('SNR/bit')

title('channelcapacityversusSNR/bit')

ylabel('channelcapacity')

运行结果:

3-2

(1)

%W=3000Hz的加性高斯白噪声的信道容量作为P/N0的函数图

clearall

echoon

pn0_db=[-20:

0.1:

30];

pn0=10.^(pn0_db./10);

capacity=3000.*log2(1+pn0/3000);

pause

clf

semilogx(pn0,capacity)

title('Capacityvs.P/N0inanAWGNchannel')

xlabel('P/N0')

ylabel('Capacity(bits/second)')

clear

w={1:

10,12:

2:

100,105:

5:

500;510:

10:

5000;5025:

25:

20000,20050:

50:

100000};

pn0_db=25;

pn0=10^(pn0_db/10);

capacity=w.*log2(1+pn0./w);

pause

clf

%在AWGN信道中作为带宽的函数的容量

semilogx(w,capacity)

title('Capacityvs.bandwidthinanAWGNchannel')

xlabel('Bandwidth(Hz)')

ylabel('Capacity(bits/second)')

运行结果:

3-2

(2)

echoon;

pn0_db=25

pn0=10.^(pn0_db./10);

w=0:

100000;

capacity=w.*log2(1+pn0./w);

pause;

clf

semilogx(w,capacity);

title('capacityvs.P/N0inanAWGNChannel');

xlabel('P/N0');

ylabel('Capacity(bits/second)');

运行结果:

3.3

%3.3离散无记忆信道的迭代计算%

function[cc,paa]=channelcap(p,k)

%p:

输入的正向转移矩阵,k:

迭代计算的精度

%cc:

最佳信道容量,paa:

最佳输入概率矩阵

%pa:

初始输入概率矩阵,pba:

正向转移概率矩阵

%pb:

输出矩阵概率,pab:

反向转移概率矩阵

%c:

初始信道容量,r:

输入符号数,s:

输出符号数

%提示错误信息

if(length(fing(p<0))~=0

error('notaprob.vector,negetivecomponent')

end

if(abs(sum(p')-1)>10e-10)

error('notaprov.vector,componentdonotaddupto1')

end

[r,s]=size(p);

pa=(1/(r+eps))*ones(1,r);

sumrow=zeros(1,r);

pba=p;

n=0;c=0;cc=1;

whileabs(cc-c)>=k

n=n+1;

pb=zeros(1,s);

forj=1:

s

fori=1:

r

pb(j)=pb(j)+pa(i)*pba(i,j);

end

end

suma=zeros(1,s);

forj=1:

s

fori=1:

r

pab(j,i)*pba(i,j)/(pb(j)+eps);

suma(j)=suma(j)+pa(i)*pba(i,j)*log2((pab(j,i)+eps)/(pa(i)+eps));

end

end

c=sum(suma);

l=zeros(1,r);

sumaa=0;

fori=1:

r

forj=1:

s

l(i)=l(i)+pba(i,j)*log(pab(j,i)+eps);

end

a(i)=exp(l(i));

end

sumaa=sum(a);

fori=1:

r

paa(i)=a(i)/(sumaa+eps);

end

cc=log2(sumaa);

pa=paa;

end

 

运行结果:

输入:

p=[0.2,0.3,0.5;0.6,0.2,0.2;0.5,0.2,0.3;0.1,0.3,0.6];

k=10e-4;

[a,b]=channelcap(p,k)

输出:

a=

0.2057

b=

0.06080.40310.06920.4668

 

4-1

%function[]=RD(Pa,d,S)formatlongS=[];

%r=input('输入信源数r=');

%s=input('输出信源数s=');

%d=input('失真矩阵d=');

%Pa=input('输入概率分布Pa=');

r=2

s=2

d=[01;10]

Pa=[0.50.5]

S

(1)=-99.5

times=100;

pba=[];RS=[];DS=[];

m=1;

forz=1:

times%初始化

Pba(1:

r,1:

s,1)=1/(r*s)*ones(r,s);

forj=1:

s

Pb(j,1)=0;

fori=1:

r

Pb(j,1)=Pb(j,1)+Pa(i)*Pba(i,j,1);

end

end

fori=1:

r

temp(i)=0;

forj=1:

s

temp(i)=temp(i)+Pb(j,1)*exp(S(m)*d(i,j));

end

end

fori=1:

r

forj=1:

s

Pba(i,j,2)=(Pb(j,1)*exp(S(m)*d(i,j)))/temp(i);

end%计算D

(1)(S)和R

(1)(S)

D

(1)=0;

fori=1:

r

forj=1:

s

D

(1)=D

(1)+Pa(i)*Pba(i,j,1)*d(i,j);

end

end

R

(1)=0;

fori=1:

r

forj=1:

s

if(Pba(i,j,1)~=0)

R

(1)=R

(1)+Pa(i)*Pba(i,j,1)*log2(Pba(i,j,1)/Pb(j,1));

end

end

end

n=2;

while

(1)%计算pn(bj)

forj=1:

s

Pb(j,n)=0;

fori=1:

r

Pb(j,n)=Pb(j,n)+Pa(i)*Pba(i,j,n);

end

end%计算pn+1(bj/ai)

fori=1:

r

temp(i)=0;

forj=1:

s

temp(i)=temp(i)+Pb(j,n)*exp(S(m)*d(i,j));

end

end

fori=1:

r

forj=1:

s

if(temp(i)~=0)

Pba(i,j,n+1)=(Pb(j,n)*exp(S(m)*d(i,j)))/temp(i);

end

end

end%计算D(n)(S)和R(n)(S)

D(n)=0;

fori=1:

r

forj=1:

s

D(n)=D(n)+Pa(i)*Pba(i,j,n)*d(i,j);

end

end

R(n)=0;

fori=1:

r

forj=1:

s

if(Pba(i,j,n)~=0)

R(n)=R(n)+Pa(i)*Pba(i,j,n)*log2(Pba(i,j,n)/Pb(j,n));

end

end

end

if(abs(R(n)-R(n-1))<1e-7)

if(abs(D(n)-D(n-1))<1e-7)

break;

end

end

n=n+1;

end

S(m+1)=S(m)+0.5;

pba=[Pba(:

:

:

)];

RS=[RSR(n)];

DS=[DSD(n)];

m=m+1;

end

end

[k,l,q]=size(pba);

Pba=pba(:

:

q);

Rmin=min(RS);

Dmax=max(DS);

Smax=S(m-1);

fprintf(2,'迭代结果如下:

\n');

fprintf(2,'最小信息率Rmin:

\n');

disp(Rmin);

fprintf(2,'最佳转移概率分布Pba:

\n');

disp(Pba);

plot(DS,RS);

xlabel('D');ylabel('R(D)');title('信息率失真函数图象')

运行结果:

r=

2

s=

2

d=

01

10

Pa=

0.50000.5000

S=

-99.5000

迭代结果如下:

最小信息率Rmin:

0

最佳转移概率分布Pba:

0.73130.2687

0.26920.7308

8.1

程序代码:

clearall;

closeall;

clc;

k=4;

fori=1:

2^k

forj=k:

-1:

1

ifrem(i-1,2^(-j+k+1))>=2^(-j+k)

u(i,j)=1;

else

u(i,j)=0;

end

end

end

%定义生成矩阵g

g=[1001110111;

1110001110;

0110110101;

1101111001];

%生成码字

c=rem(u*g,2)

%求最小重量

w_min=min(sum((c(2:

2^k,:

))'))

运行结果:

8.2

程序代码:

function[H,G]=Hamm_gen(m)

%H=mxN:

奇偶校验矩阵,其中,N=2^m-1

%G=KxN:

Hamming码的生成矩阵,其中,K=N-m

ifnargin<2,

opt=1;

end

H=[ones(2,1)eye

(2)];

G=[1H(:

1).'];

ifm<3,

return;

end

fori=3:

m

N=2^i;

N2=N/2;

K=N-1-i;

forj=1:

N2-1,

H(i,j)=1;

end

forj=N2:

K,

H(i,j)=0;

end

H(1:

i-1,N2:

K)=H(1:

i-1,1:

N2-i);

H(1:

i,N-i:

N-1)=eye(i);

end

H(:

1:

K)=fliplr(H(:

1:

K));

G=[eye(K)H(1:

m,1:

K).'];

运行结果:

输入:

m=4;

[H,G]=Hamm_gen(m)

输出:

8.3

程序代码:

clearall;

k=11;

fori=1:

2^k

forj=k:

-1:

1

ifrem(i-1,2^(-j+k+1))>=2^(-j+k)

u(i,j)=1;

else

u(i,j)=0;

end

end

end

[H,G]=hamm_gen(4);

c=rem(u*G,2)

w_min=min(sum((c(2:

2^k,:

))'))

运行结果:

(15,11)的Hamming码的全部码字较多,共2048行15列

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1