rotpat

Вращайте диаграмму направленности излучения

Описание

пример

rpat = rotpat(pat,az,el,rotax) вращает диаграмму направленности излучения, pat, в новый шаблон, rpat, чей boresight выровнен с x -осью новой локальной системы координат, заданной rotax. az и el задайте азимут и углы возвышения, при которых производится выборка исходного шаблона.

rpat = rotpat(pat,az,el,rotax,expval) также задает экстраполированное значение, которое будет использоваться при az и el не покрывать всёся трехмерное пространство.

Совет

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

Примеры

свернуть все

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

Создайте phased.ShortDipoleAntennaElement объект антенны со свойствами по умолчанию. Короткодипольная антенна излучает поляризованное излучение. Получите и отобразите излучение для всех направлений.

antenna1 = phased.ShortDipoleAntennaElement;
el = -90:90;
az = -180:180;
pat_h = zeros(numel(el),numel(az),'like',1+1i);
pat_v = pat_h;
fc = 3e8;
for m = 1:numel(el)
    temp = antenna1(fc,[az;el(m)*ones(1,numel(az))]);
    pat_h(m,:) = temp.H;
    pat_v(m,:) = temp.V;
end
pattern(antenna1,fc,'Type','Power')

Поверните шаблон антенны вокруг оси Y на 135 степени с последующим поворотом вокруг оси X на 65 степени.

newax = rotx(65)*roty(135);
pat2_h = rotpat(pat_h,az,el,newax);
pat2_v = rotpat(pat_v,az,el,newax);

Вставьте повернутый шаблон в phased.CustomAntennaElement объект. Установите свойства поляризации антенны так, чтобы элемент излучал горизонтальные и вертикальные поляризованные поля. Затем отобразите повернутый шаблон в трёх размерностях.

antenna2 = phased.CustomAntennaElement( ...
    'SpecifyPolarizationPattern',true, ...
    'HorizontalMagnitudePattern',mag2db(abs(pat2_h)), ...
    'HorizontalPhasePattern',rad2deg(angle(pat2_h)), ...
    'VerticalMagnitudePattern',mag2db(abs(pat2_v)), ...
    'VerticalPhasePattern',rad2deg(angle(pat2_v)));
pattern(antenna2,fc,'Type','Power')

Создайте диаграмму направленности излучения для косинусоидной антенны с помощью phased.CosineAntennaElement объект. Поверните шаблон для использования в phased.CustomAntennaElement объект антенны.

Сначала получите диаграмму направленности излучения для phased.CosineAntennaElement объект по ограниченной области значений направлений. Поле не поляризовано.

antenna1 = phased.CosineAntennaElement('CosinePower',[5,5]);
az = -60:65;
el = -60:60;
pat = zeros(numel(el),numel(az),'like',1);
fc = 300e6;
for m = 1:numel(el)
    temp = antenna1(fc,[az;el(m)*ones(1,numel(az))]);
    pat(m,:) = temp;
end

Отображение исходного шаблона.

imagesc(az,el,abs(pat))
axis xy
axis equal
axis tight
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')
title('Original Radiation Pattern')
colorbar

Figure contains an axes. The axes with title Original Radiation Pattern contains an object of type image.

Поверните шаблон антенны на 20 степени вокруг оси Z и на 50 степени вокруг оси X. Затем отобразите повернутый шаблон.

newax = rotx(50)*rotz(20);
rpat = rotpat(pat,az,el,newax);
imagesc(az,el,abs(rpat))
axis xy
axis equal
axis tight
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')
title('Rotated Radiation Pattern')
colorbar

Figure contains an axes. The axes with title Rotated Radiation Pattern contains an object of type image.

Используйте повернутый шаблон в пользовательском антенном элементе и отобразите шаблон в 3-D.

antenna2 = phased.CustomAntennaElement( ...
    'AzimuthAngles',az,'ElevationAngles',el,'SpecifyPolarizationPattern',false, ...
    'MagnitudePattern',mag2db(abs(rpat)), ...
    'PhasePattern',zeros(size(rpat)));
pattern(antenna2,fc,'Type','Power')

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

свернуть все

Диаграмма направленности излучения, заданная как комплексная матрица N M или комплексный массив <reservedrangesplaceholder4> -by- <reservedrangesplaceholder3> -by- <reservedrangesplaceholder2>. N - длина el вектор и M является длиной az вектор. Каждый столбец соответствует одному из углов азимута, заданных в az аргумент. Каждая строка соответствует одному из углов возвышения, заданных в el аргумент. Вы можете задать несколько диаграммы направленности излучения с помощью L страниц. Для примера можно использовать страницы, чтобы задать диаграммы направленности излучения на разных частотах. Основной лепесток каждого шаблона принимается указывающим вдоль оси x. Модули указаны в метрах в квадрате.

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

Азимутальные углы для вычисления диаграммы направленности 3-D, заданные как 1-байтовый M действительный вектор-строка, где M - количество углов азимута. Каждая запись соответствует одному из столбцов матрицы, заданной в pat аргумент. Угловые модули находятся в степенях. Азимутальные углы должны лежать между -180 ° и 180 ° включительно.

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

Пример: -45:2:45

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

Углы возвышения для вычисления направленности и шаблона, заданные как 1-байтовый N действительный вектор-строка, где N - количество углов возвышения. Каждая запись соответствует одной из строк матрицы, заданной в pat аргумент. Угловые модули находятся в степенях. Углы возвышения должны лежать между -90 ° и 90 ° включительно.

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

Пример: -75:1:70

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

Матрица вращения, заданная как действительная ортонормальная матрица 3 на 3 или вещественный массив 3 на 3 <reservedrangesplaceholder4>. Столбцы представляют x, y и z направления повернутой системы координат относительно исходной системы координат. Страницы P задают различные матрицы поворота.

Эта таблица описывает, как размерности выходного шаблона rpat зависят от размерностей pat и rotax аргументы.

Размерности rpat

Dimensions of patDimensions of rotax
 3 -by- 33 -by- 3 -by- P
M -by- NПоверните один шаблон на одну матрицу поворота. Выходные размерности rpat M -by - N.Поверните один шаблон путем P различных матриц поворота. Выходные размерности rpat M -by- N -by- P.
M -by- N -by- LПоверните L шаблоны на ту же матрицу поворота. Выходные размерности rpat M -by- N -by- L.В этом случае P должны равняться L и функция вращает каждый шаблон соответствующей матрицей поворота. Выходные размерности rpat M -by- N -by- L.

Пример: rotx(45)*roty(30)

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

Значение экстраполяции, заданное как скаляр. Этот скаляр является экстраполированным значением, когда повернутые шаблоны не заполняют все трехмерное пространство, заданное как az и el. В целом рассмотрите настройку expval 0, если шаблон задан в линейной шкале или -inf если шаблон задан в шкале дБ.

Пример: -inf

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

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

свернуть все

Повернутая диаграмма направленности излучения, возвращенная как комплексная матрица N M или комплексная матрица N -by M -by P. N - длина el вектор. M - длина az вектор. Размерность pat и rotax определите значение P, как обсуждается в rotax входной параметр. Модули указаны в метрах в квадрате.

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

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.

См. также

| |

Введенный в R2019a