2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу 1, 2  След.
 
 получить минимально фазовый импульс с заданной ачх
Сообщение16.10.2014, 23:01 
Аватара пользователя
Здравствуйте.

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

Сейчас я выполняю преобразование фурье от спектра, и получаю импульс.
Но, так как фазу я задаю нулевую, то импульс получается симметричный во времени, наподобие функции синк, с "хвостами" перед и после "основного тела импульса".

Изображение
А хотелось бы иметь импульс у которого было бы минимум хвостов перед телом.

Вроде как для этого у него должна быть ФЧХ особым образом зависящая от АЧХ. но как именно я так и не смог найти. Может кто в курсе, как сгенерировать импульс заданного спектра без "предзвона"?

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 13:22 
Математически этот вопрос можно переформулировать так.
Пусть задана "хорошая" функция $f(x)$, с носителем в луче $(0,\infty)$. Обозначим ее преобразование Фурье
$\varphi (\xi) = \int \limits_0^{\infty} f(x) e^{i\xi x} dx$
Предположим, что нам известна $\psi (\xi) = |\varphi(\xi)|$. Надо восстановить $\varphi (\xi)$, а затем и $f(x)$.
Возможный путь решения таков. Коль скоро при $x< 0$ функция обращается в 0, то ее преобразование Фурье $\varphi (\xi)$ должна быть аналитична в полуплоскости $\operatorname{Im} \xi > 0$. Следовательно, надо найти вещественную функцию $\lambda(\xi)$ такую, что $\psi (\xi)e^{i\lambda(\xi) }$ - имеет аналитическое продолжение в верхнюю полуплоскость. Далее рассуждаем не строго.
Логарифмируя, получаем, что в верхнюю полуплоскость должна продолжаться функция $\ln (\psi (\xi)) + i\lambda(\xi) $. Мы видим здесь вещественную и мнимую часть аналитической функции (не забудем, что $\psi(\xi)$ - неотрицательна). Вещественную часть знаем. Значит мнимая часть определяется. Таким образом, надо в верхней полуплоскости решить задачу Неймана
$\Delta u(\xi,\eta) = 0$
$\frac{\partial}{\partial \eta}u(\xi,0) = \ln (\psi (\xi))$
После этого просто полагаем $\lambda (\xi) = \frac{\partial}{\partial \xi}u(\xi,0)$.
С точки зрения вычислений, вместо полуплоскости, разумеется, лучше перейти к кругу (сделав конформное отображение полуплоскости на круг).

(Оффтоп)

Я так полагаю, что $\psi(\xi) \to 1$ при $\xi \to \pm \infty$. Поэтому "на бесконечности" логарифм зануляется и "все склеится".

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 14:28 
Аватара пользователя
как это запрограммировать

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 14:59 
Хм, надо решать задачу Неймана в круге. Пакеты какие-то ...
Но сначала вопрос. Как насчет той самой $\psi (\xi)$? Какой-нибудь примерный ее вид можете указать?
Дело в том, что логарифмирование вещь хорошая, но "не любит" нулей.
Предположим, что $\psi (\xi)$ - что-то ненулевое, быстро выходящее на константу (ненулевую !) вне интервала $\xi \in (a,b)$. Тогда быстренько отображаем полуплоскость на круг (дробно-линейным отображением). На границе круга задаем нормальную производную (вычисленную через $\ln (\psi (\xi))$), численно решаем задачу Неймана, "сбрасываем" решение обратно на полуплоскость (только границу), численно дифференцируем и получаем "фазу" $\lambda (\xi)$.
А вот если там будут нули, то все сложнее. В частности, если $\psi (\xi)$ выходит на 0 то решения задачи может и не быть или оно будет "плохое". Короче проблемы. От дискретных нулей можно избавиться, поделив на полином вида $\prod (\xi - a_i)$, где $a_i$ - нули функции $\psi (\xi)$.
Так что сначала надо бы взглянуть на $\psi (\xi)$. А потом уже разбираться с задачей Неймана.

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 15:17 
Аватара пользователя
Изображение

-- 17.10.2014, 16:20 --

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

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 15:21 
а спектр бесконечный?

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 15:24 
Аватара пользователя
upgrade в сообщении #919871 писал(а):
а спектр бесконечный?

нет, от от 20 герц до 24000 герц.
процесс идет в дискретном времени и частотой выборки 48000.

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 15:47 
и считаете, видимо, БПФ-ом, отсюда и хвосты. как исправить не в курсе.

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 16:25 
Аватара пользователя
upgrade в сообщении #919878 писал(а):
и считаете, видимо, БПФ-ом, отсюда и хвосты. как исправить не в курсе.

не хвосты потому что фаза нулевая у всех гармоник, как у синка.

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 17:01 
Есть еще один вариант. Можно без задачи Неймана. Но тогда надо сосчитать сингулярный интеграл :-)
$\lambda (\xi) = -\frac {1}{\pi} \int \limits_{-\infty}^{\infty}\frac {\ln (\psi(z))dz}{z - \xi}$
От особенности (если хочется) можно избавиться
$\lambda (\xi) = -\frac {1}{\pi} \int \limits_{-\infty}^{\infty}\frac {\ln (\psi(z)) - \ln (\psi(\xi))}{z - \xi}dz$

