discrete baseband channel wrt time SNR (in dB)
조회 수: 1 (최근 30일)
이전 댓글 표시
Digital and wireless communications
I am trying to determine what is the expected SNR (in dB) and the probability that the instantaneous SNR falls below 0dB for the problem statement shown below. I then need to compute the expectation E[SNR(h0)] of this random variable, and the probability that it is less than 0dB. I attached the Matlab code shown below I had used for the previous problem where I had to plot the cumulative distribution function (CDF) of the squared amplitude and phase of h0 from the samples I have collected (two distinct figures), and compared the resulting CDFs with the Rayleigh fading case. This code shown below also compares the CDF of |h0| ^2 with the exponential distribution and estimates the mean m from the sequence of |h0|^2. in order to do this. I can use some assistance in developing the code for the problem statement shown below. I am uncertain if I should create a new Matlab code for this new problem statement, or if I should just add the code for this new problem to my current Matlab code shown below. The physical model of the distance between the transmitter and receiver are shown below. The discrete baseband channel model complex channel filter tap at time m equation is also shown below. Thank you in advance!
% Physical parameters
c = 3e8; % speed of light
d = 1000; % distance between transmitter and receiver in meters
v = 72*1000/3600; % velocity of receiver in m/s
fc = 100e3;
W = 200E3;
% Baseband channel model parameters
lambda = c/fc;
x1 = 100;
x2 = 50;
%tau = d/c; % delay
% Time vector
%fs = 1e3; % sampling frequency
%t = 0:1/fs:1; % time vector from 0s to 1s
t_new = linspace(0,1,1001)
% Discrete channel filter tap at time m
h0 = zeros(1,length(t_new));
for m = 1:length(t_new)
% Calculate the distance traveled by the RX at time m
dist = v * (t_new(m));
% Calculate the complex gains of the multipath components
a0 = lambda/(4*pi*(d + dist));
a1 = -lambda/(4*pi*(d + dist + 2*x1));
x3 = sqrt(((d + dist)/(2)).^2 + (200)^2);
x4 = sqrt(((d + dist)/(2)).^2 + (200)^2);
a2 = -lambda/(4*pi*(x3+x4));
a3 = -lambda/(4*pi*(d + dist + 2*x2));
x5 = sqrt(((d + dist)/(2)).^2 + (100)^2);
x6 = sqrt(((d + dist)/(2)).^2 + (100)^2);
a4 = -lambda/(4*pi*(x5+x6));
a = [a0 a1 a2 a3 a4];
% Calculate the delays of the multipath components
tau0 = d + dist/c;
tau1 = d + dist + 2*x1/c;
tau2 = (x3 + x4)/c;
tau3 = d + dist + 2*x2/c;
tau4 = (x5 + x6)/c;
tau = [tau0 tau1 tau2 tau3 tau4];
a = a.*exp(-1j*2*pi*v*t_new(m)*tau)/W;
h0(m) = sum(a.*sinc(-t_new(m)*tau*W));
end
% Plot
figure;
plot(t_new, abs(h0));
xlabel('Time (s)');
ylabel('|h_0|');
title('Discrete Baseband Channel Model |h_0| vs Time');
figure
histogram(abs(h0).^2,100,'Normalization', 'cdf')
hold on
m = mean(abs(h0).^2)
x = linspace(0,100,100)*1e-12;
Ce = 1 - exp(-x/m);
plot(x,Ce,'*-')
hold off
figure
histogram(angle(h0),100,'Normalization', 'cdf')
댓글 수: 0
채택된 답변
Ganapathi Subramanian
2023년 4월 26일
편집: Ganapathi Subramanian
2023년 4월 26일
Hi Jose,
It is my understanding that you are trying to find expected SNR and probability of instantaneous SNR below 0dB for a multipath channel.
Please refer to the below documentation regarding how to model a multipath fading channel.
Use the computed path gains and path delay of multipath components in the code you have attached to the above implementation of multipath fading channel. Based on received signal strength of the modelled multipath channel, calculate Signal to Noise Ratio(SNR).
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Applications에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!