Jump to content

Схема бабочки

График потока сигналов, соединяющий входы x (слева) с выходами y , которые зависят от них (справа), для шага «бабочка» БПФ Кули – Тьюки по основанию 2. Эта диаграмма напоминает бабочку (как на показанной для сравнения морфо-бабочке ), отсюда и название, хотя в некоторых странах ее еще называют диаграммой песочных часов.

В контексте быстрого преобразования Фурье алгоритмов « бабочка» — это часть вычислений, которая объединяет результаты меньших дискретных преобразований Фурье (ДПФ) в большее ДПФ или наоборот (разбивая большее ДПФ на подпреобразования). Название «бабочка» происходит от формы диаграммы потока данных в случае счисления 2, как описано ниже. [1] Считается, что самое раннее появление этого термина в печати произошло в техническом отчете Массачусетского технологического института за 1969 год . [2] [3] Эту же структуру можно найти и в алгоритме Витерби , используемом для поиска наиболее вероятной последовательности скрытых состояний.

Чаще всего термин «бабочка» появляется в контексте алгоритма БПФ Кули-Тьюки , который рекурсивно разбивает ДПФ составного размера n = rm на r меньших преобразований размера m, где r — «основание» преобразования. Эти меньшие ДПФ затем объединяются с помощью бабочек размера r , которые сами представляют собой ДПФ размера r (выполняемые m раз на соответствующих выходных данных подпреобразований), предварительно умноженные на корни из единицы (известные как коэффициенты поворота ). (Это случай «децимации по времени»; можно также выполнить шаги в обратном порядке, известные как «децимация по частоте», когда бабочки появляются первыми, а затем умножаются на коэффициенты вращения. См. также Кули-Тьюки о БПФ статью .)

бабочки Radix Диаграмма - 2

В случае алгоритма Кули-Тьюки счисления 2 бабочка представляет собой просто ДПФ размера 2, который принимает два входных параметра ( x 0 , x 1 ) (соответствующие выходные данные двух субпреобразований) и дает два выходных сигнала ( y 0 , y 1 ) по формуле (без учета коэффициентов вращения ):

Если нарисовать диаграмму потока данных для этой пары операций, то линии от ( x 0 , x 1 ) до ( y 0 , y 1 ) пересекаются и напоминают крылья бабочки , отсюда и название (см. также иллюстрацию справа). ).

БПФ с прореживанием во времени по основанию 2 разбивает ДПФ длины N на два ДПФ длины N /2, после чего следует этап объединения, состоящий из множества операций типа «бабочка».

Более конкретно, алгоритм БПФ с прореживанием во времени по основанию 2 при n = 2.  п входные данные относительно примитивного корня n-й степени из единицы опирается на O( n log 2   n ) бабочек вида:

где k — целое число, зависящее от вычисляемой части преобразования. Тогда как соответствующее обратное преобразование математически можно выполнить, заменив ω на ω −1 (и, возможно, умножив на общий масштабный коэффициент, в зависимости от соглашения о нормализации), можно также напрямую инвертировать бабочек:

соответствующий алгоритму БПФ с прореживанием по частоте.

Другое использование [ править ]

Бабочку также можно использовать для улучшения случайности больших массивов частично случайных чисел, приводя каждое 32- или 64-битное слово в причинный контакт с каждым другим словом с помощью желаемого алгоритма хеширования, так что изменение любого одного бита имеет возможность изменения всех битов в большом массиве. [4]

См. также [ править ]

Ссылки [ править ]

  1. ^ Алан В. Оппенгейм, Рональд В. Шафер и Джон Р. Бак, Обработка сигналов в дискретном времени , 2-е издание (Аппер-Сэддл-Ривер, Нью-Джерси: Прентис-Холл, 1989)
  2. ^ Си Джей Вайнштейн (21 ноября 1969 г.). Эффекты квантования в цифровых фильтрах (отчет). Лаборатория Линкольна Массачусетского технологического института . п. 42. Архивировано из оригинала 11 февраля 2015 года . Проверено 10 февраля 2015 г. Это вычисление, называемое «бабочкой».
  3. ^ Ципра, Барри А. (4 июня 2012 г.). «БПФ и диаграмма-бабочка» . mathoverflow.net . Проверено 10 февраля 2015 г.
  4. ^ * Пресс, WH; Теукольский, С.А.; Феттерлинг, WT; Фланнери, BP (2007), «Раздел 7.2. Полное хеширование большого массива» , Численные рецепты: искусство научных вычислений (3-е изд.), Нью-Йорк: Cambridge University Press, ISBN  978-0-521-88068-8 , заархивировано из оригинала 11 августа 2011 г. , получено 13 августа 2011 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c6a3bda74af5255290f4ac84e3cd3780__1698942180
URL1:https://arc.ask3.ru/arc/aa/c6/80/c6a3bda74af5255290f4ac84e3cd3780.html
Заголовок, (Title) документа по адресу, URL1:
Butterfly diagram - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)