exponenta event banner

коммуникация. RicianChannel

Фильтрация входного сигнала по многолучевому радиоканалу замирания

Описание

comm.RicianChannel Система object™ фильтрует входной сигнал по многолучевому каналу замирания Rician. Дополнительные сведения об обработке модели замирания см. в разделе Методология моделирования многолучевых каналов замирания.

Для фильтрации входного сигнала с использованием многолучевого канала Rician с замиранием:

  1. Создать comm.RicianChannel и задайте его свойства.

  2. Вызовите объект с аргументами, как если бы это была функция.

Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.

Создание

Описание

ricianlchan = comm.RicianChannel создает частотно-селективный или частотно-плоский многолучевой канал Rician с замиранием System. Этот объект фильтрует реальный или комплексный входной сигнал по многолучевому каналу для получения сигнала с нарушением канала.

пример

ricianlchan = comm.RicianChannel(Name,Value) задает свойства, используя один или несколько аргументов пары имя-значение. Заключите каждое имя свойства в кавычки. Например, comm.RicianChannel('SampleRate',2) устанавливает частоту дискретизации входного сигнала равной 2.

Свойства

развернуть все

Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.

Если свойство настраивается, его значение можно изменить в любое время.

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

Частота дискретизации входного сигнала в Гц, заданная как положительный скаляр.

Типы данных: double

Дискретная задержка пути в секундах, заданная как скалярный вектор или вектор строки.

  • Когда PathDelays - скаляр, канал плоский по частоте.

  • Когда PathDelays - вектор, канал является частотно-избирательным.

Типы данных: double

Средние коэффициенты усиления дискретных путей в децибелах, заданные как скалярный вектор или вектор строки. AveragePathGains должен иметь тот же размер, что и PathDelays собственность.

Типы данных: double

Нормализовать среднее усиление пути до 0 дБ, указанное как логическое 1 (true) или 0 (false).

  • Когда NormalizePathGains является trueпроцессы замирания нормализуются таким образом, что общая мощность усиления тракта, усредненная во времени, равна 0 дБ.

  • Когда NormalizePathGains является falseобщая мощность усиления тракта не нормируется.

Типы данных: logical

Rician K-фактор, определяемый как положительный скалярный или строковый вектор неотрицательных значений. Вектор должен иметь ту же длину, что и PathDelays значение свойства.

  • Когда KFactor - скаляр, первый дискретный путь - процесс замирания Rician с коэффициентом K Rician KFactor. Все остальные дискретные пути являются независимыми процессами релеевского замирания.

  • Когда KFactor - вектор строки, дискретный путь, соответствующий положительному элементу KFactor вектор представляет собой процесс замирания Rician с коэффициентом K Rician, заданным этим элементом. Дискретный путь, соответствующий любым нулевым элементам KFactor векторы - релеевские процессы замирания. По крайней мере одно значение элемента должно быть ненулевым.

Типы данных: double

Доплеровский сдвиг составляющих линии визирования многолучевого канала Rician с замиранием, задаваемый как скалярный вектор или вектор строки. Единицы измерения в герцах. DirectPathDopplerShift свойство должно иметь тот же размер, что и KFactor собственность.

  • Когда DirectPathDopplerShift - скаляр, значение представляет собой доплеровский сдвиг составляющей линии визирования первого дискретного пути. Этот путь показывает процесс замирания Rician.

  • Когда DirectPathDopplerShift - вектор строки, дискретный путь, соответствующий положительному элементу KFactor вектор - процесс замирания Rician. Соответствующий элемент DirectPathDopplerShift определяет доплеровское смещение компонента линии визирования этого дискретного тракта.

Типы данных: double

Начальная фаза компонентов линии визирования многолучевого канала Rician с замиранием, заданная как скалярный вектор или вектор строки. Единицы находятся в радианах. DirectPathInitialPhase свойство должно иметь тот же размер, что и KFactor собственность.

  • Когда DirectPathInitialPhase - скаляр, значение представляет начальную фазу компонента линии визирования первого дискретного пути. Этот путь показывает процесс замирания Rician.

  • Когда DirectPathInitialPhase - вектор строки, дискретный путь, соответствующий положительному элементу KFactor вектор - процесс замирания Rician. Соответствующий элемент DirectPathInitialPhase определяет начальную фазу компонента линии визирования этого дискретного пути.

Типы данных: double

