You are currently viewing Python | Обратное быстрое преобразование Уолша Адамара

Python | Обратное быстрое преобразование Уолша Адамара

Обратное быстрое преобразование Уолша Адамара

Это эффективный алгоритм, упорядоченный по Адамару, для вычисления обратного преобразования Уолша Адамара (WHT). Обычное вычисление WHT имеет сложность N = 2m, но использование IFWHT уменьшает вычисление до O(n2). FWHT требует O(n логических) операций сложения и вычитания. Это алгоритм «разделяй и властвуй», который рекурсивно разбивает WHT.

sympy.дискретные.преобразования.ifwht( ) :

Он может выполнять обратное преобразование Уолша Адамара (WHT). Этот метод основан на упорядочении последовательностей Адамара. Автоматически последовательность дополняется нулем справа, потому что для параметра radix-2 FWHT требуется номер точки выборки в степени 2.

Синтаксис: 
sympy.discrete.transforms.ifwht()

Параметры : 
-> seq : [iterable] sequence on which IWHT is to be applied.

Возвращает : 
Коэффициент обратного быстрого преобразования преобразования Уолша Адамара

Пример № 1 :

# import sympy
from sympy import ifwht

# sequence
seq = [15, 21, 13, 44]

# ifwht
transform = ifwht(seq)
print ("Transform : ", transform)

Выход:

Трансформация : [93/4, -37/4, -21/4, 25/4]

Пример № 2:

# import sympy
from sympy import ifwht

# sequence
seq = [23,
	56,
	12,
	555]

# ifwht
transform = ifwht(seq)
print ("Transform : ", transform)

Выход:

Трансформация : [323/2, -144, -122, 255/2]