Жылдам Уолш-Хадамарды түрлендіру - Fast Walsh–Hadamard transform - Wikipedia

Ұзындығы 8 векторға қолданылатын жылдам Уолш-Хадамарды түрлендіру
Кіріс векторына мысал (1, 0, 1, 0, 0, 1, 1, 0)

Есептеу математикасында Хадамард бұйырды Уолш - Хадамардтың жылдам өзгеруі (FWHTсағ) тиімді болып табылады алгоритм есептеу үшін Уолш-Хадамард трансформациясы (WHT). WHT тапсырысының аңғалдықпен орындалуы болар еді есептеу күрделілігі туралы O (). FWHTсағ талап етеді қосу немесе азайту.

FWHTсағ Бұл алгоритмді бөлу және бағындыру бұл рекурсивті WHT өлшемін бұзады екі кіші WHT өлшеміне . [1] Бұл іске асырудың рекурсивті анықтамасынан кейін Хадамард матрицасы :

The әр кезең үшін қалыпқа келтіру факторлары топтастырылуы немесе тіпті алынып тасталуы мүмкін.

The реттілігі тапсырыс берілді, сонымен қатар Walsh деп аталады, жылдам Walsh-Hadamard трансформациясы, FWHTw, FWHT есептеу арқылы алынадысағ жоғарыдағыдай, содан кейін шығуларды қайта реттеңіз.

Уальш-Хадамард түрлендіруінің қарапайым жылдам және рекурсивті емес орындалуы Хадамард түрлендіру матрицасының ыдырауынан туындайды. , мұндағы A - m-тің түбірі . [2]

Python мысал коды

деф басқа(а) -> Жоқ:    «» «А. Массивінің орнында жылдам Уолш - Хадамарды түрлендіру.» «»    сағ = 1    уақыт сағ < лен(а):        үшін мен жылы ауқымы(0, лен(а), сағ * 2):            үшін j жылы ауқымы(мен, мен + сағ):                х = а[j]                ж = а[j + сағ]                а[j] = х + ж                а[j + сағ] = х - ж        сағ *= 2

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ Фино, Б.Дж .; Algazi, V. R. (1976). «Жылдам Уальш - Хадамдар трансформациясының бірыңғай матрицалық емі». Компьютерлердегі IEEE транзакциялары. 25 (11): 1142–1146. дои:10.1109 / TC.1976.1674569.
  2. ^ Ярлагадда мен Херши, «Хадамарды матрицалық талдау және синтездеу», 1997 (Springer)

Сыртқы сілтемелер