Отправьте сигнал через модель канала CDL
nrCDLChannel
Система object™ отправляет входной сигнал через уровень ссылки мультивхода мультивыводится (MIMO) кластеризованной линии задержки (CDL), исчезающий канал, чтобы получить поврежденный каналом сигнал. Объект реализует следующие аспекты TR 38.901 [1]:
Разделите 7.7.1: модели CDL
Разделите 7.7.3: Масштабирование задержек
Разделите 7.7.5.1: Масштабирование углов
Разделите 7.7.6: k-фактор для моделей канала LOS
Отправить сигнал через CDL модель канала MIMO:
Создайте nrCDLChannel
объект и набор его свойства.
Вызовите объект с аргументами, как будто это была функция.
Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.
создает CDL Системный объект канала MIMO.cdl
= nrCDLChannel
создает объект с набором свойств при помощи одной или нескольких пар "имя-значение". Заключите имя свойства в кавычках, сопровождаемых заданным значением. Незаданные свойства берут значения по умолчанию.cdl
= nrCDLChannel(Name,Value
)
cdl = nrCDLChannel('DelayProfile','CDL-D','DelaySpread',2e-6)
создает объект канала с профилем задержки CDL-D и распространением задержки 2 микросекунд.Если в противном случае не обозначено, свойства являются ненастраиваемыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируют, когда вы вызываете их и release
функция разблокировала их.
Если свойство является настраиваемым, можно изменить его значение в любое время.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).
DelayProfile
— Профиль задержки CDL'CDL-A'
(значение по умолчанию) | 'CDL-B'
| 'CDL-C'
| 'CDL-D'
| 'CDL-E'
| 'Custom'
Задержка CDL профилирует в виде 'CDL-A'
, 'CDL-B'
, 'CDL-C'
, 'CDL-D'
, 'CDL-E'
, или 'Custom'
. Смотрите, что TR 38.901 разделяет 7.7.1, таблицы 7.7.1-1 к 7.7.1-5.
Когда вы устанавливаете это свойство на 'Custom'
, сконфигурируйте профиль задержки с помощью свойств PathDelays
, AveragePathGains
, AnglesAoA
, AnglesAoD
, AnglesZoA
, AnglesZoD
, HasLOSCluster
, KFactorFirstCluster
, AngleSpreads
, XPR
, и NumStrongestClusters
.
Типы данных: char |
string
PathDelays
— Дискретный путь задерживается в секундах
(значение по умолчанию) | числовой скаляр | вектор-строкаДискретный путь задерживается в секундах в виде числового скаляра или вектора-строки. AveragePathGains
и PathDelays
должен иметь тот же размер.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
AveragePathGains
— Средний путь получает в дБ
(значение по умолчанию) | числовой скаляр | вектор-строкаСредний путь получает в дБ в виде числового скаляра или вектора-строки. AveragePathGains
и PathDelays
должен иметь тот же размер.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
AnglesAoA
— Азимут угла падения в градусах
(значение по умолчанию) | числовой скаляр | вектор-строкаАзимут угла падения в градусах в виде числового скаляра или вектора-строки. Векторные элементы задают углы для каждого кластера.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
AnglesAoD
— Азимут исходного угла в градусах
(значение по умолчанию) | числовой скаляр | вектор-строкаАзимут исходного угла в градусах в виде числового скаляра или вектора-строки. Векторные элементы задают углы для каждого кластера.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
AnglesZoA
— Зенит угла падения в градусах
(значение по умолчанию) | числовой скаляр | вектор-строкаЗенит угла падения в градусах в виде числового скаляра или вектора-строки. Векторные элементы задают углы для каждого кластера.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
AnglesZoD
— Зенит исходного угла в градусах
(значение по умолчанию) | числовой скаляр | вектор-строкаЗенит исходного угла в градусах в виде числового скаляра или вектора-строки. Векторные элементы задают углы для каждого кластера.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
HasLOSCluster
— Кластер угла обзора профиля задержкиfalse
(значение по умолчанию) | true
Кластер угла обзора (LOS) задержки профилирует в виде false
или true
. PathDelays
, AveragePathGains
, AnglesAoA
, AnglesAoD
, AnglesZoA
, и AnglesZoD
свойства задают профиль задержки. Чтобы включить кластер LOS профиля задержки, установите HasLOSCluster
к true
.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: логический
KFactorFirstCluster
— K-фактор в первом кластере задержки профилирует в дБ
(значение по умолчанию) | числовой скалярK-фактор в первом кластере задержки профилирует в дБ в виде числового скаляра. Значение по умолчанию соответствует K-фактору в первом кластере CDL-D, как задано в Разделе TR 38.901 7.7.1, Таблице 7.7.1-4.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
и HasLOSCluster
к true
.
Типы данных: double
AngleScaling
— Примените масштабирование угловfalse
(значение по умолчанию) | true
Примените масштабирование углов в виде false
или true
согласно Разделу TR 38.901 7.7.5.1. Когда установлено в true
, AngleSpreads
и MeanAngles
свойства задают масштабирование углов.
Чтобы включить это свойство, установите DelayProfile
к 'CDL-A'
, 'CDL-B'
, 'CDL-C'
, 'CDL-D'
, или 'CDL-E'
. Это свойство не запрашивает пользовательский профиль задержки.
Типы данных: логический
AngleSpreads
— Масштабируемый или кластерно-мудрый угол RMS распространяется в градусах
(значение по умолчанию) | четырехэлементный вектор-строкаМасштабируемый или кластерно-мудрый среднеквадратичный (RMS) угол распространяется в градусах в виде четырехэлементного вектора-строки в одной из следующих форм:
[ASD ASA ZSD ZSA] — Использование этот вектор, чтобы задать желаемые угловые распространения RMS канала, как описано в Разделе TR 38.901 7.7.5.1 (ASdesired), где:
ASD является распространением азимута RMS исходных углов
ASA является распространением азимута RMS углов падения
ZSD является распространением зенита RMS исходных углов
ZSA является распространением зенита RMS углов падения
Чтобы использовать эту форму, установите AngleScaling
к true
и DelayProfile
к 'CDL-A'
, 'CDL-B'
, 'CDL-C'
, 'CDL-D'
, или 'CDL-E'
.
[ASD C ASA C C ZSD C ZSA] — Использование этот вектор, чтобы задать кластерно-мудрый угол RMS распространяется для масштабирования углов смещения луча в кластере, как описано в Разделе TR 38.901 7.7.1, Step1, где:
ASD C является кластерно-мудрым распространением азимута RMS исходных углов
ASA C является кластерно-мудрым распространением азимута RMS углов падения
C ZSD является кластерно-мудрым распространением зенита RMS исходных углов
C ZSA является кластерно-мудрым распространением зенита RMS углов падения
Чтобы использовать эту форму, установите DelayProfile
к 'Custom'
. На основе Раздела TR 38.901 7.7.5.1, объект не выполняет угол, масштабирующийся в этом случае.
Значение по умолчанию соответствует кластерно-мудрым угловым распространениям по умолчанию CDL-A, как задано в Разделе TR 38.901 7.7.1 Таблиц 7.7.1-1.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
или AngleScaling
к true
.
Типы данных: double
MeanAngles
— Масштабированные средние углы в градусах
(значение по умолчанию) | четырехэлементный вектор-строкаМасштабированные средние углы в градусах в виде четырехэлементного вектора-строки из формы [AoD AoA ZoD ZoA].
AoD является средним азимутом исходных углов после масштабирования
AoA является средним азимутом углов падения после масштабирования
ZoD является средним зенитом исходных углов после масштабирования
ZoA является средним зенитом углов падения после масштабирования
Используйте этот вектор, чтобы задать желаемые средние углы канала, используемого в угловом масштабировании, как описано в Разделе TR 38.901 7.7.5.1 ().
Чтобы включить это свойство, установите AngleScaling
к true
.
Типы данных: double
XPR
— Отношение степени перекрестной поляризации в дБ
(значение по умолчанию) | числовой скалярОтношение степени перекрестной поляризации в дБ в виде числового скаляра. Значение по умолчанию соответствует кластерно-мудрому отношению степени перекрестной поляризации CDL-A, как задано в Разделе TR 38.901 7.7.1, Таблице 7.7.1-1.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
DelaySpread
— Желаемое распространение задержки RMS в секундах30e-9
(значение по умолчанию) | числовой скалярЖелаемое распространение задержки RMS в секундах в виде числового скаляра. Поскольку примеры желаемой RMS задерживают распространения, DSdesired
, смотрите Раздел TR 38.901 7.7.3 и Таблицы 7.7.3-1 и 7.7.3-2.
Чтобы включить это свойство, установите DelayProfile
к 'CDL-A'
, 'CDL-B'
, 'CDL-C'
, 'CDL-D'
, или 'CDL-E'
. Это свойство не запрашивает пользовательский профиль задержки.
Типы данных: double
CarrierFrequency
— Несущая частота в Гц4e9
(значение по умолчанию) | числовой скалярНесущая частота в Гц в виде числового скаляра.
Типы данных: double
MaximumDopplerShift
— Максимальный эффект Доплера в Гц
(значение по умолчанию) | неотрицательный числовой скалярМаксимальный эффект Доплера в Гц в виде неотрицательного числового скаляра. Это свойство применяется ко всем путям к каналу. Когда максимальный эффект Доплера установлен в 0, канал остается статическим для целого входа. Чтобы сгенерировать новую реализацию канала, сбросьте объект путем вызова reset
функция.
Типы данных: double
UTDirectionOfTravel
— Пользовательское направление терминала перемещения в градусах
(значение по умолчанию) | двухэлементный вектор-столбецНаправление пользовательского терминала (UT) перемещения в градусах в виде двухэлементного вектор-столбца. Векторные элементы задают азимут и компоненты вертикального изменения [азимут; вертикальное изменение].
Типы данных: double
KFactorScaling
— Масштабирование k-фактораfalse
(значение по умолчанию) | true
K-фактор, масштабирующийся в виде false
или true
. Когда установлено в true
, KFactor
свойство задает желаемый K-фактор, и объект применяет K-фактор, масштабирующийся как описано в Разделе TR 38.901 7.7.6.
Масштабирование k-фактора изменяет и задержки пути и степени пути.
Чтобы включить это свойство, установите DelayProfile
к 'CDL-D'
или 'CDL-E'
.
Типы данных: double
KFactor
— Желаемый K-фактор для масштабирования в дБ
(значение по умолчанию) | числовой скалярЖелаемый K-фактор для масштабирования в дБ в виде числового скаляра. Для типичных значений K-фактора смотрите Раздел TR 38.901 7.7.6 и Таблицу 7.5-6.
Масштабирование k-фактора изменяет и задержки пути и степени пути.
K-factor
применяется к полному профилю задержки. А именно, K-фактором после масштабирования является Kmodel
как описано в Разделе TR 38.901 7.7.6. Kmodel
отношение степени первого LOS пути к общей степени всех Лапласовых кластеров, включая Лапласовую часть первого кластера.
Чтобы включить это свойство, установите KFactorScaling
к true
.
Типы данных: double
SampleRate
— Частота дискретизации входного сигнала в Гц30.72e6
(значение по умолчанию) | положительный числовой скалярЧастота дискретизации входного сигнала в Гц в виде положительного числового скаляра.
Типы данных: double
TransmitAntennaArray
— Передайте характеристики антенной решеткиПередайте характеристики антенной решетки в виде структуры, которая содержит эти поля:
Поле параметра | Значения | Описание |
---|---|---|
Size | [2 2 2 1 1] вектор-строка |
Размер антенной решетки [M N P M g N g], где:
Элементы антенной решетки сопоставлены мудрые панелью с каналами формы волны (столбцы) в порядке, что 5-D массив размера M-by-N-by-P-by-Mg-by-Ng линейно индексируется через первую размерность к последнему. Например, антенная решетка размера |
ElementSpacing | [0.5 0.5 1.0 1.0] вектор-строка |
Интервал элемента, в длинах волн в виде вектора-строки из формы [λ по сравнению с λ h dg по сравнению с dg h]. Векторные элементы представляют вертикальный и горизонтальный интервал элемента и вертикальный и горизонтальный интервал панели, соответственно. |
PolarizationAngles | [45 -45] вектор-строка |
Углы поляризации в градусах в виде вектора-строки из формы [θ ρ]. Углы поляризации применяются только, когда количество поляризации равняется 2. |
Orientation | [0; 0; 0] вектор-столбец |
Механическая ориентация массива, в градусах в виде вектор-столбца формы [α; β; γ]. Векторные элементы задают подшипник, downtilt, и наклон, соответственно. Значение по умолчанию указывает, что поперечное направление массива указывает на положительную ось X. |
Element | '38.901'
|
Диаграмма направленности элемента антенны как описано в Разделе TR 38.901 7.3. (Обратите внимание на то, что TR 38.901 заменил TR 38.900.) |
PolarizationModel |
|
Модель, которая определяет полевые шаблоны излучения на основе заданного шаблона степени излучения. Для получения дополнительной информации смотрите Раздел TR 38.901 7.3.2. |
Типы данных: struct
ReceiveAntennaArray
— Получите характеристики антенной решеткиПолучите характеристики антенной решетки в виде структуры, которая содержит эти поля:
Поле параметра | Значения | Описание |
---|---|---|
Size | [1 1 2 1 1] вектор-строка |
Размер антенной решетки [M N P M g N g], где:
Элементы антенной решетки сопоставлены мудрые панелью с каналами формы волны (столбцы) в порядке, что 5-D массив размера M-by-N-by-P-by-Mg-by-Ng линейно индексируется через первую размерность к последнему. Например, антенная решетка размера |
ElementSpacing | [0.5 0.5 0.5 0.5] вектор-строка |
Интервал элемента, в длинах волн в виде вектора-строки из формы [λ по сравнению с λ h dg по сравнению с dg h]. Векторные элементы представляют вертикальный и горизонтальный интервал элемента и вертикальный и горизонтальный интервал панели, соответственно. |
PolarizationAngles | [0 90] вектор-строка |
Углы поляризации в градусах в виде вектора-строки из формы [θ ρ]. Углы поляризации применяются только, когда количество поляризации равняется 2. |
Orientation | [0; 0; 0] вектор-столбец |
Механическая ориентация массива, в градусах в виде вектор-столбца формы [α; β; γ]. Векторные элементы задают подшипник, downtilt, и наклон, соответственно. Значение по умолчанию указывает, что поперечное направление массива указывает на положительную ось X. |
Element |
'38.901' |
Диаграмма направленности элемента антенны как описано в Разделе TR 38.901 7.3. (Обратите внимание на то, что TR 38.901 заменил TR 38.900.) |
PolarizationModel |
|
Модель, которая определяет полевые шаблоны излучения на основе заданного шаблона степени излучения. Для получения дополнительной информации смотрите Раздел TR 38.901 7.3.2. |
Типы данных: struct
SampleDensity
— Количество выборок времени на половину длины волны
(значение по умолчанию) | Inf
| числовой скалярКоличество выборок времени на половину длины волны в виде Inf
или числовой скаляр. SampleDensity
и MaximumDopplerShift
свойства управляют содействующим уровнем выборки генерации, Fcg, данным
Fcg = MaximumDopplerShift
× 2 × SampleDensity
.
Установка SampleDensity
к Inf
присвоения Fcg значение SampleRate
свойство.
Типы данных: double
NormalizePathGains
— Нормируйте усиления путиtrue
(значение по умолчанию) | false
Нормируйте усиления пути в виде true
или false
. Используйте это свойство нормировать процессы исчезновения. Когда это свойство установлено в true
, общая степень усилений пути, усредняемых в зависимости от времени, составляет 0 дБ. Когда это свойство установлено в false
, усиления пути не нормированы. Средние степени усилений пути заданы выбранным профилем задержки, или если DelayProfile
установлен в 'Custom'
, AveragePathGains
свойство.
Типы данных: логический
InitialTime
— Смещение времени исчезающего процесса в секундах
(значение по умолчанию) | числовой скалярСмещение времени исчезающего процесса в секундах в виде числового скаляра.
Настраиваемый: да
Типы данных: double
NumStrongestClusters
— Количество самых сильных кластеров, чтобы разделить в подкластеры
(значение по умолчанию) | числовой скалярКоличество самых сильных кластеров, чтобы разделить в подкластеры в виде числового скаляра. Смотрите Раздел TR 38.901 7.5, Шаг 11.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
.
Типы данных: double
ClusterDelaySpread
— Кластерное распространение задержки в секундах3.90625e-9
(значение по умолчанию) | неотрицательный скалярКластерное распространение задержки в секундах в виде неотрицательного скаляра. Используйте это свойство задать перемещение задержки между подкластерами для разделения кластеров в подкластеры. Смотрите Раздел TR 38.901 7.5, Шаг 11.
Чтобы включить это свойство, установите DelayProfile
к 'Custom'
и NumStrongestClusters
к значению, больше, чем нуль.
Типы данных: double
RandomStream
— Источник потока случайных чисел'mt19937ar with seed'
(значение по умолчанию) | 'Global stream'
Источник потока случайных чисел в виде одного из следующего:
'mt19937ar with seed'
— Объект использует mt19937ar алгоритм в нормально распределенной генерации случайных чисел. Вызов reset
функционируйте сбрасывает фильтры и повторно инициализирует поток случайных чисел к значению Seed
свойство.
'Global stream'
— Объект использует текущий глобальный поток случайных чисел в нормально распределенной генерации случайных чисел. Вызов reset
функционируйте сбрасывает только фильтры.
Seed
— Начальный seed mt19937ar потока случайных чисел
(значение по умолчанию) | неотрицательный числовой скалярНачальный seed mt19937ar потока случайных чисел в виде неотрицательного числового скаляра.
Чтобы включить это свойство, установите RandomStream на 'mt19937ar with seed'
. При вызове reset
функция, seed повторно инициализирует mt19937ar поток случайных чисел.
Типы данных: double
ChannelFiltering
— Исчезающая фильтрация каналаtrue
(значение по умолчанию) | false
Исчезающая фильтрация канала в виде true
или false
. Когда это свойство установлено в false
, следующие условия применяются:
Объект не берет входного сигнала и возвращает только усиления пути и шаги расчета.
SampleDensity
свойство определяет, когда произвести коэффициенты канала.
NumTimeSamples
свойство управляет длительностью реализации процесса исчезновения на уровне выборки, данном SampleRate
свойство.
Типы данных: логический
NumTimeSamples
— Количество выборок времени
(значение по умолчанию) | положительное целое числоКоличество выборок времени в виде положительного целого числа. Используйте это свойство установить длительность реализации процесса исчезновения.
Настраиваемый: да
Чтобы включить это свойство, установите ChannelFiltering
к false
.
Типы данных: double
NormalizeChannelOutputs
— Нормируйте канал, выходные параметры количеством получают антенныtrue
(значение по умолчанию) | false
Нормируйте канал, выходные параметры количеством получают антенны в виде true
или false
.
Чтобы включить это свойство, установите ChannelFiltering
к true
.
Типы данных: логический
[
также возвращает шаги расчета снимков состояния канала signalOut
,pathGains
,sampleTimes
] = cdl(signalIn
)pathGains
(первые элементы измерения).
[
возвращает только усиления пути и шаги расчета. В этом случае, pathGains
,sampleTimes
] = cdl()NumTimeSamples
свойство определяет длительность процесса исчезновения. Объект действует как источник усилений пути и шагов расчета, не фильтруя входной сигнал.
Чтобы использовать этот синтаксис, необходимо установить ChannelFiltering
свойство cdl
к false
.
signalIn
— Входной сигналВходной сигнал в виде комплексного скаляра, вектора или N матрица S-by-NT, где:
N S является количеством выборок.
N T является количеством антенн передачи.
Типы данных: single
| double
Поддержка комплексного числа: Да
signalOut
— Выходной сигналВыходной сигнал, возвращенный как комплексный скаляр, вектор или N матрица S-by-NR, где:
N S является количеством выборок.
N R является количеством, получают антенны.
Тип данных выходного сигнала имеет ту же точность как тип данных входного сигнала.
Типы данных: single
| double
Поддержка комплексного числа: Да
pathGains
— Усиления пути к каналу MIMO исчезающего процессаУсиления пути к каналу MIMO процесса исчезновения, возвращенного как CS N NP NT NR, объединяют матрицу, где:
CS N является количеством снимков состояния канала, которыми управляет SampleDensity
свойство cdl
.
N P является количеством путей, заданных размером PathDelays
свойство cdl
.
N T является количеством антенн передачи.
N R является количеством, получают антенны.
Тип данных усилений пути имеет ту же точность как тип данных входного сигнала.
Типы данных: single
| double
Поддержка комплексного числа: Да
sampleTimes
— Шаги расчета снимков состояния каналаШаги расчета снимков состояния канала, возвращенных как N CS-1 вектор-столбец, где CS N является количеством снимков состояния канала, которыми управляет SampleDensity
свойство.
Типы данных: double
Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj
, используйте этот синтаксис:
release(obj)
nrCDLChannel
info | Получите характеристическую информацию об уровне ссылки MIMO, исчезающий канал |
getPathFilters | Получите импульсную характеристику фильтра пути для уровня ссылки MIMO, исчезающий канал |
step | Запустите алгоритм Системного объекта |
clone | Создайте объект дублированной системы |
isLocked | Определите, используется ли Системный объект |
release | Высвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики |
reset | Сбросьте внутренние состояния Системного объекта |
Передайте форму волны через модель канала кластеризованной линии задержки (CDL) с профилем задержки CDL-D от Раздела TR 38.901 7.7.1.
Задайте конфигурационную структуру канала с помощью nrCDLChannel
Системный объект. Используйте профиль задержки CDL-D, распространение задержки 10 нс и скорость UT 15 км/ч:
v = 15.0; % UT velocity in km/h fc = 4e9; % carrier frequency in Hz c = physconst('lightspeed'); % speed of light in m/s fd = (v*1000/3600)/c*fc; % UT max Doppler frequency in Hz cdl = nrCDLChannel; cdl.DelayProfile = 'CDL-D'; cdl.DelaySpread = 10e-9; cdl.CarrierFrequency = fc; cdl.MaximumDopplerShift = fd;
Сконфигурируйте массив передачи как вектор формы [M N P Mg Ын] = [2 2 2 1 1], представляя 1 панель (Mg=1, Ng=1) с антенной решеткой 2 на 2 (M=2, N=2) и два угла поляризации (P=2). Сконфигурируйте получить антенную решетку как вектор формы [M N P Mg Ын] = [1 1 2 1 1], представляя одну пару перекрестных поляризованных соразмещенных антенн.
cdl.TransmitAntennaArray.Size = [2 2 2 1 1]; cdl.ReceiveAntennaArray.Size = [1 1 2 1 1];
Создайте случайную форму волны 1 длительности подкадра с 8 антеннами.
SR = 15.36e6; T = SR * 1e-3; cdl.SampleRate = SR; cdlinfo = info(cdl); Nt = cdlinfo.NumTransmitAntennas; txWaveform = complex(randn(T,Nt),randn(T,Nt));
Передайте входную форму волны через канал.
rxWaveform = cdl(txWaveform);
Постройте канал выход и снимки состояния усиления пути для различных демонстрационных значений плотности при использовании nrCDLChannel
Системный объект.
Сконфигурируйте канал с профилем задержки CDL-B от Раздела TR 38.901 7.7.1. Установите максимальный эффект Доплера на 300 Гц и уровень выборки канала к 10 кГц.
cdl = nrCDLChannel;
cdl.DelayProfile = 'CDL-B';
cdl.MaximumDopplerShift = 300.0;
cdl.SampleRate = 10e3;
cdl.Seed = 19;
Сконфигурируйте передачу и получите антенные решетки для single-input/single-output операции (SISO).
cdl.TransmitAntennaArray.Size = [1 1 1 1 1]; cdl.ReceiveAntennaArray.Size = [1 1 1 1 1];
Создайте входную форму волны с продолжительностью 40 выборок.
T = 40; in = ones(T,1);
Постройте переходной процесс канала (отображенный как линии) и соответствующие снимки состояния усиления пути (отображенные круги) для различных значений SampleDensity
свойство. Демонстрационное свойство плотности управляет, как часто снимки состояния канала взяты относительно Доплеровской частоты.
Когда SampleDensity
установлен в Inf
, снимок состояния канала взят для каждой входной выборки.
Когда SampleDensity
установлен в скаляр S, снимок состояния канала взят на уровне .
nrCDLChannel
объект применяется, снимки состояния канала к входной форме волны посредством нулевого порядка содержат интерполяцию. Объект берет дополнительный снимок состояния вне конца входа. Некоторые выборки окончательного результата используют это дополнительное значение, чтобы минимизировать ошибку интерполяции. Выход канала содержит переходный процесс (и задержка) из-за фильтров, которые реализуют задержки пути.
s = [Inf 5 2]; % sample densities legends = {}; figure; hold on; SR = cdl.SampleRate; for i = 1:length(s) % call channel with chosen sample density release(cdl); cdl.SampleDensity = s(i); [out,pathgains,sampletimes] = cdl(in); chInfo = info(cdl); tau = chInfo.ChannelFilterDelay; % plot channel output against time t = cdl.InitialTime + ((0:(T-1)) - tau).' / SR; h = plot(t,abs(out),'o-'); h.MarkerSize = 2; h.LineWidth = 1.5; desc = ['Sample Density = ' num2str(s(i))]; legends = [legends ['Output, ' desc]]; disp([desc ', Ncs = ' num2str(length(sampletimes))]); % plot path gains against sample times h2 = plot(sampletimes-tau/SR,abs(sum(pathgains,2)),'o'); h2.Color = h.Color; h2.MarkerFaceColor = h.Color; legends = [legends ['Path Gains, ' desc]]; end
Sample Density = Inf, Ncs = 40
Sample Density = 5, Ncs = 13
Sample Density = 2, Ncs = 6
xlabel('Time (s)'); title('Channel Output and Path Gains vs. Sample Density'); ylabel('Channel Magnitude'); legend(legends,'Location','NorthWest');
[1] 3GPP TR 38.901. “Исследование модели канала для частот от 0,5 до 100 ГГц”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.
Указания и ограничения по применению:
Смотрите системные объекты в Генерации кода MATLAB (MATLAB Coder).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.