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

📄 berrayleighmatchedtimingerror.m

📁 这是一个关于完成QAM调制的Matlab示例程序
💻 M
字号:
function [ber] = BerRayleighMatchedTimingError(gammaB,pulseFilt,timingError,tSymbol)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% function [ber] = BerRayleighMatchedTimingError(gammaB,pulseFilt,timingError,tSymbol,delay)
%
% This is just a utility function to compute the expected BER
% of a signal in Rayleigh with matched filter timing error in the receiver.
%
% pulseFilt = pulse shaping filter and matched filter coefficients.  Assumed symmetrical
% gammaB = Eb/N0
% timingError = matched filter sampling error, given in the number of samples
% tSymbol = number of samples per symbol
% delay = group delay of the pulse filter/matched filter.  Assumed identical for both filters.
%         Given in the number of symbols of delay, not number of samples.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



% Compute alpha, the signal power attenuation due to timing mismatch
alpha = (pulseFilt((1+timingError):length(pulseFilt))*pulseFilt(1:(length(pulseFilt)-timingError))')^2;

% Compute ISI

% Compute ISI
isi1 = ((pulseFilt(1:(length(pulseFilt) + timingError - tSymbol))*...
        pulseFilt((1 + tSymbol - timingError):length(pulseFilt))'));

% Compute new ber, based on numeric evaluation of integrating Q-function over Rayleigh
ber = 0.25*(2-sqrt(((alpha+isi1)^2)*gammaB/(1+((alpha+isi1)^2)*gammaB)) ...   -sqrt(((alpha-isi1)^2)*gammaB/(1+((alpha-isi1)^2)*gammaB)));
return

⌨️ 快捷键说明

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