directivity

Системный объект: phased.HeterogeneousConformalArray
Пакет: поэтапный

Направленность неоднородного конформного массива

Синтаксис

D = directivity(H,FREQ,ANGLE)
D = directivity(H,FREQ,ANGLE,Name,Value)

Описание

D = directivity(H,FREQ,ANGLE) вычисляет Направленность неоднородного конформного массива антенны или элементов микрофона, H, на частотах, заданных FREQ и в углах направления задан ANGLE.

Интегрирование использовало, когда вычислительная направленность массивов имеет минимальную сетку выборки 0,1 градусов. Если диаграмма направленности антенной решетки имеет ширину луча, меньшую, чем это, значение направленности будет неточно.

D = directivity(H,FREQ,ANGLE,Name,Value) вычисляет направленность с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы.

Входные параметры

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

Неоднородный конформный массив, заданный как phased.HeterogeneousConformalArray Системный объект.

Пример: H = phased.HeterogeneousConformalArray;

Частоты для вычислительной направленности и шаблонов в виде положительной скалярной величины или 1 L вектором-строкой с действительным знаком. Единицы частоты находятся в герц.

  • Для антенны, микрофона, или гидрофона гидролокатора или элемента проектора, FREQ должен лечь в области значений значений, заданных FrequencyRange или FrequencyVector свойство элемента. В противном случае элемент не производит ответа, и направленность возвращена как –Inf. Большинство элементов использует FrequencyRange свойство за исключением phased.CustomAntennaElement и phased.CustomMicrophoneElement, которые используют FrequencyVector свойство.

  • Для массива элементов, FREQ должен лечь в частотном диапазоне элементов, которые составляют массив. В противном случае массив не производит ответа, и направленность возвращена как –Inf.

Пример: [1e8 2e6]

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

Углы для вычислительной направленности в виде 1 M вектором-строкой с действительным знаком или 2 M матрицей с действительным знаком, где M является количеством угловых направлений. Угловые модули в градусах. Если ANGLE 2 M матрицей, затем каждый столбец задает направление в азимуте и вертикальном изменении, [az;el]. Угол азимута должен находиться между-180 ° и 180 °. Угол возвышения должен находиться между-90 ° и 90 °.

Если ANGLE 1 M вектором, затем каждая запись представляет угол азимута с углом возвышения, принятым, чтобы быть нулем.

Угол азимута является углом между x - ось и проекцией вектора направления на плоскость xy. Этот угол положителен, когда измерено от x - оси к y - ось. Угол возвышения является углом между вектором направления и плоскостью xy. Этот угол положителен, когда измерено к z - ось. Смотрите Азимут и Углы возвышения.

Пример: [45 60; 0 10]

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

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Скорость распространения сигнала в виде разделенной запятой пары, состоящей из 'PropagationSpeed' и положительная скалярная величина в метрах в секунду.

Пример: 'PropagationSpeed',physconst('LightSpeed')

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

Веса массивов в виде разделенной запятой пары, состоящей из 'WeightsN-by-1 вектор-столбец с комплексным знаком или N-by-L матрица с комплексным знаком. Веса массивов применяются к элементам массива, чтобы произвести регулирование массивов, сужение или обоих. Размерность N является числом элементов в массиве. Размерность L является количеством частот, заданных FREQ.

Размерность весовРазмерность FREQЦель
N-by-1 вектор-столбец с комплексным знакомСкаляр или 1 L вектором-строкойПрименяет набор весов для одной частоты или для всех частот L.
N-by-L матрица с комплексным знаком1 L вектором-строкойПрименяет каждый из столбцов L 'Weights' для соответствующей частоты в FREQ.

Примечание

Используйте комплексные веса, чтобы регулировать ответ массивов к различным направлениям. Можно создать веса с помощью phased.SteeringVector Системный объект или вы можете вычислить ваши собственные веса. В общем случае вы применяете Эрмитово спряжение перед использованием весов в любом Phased Array System Toolbox™ функциональный или Системный объект, таких как phased.Radiator или phased.Collector. Однако для directivity, pattern, patternAzimuth, и patternElevation методы любого Системного объекта массивов используют держащийся вектор без спряжения.

Пример: 'Weights',ones(N,M)

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

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

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

Направленность, возвращенная как M-by-L матрица. Каждая строка соответствует одному из углов M, заданных ANGLE. Каждый столбец соответствует одному из значений частоты L, заданных в FREQ. Модули направленности находятся в dBi, где dBi задан как усиление элемента относительно изотропного излучателя.

Примеры

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

Вычислите направленность управляемого неоднородного конформного массива. Создайте неоднородный дисковый массив с 24 элементами с помощью элементов, имеющих различные шаблоны антенны, и затем покажите, как вычислить направленность массива.

Установите скорость сигнала на скорость света и частоту сигнала к 2 ГГц.

c = physconst('LightSpeed');
freq = 2e9;

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

myElement1 = phased.CosineAntennaElement('CosinePower',1.5);
myElement2 = phased.CosineAntennaElement('CosinePower',1.8);

Настройте дисковый массив с тремя звонками с 8 элементами на звонок. Внутренний звонок имеет различные элементы от внешних звонков.

N = 8;
azang = (0:N-1)*360/N-180;
p0 = [zeros(1,N);cosd(azang);sind(azang)];
posn = [0.6*p0, 0.4*p0, 0.2*p0];
myArray = phased.HeterogeneousConformalArray;
myArray.ElementPosition = posn;
myArray.ElementNormal = zeros(2,3*N);
myArray.ElementSet = {myElement1,myElement2};
myArray.ElementIndices = [1 1 1 1 1 1 1 1,...
    1 1 1 1 1 1 1 1,...
    2 2 2 2 2 2 2 2];

Настройте держащийся вектор, чтобы указать на 30 азимутов степеней и вычислить направленность в том направлении.

lambda = c/freq;
ang = [30;0];
w = steervec(getElementPosition(myArray)/lambda,ang);
d = directivity(myArray,freq,ang,'PropagationSpeed',c,...
            'Weights',w)
d = 20.9519

Больше о

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

Смотрите также

| |