How to divide the value of different matrix dimensions

4 Ansichten (letzte 30 Tage)
rayna kumari
rayna kumari am 16 Apr. 2019
Bearbeitet: rayna kumari am 16 Apr. 2019
i am transmitting data in Rayleigh channel for one receiving antenna i.e Nr = 1; so, earlier my code is running fine but i want to increase the no. of receiving antenna i.e for Nr =2. but when i am doing this the value of H is earlier is of dimension (1x1 double complex) and received signal is (1x390) complex double. For nullify the effect of channel fading i have divided the received signal with H. . But for Nr =2, the dimension of channel parameter becomes 2x1 double complex i.e (H =[0.916914643137897 + 0.609000311025438i} ; 0.153860641195036 - 0.516117945123273i] and received signal becomes to 2 x 390 double complex. Now when i am dividing the signal with H, i am getting error.As the matrix dimensions mismatch. . i dont understand how to do it.
% Received Signal = Faded Signal + AWGN Noise.
r = faded_r + AWGN;
r =r./H

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 16 Apr. 2019
You appear to be using R2016a or earlier. In R2016b or later, dividing a 2 x 390 by a 2 x 1 is valid.
In R2016a and earlier, use bsxfun:
bsxfun(@divide, signal, H)
  2 Kommentare
rayna kumari
rayna kumari am 16 Apr. 2019
Bearbeitet: rayna kumari am 16 Apr. 2019
Yes, i am using R2015a. It is showing me this error.
bsxfun Undefined function 'divide' for input arguments of type 'double'.
Walter Roberson
Walter Roberson am 16 Apr. 2019
Sorry, should be @rdivide not @divide

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

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