Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.31;
Скачать: CL | DM;

Вниз

Можно ли восстановить функцию по ее коэффициентам Фурье?   Найти похожие ветки 

 
Aldor ©   (2005-07-08 09:17) [0]

Совсем меня переклинило. Понятно, что можно. Решение, как говорится, на языке вертится, но в что-то материальное не превращается.

Ведь получаем бесконечное количество интегральных уравнений с одним неизвестным!
Тем более в моем случае все коэф-ты равны и постоянны.


 
MBo ©   (2005-07-08 09:20) [1]

Дык обратное Фурье-преобразование сделать...

>в моем случае все коэф-ты равны и постоянны
?


 
NN_   (2005-07-08 09:39) [2]

коэффициенты не "её", не функции, а разложения.
пример - сигнал состоит из синусоиды 100 герц. и ни из чего больше.
коэффициенты разложения отвечают за другие частоты, скажем за 99 герц и за 101 герц и подобное - они будут не нулевые. этот факт не помешает собрать сигнал заново с приемлемой погрешностью, но нельзя сказать, что функция была разложена на _её_ частоты.
была лишь проверена корреляция частот разложения с частотами входящего сигнала.


 
MBo ©   (2005-07-08 10:06) [3]

Смотрим сюда.
http://mbo88.narod.ru/3.gif
Синусоида (верхний рисунок, светлая кривая) подверглась FFT, из-за ограниченности диапазона (эквивалент свертки с прямоугольным окном) в частотном спектре (амплитуда FFT - нижний рисунок, черная кривая, а светлая - реальная часть FFT) не будет дельта-функции (узкого пика).
Обратное преобразование дает темную кривую (реальная часть после BackFFT) на верхнем рисунке (амплитуда понижена для удобосмотрения).

Может быть, тепреь вопросы будут более конкретны?


 
Aldor ©   (2005-07-08 10:57) [4]

NN_
Согласен, это коэффициенты разложения. Спасибо за поправку.

MBo
Может быть, тепреь вопросы будут более конкретны?


Постараюсь: у меня есть аналитическое представление всех коэффициентов Фурье и, естественно, сама ортогональная система. Мне нужно получить опять же аналитический вид исходной функции.

P.S. Сорри, про равные коэффициенты я ошибся. Они просто постоянны. Но разлчны.

Кстати, нашел даже теорему:

полный набор коэффициентов Фурье однозначно определяет соответствующую функцию почти всюду в интервале разложения

так что все возможно...


 
Alx2 ©   (2005-07-08 11:01) [5]

>Aldor ©   (08.07.05 10:57) [4]

Есть аналитика? Выкладывайте. Если получится проссумировать - напишу формулу.

(подход в случае восстановления по ряду Фурье сводится к суммированию геом. прогрессии, если тригонометрию писать в комплексном виде).

Если же интегральное преобразование - будет несколько сложнее.


 
Aldor ©   (2005-07-08 11:45) [6]

Alx2
Т.е. Ваш подход работает в только в частных случаях? А в общем случае способ есть?
Но все равно интересно, где получается прогрессия, если тригонометрию к комплсекному виду привести.
Если нетрудно:

Fk(x) = 1 / (Pi * k) * sin(Pi * x / q) * ((-1)^k - 1)
F(x, y) = summ(Fk(x) * sin(Pi * k * y) | k = (1, inf)) (k - индекс суммирования)

Т.е. разложение только по синусам. Нужно найти аналитическое представление функции F(x, y) в конечном виде. Как думаете, что-нить здесь получится?


 
Alx2 ©   (2005-07-08 11:54) [7]

>Aldor ©   (08.07.05 11:45) [6]

Получил. Смотрю.


 
TUser ©   (2005-07-08 12:05) [8]

> Нужно найти аналитическое представление функции F(x, y) в конечном виде. Как думаете, что-нить здесь получится?

Получится. С заданной точностью.

PS. Для ускорения - посмотрите в сторону FFT.


 
Alx2 ©   (2005-07-08 12:14) [9]

>Aldor ©   (08.07.05 11:45) [6]

Вот что вышло (ряд суммировал на Maple после преобразования члена sin(Pi * k * y) в комплексный вид (sin(Pi * k * y)=-1/2*I*(exp(I*Pi*k*y)-1/exp(I*Pi*k*y)))):

1/2*sin(Pi*x/q)*(arctan(-sin(Pi*y),cos(Pi*y)+1)-arctan(sin(Pi*y),cos(Pi*y)+1)-arctan(sin(Pi*y),1-cos(Pi*y))+arctan(-sin( Pi*y),1-cos(Pi*y)))/Pi

Главное выяснено - существует аналитика. А сейчас попробую посчитать руками, чтобы в человеческий вид превратить :)


 
Aldor ©   (2005-07-08 12:35) [10]

TUser
Получится. С заданной точностью.

 Нужна конечная аналитика. Заданная погрешность - 0 :)

Alx2
 Во-первых, спасибо.
 Только не понял выражения arctan(sin(Pi*y),cos(Pi*y)+1).
arctan(x, y) = arctan(x / y)?

Каким матодом считает Maple? И почему только в комплексном виде?


 
Aldor ©   (2005-07-08 12:36) [11]

матодом -> методом :)


 
TUser ©   (2005-07-08 12:37) [12]

> Нужна конечная аналитика. Заданная погрешность - 0 :)

Если известны все коэввициенты Фурье - то считай, что аналитика у тебя есть. Только обычно коэффициенты изветсны вполь до некоторого.


 
Aldor ©   (2005-07-08 13:32) [13]

TUser ©   (08.07.05 12:37) [12]

> Нужна конечная аналитика. Заданная погрешность - 0 :)

Если известны все коэввициенты Фурье - то считай, что аналитика у тебя есть. Только обычно коэффициенты изветсны вполь до некоторого.


 Так точно, известны все коэф-ты. Вопрос как раз в том, как получить из них аналитическое выражение исходной функции :)


 
Alx2 ©   (2005-07-08 13:42) [14]

>Aldor ©   (08.07.05 12:35)

>arctan(x, y) = arctan(x / y)?

Для действительных - да.

>Каким методом считает Maple? И почему только в комплексном виде?

В комплексном виде - чтобы выйти на геом. прогрессию.

Попробуем по-порядку:

sin(Pi*x/q) сразу выносим за сумму.

рассматриваем сумму
((-1)^k-1)*sin(Pi*k*y)/(Pi*k) где k=1..infinity

попробуем привести сумму к чему-то похожему на геом. прогрессию. То есть к виду A*sum(alpha^k,k=1..infinity)
запишем sin(Pi*k*y) в виде

sin(Pi*k*y) = 1/2*I*(exp(-I*Pi*k*y)-exp(I*Pi*k*y)) = 1/2*I*(1/alpha^k-alpha^k)
где alpha = exp(I*Pi*y)

после общий член нашего ряда превращается в

((-1)^k-1)*(1/2*I*(1/alpha^k-alpha^k))/(Pi*k)

Его сумма есть -1/2*I*(-ln(alpha-1)+ln(1-alpha))/Pi (выполнется, если |alpha|<1, что и требуем)

подставляя alpha = exp(I*Pi*y) и переводя в тригонометрический вид получаемб что сумма = -1/2 (вместо той фигни, что я писал ранее - она просто сократилась при счете вручную).

И итоговый ответ:
Искомая функция есть -1/2*sin(Pi*x/q) при нецелом y
Иначе (при целом y) равна нулю.


 
Alx2 ©   (2005-07-08 14:18) [15]

Пардон...
Поправочка:
И итоговый ответ:
Искомая функция есть 1/2*sin(Pi*x/q)*csgn(sin(Pi*y)*(-1+cos(Pi*y)))
где csgn(a)=  {  1 если a>0; -1 если a<0} // т.е. знак числа


 
Aldor ©   (2005-07-08 15:25) [16]

Alx2

Извиняюсь, не понял как от
summ(((-1)^k-1)*(1/2*I*(1/alpha^k-alpha^k))/(Pi*k) | k=1, inf) Вы перешли к -1/2*I*(-ln(alpha-1)+ln(1-alpha))/Pi. Есть такие правила суммирования прогрессий в комплексной плоскости?

и еще:
sin(Pi*k*y) = 1/(2*I)*(exp(-I*Pi*k*y)-exp(I*Pi*k*y)), т.е. I в знаменателе, ведь так?


 
Alx2 ©   (2005-07-08 15:32) [17]

>Aldor ©   (08.07.05 15:25) [16]

>Извиняюсь, не понял как от
>summ(((-1)^k-1)*(1/2*I*(1/alpha^k-alpha^k))/(Pi*k) | k=1, inf)
>Вы перешли к -1/2*I*(-ln(alpha-1)+ln(1-alpha))/Pi.

Здесь первообразная геометрической прогрессии. Ее можно взять, если есть абсолютная (кажется, не только абсолютная - не помню точно теорему) сходимость ряда.

>sin(Pi*k*y) = 1/(2*I)*(exp(-I*Pi*k*y)-exp(I*Pi*k*y)), т.е. I в
>знаменателе, ведь так?

В числителе (В оригинальной формуле - в знаменателе. Но домножим числитель и знаменатель на I - поменяется знак знаменателя и I "уйдет" в числитель)

Результат (с учетом последней поправки) вроде-бы правильный :)


 
Alx2 ©   (2005-07-08 15:41) [18]

>кажется, не только абсолютная - не помню точно теорему
Поправка: нужна равномерная сходимость и непрерывность членов ряда.


 
Aldor ©   (2005-07-09 16:22) [19]

Alx2
Здесь первообразная геометрической прогрессии


 Первообразная? Хм.. здесь же нет предела интегральных сумм... Можно ссылочку на теорему или процитировать ее здесь? Если честно, в первый раз слышу и было бы очень интересно и полезно.

В числителе (В оригинальной формуле - в знаменателе. Но домножим числитель и знаменатель на I - поменяется знак знаменателя и I "уйдет" в числитель)
 Ах, да :))))) :fool:


 
Alx2 ©   (2005-07-09 16:28) [20]

>Aldor ©   (09.07.05 16:22) [19]

суммируем ряд 1/k * alpha^k  k = 0..infinity
Он несколько "неудобен".
А удобен буден ряд, который составлен из производных общего члена:

1/k * D(alpha^k)  = 1/k * k * alpha^ (k-1) = 1/alpha * alpha^k

А это уже геометрическая  прогрессия.

Ее сумма: 1/(1-alpha)

сумма исходного ряда есть первообразная суммы ряда из производных : int(1/(1-alpha),alpha) = - ln|1-alpha| + C

Все это имеет право на жизнь при условии равномерной сходимости и непрерывности членов ряда.


 
Alx2 ©   (2005-07-09 16:29) [21]

Блин!
>суммируем ряд 1/k * alpha^k  k = 0..infinity

Кончено, следует читать:
суммируем ряд 1/k * alpha^k  k = 1 ..infinity


 
Aldor ©   (2005-07-09 20:44) [22]

Alx2
сумма исходного ряда есть первообразная суммы ряда из производных


 Ааа, теорема о почленном интегрировании/дифференцировании! Да, интересное применение. Спасибо за способ!



Страницы: 1 вся ветка

Текущий архив: 2005.07.31;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.04 c
3-1119353279
NikNet
2005-06-21 15:27
2005.07.31
КАк задается ДАТА и Время в поле? в Paradox/DBase/MSSQL?


1-1121327926
Ascana
2005-07-14 11:58
2005.07.31
Тормозит компонент TListView


3-1119432152
new___
2005-06-22 13:22
2005.07.31
не найден Ehlib70.bpl


1-1120919808
Igor_thief
2005-07-09 18:36
2005.07.31
Как изменить ширину полосы прокрутки в ListBox?


1-1120763531
Kastusik
2005-07-07 23:12
2005.07.31
Перерисовка в TListView