Максимальный доплеровский сдвиг для всех трактов канала, заданный как неотрицательный скаляр. Единицы измерения в герцах.

Максимальный предел доплеровского сдвига применяется к каждому тракту канала. При установке для этого свойства значения 0канал остается статическим для всего входного сигнала. Вы можете использовать reset функция объекта для формирования новой реализации канала. MaximumDopplerShift значение свойства должно быть меньше, чем SampleRate/ 10/fc для каждого тракта. fc представляет коэффициент частоты отсечки тракта. Для большинства типов доплеровского спектра значение fc равно 1. Для гауссова и бигауссова типов доплеровского спектра fc зависит от полей структуры доплеровского спектра. Дополнительные сведения об определении fc см. в разделе Коэффициент частоты отсечения.

Типы данных: double

Форма доплеровского спектра для всех трактов канала, определяемая как структура доплеровского спектра или матрица 1-by-NP ячеек структур доплеровского спектра. Эти структуры доплеровского спектра должны быть выходами формы, возвращаемой из doppler функция. NP - количество дискретных путей задержки, то есть длина PathDelays собственность.

  • Когда DopplerSpectrum определяется единой структурой доплеровского спектра, все пути имеют одинаковый заданный доплеровский спектр.

  • Когда DopplerSpectrum определяется массивом ячеек структур доплеровского спектра, каждый тракт имеет спектр доплеровского спектра, заданный соответствующей структурой в массиве ячеек.

Опции для типа спектра определяются specType входные данные для doppler функция. Если установить FadingTechnique свойство для 'Sum of sinusoids', необходимо установить DopplerSpectrum кому doppler('Jakes').

Зависимости

Чтобы включить это свойство, установите значение MaximumDopplerShift положительное значение свойства. MaximumDopplerShift свойство определяет максимальное значение доплеровского сдвига, допустимое при задании доплеровского спектра.

Типы данных: struct | cell

Метод замирания модели канала, указанный как 'Filtered Gaussian noise' или 'Sum of sinusoids'.

Типы данных: char | string

Число синусоид, используемых для моделирования процесса замирания, указанное как положительное целое число.

Зависимости

Чтобы включить это свойство, установите значение FadingTechnique свойство для 'Sum of sinusoids'.

Типы данных: double

Источник для управления временем начала процесса замирания, указанный как 'Property' или 'Input port'.

  • Когда InitialTimeSource имеет значение 'Property', используйте InitialTime для установки начального временного смещения.

  • Когда InitialTimeSource имеет значение 'Input port', укажите время начала процесса замирания с помощью itime ввод в объект System. Входное значение может изменяться при последовательных вызовах объекта System.

Зависимости

Это свойство применяется, когда FadingTechnique свойство для 'Sum of sinusoids'.

Типы данных: string | char

Начальное смещение по времени в секундах для модели замирания, указанное как неотрицательный скаляр. InitialTime должно быть больше времени окончания последнего кадра. InitialTime округляется до ближайшей позиции выборки, если она не кратна 1/SampleRate.

Зависимости

Чтобы включить это свойство, установите значение FadingTechnique свойство для 'Sum of sinusoids' и InitialTimeSource свойство для 'Property'.

Типы данных: double

Источник потока случайных чисел, указанный как 'Global stream' или 'mt19937ar with seed'.

  • 'Global stream' - Текущий глобальный поток случайных чисел используется для создания обычно распределенных случайных чисел. В этом случае reset объектная функция сбрасывает только канальные фильтры.

  • 'mt19937ar with seed' - Алгоритм mt19937ar используется для создания нормально распределенных случайных чисел. В этом случае reset объектная функция сбрасывает канальные фильтры и повторно инициализирует поток случайных чисел до значения Seed собственность.

Типы данных: string | char

Начальное начальное число алгоритма генератора потока случайных чисел mt19937ar, определяемое как неотрицательное целое число. Когда reset вызывается функция объекта, поток случайных чисел mt19937ar повторно инициализируется в Seedзначение свойства.

Зависимости

Это свойство применяется при установке RandomStream свойство для 'mt19937ar with seed'.

Типы данных: double

Параметр для вывода коэффициентов усиления тракта, указанный как 0 (false) или 1 (true). Установить для этого свойства значение 1 (true) для вывода коэффициентов усиления тракта канала основного процесса замирания.

Типы данных: logical

Визуализация канала, указанная как 'Off', 'Impulse response', 'Frequency response', 'Impulse and frequency responses', или 'Doppler spectrum'. Дополнительные сведения см. в разделе Визуализация каналов.

