getElementNormal

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

Вектор нормали к элементам массива

Синтаксис

normvec = getElementNormal(sConfArray)
normvec = getElementNormal(sConfArray,elemidx)

Описание

normvec = getElementNormal(sConfArray) возвращает векторы нормали элементов массива phased.sConfArray Система object™, sConfArray. Выходной аргумент normvec 2 N матрицей, где N является числом элементов в массиве, sConfArray. Каждый столбец normvec задает нормальное направление элемента в системе локальной координаты в form[az;el]. Модули являются степенями. Источник системы локальной координаты задан центром фазы массива.

normvec = getElementNormal(sConfArray,elemidx) возвращает только векторы нормали элементов, указанных в векторе индекса элемента, elemidx. Этот синтаксис может использовать любой из входных параметров в предыдущем синтаксисе.

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

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

Конформный массив в виде phased.ConformalArray Системный объект.

Пример: phased.ConformalArray

Индексы элемента в виде 1 M или M-by-1 вектор. Значения индекса находятся в диапазоне 1 к N, где N является числом элементов массива. Когда elemidx задан, getElementNormal возвращает векторы нормали элементов, содержавшихся в elemidx.

Пример: [1,5,4]

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

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

Векторы нормали элемента в виде 2 P вектором с действительным знаком. Каждый столбец normvec принимает форму [az,el]. Когда elemidx не задан, P равняется измерению массива. Когда elemidx задан, P равняется длине elemidxM.

Примеры

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

Создайте акустический перекрестный массив с 5 элементами (UCA) использование Системного объекта ConformalArray. Примите, что рабочая частота составляет 4 кГц. Типичное значение для скорости звука в морской воде составляет 1 500,0 м/с. Отобразите векторы нормали массивов.

N = 5;
fc = 4000;
c = 1500.0;
lam = c/fc;
x = zeros(1,N);
y = [-1,0,1,0,0]*lam/2;
z = [0,0,0,-1,1]*lam/2;
sMic = phased.OmnidirectionalMicrophoneElement(...
    'FrequencyRange',[0,10000],'BackBaffled',true);
sConformArray = phased.ConformalArray('Element',sMic,...
    'ElementPosition',[x;y;z],...
    'ElementNormal',[45*ones(1,N);zeros(1,N)]);
pos = getElementPosition(sConformArray)
pos = 3×5

         0         0         0         0         0
   -0.1875         0    0.1875         0         0
         0         0         0   -0.1875    0.1875

normvec = getElementNormal(sConformArray)
normvec = 2×5

    45    45    45    45    45
     0     0     0     0     0

Введенный в R2016a