2014 dxdy logo

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

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


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Свертка ФПВ через БПФ в Excel
Сообщение27.01.2024, 18:04 


27/01/24
5
День добрый!

Долго топтался в прихожей, не знал в какую мне дверь зайти со своим вопросом. Вот решил сюда, не обессудьте. :-)

Вопрос следующий. Хочу в Excel рассчитать функцию плотности вероятности (ФПВ) суммы двух случайных величин используя алгоритм быстрого преобразования Фурье (БПФ). Но в Excel можно подать на вход только последовательность данных целой степени числа 2 (2, 4, 8, 16, 32 и т.д. до 4096) поэтому при дискретизации ФПВ ее значения всегда приходится дополнять нулями, что бы Excel ее принял для расчета. В итоге после прямого преобразования ФПВ, перемножения двух образов и обратного преобразования их произведения с умножением на шаг дискретизации получается требуемая ФПВ суммы двух СВ, но с одним урезанным хвостом с одной стороны и каким-то артефактом значений на другом хвосте. Но в целом, в пределах трех сигма расчет верный и от теоретической ФПВ не отличается.
Так вот, это из-за неподходящего алгоритма БПФ в Excel так получается или я что-то не так делаю ?

 Профиль  
                  
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение27.01.2024, 19:33 
Заслуженный участник
Аватара пользователя


11/03/08
10003
Москва
(Не обязательно Excel, и не обязательно БПФ)
Надо дополнять нулями не только до степени двойки, а чтобы было вдвое (не менее чем, вдвое) больше отсчётов, чем точек в исходных последовательностях. См. Рабинер и Шафер или другие пособия по ДСП.
В свёртке будет вдвое больше точек, чем в свёртываемых отрезках. У Вас просто нет места для удлинившегося хвоста. А по свойствам преобразования Фурье имеет место "зацикливание", не поместившийся хвост накладывается на начало результата.

 Профиль  
                  
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение27.01.2024, 20:17 


27/01/24
5
Спасибо большое, теперь все ОК :-)

У меня была 201 точка (разбил действительную прямую с шагом 0,1 для ФПВ N(0,1) от -10 до 10 с запасом ) и я добавил 55 нулей.

После добавления нулей до 512 отсчетов теперь все красиво. Единственно только на выходе получил 197 точек, вместо 201 первоначальных, что не критично.

 Профиль  
                  
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение28.01.2024, 08:03 
Заслуженный участник
Аватара пользователя


11/03/08
10003
Москва
Если изначально было по 201 точке, то в свёртке должно быть 402, нет?

 Профиль  
                  
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение28.01.2024, 15:54 


27/01/24
5
Евгений Машеров в сообщении #1627269 писал(а):
Если изначально было по 201 точке, то в свёртке должно быть 402, нет?


Изначально было 201 точка со значениями ФПВ плюс я добавил 311 нулей. После обратного преобразования опять получил 512 точек из которых ненулевых 197. Вот как-то так мне Excel выдал.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: gris


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group