animate

Класс: polarpattern

Замените существующие данные новыми данными для анимации

Описание

пример

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

пример

animate(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 °.

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

Постройте график полярного шаблона.

P = polarpattern(p1);

Создайте вторую антенну косинусоидного шаблона, повернутую на 60 °. Анимируйте шаблон путем добавления этого шаблона.

p2 = abs(cosd(az - 50));
animate(P,p2);

Создайте 15-элементный ULA косинусоидных антенн с элементами, разнесенными на половину длины волны. Постройте график направленности массива на 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 ° и, используя animate метод, замените существующий полярный график направлением управляемого массива.

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

Введенный в R2016a
Для просмотра документации необходимо авторизоваться на сайте