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

📄 theory_ef.m

📁 alamouti 空频分组码---在时变信道下SFBC-OFDM
💻 M
字号:
%BER Error Floor in Theory
%hold on;
%clear;
function [T_BER_OFDM T_BER_JML T_BER_SML T_BER_ZF T_BER_DF T_BER_JML_new T_BER_SML_new T_BER_ZF_new T_BER_DF_new] = theory_ef(fm, d)

% parameters
%d = 1;                                             % Tao_rms/T
M = 12;                                             % Number of paths
N = 128;                                            % Number of subcarries
%fm = 1000;                                         % Maximum Doppler Spread
fs = 800000;                                        % Sampling Rate 1/T

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% Conventional Detection %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Sigma_H = Pf(0, 0)    -- Signal response correlation
%Sigma_H = (N + 2 * J(2:N) * (N-1:-1:1).')/N/N;
Sigma_H = Correlation (0, 0, 0, 0, d, M, N, fm, fs);

% Pf = Pf(0, 1)         -- Frequency domain correlation 
%Pf = ( (1-exp(-1/d))*(1-exp(-M/d)*exp(-sqrt(-1)*2*pi*M/N)) )/( (1-exp(-M/d))*(1-exp(-1/d)*exp(-sqrt(-1)*2*pi/N))); % * Sigma_H;
Pf = Correlation (0, 0, 1, 1, d, M, N, fm, fs)/Sigma_H;

% Sigma_C = 1 - Sigma_H -- Intercarrier Interference
Sigma_C = 1 - Sigma_H; % * (1 + abs(Pf^2))/2;
%Sigma_C = N*(N-1);
%for n = 1 : N-1
%    for l = 1 : N-1
%        Sigma_C = Sigma_C+ 2*(N-l)*J(l)*cos(2*pi*l*n/N);
%    end
%end
%Sigma_C = Sigma_C/N/N;

%%%%   BER in Theory   %%%%
Sigma_W = 2*Sigma_C;                                % ICI
Gama_a = 2*Sigma_H./Sigma_W;                        % Average Signal Noise Intercarrier Interference Ratio
Gama_a_SML = 2*Gama_a./(2+(1-abs(Pf^2))*Gama_a);

Temp = sqrt(Gama_a./(2+Gama_a));
Temp_SML = sqrt(Gama_a_SML./(2+Gama_a_SML));
% BER expression for 1Tx + 1Rx system
T_BER_OFDM = (1-sqrt(Gama_a./(1+Gama_a)))/2;
% BER expression for Zero Force detection
T_BER_ZF = (1-abs(Pf^2))*(1-Temp)/2 + abs(Pf^2)*(1-Temp).^2.*(2+Temp)/4;
% BER expression for Joint Maxima Likelihood detection
T_BER_JML = (1-Temp).^2.*(2+Temp)/4;
% BER expression for Simple Maxima Likelihood detection
T_BER_SML = (1-Temp_SML).^2.*(2+Temp_SML)/4;
% BER expression for Decision Feedback detection
T_BER_DF = (T_BER_ZF + T_BER_JML)/2;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%     New Detection     %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Sigma_H = Pf(0, 0) -- Signal response correlation
Sigma_H_new = real(Correlation (1, 0, 1, 0, d, M, N, fm, fs) + Sigma_H);

% Pf = Pf(0, 1)      -- Frequency domain correlation 
temp = Correlation (1, 0, 0, 1, d, M, N, fm, fs);
Pf_new = ( -temp + Pf * Sigma_H ) / Sigma_H_new;

% Sigma_C = 1 - Sigma_H -- Intercarrier Interference
Sigma_C_new = 1 - Sigma_H_new;% * (1 + abs(Pf_new^2))/2;

%%%%   BER in Theory     %%%%
Sigma_W_new = 2*Sigma_C_new;                                % ICI
Gama_a_new = 2*Sigma_H_new./Sigma_W_new;                    % Average Signal Noise Intercarrier Interference Ratio
Gama_a_new_SML = 2*Gama_a_new./(2+(1-abs(Pf_new^2))*Gama_a_new);

Temp = sqrt(Gama_a_new./(2+Gama_a_new));
Temp_SML = sqrt(Gama_a_new_SML./(2+Gama_a_new_SML));
% BER expression for Zero Force detection
T_BER_ZF_new = (1-abs(Pf_new^2))*(1-Temp)/2 + abs(Pf_new^2)*(1-Temp).^2.*(2+Temp)/4;
% BER expression for Joint Maxima Likelihood detection
T_BER_JML_new = (1-Temp).^2.*(2+Temp)/4;
% BER expression for Simple Maxima Likelihood detection
T_BER_SML_new = (1-Temp_SML).^2.*(2+Temp_SML)/4;
% BER expression for Decision Feedback detection
T_BER_DF_new = (T_BER_ZF_new + T_BER_JML_new)/2;

⌨️ 快捷键说明

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