Matlab Toolbox - 5G/NR

 

 

 

 

NR Synchronization in CDL Channel

 

 

NOTE :  It is required to have Matlab 5G Toolbox  to run this script. Matlab Version that I used for this page is 2019a v9.6, 5G Toolbox v1.1

 

I used the tutorial linked here almost as it is except a little bit of modifiation except a little bit of change in plotting part. So I would not put my own matlab code here.

 

 

Example 01 : CDL-A, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

Example 02 : CDL-A, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 30.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 30.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 03 : CDL-A, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

Example 04 : CDL-A, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 10.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 10.0e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 05 : CDL-A, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30.0e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 06 : CDL-A, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30.0e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 07 : CDL-A, Antenna = (8,8,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 8;                                                % M:  # of rows in antenna array

N                               = 8;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-A');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30.0e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 08 : CDL-B, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 09 : CDL-B, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 30.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 30.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0; %30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 10 : CDL-B, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 11 : CDL-B, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 10.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 10e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 12 : CDL-B, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 13 : CDL-B, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 14 : CDL-B, Antenna = (8,8,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 8;                                                % M:  # of rows in antenna array

N                               = 8;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-B');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 15 : CDL-C, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 16 : CDL-C, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 30.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 30.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 17 : CDL-C, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 18 : CDL-C, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 10.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 10e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 19 : CDL-C, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 20 : CDL-C, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 21 : CDL-C, Antenna = (8,8,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 8;                                                % M:  # of rows in antenna array

N                               = 8;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-C');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 22 : CDL-D, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 23 : CDL-D, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 30.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 30.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 24 : CDL-D, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 25 : CDL-D, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 10.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 10e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 26 : CDL-D, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 27 : CDL-D, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

Example 28 : CDL-D, Antenna = (8,8,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 8;                                                % M:  # of rows in antenna array

N                               = 8;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-D');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 29 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 30 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 30.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 30.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 31 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 0.0

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E);

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 0.0;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 32 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 10.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 10e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 33 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 0.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 34 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 35 : CDL-E, Antenna = (8,8,2,1,1), fc = 4e9, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 300.0;

fc = 4e9;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 36 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9 * 2, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9 * 2;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;

 

 

 

 

 

 

Example 37 : CDL-E, Antenna = (1,1,2,1,1), fc = 4e9 * 5, velocity = 300.0, DelaySpread = 30.0e-9

M                               = 1;                                                % M:  # of rows in antenna array

N                               = 1;                                                % N:  # of columns in antenna array

P                               = 2;                                                % P:  # of polarizations (1 or 2)

Mg                              = 1;                                               % Mg: # of row array panels

Ng                              = 1;                                               % Ng: # of column array panels

 

ntxants = (P *(M * N)) * Mg * Ng;

nrxants = 2;

 

velocity = 0.0;

fc = 4e9 * 5;

c = physconst('lightspeed')

fd = (velocity*1000/3600)/c*fc;

 

channel = nrCDLChannel('DelayProfile', 'CDL-E');

channel.Seed = 24;

channel.CarrierFrequency         = fc;                                     % Carrier frequency

channel.MaximumDopplerShift      = fd;                                   % Doppler frequency

channel.DelaySpread = 30e-9;

channel.ChannelFiltering = true;

channel.TransmitAntennaArray.Size= [M,N,P,Mg,Ng];

 

% Configure SNR for AWGN

SNRdB = 50;