Фильтрация входного сигнала по многолучевому радиоканалу замирания
comm.RicianChannel Система object™ фильтрует входной сигнал по многолучевому каналу замирания Rician. Дополнительные сведения об обработке модели замирания см. в разделе Методология моделирования многолучевых каналов замирания.
Для фильтрации входного сигнала с использованием многолучевого канала Rician с замиранием:
Создать comm.RicianChannel и задайте его свойства.
Вызовите объект с аргументами, как если бы это была функция.
Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.
создает частотно-селективный или частотно-плоский многолучевой канал Rician с замиранием System. Этот объект фильтрует реальный или комплексный входной сигнал по многолучевому каналу для получения сигнала с нарушением канала.ricianlchan = comm.RicianChannel
задает свойства, используя один или несколько аргументов пары имя-значение. Заключите каждое имя свойства в кавычки. Например, ricianlchan = comm.RicianChannel(Name,Value)comm.RicianChannel(' устанавливает частоту дискретизации входного сигнала равной 2.SampleRate',2)
Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.
Если свойство настраивается, его значение можно изменить в любое время.
Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.
SampleRate - Частота дискретизации входного сигнала1 (по умолчанию) | положительный скалярЧастота дискретизации входного сигнала в Гц, заданная как положительный скаляр.
Типы данных: double
PathDelays - Задержка дискретного тракта0 (по умолчанию) | скаляр | вектор строкиДискретная задержка пути в секундах, заданная как скалярный вектор или вектор строки.
Когда PathDelays - скаляр, канал плоский по частоте.
Когда PathDelays - вектор, канал является частотно-избирательным.
Типы данных: double
AveragePathGains - Среднее значение дискретных трактов0 (по умолчанию) | скаляр | вектор строкиСредние коэффициенты усиления дискретных путей в децибелах, заданные как скалярный вектор или вектор строки. AveragePathGains должен иметь тот же размер, что и PathDelays собственность.
Типы данных: double
NormalizePathGains - Нормализация среднего коэффициента усиления пути до 0 дБtrue или 1 (по умолчанию) | false или 0Нормализовать среднее усиление пути до 0 дБ, указанное как логическое 1 (true) или 0 (false).
Когда NormalizePathGains является trueпроцессы замирания нормализуются таким образом, что общая мощность усиления тракта, усредненная во времени, равна 0 дБ.
Когда NormalizePathGains является falseобщая мощность усиления тракта не нормируется.
Типы данных: logical
KFactor - Ricic K-фактор3 (по умолчанию) | положительный скаляр | вектор строки неотрицательных значенийRician K-фактор, определяемый как положительный скалярный или строковый вектор неотрицательных значений. Вектор должен иметь ту же длину, что и PathDelays значение свойства.
Когда KFactor - скаляр, первый дискретный путь - процесс замирания Rician с коэффициентом K Rician KFactor. Все остальные дискретные пути являются независимыми процессами релеевского замирания.
Когда KFactor - вектор строки, дискретный путь, соответствующий положительному элементу KFactor вектор представляет собой процесс замирания Rician с коэффициентом K Rician, заданным этим элементом. Дискретный путь, соответствующий любым нулевым элементам KFactor векторы - релеевские процессы замирания. По крайней мере одно значение элемента должно быть ненулевым.
Типы данных: double
DirectPathDopplerShift - доплеровский сдвиг0 (по умолчанию) | скаляр | вектор строкиДоплеровский сдвиг составляющих линии визирования многолучевого канала Rician с замиранием, задаваемый как скалярный вектор или вектор строки. Единицы измерения в герцах. DirectPathDopplerShift свойство должно иметь тот же размер, что и KFactor собственность.
Когда DirectPathDopplerShift - скаляр, значение представляет собой доплеровский сдвиг составляющей линии визирования первого дискретного пути. Этот путь показывает процесс замирания Rician.
Когда DirectPathDopplerShift - вектор строки, дискретный путь, соответствующий положительному элементу KFactor вектор - процесс замирания Rician. Соответствующий элемент DirectPathDopplerShift определяет доплеровское смещение компонента линии визирования этого дискретного тракта.
Типы данных: double
DirectPathInitialPhase - Начальная фаза0 (по умолчанию) | скаляр | вектор строкиНачальная фаза компонентов линии визирования многолучевого канала Rician с замиранием, заданная как скалярный вектор или вектор строки. Единицы находятся в радианах. DirectPathInitialPhase свойство должно иметь тот же размер, что и KFactor собственность.
Когда DirectPathInitialPhase - скаляр, значение представляет начальную фазу компонента линии визирования первого дискретного пути. Этот путь показывает процесс замирания Rician.
Когда DirectPathInitialPhase - вектор строки, дискретный путь, соответствующий положительному элементу KFactor вектор - процесс замирания Rician. Соответствующий элемент DirectPathInitialPhase определяет начальную фазу компонента линии визирования этого дискретного пути.
Типы данных: double
MaximumDopplerShift - Максимальный доплеровский сдвиг для всех трактов канала0.001 (по умолчанию) | неотрицательный скалярМаксимальный доплеровский сдвиг для всех трактов канала, заданный как неотрицательный скаляр. Единицы измерения в герцах.
Максимальный предел доплеровского сдвига применяется к каждому тракту канала. При установке для этого свойства значения 0канал остается статическим для всего входного сигнала. Вы можете использовать reset функция объекта для формирования новой реализации канала. MaximumDopplerShift значение свойства должно быть меньше, чем SampleRate/ 10/fc для каждого тракта. fc представляет коэффициент частоты отсечки тракта. Для большинства типов доплеровского спектра значение fc равно 1. Для гауссова и бигауссова типов доплеровского спектра fc зависит от полей структуры доплеровского спектра. Дополнительные сведения об определении fc см. в разделе Коэффициент частоты отсечения.
Типы данных: double
DopplerSpectrum - Форма доплеровского спектра для всех трактов каналаdoppler('Jakes') (дефолт) | доплеровская структура спектра | 1 NP множеством клетки доплеровских структур спектраФорма доплеровского спектра для всех трактов канала, определяемая как структура доплеровского спектра или матрица 1-by-NP ячеек структур доплеровского спектра. Эти структуры доплеровского спектра должны быть выходами формы, возвращаемой из doppler функция. NP - количество дискретных путей задержки, то есть длина PathDelays собственность.
Когда DopplerSpectrum определяется единой структурой доплеровского спектра, все пути имеют одинаковый заданный доплеровский спектр.
Когда DopplerSpectrum определяется массивом ячеек структур доплеровского спектра, каждый тракт имеет спектр доплеровского спектра, заданный соответствующей структурой в массиве ячеек.
Опции для типа спектра определяются specType входные данные для doppler функция. Если установить FadingTechnique свойство для 'Sum of sinusoids', необходимо установить DopplerSpectrum кому doppler('Jakes').
Чтобы включить это свойство, установите значение MaximumDopplerShift положительное значение свойства. MaximumDopplerShift свойство определяет максимальное значение доплеровского сдвига, допустимое при задании доплеровского спектра.
Типы данных: struct | cell
FadingTechnique - Метод замирания модели канала'Filtered Gaussian noise' (по умолчанию) | 'Sum of sinusoids'Метод замирания модели канала, указанный как 'Filtered Gaussian noise' или 'Sum of sinusoids'.
Типы данных: char | string
NumSinusoids - Количество использованных синусоид48 (по умолчанию) | положительное целое числоЧисло синусоид, используемых для моделирования процесса замирания, указанное как положительное целое число.
Чтобы включить это свойство, установите значение FadingTechnique свойство для 'Sum of sinusoids'.
Типы данных: double
InitialTimeSource - Источник для управления временем начала процесса замирания'Property' (по умолчанию) | 'Input port'Источник для управления временем начала процесса замирания, указанный как 'Property' или 'Input port'.
Когда InitialTimeSource имеет значение 'Property', используйте InitialTime для установки начального временного смещения.
Когда InitialTimeSource имеет значение 'Input port', укажите время начала процесса замирания с помощью itime ввод в объект System. Входное значение может изменяться при последовательных вызовах объекта System.
Это свойство применяется, когда FadingTechnique свойство для 'Sum of sinusoids'.
Типы данных: string | char
InitialTime - Начальный сдвиг по времени0 (по умолчанию) | неотрицательный скалярНачальное смещение по времени в секундах для модели замирания, указанное как неотрицательный скаляр. InitialTime должно быть больше времени окончания последнего кадра. InitialTime округляется до ближайшей позиции выборки, если она не кратна 1/SampleRate.
Чтобы включить это свойство, установите значение FadingTechnique свойство для 'Sum of sinusoids' и InitialTimeSource свойство для 'Property'.
Типы данных: double
RandomStream - Источник потока случайных чисел'Global stream' (по умолчанию) | 'mt19937ar with seed'Источник потока случайных чисел, указанный как 'Global stream' или 'mt19937ar with seed'.
'Global stream' - Текущий глобальный поток случайных чисел используется для создания обычно распределенных случайных чисел. В этом случае reset объектная функция сбрасывает только канальные фильтры.
'mt19937ar with seed' - Алгоритм mt19937ar используется для создания нормально распределенных случайных чисел. В этом случае reset объектная функция сбрасывает канальные фильтры и повторно инициализирует поток случайных чисел до значения Seed собственность.
Типы данных: string | char
Seed - Начальное начальное число потока случайных чисел mt19937ar73 (по умолчанию) | неотрицательное целое числоНачальное начальное число алгоритма генератора потока случайных чисел mt19937ar, определяемое как неотрицательное целое число. Когда reset вызывается функция объекта, поток случайных чисел mt19937ar повторно инициализируется в Seedзначение свойства.
Это свойство применяется при установке RandomStream свойство для 'mt19937ar with seed'.
Типы данных: double
PathGainsOutputPort - Возможность вывода коэффициентов усиления трактаfalse или 0 (по умолчанию) | true или 1Параметр для вывода коэффициентов усиления тракта, указанный как 0 (false) или 1 (true). Установить для этого свойства значение 1 (true) для вывода коэффициентов усиления тракта канала основного процесса замирания.
Типы данных: logical
Visualization - Визуализация каналов'Off' (по умолчанию) | 'Impulse response' | 'Frequency response' | 'Impulse and frequency responses' | 'Doppler spectrum'Визуализация канала, указанная как 'Off', 'Impulse response', 'Frequency response', 'Impulse and frequency responses', или 'Doppler spectrum'. Дополнительные сведения см. в разделе Визуализация каналов.
Типы данных: string | char
SamplesToDisplay - Процент отображаемых образцов'25%' (по умолчанию) | '10%' | '50%' | '100%'Процент отображаемых образцов, указанный как '25%', '10%', '50%', или '100%'. Отображение меньшего количества образцов улучшает (уменьшает) скорость обновления дисплея за счет снижения визуализированной точности.
Чтобы включить это свойство, установите значение Visualization свойство для 'Impulse response', 'Frequency response', или 'Impulse and frequency responses'.
Типы данных: string | char
PathsForDopplerDisplay - Путь для доплеровского дисплея1 (по умолчанию) | положительное целое число Путь для доплеровского дисплея, заданный как положительное целое число. Это свойство используется для выбора дискретного пути, используемого при построении графика доплеровского спектра. Указанный путь должен быть элементом {1, 2,..., NP}. В этом наборе NP - это количество дискретных путей задержки, то есть длина PathDelays значение свойства.
Чтобы включить это свойство, установите значение Visualization свойство для 'Doppler spectrum'.
Типы данных: double
x - Входной сигналВходной сигнал, заданный как вектор NS-by-1, где NS - количество выборок.
Типы данных: single | double
Поддержка комплексного номера: Да
itime - Начальное время0 | неотрицательный скалярНачальное время в секундах, указанное как неотрицательный скаляр. itime ввод должен быть больше времени окончания последнего кадра. Когда itime не кратно 1/SampleRate, округляется до ближайшего положения образца.
Типы данных: single | double
y - Выходной сигналВыходной сигнал, возвращаемый в виде NS-by-1 вектора комплексных значений с той же точностью данных, что и входной сигнал x. NS - количество выборок.
pathgains - Выигрыши по трактуУсиление пути, возвращаемое в виде массива NS-by-NP. NS - количество выборок. NP - количество дискретных путей задержки, то есть длина PathDelays значение свойства. pathgains содержит комплексные значения с той же точностью, что и входной сигнал x.
Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:
release(obj)
comm.RicianChannelinfo | Характеристическая информация об объекте канала замирания |
В этом примере показано, как получить один и тот же многолучевой отклик канала с замиранием 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);


