tsSignature

Целевой шаблон силы

Описание

tsSignature создает объект подписи целевой силы (TS) гидролокатора. Можно использовать этот объект смоделировать зависимый углом и зависимый частотой целевой шаблон силы. Целевая сила определяет интенсивность отраженной звуковой степени сигнала от цели.

Создание

Описание

tssig = tsSignature создает tsSignature объект со значениями свойств по умолчанию.

пример

tssig = tsSignature(Name,Value) свойства объектов наборов с помощью одного или нескольких Name,Value парные аргументы. Name имя свойства и Value соответствующее значение. Name должен появиться в одинарных кавычках (''). Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1,Value1,...,NameN,ValueN. Любые незаданные свойства берут значения по умолчанию.

Примечание

Можно только установить значения свойств tsSignature при построении объекта. Значения свойств не изменяемы после конструкции.

Свойства

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

Выбранный целевой шаблон силы в виде скаляра, Q-by-P матрица с действительным знаком или Q-by-P-by-K массив с действительным знаком. Шаблон является массивом значений TS, заданных на сетке углов возвышения, углов азимута и частот. Азимут и вертикальное изменение заданы в системе координат тела цели.

  • Q является количеством выборок TS в вертикальном изменении.

  • P является количеством выборок TS в азимуте.

  • K является количеством выборок TS в частоте.

Q, P и K обычно совпадают с длиной векторов, заданных в Elevation, Azimuth, и Frequency свойства, соответственно, за этими исключениями:

  • Чтобы смоделировать шаблон TS для сокращения вертикального изменения (постоянный азимут), можно задать шаблон TS как Q-by-1 вектор или 1 Q K матрицей. Затем вектор вертикального изменения задан в Elevation свойство должно иметь длину 2.

  • Чтобы смоделировать шаблон TS для сокращения азимута (постоянное вертикальное изменение), можно задать шаблон TS как 1 P вектором или 1 P K матрицей. Затем вектор азимута задан в Azimuth свойство должно иметь длину 2.

  • Чтобы смоделировать шаблон TS для одной частоты, можно задать шаблон TS как Q-by-P матрица. Затем вектор частоты задан в Frequency свойство должно иметь длину 2.

Пример: [10,0;0,-5]

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

Углы азимута раньше задавали угловые координаты каждого столбца матрицы или массива, заданного Pattern свойство. Задайте углы азимута как вектор длины-P. P должен быть больше два. Угловые модули в градусах.

Пример: [-45:0.1:45]

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

Углы возвышения раньше задавали координаты каждой строки матрицы или массива, заданного Pattern свойство. Задайте углы возвышения как вектор длины-Q. Q должен быть больше два. Угловые модули в градусах.

Пример: [-30:0.1:30]

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

Частоты раньше задавали применимую целевую силу для каждой страницы Pattern свойство в виде K - вектор элемента из положительных скалярных величин. K является количеством выборок TS в частоте. K должен быть не менее чем двумя. Единицы частоты находятся в герц.

Пример: [0:0.1:30]

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

Функции объекта

value

Целевая сила под заданным углом и частотой

toStruct

tsStruct = toStruct(tsssig) преобразует tsSignature объект tsssig к структуре tsStruct. Имена полей возвращенного tsStruct структура совпадает с именами свойства tssig объект.

Примеры

свернуть все

Задайте целевую силу (TS) твердого цилиндра 5 м длиной, погруженного в воду, и постройте значения TS вдоль сокращения азимута. Примите приближение короткой длины волны. Цилиндрический радиус составляет 2 м. Скорость звука составляет 1 520 м/с.

L = 5;
a = 2;

Создайте массив целевых сильных мест в двух длинах волн. Во-первых, укажите диапазон азимута и углов возвышения, по которым задан TS. Затем используйте аналитическую модель, чтобы вычислить целевую силу. Создайте изображение TS.

lambda = [0.12, .1];
c = 1520.0;
az = [-20:0.1:20];
el = [-10:0.1:10];
ts1 = ts_cylinder(L,a,az,el,lambda(1));
ts2 = ts_cylinder(L,a,az,el,lambda(2));
tsdb1 = 10*log10(ts1);
tsdb2 = 10*log10(ts2);
imagesc(az,el,tsdb1)
title('Target Strength')
xlabel('Azimuth (deg)')
ylabel('Elevation (deg)')
colorbar

Создайте tsSignature возразите и постройте сокращение вертикального изменения в 30 азимут.

tsdb(:,:,1) = tsdb1;
tsdb(:,:,2) = tsdb2;
freq = c./lambda;
tssig = tsSignature('Pattern',tsdb,'Azimuth',az,'Elevation',el,'Frequency',freq);
ts = value(tssig,30,el,freq(1));
plot(el,tsdb1)
grid
title('Elevation Profile of Target Strength')
xlabel('Elevation (deg)')
ylabel('TS (dBsm)')

function ts = ts_cylinder(L,a,az,el,lambda)
k = 2*pi/lambda;
beta = k*L*sind(el')*ones(size(az));
gamma = cosd(el')*ones(size(az));
ts = a*L^2*(sinc(beta).^2).*gamma.^2/2/lambda;
ts = max(ts,10^(-5));
end

function s = sinc(theta)
s = ones(size(theta));
idx = (abs(theta) <= 1e-2);
s(idx) = 1 - 1/6*(theta(idx)).^2;
s(~idx) = sin(theta(~idx))./theta(~idx);
end

Ссылки

[1] Urich, Роберт Дж. Принципы Подводного Звукового, 3-го редактора Нью-Йорк: McGraw-Hill, Inc. 2005.

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

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

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

Классы

Введенный в R2018b