Добавил:
t.me Фулл всегда есть! А если нет, то Вы плохо его ищите! ИиКГ, СКДИКТ, ОКИТПЭС и тд https://t.me/whitedevil752rn Так же веду разработку КД (конструкторской документации) согласно ГОСТ. Имеется опыт работы при производстве на одном из ведущих в области радиэлектроники предприятии. Пишите) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
цос 2сем / ЦОС 2 СЕМЕСТР_exam.docx
Скачиваний:
26
Добавлен:
25.01.2025
Размер:
8.36 Mб
Скачать

10. Секционированные свёртки. Методы их вычисления.

При большой и/или заранее неизвестной длине N1 воздействия x(n) линейная свертка

вычисляется путем разбиения воздействия на короткие части — секции — и определения секционированных сверток, на основе которых формируется искомая линейная свертка.

Этот случай особо важен для практических задач ЦОС при вычислении реакции по формуле свертки:

при поступлении отсчетов воздействия x(n) в реальном времени, когда их длина заранее неизвестна.

Известны два метода вычисления свертки с секционированием: метод перекрытия с суммированием и метод перекрытия с накоплением.

Рассмотрим метод перекрытия с накоплением(в матлабе используется функция fftfilt :

Процедуру вычисления реакции y(n) иллюстрирует рис. 10.4. На рис. 10.4, а изображена импульсная характеристика h(n) длины N2 , а рис. 10.4, б — воздействие, разделенное на секции длины N1 , сравнимой с длиной N2 .

Первая секционированная свертка 1 y(n) (рис. 10.4, в) представляет собой круговую свертку первой секции воздействия с ИХ с периодом L=(N1+N2-1). Вычисление круговой свертки рассмотрено в вопросе 9.

На его последнем этапе период круговой свертки ограничивается до длины воздействия N1 , и формируется первое перекрытие — (N2-1) "лишних" отсчетов, которые отбрасываются.

Аналогично вычисляется вторая секционированная свертка y2(n) и формируется второе перекрытие (рис. 10.4, г) и т. д. Искомая линейная свертка y(n) формируется в результате накопления секционированных сверток yk(n), k =1, 2, ..., длины N1 с отброшенными отсчетами перекрытия (рис. 10.4, д).

%%%

Инфа из методы лабы: Вычисление линейных сверток при большой длине воздействия N2 производится методом перекрытия с накоплением с представлением последовательности x(n) в виде коротких смежных секций длиной L , сравнимой с длиной импульсной характеристики N1 . Линейная свертка формируется на основе коротких секционированных сверток, вычисляемых с помощью ДПФ и ОДПФ.

Справка из лабы: В каком случае целесообразно вычислять реакцию методом перекрытия с накоплением: При большой длине воздействия N2.

Просто справка: алгоритм перекрытия с суммированием: (overlap-add)

1. Входной сигнал разбивается на блоки длиной N отсчетов.

2. Каждый блок фильтруется независимо. Длина выходного сигнала составляет N + M – 1 отсчетов, где M — длина импульсной характеристики фильтра. Для повышения эффективности фильтрация осуществляется в частотной области с использованием БПФ.

3. Блоки выходного сигнала объединяются, при этом их крайние M – 1 отсчетов перекрываются и суммируются.

Перекрытие с накоплением (overlap-save): входной сигнал разбивается на блоки, перекрывающиеся по краям на M – 1 отсчетов, а у выходного сигнала для каждого блока отбрасываются крайние "хвосты" по M – 1 отсчетов с каждой стороны. После этого выходные блоки объединяются без перекрытия.

%%%

11. БПФ и ОБФ. Алгоритм вычисления с прореживанием по времени.

ОЦЕНКА СЛОЖНОСТИ ВЫЧИСЛЕНИЯ ДПФ\БПФ

Оценим вычислительную сложность алгоритма ДПФ :

где поворачивающий множитель:

При фиксированном значении k для вычисления суммы потребуется N операций сложения и (N-1) ≈ N операций умножения, всего 2N операций. В целом, при k = 0, 1, ... , ( N-1) потребуется арифметических операций с комплексными числами.

Порядок вычислительной сложности ДПФ относительно длины N исходной последовательности равен .

При вычислении БПФ потребуется арифметических операций с комплексными числами.

Порядок вычислительной сложности алгоритма БПФ равен .

БПФ:

БПФ — это совокупность алгоритмов, предназначенных для быстрого вычисления ДПФ.

Наибольшее распространение получил алгоритм БПФ с основанием 2, известный как алгоритм БПФ Кули—Тьюки.

БПФ Кули-Тьюки (БПФ по основанию 2) в нем длина исходной последовательности должна быть степенью двойки:

Если длина N не удовлетворяет этому условию, последовательность дополняется нулями.

Основная идея — поэтапное (циклическое) вычисление ДПФ через ДПФ вдвое меньшей последовательности. Всего ν этапов.

БПФ Кули-Тьюки:

Рассмотрим, какое количество арифметических операций с комплексными числами требуется для вычисления ДПФ: , где

Вычисление X(k) представляет собой цикл в цикле: внутренний цикл по n, внешний по k.

Для внутреннего цикла:

Порядок вычислительной сложности относительно длины последовательности N:

ОБПФ:

Под обратным быстрым преобразованием Фурье (ОБПФ — Inverse Fast Fourier Transform, IFFT) понимают быстрое вычисление ОДПФ:

Покажем, как это реализуется с помощью алгоритма БПФ.

Выполним операцию комплексного сопряжения правой и левой частей равенства (символ ∗) и умножим обе части на N :

Правая часть равенства представляет собой N-точечное ДПФ последовательности X*(k) , для вычисления которого применяют алгоритм БПФ с прореживанием по времени. После этого, вновь выполнив операцию комплексного сопряжения и разделив обе части равенства на N , получаем искомую последовательность:

АЛГОРИТМ ВЫЧИСЛЕНИЯ С ПРОРЕЖИВАНИЕМ ПО ВРЕМЕНИ:

Основная идея алгоритма БПФ с прореживанием по времени заключается в поэтапном вычислении N-точечного ДПФ на ν этапах, на каждом из которых текущее ДПФ вычисляется через ДПФ вдвое меньшей размерности.

Для понимания того, как реализуется эта идея, рассмотрим одноэтапный алгоритм БПФ.

Начальные условия алгоритма: исходную N-точечную последовательность разделим на две N/2 -точечные (рис. 13.1):

четных отсчетов ;

нечетных отсчетов .

Получили группу «чет N/2 + неч N/2 », которую используем для расчета N-точечного ДПФ.

Пример деления 8-точечной последовательности:

Начальные условия ν-этапного алгоритма БПФ формируются в результате ν-кратного разбиения исходной последовательности до тех пор, пока не будет получено N/2 групп 2-точечных последовательностей, каждая из которых содержит один четный и один нечетный отсчет.

Полученную последовательность называют прореженной, и отсюда название алгоритма БПФ — с прореживанием по времени.

На каждом этапе (кроме первого) ДПФ вычисляется через ДПФ вдвое меньшей размерности (см. рис. 11.2) по формуле:

(0)

где

i =1, 2, ... , ν — номер этапа БПФ;

M — количество L-точечных ДПФ на i-м этапе:

L — размерность ДПФ на i-м этапе:

m — номера L-точечных ДПФ на i-м этапе;

2m и (2m+1) — номера L/2 -точечных ДПФ на (i−1) -м этапе.

На последнем этапе, подставляя в (0) i = ν , получим значения , M =1, m = 0, где отсчеты N-точечного ДПФ следуют в естественном порядке:

Базовой операцией алгоритма БПФ является одновременное вычисление двух отсчетов ДПФ по верхней и нижней формулам (0) при фиксированных значениях m и k. Эту операцию принято изображать в виде направленного графа (рис. 11.3).

Узел обозначает операцию сложения/вычитания, верхний выход соответствует сумме, нижний — разности, а стрелка обозначает операцию умножения на поворачивающий множитель, стоящий над ней. По ассоциации с изображением графа эту операцию назвали "бабочкой".

Количество "бабочек" на любом этапе будет одинаковым.

Сократила объём как могла

Соседние файлы в папке цос 2сем