Пример показывает, как поддерживается состояние канала в случаях, когда данные передаются прерывисто. Создайте объект канала 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')

В примере показано, как использовать 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')

В этом примере используются:
Вычислите и постройте график эмпирического и теоретического 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')

Для различных типов доплеровского спектра определяют коэффициент частоты отсечки fc.
Для любого типа доплеровского спектра, отличного от гауссова и бигауссова, fc равно 1.
Для doppler('Gaussian') тип спектра, fc равно NormalizedStandardDeviation2log2.
Для doppler('BiGaussian') тип спектра:
Если PowerGains(1) и NormalizedCenterFrequencies(2) значения полей оба 0, то fc равно NormalizedStandardDeviation(1)2log2.
Если PowerGains(2) и NormalizedCenterFrequencies(1) значения полей оба 0, то fc равно NormalizedStandardDeviation(2)2log2.
Если NormalizedCenterFrequencies значение поля - [0,0] и NormalizedStandardDeviation поле имеет два одинаковых элемента, затем fc равно NormalizedStandardDeviation(1)2log2.
Во всех остальных случаях fc равно 1.
comm.RicianChannel Объект системы позволяет визуализировать импульсную характеристику канала, частотную характеристику и доплеровский спектр.
Примечание
Отображаемые и заданные местоположения усиления тракта могут отличаться на 5% от времени входной выборки.
Скорость отображения изображения контролируется комбинацией SamplesToDisplay и пункт меню «Воспроизведение» > «Уменьшить обновления для повышения производительности». Уменьшение процента отображаемых образцов и включение сокращенных обновлений может ускорить визуализацию области визуализации.
После закрытия областей визуализации вручную вызовы объекта System выполняются с нормальной скоростью.
Создание кода доступно только в том случае, если Visualization свойство имеет значение 'Off'.
Импульсная характеристика
Область импульсной характеристики отображает коэффициенты усиления тракта, коэффициенты канального фильтра и интерполированные коэффициенты усиления тракта. Усиление тракта происходит в моменты времени, соответствующие указанному PathDelays свойство и может не быть выровнено со временем входной выборки. Коэффициенты канального фильтра используются для моделирования канала. Они интерполируются из фактических коэффициентов усиления тракта и выравниваются с входным временем дискретизации. В случаях, когда коэффициенты усиления тракта выравниваются с временем дискретизации, коэффициенты усиления тракта перекрывают коэффициенты фильтра. Интерполяция Sinc используется для соединения коэффициентов канального фильтра и показана как интерполированные коэффициенты усиления тракта. Эти точки используются исключительно для целей отображения и не используются при последующей фильтрации каналов. Для плоского канала замирания (один путь) кривая интерполяции sinc не отображается. Для всех графиков импульсной характеристики номера кадров и образцов отображаются в левом верхнем углу области видимости.
График импульсной характеристики использует те же панели инструментов и меню, что и dsp.ArrayPlot Системный объект.
Когда указанные коэффициенты усиления тракта выравниваются с частотой дискретизации, коэффициенты усиления тракта и коэффициенты канального фильтра перекрываются. На этом рисунке импульсная характеристика показывает, что коэффициенты фильтрации перекрываются усилениями траектории.

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