Типы данных: string | char

Процент отображаемых образцов, указанный как '25%', '10%', '50%', или '100%'. Отображение меньшего количества образцов улучшает (уменьшает) скорость обновления дисплея за счет снижения визуализированной точности.

Зависимости

Чтобы включить это свойство, установите значение Visualization свойство для 'Impulse response', 'Frequency response', или 'Impulse and frequency responses'.

Типы данных: string | char

Путь для доплеровского дисплея, заданный как положительное целое число. Это свойство используется для выбора дискретного пути, используемого при построении графика доплеровского спектра. Указанный путь должен быть элементом {1, 2,..., NP}. В этом наборе NP - это количество дискретных путей задержки, то есть длина PathDelays значение свойства.

Зависимости

Чтобы включить это свойство, установите значение Visualization свойство для 'Doppler spectrum'.

Типы данных: double

Использование

Описание

y = rayleighchan(x) входной сигнал фильтров x через многолучевой канал Rician с замиранием и возвращает выходной сигнал в y.

[y,pathgains] = rayleighchan(x) возвращает коэффициенты усиления трактов канала основного многолучевого процесса замирания Rician в pathgains. Чтобы включить этот синтаксис, установите PathGainsOutputPort свойство имеет значение 1 (true).

___ = rayleighchan(x,itime) передает данные по многолучевому каналу Rician с замиранием, начиная с начального времени, указанного itime. Чтобы включить этот синтаксис, установите FadingTechnique свойство для 'Sum of sinusoids' и InitialTimeSource свойство для 'Input port'.

Входные аргументы

развернуть все

Входной сигнал, заданный как вектор NS-by-1, где NS - количество выборок.

Типы данных: single | double
Поддержка комплексного номера: Да

Начальное время в секундах, указанное как неотрицательный скаляр. itime ввод должен быть больше времени окончания последнего кадра. Когда itime не кратно 1/SampleRate, округляется до ближайшего положения образца.

Типы данных: single | double

Выходные аргументы

развернуть все

Выходной сигнал, возвращаемый в виде NS-by-1 вектора комплексных значений с той же точностью данных, что и входной сигнал x. NS - количество выборок.

Усиление пути, возвращаемое в виде массива NS-by-NP. NS - количество выборок. NP - количество дискретных путей задержки, то есть длина PathDelays значение свойства. pathgains содержит комплексные значения с той же точностью, что и входной сигнал x.

Функции объекта

Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:

release(obj)

развернуть все

infoХарактеристическая информация об объекте канала замирания
stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

В этом примере показано, как получить один и тот же многолучевой отклик канала с замиранием Rician с использованием двух различных методов генерации случайных чисел. Многолучевая система Rician fading channel System object™ включает в себя два способа генерации случайных чисел. Можно использовать текущий глобальный поток или алгоритм mt19937ar с указанным начальным числом. Взаимодействуя с глобальным потоком, объект System может создавать одинаковые выходные данные двух методов.

Создайте объект PSK-модулятора System для модуляции случайно сгенерированных данных.

pskModulator = comm.PSKModulator;
channelInput = pskModulator(randi([0 pskModulator.ModulationOrder-1],1024,1));

Создайте многолучевой объект Rician fading channel System, задающий метод генерации случайных чисел как алгоритм my19937ar и начальное число случайных чисел как 73.

ricianchan = comm.RicianChannel(...
    'SampleRate',1e6,...
    'PathDelays',[0.0 0.5 1.2]*1e-6,...
    'AveragePathGains',[0.1 0.5 0.2],...
    'KFactor',2.8,...
    'DirectPathDopplerShift',5.0,...
    'DirectPathInitialPhase',0.5,...
    'MaximumDopplerShift',50,...
    'DopplerSpectrum',doppler('Bell', 8),...
    'RandomStream','mt19937ar with seed', ...
    'Seed',73, ...
    'PathGainsOutputPort',true);

Фильтрация модулированных данных с помощью объекта многолучевого Rician fading channel System.

[RicianChanOut1, RicianPathGains1] = ricianchan(channelInput);

Задайте для объекта System использование глобального потока для генерации случайных чисел.

release(ricianchan);
ricianchan.RandomStream = 'Global stream';

Задайте для глобального потока то же начальное значение, которое было указано при создании объекта системы многолучевого канала Rician с замиранием.

rng(73)

Фильтрация модулированных данных с помощью объекта системы с многолучевым замиранием Rician.

[RicianChanOut2,RicianPathGains2] = ricianchan(channelInput);

Убедитесь, что выходные сигналы усиления канала и тракта одинаковы для каждого из двух методов.

isequal(RicianChanOut1,RicianChanOut2)
ans = logical
   1

isequal(RicianPathGains1,RicianPathGains2)
ans = logical
   1

В этом примере показано, как создать частотно-селективный многолучевой канал замирания Rician и отобразить его импульсные и частотные характеристики.

Установите частоту дискретизации 3,84 МГц. Определение задержек и усиления тракта с помощью конфигурации пешеходного B-канала ITU. Установите коэффициент Ricic K равным 10 и максимальный доплеровский сдвиг равным 50 Гц.

fs = 3.84e6; % Hz
pathDelays = [0 200 800 1200 2300 3700]*1e-9; % sec
avgPathGains = [0 -0.9 -4.9 -8 -7.8 -23.9]; % dB
fD = 50; % Hz

Создайте многолучевой объект Rician fading channel System с использованием ранее определенных свойств и для визуализации графиков импульсной характеристики и частотной характеристики.

ricianChan = comm.RicianChannel('SampleRate',fs, ...
    'PathDelays',pathDelays, ...
    'AveragePathGains',avgPathGains, ...
    'KFactor',10, ...
    'MaximumDopplerShift',fD, ...
    'Visualization','Impulse and frequency responses');

Генерируйте случайные двоичные данные и передайте их по многолучевому каналу замирания Rician. График импульсной характеристики позволяет идентифицировать отдельные пути и соответствующие им коэффициенты фильтра. График частотной характеристики показывает частотно-избирательный характер пешеходного B-канала ITU.

x = randi([0 1],1000,1);
y = ricianChan(x);

Figure Frequency Response contains an axes and other objects of type uiflowcontainer, uimenu, uitoolbar. The axes contains 2 objects of type text, line. This object represents Channel 1.

Figure Impulse Response contains an axes and other objects of type uiflowcontainer, uimenu, uitoolbar. The axes contains 3 objects of type stem, text. These objects represent Path Gain, Channel Filter Coefficient.

Пример показывает, как поддерживается состояние канала в случаях, когда данные передаются прерывисто. Создайте объект канала Rician и передайте через него данные с помощью метода sum-of-sinusoids.

Задайте свойства канала.

fs = 1000; % Sample rate (Hz)
pathDelays = [0 2.5e-3]; % Path delays (s)
pathPower = [0 -6]; % Path power (dB)
fD = 5; % Maximum Doppler shift (Hz)
ns = 1000; % Number of samples
nsdel = 100; % Number of samples for delayed paths

Определите общее время моделирования и три временных сегмента, для которых должны передаваться данные. В этом случае канал моделируется в течение 1 с частотой дискретизации 1000 Гц. Одна непрерывная последовательность данных из 1000 выборок передается в момент времени 0. Три пакета данных из 100 выборок передаются в моменты времени 0,1 с, 0,5 с и 0,8 с соответственно.

to0 = 0.0;
to1 = 0.1;
to2 = 0.5;
to3 = 0.8;
t0 = (to0:ns-1)/fs;      % Transmission 0
t1 = to1+(0:nsdel-1)/fs; % Transmission 1
t2 = to2+(0:nsdel-1)/fs; % Transmission 2
t3 = to3+(0:nsdel-1)/fs; % Transmission 3

Создание случайных двоичных данных, соответствующих ранее определенным временным интервалам.

d0 = randi([0 1],ns,1);
d1 = randi([0 1],nsdel,1);
d2 = randi([0 1],nsdel,1);
d3 = randi([0 1],nsdel,1);

Создайте частотно-плоский многолучевой объект Rician fading System, задающий метод затухания суммы синусоид. Чтобы результаты можно было повторить, укажите начальное значение. Использовать значение по умолчанию InitialTime установка свойства таким образом, что канал замирания будет моделироваться с момента времени 0. Включите выходной сигнал усиления тракта.

ricianchan1 = comm.RicianChannel('SampleRate',fs, ...
    'MaximumDopplerShift',5, ...
    'RandomStream','mt19937ar with seed', ...
    'Seed',17, ...
    'FadingTechnique','Sum of sinusoids', ...
    'PathGainsOutputPort',true);