Такое вычисление приемлемо?

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 17:46 
Аватара пользователя
sup в сообщении #919894 писал(а):
Есть еще один вариант. Можно без задачи Неймана. Но тогда надо сосчитать сингулярный интеграл :-)
$\lambda (\xi) = -\frac {1}{\pi} \int \limits_{-\infty}^{\infty}\frac {\ln (\psi(z))dz}{z - \xi}$
От особенности (если хочется) можно избавиться
$\lambda (\xi) = -\frac {1}{\pi} \int \limits_{-\infty}^{\infty}\frac {\ln (\psi(z)) - \ln (\psi(\xi))}{z - \xi}dz$

Такое вычисление приемлемо?

а что здесь есть что?

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 18:21 
Хм, я вроде уже писал.
Итак, пусть сигнал $f(t)$, его преобразование Фурье
$\hat f (\xi)= \int \limits_{-\infty}^{\infty} f(t) e^{i\xi t} dt$
Тогда $\psi(\xi) = |\hat f (\xi)|$ - та самая АЧХ.
Далее, пусть наоборот $\psi(\xi)$ задана. Нам хочется найти такую функцию $f(x)$, что $\psi(\xi) = |\hat f (\xi)|$. Причем мы хотим, чтобы $f(x) = 0$ при $x<0$. Поскольку модуль функции $\hat f  (\xi)$ уже задан, то речь может идти только лишь о комплексной экспоненте (которая не меняет модуль) $e^{i\lambda (\xi)}$. Т.е.
$\hat f (\xi) = \psi (\xi) e^{i\lambda (\xi)}$

Как я показал выше, функцию $\lambda(\xi)$ можно вычислить с помощью сингулярного интеграла от $\psi(\xi) = |\hat f (\xi)|$.
Далее начинается "привязка" теории к конкретным вычислениям. В теории нет децибелов и герц. Нет и БПФ. Вот здесь начинается Ваша задача: как применить эту теорию в данном конкретном случае.

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 19:20 
Аватара пользователя
То есть для того чтобы найти ФЧХ на данной частоте я вычисляю этот определенный интеграл по "частоте" z от минус до плюс бесконечности. и так для каждой частоты АФЧХ.
получив ФЧХ, я делаю преобразование фурье от АЧХ и ФЧХ и получаю сигнал.


а вы давали два разных интеграла, второй "позволяет избавиться от особенности". математически вроде все равно какой вычислять, примерно одинаковая сложность. а в чем их отличие?

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 20:17 
Первый интеграл с особенностью. Он существует только в смысле Коши. Второй интеграл "нормальный". В нем устранимая особенность.
Как я понимаю, на графике уже логарифм амплитуды (с точностью до множителя). Отражаем этот график и на отрицательную полуось. Получим функцию, которая как-то там меняется на отрезке $(-R,R)$ (здесь $R$ соответствует 24кгц или даже меньше), а вне него выходит на константу $K$ (примерно -90). Продолжаем эту функцию на всю ось константой $K$. Вот и получилась $\ln (\psi(\xi))$. Ее, по идее, и надо интегрировать. Однако ясно, что постоянная составляющая в этой функции - суть множитель искомого сигнала, который на фазу не влияет. Поэтому вычитаем константу $K$ (ту самую) и получаем функцию $g(\xi) = \ln (\psi(\xi)) - K$. Вот ее то мы и будем интегрировать. Самое главное, что она финитна. Поэтому проблемы с интегрированием по бесконечному интервалу не будет.

$\lambda (\xi) = -\frac {1}{\pi} \int \limits_{-R}^{R}\frac {g(z) - g(\xi)}{z - \xi}dz$

После этого вы получите $\hat f(\xi) = \psi(\xi)e^{i\lambda(\xi)}$. А затем и обратное преобразование Фурье
$f(t) = \frac {1}{2\pi}\int \limits_{-\infty}^{\infty} \hat f (\xi) e^{-i\xi t} d\xi$

Отмечу, что "фаза" $\lambda (\xi)$ вовсе не финитна, а убывает на бесконечности порядка $\sim 1/\xi$.
Есть тут еще один вопрос. А получится ли в конце-концов вещественная функция? Вроде бы из соображений четности все должно получиться, но надо бы проверить. Если вдруг это не так, то задача станет более сложной.

(Оффтоп)

Возможно, я попробую показать Вам эту технику на каком-нибудь простом примере. Но уже не сегодня.

 
 
 
 Re: получить минимально фазовый импульс с заданной ачх
Сообщение17.10.2014, 20:45 
Аватара пользователя
2 sup:
у меня есть и "недецибельные" значения спектра, я сам их расчитываю.


интегралы я думаю вычислять тупо численно, суммируя подинтегральную функцию.

(я не оченьто математик могу не совсем правильно выражаться)

 
 
 [ Сообщений: 16 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group