2014 dxdy logo

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

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




 
 Свертка ФПВ через БПФ в Excel
Сообщение27.01.2024, 18:04 
День добрый!

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

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

 
 
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение27.01.2024, 19:33 
Аватара пользователя
(Не обязательно Excel, и не обязательно БПФ)
Надо дополнять нулями не только до степени двойки, а чтобы было вдвое (не менее чем, вдвое) больше отсчётов, чем точек в исходных последовательностях. См. Рабинер и Шафер или другие пособия по ДСП.
В свёртке будет вдвое больше точек, чем в свёртываемых отрезках. У Вас просто нет места для удлинившегося хвоста. А по свойствам преобразования Фурье имеет место "зацикливание", не поместившийся хвост накладывается на начало результата.

 
 
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение27.01.2024, 20:17 
Спасибо большое, теперь все ОК :-)

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

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

 
 
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение28.01.2024, 08:03 
Аватара пользователя
Если изначально было по 201 точке, то в свёртке должно быть 402, нет?

 
 
 
 Re: Свертка ФПВ через БПФ в Excel
Сообщение28.01.2024, 15:54 
Евгений Машеров в сообщении #1627269 писал(а):
Если изначально было по 201 точке, то в свёртке должно быть 402, нет?


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

 
 
 [ Сообщений: 5 ] 


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