⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 watterson.m

📁 经典的短波信道模拟程序——wattson模型
💻 M
字号:
function r=watterson(s,fs,fm,delay,A,fd,phai,SNR,inter)
% s:input signal
% M:multipath number   A:gain factor  fs:sample rate
% fm:frequency spread  delay:time delay (ms) fd:frequency shift  phai:initial phasy
%     rms1=sqrt(mean((abs(fac1)).^2));rms2=sqrt(mean((abs(fac2)).^2));
%     fac1 = fac1./rms1;fac2 = fac2./rms2;
%     fac = [fac1;fac2];
    Ns = length(s);
    M = length(A);
    s = hilbert(s);
    n_delay = ceil(delay*10^-3.*fs);
    r = zeros(1,Ns+max(n_delay));                                       %%.*exp(j*(2*pi*fd(m).*[1:Ns]/fs)+phai(m))%%   % reylei(s,fm,fs,Ns)rayleighfactor(s,fm(m),fs,Ns)
    for m = 1:M
        r = r+[zeros(1,n_delay(m)),reylei(s,fm(m),fs,Ns,inter).*A(m),zeros(1,max(n_delay)-n_delay(m))];
    end
    r = real(r);% ./sqrt(sum(A.^2))
    r = r./sqrt(spower(r));
    r = awgn(r,SNR,'measured');
    r = r-mean(r);
    r = r/sqrt(spower(r));                                                 % the power normalize

    % r = r/sqrt(spower(r));
    % r=awgn(r,SNR);
    % r = real(r);
    % power_r = spower(r);
    % snr_ln = 10^(SNR/10);
    % noise_std = sqrt(power_r/(2*snr_ln));
    % r = r+noise_std*randn(1,length(r));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -