📄 qpsk_berest.m
字号:
function [peideal,pesystem]=qpsk_berest(xx,yy,ebn0db,eb,tb,nbw)
[n1 n2]=size(xx);nx=n1*n2;
[n3 n4]=size(yy);ny=n3*n4;
[n5 n6]=size(ebn0db);neb=n5*n6;
nbwideal=1/(2*tb*2);
for m=1:neb
peideal(m)=0.0;pesystem(m)=0.0;
string1=['Eb/No = ',num2str(ebn0db(m))];
disp(string1);
ebn0(m)=10^(ebn0db(m)/10);
n0=eb/ebn0(m);
sigma=sqrt(n0*nbw*2);
sigma1=sqrt(n0*nbwideal*2);
b=sqrt(2*eb/tb)/sqrt(sum(abs(xx).^2)/nx);
for n=1:nx
theta=angle(xx(n));
if (theta<0)
theta=theta+2*pi;
end
xxx(n)=b*xx(n)*exp(-i*(theta-(pi/4)));
yyy(n)=yy(n)*exp(-i*(theta-(pi/4)));
d1=real(xxx(n));d2=imag(xxx(n));
d3=real(yyy(n));d4=imag(yyy(n));
pe1=q(d1/sigma1)+q(d2/sigma1);
pe2=q(d3/sigma)+q(d4/sigma);
peideal(m)=peideal(m)+pe1;
pesystem(m)=pesystem(m)+pe2;
end
end
peideal=(1/2)*peideal./nx;
pesystem=(1/2)*pesystem./nx;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -