I use this code for Rayleigh fading channel . What is the corresponding code for Rician and Nakagmi fading Channel .

2 Ansichten (letzte 30 Tage)
%----------------------Creating Rayleigh Channel--------------------------- Taps=4; % Number of Taps p1=0.5/2.3; % Power of Tap1 p2=0.9/2.3; % Power of Tap2 p3=0.7/2.3; % Power of Tap3 p4=0.2/2.3; gain1=sqrt(p1/2)*[randn(1,N) + j*randn(1,N)]; % Gain for Tap1 gain2=sqrt(p2/2)*[randn(1,N) + j*randn(1,N)]; % Gain for Tap2 gain3=sqrt(p3/2)*[randn(1,N) + j*randn(1,N)]; % Gain for Tap3 gain4=sqrt(p4/2)*[randn(1,N) + j*randn(1,N)]; % Gain for Tap4 x11=x(:); x12=reshape(x11,1,length(x11)) i=1:length(x12); delay1=1; for i=delay1+1:length(x12) % Producing one sample delay in Tap2 w.r.t. Tap1 x13(i)=x(i-delay1); end delay2=2; for i=delay2+1:length(x12) % Producing two sample delay in Tap2 w.r.t. Tap1 x14(i)=x(i-delay2); end delay3=3; for i=delay3+1:length(x12) % Producing three sample delay in Tap2 w.r.t. Tap1 x15(i)=x(i-delay3); end x1=reshape(x13,(n+3),length(x13)/(n+3)); x2=reshape(x14,(n+3),length(x14)/(n+3)); x3=reshape(x15,(n+3),length(x15)/(n+3)); ch1=repmat(gain1,(n+3),1); ch2=repmat(gain2,(n+3),1); ch3=repmat(gain3,(n+3),1); ch4=repmat(gain4,(n+3),1); data_channel=x.*ch1+x1.*ch2+x2.*ch3+x3.*ch4; % Passing data through channel

Antworten (1)

DONY DARMAWAN PUTRA
DONY DARMAWAN PUTRA am 3 Jul. 2021
Nakagami
hBS = sqrt(ell_BS) .* random(makedist('Nakagami', 'mu', m_BS , 'omega', 1), N, simReps) .* exp(1i*(-pi + (pi+pi)*rand(N, simReps)));
Rician
h=sqrt(K_AI/((1+K_AI))).*(randn(1,1)+j*randn(1,1));
g=sqrt(K_IU/((1+K_IU))).*(randn(1,1)+j*randn(1,1));
eta=h.*g;
for detail you can read https://ieeexplore.ieee.org/document/9129778

Kategorien

Mehr zu Propagation and Channel Models finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by