ihtrans

Обратное преобразование Гильберта

Описание

пример

f = ihtrans(H) возвращает обратное преобразование Гильберта символьной функции H. По умолчанию независимая переменная x и переменная преобразования t.

пример

f = ihtrans(H,transVar) использует переменную преобразования transVar вместо t.

пример

f = ihtrans(H,var,transVar) использует независимую переменную var и переменной преобразования transVar вместо x и t, соответственно.

  • Если все входные параметры массивов одного размера, то ihtrans действует поэлементно.

  • Если один вход является скаляром, а другие - массивами того же размера, то ihtrans расширяет скаляр в массив того же размера.

  • Если f - массив символьных выражений с различными независимыми переменными, затем var должен быть символьным массивом с элементами, соответствующими независимым переменным.

Примеры

свернуть все

Вычислите обратное преобразование Гильберта cos(x). По умолчанию обратное преобразование возвращает функцию t.

syms x;
f = cos(x);
H = ihtrans(f)
H = -sin(t)-sin(t)

Вычислите обратное преобразование Гильберта sinc(t) функция, которая равна sin(pi*t)/(pi*t). Выразите результат как функцию s.

syms H(t) f(s);
H(t) = sinc(t);
f(s) = ihtrans(H,s)
f(s) = 

cos(πs)s-1sπ(cos (sym (pi) * s )/s - 1/s )/sym (pi)

Постройте график sinc функция и ее обратное преобразование Гильберта.

fplot(H(t),[0 6],'b')
hold on
fplot(f(s),[0 6],'r')
legend('sinc(t)','f(s)')

Figure contains an axes. The axes contains 2 objects of type functionline. These objects represent sinc(t), f(s).

Создайте синусоиду с положительной частотой в реальном пространстве.

syms A x t u;
assume([x t],'real')
H = A*sin(2*pi*10*t + 5*x)
H = Asin(5x+20πt)A * sin (5 * x + 20 * sym (pi) * t)

Примените 90-градусный сдвиг фазы к положительной частотной составляющей с помощью обратного преобразования Гильберта. Задайте независимую переменную следующим x и переменную преобразования как u, соответственно.

f = ihtrans(H,x,u)
f = Acos(5u+20πt)A * cos (5 * u + 20 * sym (pi) * t)

Теперь создайте комплексный сигнал с отрицательной частотой. Примените сдвиг фазы -90 градусов к отрицательной частотной составляющей с помощью обратного преобразования Гильберта.

Z = A*exp(-1i*10*t)
Z = Ae-10tiA * exp ((-10 * t * sym (1i)))
f = ihtrans(Z)
f = -Ae-10uii-A * exp ((-10 * u * sym (1i)) * sym (1i)

Создайте реальный сигнал f(s) с двумя частотными составляющими, 60 Гц и 90 Гц.

syms s f(x) F(t)
f(s) = sin(2*pi*60*s) + sin(2*pi*90*s)
f(s) = sin(120πs)+sin(180πs)sin (120 * sym (pi) * s) + sin (180 * sym (pi) * s)

Вычислите соответствующий аналитический сигнал F(t) использование обратного преобразования Гильберта.

F(t) = ihtrans(f(s),t) + 1i*f(t)
F(t) = cos(120πt)+cos(180πt)+sin(120πt)i+sin(180πt)icos (120 * sym (pi) * t) + cos (180 * sym (pi) * t) + sin (120 * sym (pi) * t) * sym (1i) + sin (180 * sym (pi) * t) * sym (1i)

Вычислите мгновенную частоту F(t) использование

finstant(t)=12πdϕ(t)dt,

где ϕ(t)=arg[F(t)] - мгновенная фаза аналитического сигнала.

InstantFreq(t) = diff(angle(F(t)),t)/(2*pi);
assume(t,'real')
simplify(InstantFreq(t))
ans = 75sym (75)

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

свернуть все

Вход, заданный как символьное выражение, символьная функция, символьный вектор или символьная матрица.

Независимая переменная, заданная как символьная переменная, символьный вектор или символьная матрица. Эта переменная обычно находится во временном интервале. Если вы не задаете переменную, то ihtrans использует x по умолчанию. Если H не содержит x, затем ihtrans использует функцию symvar для определения независимой переменной.

Переменная Преобразования, заданная как символьная переменная, символьный вектор или символьная матрица. Эта переменная находится в той же области, что и var. Если вы не задаете переменную, то ihtrans использует t по умолчанию. Если t является независимой переменной H, затем ihtrans использует переменную преобразования u.

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

свернуть все

Обратное преобразование Гильберта функции входа H. Область выхода f является функцией от переменной, заданной как transVar.

Когда ihtrans не может преобразовать функцию входа, она возвращает недооцененный вызов. Чтобы вернуть исходное выражение, примените преобразование Гильберта к выходу при помощи htrans.

Подробнее о

свернуть все

Обратное преобразование Гильберта

Обратное преобразование Гильберта f = f (t)   H = H(x) выражения относительно переменной x в точке t является

f(t)=1πp.v.H(x)xtdx.

Здесь p.v. представляет основное значение Коши интеграла. Функция H(x) может быть сложной, но x и t должны быть реальными.

Совет

  • Чтобы вычислить преобразование Гильберта, используйте htrans. Обратное преобразование Гильберта функции равно отрицательному ее преобразованию Гильберта.

  • Для сигнала во временном интервале обратное преобразование Гильберта применяет 90-градусный сдвиг фазы к отрицательным частотам соответствующих компонентов Фурье. Это также применяет сдвиг фазы -90 градусов к положительным частотам.

  • Реальный сигнал b - гармонический сопряженный его обратного преобразования Гильберта a = ihtrans(b). Обратное преобразование Гильберта a = real(z) и сигнал b = imag(z) сформировать аналитический сигнал z = a + 1i*b.

См. также

| | | |

Введенный в R2019a