replace

Класс: polarpattern

Замените полярные данные о графике на новые данные

Описание

пример

replace(p,data) удаляет все данные из полярного графика, p и добавляет новые данные на основе действительных амплитудных значений, data.

пример

replace(p,angle,magnitude) удаляет все текущие данные и добавляет новые наборы данных угловых векторов и соответствующих матриц величины к полярному графику, p.

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

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

Полярный график, заданный как скалярный указатель.

Антенна или данные массива, заданные как одно из следующего:

  • Действительный вектор длины-M, где M содержит значения величины с углами, принятыми, чтобы быть (0:M1)M×360 степени.

  • Действительный M-by-N матрица, где M содержит значения величины и N, содержит независимые наборы данных. Каждому столбцу в матрице взяли углы из вектора (0:M1)M×360 степени. Набор каждого угла может варьироваться для каждого столбца.

  • Действительный массив N-D, где N является количеством размерностей. Массивы с размерностями 2 и больше независимые наборы данных.

  • Комплексный вектор или матрица, где data содержит Декартовы координаты ((x,y) каждой точки. x содержит действительную часть data и y содержит мнимую часть data.

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

Набор углов, заданных как вектор в градусах.

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

Примеры

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

Шаблон косинуса графика в полярных координатах Задает шаблон антенны косинуса от 0 ° до 360 ° в азимуте при вертикальном изменении на 0 °. Затем постройте шаблон антенны с помощью polarpattern.

Создайте шаблон.

az = [0:360];
a = abs(cosd(az));

Постройте полярный шаблон антенны для сокращения азимута при вертикальном изменении на 0 °.

P = polarpattern(a,'TitleTopTextInterpreter','tex','TitleTop','Azimuth Cut (Elevation Angle = 0^{\circ})');

Замените этот график на вращаемый шаблон косинуса.

a = abs(cosd(az + 30.0));
replace(P,a);

Создайте ULA с 15 элементами антенн косинуса с распределенной половиной элементов длины волны независимо. Постройте направленность массива на уровне 20 ГГц.

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным step синтаксис. Например, замените myObject(x) с step(myObject,x).

fc = 20.0e9;
c = physconst('Lightspeed');
lam = c/fc;
angs = [-180:1:180];
antenna = phased.CosineAntennaElement('FrequencyRange',[1.0e9,100.0e9],...
    'CosinePower',[2.5 2.5]);
array = phased.ULA('Element',antenna,'NumElements',15,'ElementSpacing',lam/2);
a = pattern(array,fc,angs,0);
P = polarpattern(angs,a);

Затем регулируйте массив к 45 ° и, с помощью replace метод, замените существующий полярный график на управляемую направленность массивов.

steervec = phased.SteeringVector('SensorArray',array,'PropagationSpeed',c,...
    'IncludeElementResponse',true);
sv = steervec(fc,[45;0]);
a1 = pattern(array,fc,angs,0,'Weights',sv);
replace(P,angs,a1);

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

| | | | | |

Введенный в R2016a