maintest22.m
来自「通信blast的matlab仿真程序 (希望大家多多上传哈)」· M 代码 · 共 55 行
M
55 行
clc;clear;
N=2;
M=2; %% M >= N
TESTS=3000;
SNRL=0;
DSNR=3;
SNRH=15;
k=1;
tic;
for snr=SNRL:DSNR:SNRH
noisePwr=1/(10^(snr/10));
err=0;
for test=1:TESTS
x = 0.707 * ( randsrc(N,1)+j*randsrc(N,1) );
H = 0.707 * ( randn(M,N)+j*randn(M,N) );
v = sqrt(noisePwr/2)* ( randn(M,1)+j*randn(M,1) );
%y = H * x *sqrt(1/N)+ v;
y = H * x + v;
dec_x = OptimalOrdering_Decoder(y,H); %%%%%%
%dec_x = ML_Detect(y,H);
for n=1:N
if(x(n) ~= dec_x(n))
err=err+1;
end;
end;
end; % for test
SER(k) = err / (TESTS*N);
disp(['SNR=' num2str(snr) 'dB; SER=' num2str(SER(k)) char(13)]);
k=k+1;
end;% for snr
toc;
snr=SNRL:DSNR:SNRH;
figure(1);
semilogy(snr,SER,'.-');
xlabel('SNR(dB)');
ylabel('SER');
grid on;
hold on;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?