класс polarpattern

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

Описание

Класс polarpattern строит антенну или диаграммы направленности массивов в интерактивном полярном формате. Можно также построить другие типы полярных данных. Используйте эти графики, когда интерактивная визуализация данных или измерение будут требоваться. Щелкните правой кнопкой по окну Polar Measurement, чтобы изменить свойства, увеличить масштаб или добавить больше данных в график.

Конструкция

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

пример

polarpattern(data) создает полярный график со значениями значения в векторном d. В этом полярном графике углы однородно расположены с интервалами на модульном круге, запускающемся в степенях 0.

пример

polarpattern(angle,magnitude) создает полярный график из набора угловых векторов и соответствующих значений. Можно также создать графики в полярной системе координат из нескольких наборов для угловых векторов и соответствующих наборов значения с помощью синтаксиса: polarpattern(angle1, magnitude1, angle2, magnitude2...).

p = polarpattern(___) возвращает указатель на объект, который можно использовать, чтобы настроить график или добавить измерения. Можно задать любой из аргументов от предыдущих синтаксисов.

p = polarpattern('gco') возвращает указатель на объект в полярный шаблон в текущей фигуре.

пример

polarpattern(___,Name,Value) создает полярный график, с дополнительными свойствами, заданными одним или несколькими аргументами пары "имя-значение". Name является именем свойства, и Value является соответствующим значением свойства. Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1, Value1, ..., NameN, ValueN. Свойства, не заданные, сохраняют свои значения по умолчанию. Чтобы перечислить все пары свойства Name,Value, используйте details(p). Чтобы перечислить все пары свойства Name,Value, используйте details(p). Можно использовать свойства извлечь любые данные из диаграммы направленности из полярного графика. Например, p = polarpattern(data,'Peaks',3) идентифицирует и отображает три самых высоких peaks в данных о шаблоне.

Для списка свойств смотрите PolarPattern Properties.

polarpattern(ax,___) создает полярный график с помощью указателя осей, ax вместо указателя текущей системы координат.

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

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

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

  • Действительный вектор длины-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 строит наименьшие значения значения в начале координат полярного графика и самые большие значения значения в максимальном радиусе.

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

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

Методы

addДобавьте данные в существующий полярный график
addCursorДобавьте курсор в полярный угол графика
animateЗамените существующие данные на новые данные для анимации
createLabelsСоздайте метки легенды
findLobesОсновной, назад и данные о лепестке стороны
replaceЗамените существующие данные на новые данные в полярном графике
showPeaksTableПокажите или скройте пиковую таблицу маркера
showSpanПокажите или скройте угловой промежуток между двумя маркерами

Примеры

свернуть все

Создайте антенну Vivaldi по умолчанию и вычислите направленность на уровне 1,5 ГГц.

v = vivaldi;
V = pattern(v,1.5e9,0,0:1:360);

Постройте полярный шаблон расчетной направленности.

P = polarpattern(V);

Создайте антенну полости по умолчанию. Вычислите направленность антенны и запишите данные в cavity.pln с помощью функции msiwrite.

c = cavity;
msiwrite(c,2.8e9,'cavity','Name','Cavity Antenna Specifications');

Считайте файл спецификации полости в Horizontal, Vertical и структуры Optional с помощью функции msiread.

[Horizontal,Vertical,Optional] = msiread('cavity.pln')
Horizontal = struct with fields:
    PhysicalQuantity: 'Gain'
           Magnitude: [360x1 double]
               Units: 'dBi'
             Azimuth: [360x1 double]
           Elevation: 0
           Frequency: 2.8000e+09
               Slice: 'Elevation'

Vertical = struct with fields:
    PhysicalQuantity: 'Gain'
           Magnitude: [360x1 double]
               Units: 'dBi'
             Azimuth: 0
           Elevation: [360x1 double]
           Frequency: 2.8000e+09
               Slice: 'Azimuth'

Optional = struct with fields:
         name: 'Cavity Antenna Specifications'
    frequency: 2.8000e+09
         gain: [1x1 struct]

Постройте полярный шаблон полости под углами азимута.

P = polarpattern(Horizontal.Azimuth,Horizontal.Magnitude);

Создайте антенну монополя по умолчанию и вычислите направленность на уровне 75 МГц.

m = monopole;
M = pattern(m,75e6,0,0:1:360);

Постройте полярный шаблон антенны.

P = polarpattern(M,'TitleTop','Polar Pattern of Monopole');

Создайте дипольную антенну по умолчанию и вычислите направленность на уровне 75 МГц.

d = dipole;
D = pattern(d,75e6,0,0:1:360);

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

P = polarpattern(D);

details(P)
  internal.polari handle with properties:

                      Interactive: 1
                     LegendLabels: ''
                   AntennaMetrics: 0
                        CleanData: 1
                        AngleData: [361x1 double]
                    MagnitudeData: [361x1 double]
                    IntensityData: []
                     AngleMarkers: [0x1 struct]
                    CursorMarkers: [0x1 struct]
                      PeakMarkers: [0x1 struct]
                    ActiveDataset: 1
                  AngleLimVisible: 0
                    LegendVisible: 0
                             Span: 0
                         TitleTop: ''
                      TitleBottom: ''
                            Peaks: []
                         FontSize: 13
                     MagnitudeLim: [-50 10]
               MagnitudeAxisAngle: 75
                    MagnitudeTick: [-40 -20 0]
          MagnitudeTickLabelColor: 'k'
                         AngleLim: [0 360]
                   AngleTickLabel: {1x24 cell}
              AngleTickLabelColor: 'k'
       TitleTopFontSizeMultiplier: 1.1000
    TitleBottomFontSizeMultiplier: 0.9000
               TitleTopFontWeight: 'bold'
            TitleBottomFontWeight: 'normal'
          TitleTopTextInterpreter: 'none'
       TitleBottomTextInterpreter: 'none'
                   TitleTopOffset: 0.1500
                TitleBottomOffset: 0.1500
                         ToolTips: 1
               MagnitudeLimBounds: [-Inf Inf]
      MagnitudeFontSizeMultiplier: 0.9000
          AngleFontSizeMultiplier: 1
                       AngleAtTop: 90
                   AngleDirection: 'ccw'
                  AngleResolution: 15
           AngleTickLabelRotation: 0
             AngleTickLabelFormat: '360'
          AngleTickLabelColorMode: 'contrast'
                     PeaksOptions: {}
            AngleTickLabelVisible: 1
                            Style: 'line'
                        DataUnits: 'dB'
                     DisplayUnits: 'dB'
                    NormalizeData: 0
                 ConnectEndpoints: 0
              DisconnectAngleGaps: 0
                        EdgeColor: 'k'
                        LineStyle: '-'
                        LineWidth: 1
                         FontName: 'Helvetica'
                     FontSizeMode: 'auto'
              GridForegroundColor: [0.8000 0.8000 0.8000]
              GridBackgroundColor: 'w'
                 DrawGridToOrigin: 0
                     GridOverData: 0
               GridAutoRefinement: 0
                        GridWidth: 0.5000
                      GridVisible: 1
                         ClipData: 1
                  TemporaryCursor: 1
                 MagnitudeLimMode: 'auto'
           MagnitudeAxisAngleMode: 'auto'
                MagnitudeTickMode: 'auto'
      MagnitudeTickLabelColorMode: 'contrast'
        MagnitudeTickLabelVisible: 1
                   MagnitudeUnits: ''
                   IntensityUnits: ''
                           Marker: 'none'
                       MarkerSize: 6
                           Parent: [1x1 Figure]
                         NextPlot: 'replace'
                       ColorOrder: [7x3 double]
                  ColorOrderIndex: 1
                     SectorsColor: [16x3 double]
                     SectorsAlpha: 0.5000
                             View: 'full'
                    ZeroAngleLine: 0

Используйте Clean Data в Antenna Metrics, чтобы удалить-inf и значения NaN в антенне монополя полярный шаблон. Рекомендуется использовать Clean Data для частичных данных с-inf и значениями NaN.

m = monopole; 
m.GroundPlaneLength = inf;

Постройте ширину луча антенны на уровне 70 МГц.

figure;
beamwidth(m,70e6,0,-50:30)

Постройте диаграмму направленности антенны на уровне 70 МГц.

figure;
pattern(m,70e6,0,-50:30);

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

P = polarpattern('gco');
P.AntennaMetrics = 1;

Сравните график ширины луча и график polarpattern. Вы будете видеть, что Метрики Антенны не представляют ширину луча правильно.

Используйте Clean Data, чтобы убрать-inf и значения NaN.

После использования Clean Data вы видите, что polarpattern вычисление ширины луча совпадает с вычислением графика ширины луча.

Введенный в R2016a