Создайте клон объекта многолучевого Rician fading channel System. Установите источник для начального времени так, чтобы время смещения канала замирания можно было задать в качестве входного аргумента при использовании объекта System.

ricianchan2 = clone(ricianchan1);
ricianchan2.InitialTimeSource = 'Input port';

Передача случайных двоичных данных через первый объект системы с многолучевым замиранием Rician канала, ricianchan1. Данные передаются по всем 1000 отсчетам времени. Для этого примера необходим только комплексный коэффициент усиления тракта.

[~,pg0] = ricianchan1(d0);

Передача случайных данных через второй объект системы с многолучевым замиранием Rician канала, ricianchan2, где начальные временные смещения предоставляются в качестве входных аргументов.

[~,pg1] = ricianchan2(d1,to1);
[~,pg2] = ricianchan2(d2,to2);
[~,pg3] = ricianchan2(d3,to3);

Сравните количество выборок, обработанных двумя каналами с помощью info объектная функция. ricianchan1 объект обработал 1000 проб, в то время как ricianhan2 объект обработал только 300 выборок.

G = info(ricianchan1);
H = info(ricianchan2);
[G.NumSamplesProcessed H.NumSamplesProcessed]
ans = 1×2

        1000         300

Преобразуйте коэффициенты усиления тракта в децибелы.

pathGain0 = 20*log10(abs(pg0));
pathGain1 = 20*log10(abs(pg1));
pathGain2 = 20*log10(abs(pg2));
pathGain3 = 20*log10(abs(pg3));

Постройте график усиления пути для непрерывных и прерывистых случаев. Коэффициенты усиления для трех сегментов соответствуют коэффициенту усиления для непрерывного случая. Выравнивание этих двух элементов подчеркивает, что метод суммирования синусоид подходит для моделирования пакетированных данных, поскольку характеристики канала поддерживаются, даже когда данные не передаются.

plot(t0,pathGain0,'r--')
hold on
plot(t1,pathGain1,'b')
plot(t2,pathGain2,'b')
plot(t3,pathGain3,'b')
grid
xlabel('Time (sec)')
ylabel('Path Gain (dB)')
legend('Continuous','Discontinuous','location','nw')
title('Continuous and Discontinuous Transmission Path Gains')

Figure contains an axes. The axes with title Continuous and Discontinuous Transmission Path Gains contains 4 objects of type line. These objects represent Continuous, Discontinuous.

В примере показано, как использовать ChannelFilterCoefficients свойство, возвращенное info объектная функция comm.RicianChannel Системный объект для воспроизведения выхода многолучевого канала Rician с замиранием.

Создайте многолучевой объект Rician fading channel System, определяющий два пути и указывающий данные для прохождения по каналу.

ricianchan = comm.RicianChannel('SampleRate',1000,'PathDelays',[0 1e-3], ...
    'AveragePathGains',[0 -2],'PathGainsOutputPort',true)
ricianchan = 
  comm.RicianChannel with properties:

                SampleRate: 1000
                PathDelays: [0 1.0000e-03]
          AveragePathGains: [0 -2]
        NormalizePathGains: true
                   KFactor: 3
    DirectPathDopplerShift: 0
    DirectPathInitialPhase: 0
       MaximumDopplerShift: 1.0000e-03
           DopplerSpectrum: [1x1 struct]

  Show all properties

data = randi([0 1],600,1);

Передача данных через канал. Назначить ChannelFilterCoefficients значение свойства переменной coeff.

[chanout1,pg] = ricianchan(data);
chaninfo = info(ricianchan)
chaninfo = struct with fields:
           ChannelFilterDelay: 0
    ChannelFilterCoefficients: [2x2 double]
          NumSamplesProcessed: 600

coeff = chaninfo.ChannelFilterCoefficients;

Вычислите дробный задержанный входной сигнал в местах задержки тракта, сохраненных в coeff.

Np = length(ricianchan.PathDelays);
fracdelaydata = zeros(size(data,1),Np);
for ii = 1:Np
    fracdelaydata(:,ii) = filter(coeff(ii,:),1,data);
end

Примените выигрыши пути и подведите результаты для всех путей.

chanout2 = sum(pg .* fracdelaydata,2);

Сравните выходные данные объекта системы с многолучевым замиранием Rician канала с выходными данными, воспроизводимыми с использованием коэффициентов усиления тракта и ChannelFilterCoefficients свойство объекта System многолучевого канала Rician с замиранием.

