matlab中信号叠加高斯噪声代码

%% get train data
% bpsk
disp('bpsk begin');
signal_data = zeros(NTrain, L);
mod = comm.BPSKModulator();
x = constellation(mod);  %返回复数列向量
xN = length(x);   %xN=2 返回数组长度
for row = 1:NTrain  %rand 生成一个(0,1)随机分布的数
    EsNo = (EsNoHigh - EsNoLow)*rand + EsNoLow;
    P = 10^(EsNo/10); %dB比转换成功率比
    for col = 1:L
        s = x(unidrnd(xN)); %unidend(...)随机生成一个         signal_data(row, col) = sqrt(P)*s + sqrt(1/2)*(randn+j*randn); %+后面是高斯白噪声
    end
end

关于为什么signal_data(row, col) = sqrt(P)*s + sqrt(1/2)*(randn+j*randn);matlab中信号叠加高斯噪声代码_第1张图片

 

你可能感兴趣的:(matlab,matlab)