Скачиваний:
23
Добавлен:
15.06.2014
Размер:
290.76 Кб
Скачать

58.Вычисление дискретного преобразования Фурье на основе алгоритмов свертки и корреляции.

ДПФ – оператор корреляции

 

nk

1

(n2

k 2

(n k)2 )

 

 

Воспользуемся тождеством

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

Выражение для ДПФ после подстановки

 

 

 

 

 

 

 

 

 

 

N 1

 

 

 

2

N 1

2

 

2

 

X (k) x[n] nk k

2

n

2 x[n] (n k )

2

 

 

n 0

 

 

 

 

n 0

 

 

 

примитивный элемент циклической группы

W = exp(–j 2 / N)

Алгоритм ЛЧМ-Z преобразования

Алгоритм позволяет эффективно вычислить Z-преобразование последовательности {x[n]}.

Пусть N-точечная последовательность {x[n]} имеет образ Z-преобразования

N 1

X z x n z n

n 0

По определению ДПФ заданной последовательности связано с Z-преобразованием выражением

X (z) z exp( j (2 N )k , k 0,..., N 1

Зададим контур преобразования общего вида

z

k

AW k ,

 

A A e j 2 0

,

 

 

 

0

 

W W e j 2 0

,

k 0,1,..., M 1

 

 

0

 

 

 

где M-произвольное целое число (необязательно равное N), а A и W – произвольные комплексные числа.

Обозначим через Xk искомые значения Z-преобразования при z = zk

N 1

N 1

X k x n zk

n x n A n Wnk ,

n 0

n 0

k0,1,..., M 1

Подстановка в эту формулу выражения для произведения nk дает

 

N 1

 

 

 

X k x n A n W[n2 k 2 (k n)2 ]/ 2

 

 

 

n 0

 

 

 

 

N 1

 

2

 

 

[x n A n W[n2 ]/ 2 ](Wk

2 )W (k n)2 / 2

 

n 0

 

 

 

Формула свертки

 

 

 

 

 

 

 

 

 

 

N 1

 

 

 

X k Wk 2

2 s[n]h[k n]

 

 

 

n 0

 

 

 

 

 

 

 

где

s[n] x[n]A n Wn2 2 , h[n] Wn2 2

Алгоритм ЛЧМ-Z

Задача. Вычисление N –точечного ДПФ через свертку

Вход: N отсчетов сигнала { f[n]; n = 0,1,…, N –1}.

Выход: N –коэффициентов {F(k), k = 0,1,…, N– 1}

ДПФ сигнала f[n].

 

Алгоритм

 

 

 

 

 

Выбираем NF 2N – 1. Для БПФ NF = 2m

y[n] y[N

 

n] e j n

2

/ N

Формируем множество {y[n]; n = 0,1,…, NF –1}

F

 

y[0] =1; для n = 1,2,…, N – 1; NF N,…, NF –1

 

 

 

 

 

 

 

 

 

в остальных случаях y[n] =0.

Вычисляется БПФ от {y[n]}

Y(k`) = БПФ{y[n]}; k` = 0,1,… NF –1.

x[n] f [n]e

j n2

/ N

Формируется множество {x[n]; n = 0,1,…, NF –1} для n = 0,…,N – 1

 

 

 

 

 

для n = N,…, NF –1 x[n] = 0.

 

 

 

 

Вычисляется БПФ от {x[n]}

X(k`) = БПФ{x[n]}; k` = 0,1,… NF –1.

Производится покомпонентное умножение коэффициентов БПФ

V(k`) = Y(k`) X(k`);

k` = 0,1,… NF –1.

Вычисляется обратное БПФ от V(k`),

k` = 0,1,… NF –1.

С[k`] = БПФ{ V(k`)}.

Выделяются первые N элементов множества { С[k`]}, которые умножаются на весовой коэффициент

F(k) C[k]e j k 2 / N

Соседние файлы в папке pdf