isequal(chanout1,chanout2)
ans = logical
   1

Вычислите и постройте график эмпирического и теоретического CDF для канала Rician с одним путем.

Инициализируйте параметры и создайте объект System для канала Rician.

Ns = 1.92e6;
Rs = 1.92e6;
dopplerShift = 2000;
KFactor = -3;                  % dB
KFactorLin = 10.^(KFactor/10); % linear

chan = comm.RicianChannel( ...
    "SampleRate",Rs, ...
    "PathDelays",0, ...
    "KFactor",KFactorLin, ...
    "AveragePathGains",0, ...
    "MaximumDopplerShift",dopplerShift, ...
    "FadingTechnique","Sum of sinusoids", ...
    "PathGainsOutputPort",true);

Вычислите и постройте график эмпирического и теоретического CDF для канала Rician. Вычислите эмпирический CDF с помощью усиления пути.

% Empirical CDF plot
[~, g] = chan(ones(Ns,1));
ecdf(abs(g));
hold on;
% Theoretical CDF plot
r = 0:.1:3;
s = sqrt(KFactorLin)/sqrt(KFactorLin+1);
sigma = sqrt(1/2)/sqrt(KFactorLin+1);
exp_cdf_amplitude = cdf('Rician',r,s,sigma);
plot(r,exp_cdf_amplitude')   
legend('Emp','Theor')

Figure contains an axes. The axes contains 2 objects of type stair, line. These objects represent Emp, Theor.

Вычислите и постройте график эмпирического и теоретического PDF для канала Rician с одним путем.

Инициализируйте параметры и создайте объект System для канала Rician.

Ns = 1.92e6;
Rs = 1.92e6;
dopplerShift = 2000;
KFactor = -3;                  % dB
KFactorLin = 10.^(KFactor/10); % linear
sig = complex(randn(Ns,1),randn(Ns,1));

chan = comm.RicianChannel( ...
    "SampleRate",Rs, ...
    "PathDelays",0, ...
    "KFactor",KFactorLin, ...
    "AveragePathGains",0, ...
    "MaximumDopplerShift",dopplerShift, ...
    "FadingTechnique",'Sum of sinusoids', ...
    "PathGainsOutputPort",true);

Вычислите и постройте график эмпирического и теоретического PDF для канала Rician.

figure;
hold on;
% Empirical PDF plot
[~, gain] = chan(sig);
pd = fitdist(abs(gain),'Kernel','BandWidth',.01);
r = 0:.1:3;
y = pdf(pd,r);
plot(r,y)
% Theoretical PDF plot
s = sqrt(KFactorLin)/sqrt(KFactorLin+1);
sigma = sqrt(1/2)/sqrt(KFactorLin+1);
exp_pdf_amplitude = pdf('Rician',r,s,sigma);
plot(r,exp_pdf_amplitude')
legend('Empirical','Theoretical')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Empirical, Theoretical.

Подробнее

развернуть все

Ссылки

[1] Эштжес, Клод и Бруно Клеркс. Беспроводная связь MIMO: от распространения в реальном мире до разработки кода пространства-времени. 1-й ред. Бостон, Массачусетс: Эльсевье, 2007.

[2] Коррея, Луис М., и Европейское сотрудничество в области научно-технических исследований (Организация), ред. Мобильные широкополосные мультимедийные сети: методы, модели и инструменты для 4G. 1-я ед. Амстердама; Бостон: Elsevier/Академическая пресса, 2006.

[3] Кермоал, Дж. П., Л. Шумахер, К. И. Педерсен, П. Е. Могенсен, Ф. Фредериксен. «Стохастическая модель радиоканала MIMO с экспериментальной проверкой». IEEE Journal on Selected Areas in Communications 20, No. 6 (August 2002): 1211-26. https://doi.org/10.1109/JSAC.2002.801223.

[4] Иероним, Мишель К., Филипп Балабан и К. Сэм Шанмуган. Моделирование систем связи. Второе издание. Бостон, Массачусетс: Спрингер США, 2000.

[5] Патцольд, М., Чэн-Сян Ван и Б. Хогстад. «Два новых метода, основанных на сумме синусоид, для эффективного генерирования множественных некоррелированных волн релейного замирания». Транзакции IEEE по беспроводной связи 8, № 6 (июнь 2009 г.): 3122-31. https://doi.org/10.1109/TWC.2009.080769.

Расширенные возможности

.
Представлен в R2013b