• 大小: 2KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-28
  • 语言: Matlab
  • 标签: 游戏  

资源简介

matlab开发-自适应调制fdmltegeneralcode。自适应调制

资源截图

代码片段和文件信息

clc;
clear all;
close all;
%assigning the variables
N = 1536;
bw = 15*10^6;
T = 1/bw;
SNR = 10:1:30;
BER_tar = 10^(-3);
% finding the target snr
M=[2 4 16 64];
for i=1:length(M)
    if M(i)==2
        SNR_tar(i)=((M(i)-1)*log(.5*10^(-3)))/(-1.5);
    else
        SNR_tar(i)=((M(i)-1)*log(5*10^(-3)))/(-1.5);
    end
end

%Indoor delay
in_delay = [0 50 110 170 290 310];
N_tap = ceil(max(in_delay)*(10^(-9))/T);
c_in = zeros(1N_tap+1);
c_tap = ceil(in_delay./50)+1;
inPwr_dB = [0 -3 -10 -18 -26 -32];%% power in dB
inPwr = 10.^(inPwr_dB/10);%% converting to linear scale
c_r = abs(((inPwr/2).*randn(1length(inPwr)))+((inPwr/2).*randn(1length(inPwr)))*1i);

for k=1:length(c_tap)
    c_in(c_tap(k))=c_r(k);
end
hf = fft(c_in1536);

for s=1:length(SNR)
    recSNR = abs(hf.*SNR(s));
    for i=1:length(recSNR)
        if recSNR(i) < SNR_tar(1)
            b(i) = 1;
        elseif ((recSNR(i) > SNR_tar(1))&&(recSNR(i) < SNR_tar(2)))
            b(i) = 2;
        elseif ((recSNR(i) > SNR_tar(2))&&(recSNR(i) < SNR_tar(3)))
            b(i) = 4;
        else
            b(i) = 8;
        end
    end
    spec_indoor(s) = mean(b);
 end


 % Finding the multipath channel response
out_delay = [0 10 90 135 230 275 310 420 630 635 745 815 830 1430 1790 2075];
N_tap = ceil(max(out_delay)*(10^(-9))/T);
c_out = zeros(1N_tap+1);
c_tap = ceil(out_delay./50)+1;
outPwr_dB = [-2.6 -8.5 -14.8 -17.5 -19.2 -18.8 -14.9 -14.9 -22.1 -10.3 -22.2 -19.2 -16 -22.9 -20.3 -27.4];
outPwr = 10.^(outPwr_dB/10);
c_r = abs(((outPwr/2).*randn(1length(outPwr)))+((outPwr/2).*randn(1length(outPwr)))*1i);

for k=1:length(c_tap)
    c_out(c_tap(k))=c_r(k);
end

hf = fft(c_out1536);

for s=1:length(SNR)
    recSNR = abs(hf.*SNR(s));
    for i=1:length(recSNR)
        if recSNR(i) < SNR_tar(1)
            b(i) = 1;
        elseif ((recSNR(i) > SNR_tar(1))&&(recSNR(i) < SNR_tar(2)))
            b(i) = 2;
        elseif ((recSNR(i) > SNR_tar(2))&&(recSNR(i) < SNR_tar(3)))
            b(i) = 4;
        else
            b(i) = 8;
        end
    end
    spec_outdoor(s) = mean(b);
end

plot(SNR spec_indoor‘r‘);
hold on;
plot(SNR spec_outdoor‘b‘);
grid on;
title(‘Adaptive Modulation‘);
xlabel(‘SNR (db)‘);
ylabel(‘Spectral efficiency in bits/Hz‘);
legend(‘Indoor‘‘Outdoor‘);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        2353  2015-05-14 03:04  adaptive_modulation.m
     文件        1533  2015-05-14 03:04  license.txt

评论

共有 条评论