На этом рисунке показана импульсная характеристика для частотно-плоского канала. В этом случае интерполированные коэффициенты усиления тракта не отображаются.

Частотная характеристика
Область частотной характеристики отображает спектр канала многолучевого рэлеевского замирания, принимая дискретное преобразование Фурье коэффициентов канального фильтра. График частотной характеристики использует те же панели инструментов и меню, что и dsp.SpectrumAnalyzer Системный объект.
Пределы оси Y графика вычисляются на основе NormalizePathGains и AveragePathGains свойства comm.RicianChannel Системный объект.
В этой таблице показаны другие выбранные параметры спектра по умолчанию. Эти параметры можно изменить с помощью меню «Просмотр» > «Параметры спектра».
| Настройки спектра | Стоимость |
|---|---|
| Основные параметры > Тип |
|
| Главные параметры > Длина окна | Длина канального фильтра |
| Основные параметры > NFFT |
|
| Параметры окна > Окно |
|
| Параметры трассировки > Единицы измерения |
|
На этом рисунке показан график частотной характеристики для частотно-селективного канала.

Доплеровский спектр
График доплеровского спектра отображает теоретический доплеровский спектр и эмпирически определенные точки данных. Теоретические данные отображаются как линия для случая нестатических каналов и как точка для статических каналов. Эмпирические данные отображаются в виде символов *. Перед обновлением эмпирического графика внутренний буфер должен быть полностью заполнен отфильтрованными гауссовыми образцами. Эмпирический график представляет собой среднее значение спектра, вычисленное из каждого полного буфера. Для нестатических каналов количество входных выборок, необходимых перед следующим обновлением, отображается в левом верхнем углу графика. Необходимое количество выборок является функцией частоты выборок и максимального доплеровского сдвига. Для статических каналов текст "Reset fading channel for next update"отображается.


[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.
Примечания и ограничения по использованию:
Чтобы создать код C, установите DopplerSpectrum свойство единой структуры доплеровского спектра.
Создание кода доступно только в том случае, если Visualization свойство - 'Off'.
См. Системные объекты в создании кода MATLAB (кодер MATLAB).
comm.AWGNChannel | comm.ChannelFilter | comm.MIMOChannel | comm.RayleighChannel | comm.WINNER2ChannelИмеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.