Файл: В. П. Кандидов и др. Москва физический факультет мгу.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.10.2023
Просмотров: 119
Скачиваний: 11
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
2. Функция дискретного аргумента
§2.1. Дискретность и конечность области определения сеточной
функции
В компьютерном эксперименте осуществляются операции с конечными массивами чисел, которые представляют рассматриваемые функции. Для перехода к массиву чисел от функции
)
(x
u
с непрерывно меняющимся аргументом x накладывается на область ее определения сетка, которая представляет собой дискретное множество точек
,
j
x
где
1 2
,...,
2
−
−
=
N
N
j
. Точки
j
x
называются узлами сетки, интервал между узлами – шагом. Сетка – равномерная, если шаг
j
j
x
x
x
−
=
∆
+
1
постоянный во всей области. В этом случае
L
N
x
=
⋅
∆
, где
L
– область определения аргумента x . Значения функции в узлах сетки
)
(
j
x
u
, где
1 2
,...,
2
−
−
=
N
N
j
, представляет собой массив конечной размерности
N
, с которым выполняются вычисления на компьютере.
Последовательность чисел
)
(
j
j
x
u
u
=
является функцией дискретного аргумента, к которой осуществлен переход от исходной функции
)
(x
u
с непрерывно меняющейся переменной x :
1 2
,...,
2
,
)
(
−
−
=
→
N
N
j
u
x
u
j
(2.1)
Таким образом, область определения сеточной функции
j
u
является дискретной и имеет конечную размерность.
Формально переход от
)
(x
u
к сеточной функции дискретного аргумента
j
u
удобно представить следующим образом:
x
x
x
u
u
j
∆
⋅
⋅
=
)
Ш(
)
(
, или
x
x
j
x
x
u
u
j
j
∆
⋅
∆
−
δ
⋅
=
∑
∞
−∞
=
)
(
)
(
(2.2)
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава 2. Функция дискретного аргумента
21
Выражение (2.2) удовлетворяет следующему тождеству, которое соответствует интегральному определению функции дискретного аргумента
j
u
на ячейке сетки
∆
+
∆
−
∈
2
,
2
x
x
x
x
x
j
j
:
x
dx
x
x
u
dx
u
x
x
x
x
x
x
x
x
j
j
j
j
j
∆
⋅
≡
∫
∫
∆
+
∆
−
∆
+
∆
−
2 2
2 2
)
Ш(
)
(
(2.3)
Схематически функции
)
(x
u
,
)
Ш(x
,
j
u
и выполнение тождества (2.3) иллюстрирует рис.2.1.
Рис.2.1. Иллюстрация перехода от функции непрерывного аргумента
)
(
x
u
к сеточной функции
j
u и интегральной эквивалентности этих функций на ячейке сетки.
§2.2. Спектр функции дискретного аргумента
Пусть от функции непрерывного аргумента
)
(x
u
с известным спектром
)
( f
U
осуществлен с помощью преобразования (2.2) переход к функции дискретного аргумента
)
(
j
j
x
u
u
≡
, определенной на сетке с
Глава 2. Функция дискретного аргумента
22
шагом x
∆
. Требуется найти спектр
)
( f
U
x
∆
функции
j
u
и установить его связь со спектром
)
(
f
U
исходной функции
)
(
x
u
Так как, согласно (2.2), функция
j
u
равна произведению исходной функции
)
(
x
u
и гребневой функции Дирака
)
Ш(
x
, то по теореме о свертке (1.20) искомый образ Фурье
)
(
f
U
x
∆
является сверткой Фурье-образов
)
(
f
U
функции непрерывного аргумента и спектра
)
(
Ш
f
U
гребневой функции:
x
f
U
f
U
f
U
x
∆
⋅
⊗
=
∆
)
(
)
(
)
(
Ш
(2.4)
После подстановки в (1.20) выражения (1.25) для
)
(
Ш
f
U
формула (2.4) принимает вид:
∫
∑
+∞
∞
−
∞
−∞
=
∆
∆
⋅
ξ
ξ
−
∆
−
δ
∆
⋅
ξ
=
1
)
(
)
(
k
x
x
d
x
k
f
x
U
f
U
(2.5)
Области интегрирования принадлежит бесконечное множество слагаемых подынтегрального выражения, и, в соответствии с определением
δ
-функции, интеграл в правой части (2.5) является бесконечной суммой
∑
ξ
)
(
U
при замене аргумента
ξ
на
x
k
f
∆
−
=
ξ
/
Таким образом, образ Фурье
)
( f
U
x
∆
функции дискретного аргумента
j
u равен:
∑
∞
−∞
=
∆
∆
−
=
k
x
x
k
f
U
f
U
)
(
(2.6)
Полученное выражение означает, что спектр
)
( f
U
x
∆
функции дискретного аргумента представляет собой бесконечную сумму спектров
)
/
(
x
k
f
U
∆
−
непрерывной функции, сдвинутых по оси частот на
x
k
∆
±
, где
∞
+
−∞
=
,...
1
,
0
,
1
,...,
k
,
x
∆
– шаг сетки, с помощью
Глава 2. Функция дискретного аргумента
23 которой осуществлен переход от функции
)
(x
u
к функции дискретного аргумента
j
u
(рис.2.2).
Рис.2.2. Функция дискретного аргумента
j
u на сетке с шагом x
∆
, ее спектр
)
( f
U
x
∆
и частота Найквиста
N
f
Из (2.6) видно, что спектр
)
(
f
U
x
∆
функции дискретного аргумента
j
u
имеет следующие свойства:
1. Спектр функции дискретного аргумента является периодическим
∆
−
=
∆
∆
x
k
f
U
f
U
x
x
)
(
,
(2.7) где период спектра
x
∆
/
1
равен величине, обратной шагу дискретизации
x
∆
функции
)
(x
u
;
2. Существует частота
N
f , называемая частотой Найквиста:
x
f
N
∆
=
2 1
,
(2.8) которая является верхней границей полосы частот, которую воспроизводит сетка с шагом
x
∆
(рис.2.2).
Действительно, пусть спектр
)
( f
U
функции непрерывного аргумента
)
(x
u
ограничен по полосе частот:
[
]
[
]
−
∉
=
−
∈
≠
,
если
,
0
,
,
если
,
0
)
(
max max max max
f
f
f
f
f
f
f
U
(2.9)
Глава 2. Функция дискретного аргумента
24
Тогда, если частота Найквиста
N
f больше или равна верхней границе спектральной полосы max
f
, то спектр
)
( f
U
функции непрерывного аргумента можно получить из спектра
)
( f
U
x
∆
дискретной функции, наложив на него единичное прямоугольное окно
)
( f
Π
на оси частот:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
при max
f
f
N
≥
,
(2.10) где прямоугольное спектральное окно
)
( f
Π
определяется выражением:
[
]
[
]
−
∉
−
∈
=
Π
,
если
,
0
,
,
если
,
1
)
(
N
N
N
N
f
f
f
f
f
f
f
(2.11)
Восстановление спектра непрерывной функции
)
( f
U
по спектру
)
( f
U
x
∆
дискретной функции при max
f
f
N
≥
иллюстрирует рис.2.3.
Рис.2.3. Восстановление спектра
)
( f
U
с ограниченной полосой max
f
по спектру
)
( f
U
x
∆
функции
j
u на сетке с шагом x
∆
, при котором частота
Найквиста
N
f
удовлетворяет условию max
f
f
N
≥
Если частота Найквиста
N
f на выбранной сетке меньше верхней границы спектральной полосы max
f
, то по спектру
)
( f
U
x
∆
Глава 2. Функция дискретного аргумента
25 дискретной функции невозможно восстановить спектр
)
( f
U
функции непрерывного аргумента:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
≠
∆
при max
f
f
N
<
(2.12)
В этом случае в сумме (2.6) перекрываются слагаемые
∆
−
x
k
f
U
и наложение окна
)
(
f
Π
на спектр
)
(
f
U
x
∆
не позволяет получить без погрешностей спектр функции непрерывного аргумента (рис.2.4).
Рис.2.4. Перекрытие слагаемых
∆
−
x
k
f
U
в спектре
)
( f
U
x
∆
при max
f
f
N
<
, т.е. когда частота Найквиста
N
f
меньше, чем верхняя граница спектральной полосы max
f
в спектре
)
( f
U
Эта погрешность, известная как “наложение частот” (“frequency aliasing”), вызывает возникновение в спектре, вычисляемом по (2.12),
Глава 2. Функция дискретного аргумента
26
ложных частот, которые отсутствуют в спектре
)
( f
U
исходной функции. Так, гармоника с длиной волны
∗
λ
на сетке с шагом
2
/
∗
λ
>
∆
x
будет иметь вид гармонической функции дискретного аргумента
j
u
, длина волны которой
∗
λ
>>
λ
(рис.2.5).
Рис.2.5. Эффект наложения частот при представлении гармоники с длиной волны
∗
λ
на сетке с шагом
∆
x≈1,1
λ
* (
2
/
∗
λ
>
∆
x
. Частота гармоники
N
f
f
>
∗
Частота
Найквиста
N
f
является фундаментальной характеристикой сетки и определяется ее шагом
x
∆
(2.8). Она не связана с рассматриваемой функцией
)
(
x
u
. Частоте
N
f
соответствует длина волны Найквиста
N
λ
, которая равна:
x
N
∆
=
λ
2
(2.13)
Длина волны Найквиста
N
λ
имеет смысл наименьшей длины волны гармоники, которую можно воспроизвести на сетке с шагом дискретизации
x
∆
(рис.2.6). В функции
j
u
, являющейся гармоникой на длине волны
N
λ
, значения в соседних узлах сетки равны по величине и имеют противоположные знаки.
Рис.2.6. Гармоника с длиной волны
λ
, равной длине волны
Найквиста
x
N
∆
=
λ
2
в виде функции дискретного аргумента
j
u
Гармоник с длиной волны
x
∆
<
λ
2
на сетке с шагом
x
∆
не существует.
Таким образом, сетка с шагом
x
∆
является фильтром низких частот, спектральная полоса которого ограничена сверху частотой
Глава 2. Функция дискретного аргумента
27
Найквиста
x
f
N
∆
=
2 1
. Соответственно, наименьшая длина волны гармоники, воспроизводимой на сетке, равна длине волны Найквиста
x
N
∆
=
λ
2
§2.3. Теорема Котельникова – Шеннона
Теорема сформулирована В.А. Котельниковым
1
в 1933 году и независимо Шенноном в 1949 году. Близкая теорема дана Найквистом в
1927 году. Применительно к численному моделированию теорема
Котельникова-Шеннона формулируется следующим образом.
Если функция
)
(x
u
имеет ограниченный спектр:
[
]
[
]
−
∉
=
−
∈
,
,
если
,
0
,
,
если
,
0
≠
)
(
max max max max
f
f
f
f
f
f
f
U
то по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
превышает максимальную частоту max
f
в спектре (
max
f
f
N
≥
), функция
)
(
x
u
точно восстанавливается по формуле Котельникова – Шеннона, которая имеет вид:
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
,
(2.14) где
∆
∆
−
π
=
Φ
x
x
j
x
j
x
)
(
sinc
)
,
(
КШ
(2.15)
– функция Котельникова-Шеннона.
Действительно, при выполнении условия max
f
f
N
≥
спектр
)
( f
U
функции непрерывного аргумента согласно (2.10) можно получить из спектра
)
( f
U
x
∆
наложением прямоугольного спектрального окна
)
П( f
(Рис.2.7).
1
Академик Владимир Александрович Котельников, основатель и первый директор Института радиотехники и электроники АН СССР.
Глава 2. Функция дискретного аргумента
28
Рис.2.7. Выделение спектра
)
( f
U
функции непрерывного аргумента
)
(x
u
при наложении прямоугольного спектрального окна
)
П( f на спектр
)
( f
U
x
∆
функции дискретного аргумента
В этом случае спектр
)
( f
U
является произведением спектра сеточной функции
)
( f
U
x
∆
и прямоугольного спектрального окна
)
( f
Π
:
)
(
)
(
)
(
f
f
U
f
U
x
Π
⋅
=
∆
,
(2.16) и согласно (1.21) функция
)
(x
u
, которая является оригиналом произведения спектров, равна свертке оригиналов сомножителей
)
(
j
j
x
u
u
≡
и
)
(x
Π
:
)
(
)
(
x
u
x
u
j
Π
⊗
=
или
∫
+∞
∞
−
ξ
ξ
−
Π
ξ
=
d
x
u
x
u
j
)
(
)
(
)
(
(2.17)
Здесь
)
(
j
u
ξ
в соответствии с представлением (2.2) имеет вид:
x
x
j
u
u
j
j
∆
⋅
∆
−
ξ
δ
⋅
ξ
=
ξ
∑
∞
−∞
=
)
(
)
(
)
(
Глава 2. Функция дискретного аргумента
29
Оригинал
)
(x
Π
прямоугольного окна
)
( f
Π
(2.11) вычисляется по формуле (1.13) для обратного преобразования Фурье:
∫
∫
∞
∞
−
−
π
π
π
π
=
=
Π
=
Π
N
N
f
f
N
fx
i
fx
i
x
f
x
df
e
df
e
f
x
)
2
sin(
1
)
(
)
(
2 2
Так как, частота Найквиста
N
f равна
x
f
N
∆
=
2 1
, полученное выражение для оригинала
)
(x
Π
преобразуется к виду:
∆
π
∆
=
Π
x
x
x
x
sinc
1
)
(
(2.18)
Искомая функция
)
(x
u
после подставновки в свертку (2.17) оригинала
)
(
j
u
ξ
в виде (2.2) и
)
(
ξ
−
Π
x
в виде (2.18) записывается следующим образом:
ξ
∆
ξ
−
π
∆
⋅
∆
⋅
∆
−
ξ
δ
ξ
=
∫
∑
+∞
∞
−
+∞
−∞
=
d
x
x
x
x
x
j
u
x
u
j
)
(
sinc
1
)
(
)
(
)
(
Поскольку области интегрирования принадлежит бесконечное множество слагаемых, то функция
)
(x
u
в соответствии со свойствами
δ
–функции выражается следующей суммой:
∆
∆
−
π
⋅
∆
=
∑
+∞
−∞
=
x
x
j
x
x
j
u
x
u
j
)
(
sinc
)
(
)
(
(2.19)
Полученное выражение (2.19) является формулой Котельникова–
Шеннона
(2.14,
2.15), точно восстанавливающей функцию непрерывного аргумента
)
(x
u
по ее сеточным значениям
j
u .
Свойства функции Котельникова-Шеннона
)
,
(
КШ
j
x
Φ
(2.15) таковы, что для любого выбранного
∗
=
j
j
она равна единице в
∗
j -ом узле и равна нулю во всех других узлах сетки:
Глава 2. Функция дискретного аргумента
30
≠
⋅
∆
=
⋅
∆
=
=
Φ
∗
∗
∗
если
,
при
0
,
при
1
)
,
(
КШ
j
j
j
x
x
j
x
x
j
x
(2.20)
Вид функции
)
,
(
КШ
∗
Φ
j
x
иллюстрирует рисунок (рис.2.8), где она приведена в качестве примера при
0
=
∗
j
и
2
=
∗
j
Рис.2.8. Функция Котельникова-Шеннона
)
,
(
КШ
∗
Φ
j
x
. например при
0
=
∗
j
(сплошная кривая) и
2
=
∗
j
(штриховая кривая)
Из вида функции
)
,
(
КШ
j
x
Φ
(см. рис.2.8) следует, что любое слагаемое
)
,
(
КШ
∗
Φ
j
x
не меняет значения суммы (2.14) или (2.19) во всех узлах с номерами
∗
≠
j
j
, но влияет на результат суммирования при переменной x в интервалах между узлами.
Несколько слагаемых
)
,
(
КШ
∗
Φ
j
x
u
j
при
2
,
0
,
1
−
=
∗
j
в формуле Котельникова-Шеннона (2.15) приведены на рис. 2.9 при восстановлении некоторой функции
)
(x
u
Глава 2. Функция дискретного аргумента
31
Рис.2.9. Функция непрерывного аргумента
)
(x
u
(жирная кривая) и некоторые слагаемые
)
,
(
КШ
j
x
u
j
Φ
в формуле Котельникова-Шеннона; например, при
1
−
=
j
(штрихпунктирная кривая), при
0
=
j
(сплошная кривая), при
2
=
j
(штриховая кривая)
§2.4. Осцилляции Гиббса
Если формула Котельникова-Шеннона используется для получения функции
)
(x
u
со спектром
)
( f
U
по ее сеточным значениям
j
u
при шаге дискретизации
x
∆
таком, что частота Найквиста
N
f
меньше максимальной частоты max
f
в спектре
)
(
f
U
(
max
f
f
N
<
), то восстановленная функция
)
(
x
u
совпадает с
)
(
x
u
только в узлах сетки
j
x
и отклоняется от
)
(
x
u
при переменной x в интервалах между узлами
j
x
x
≠
:
≠
≠
=
=
Φ
∑
+∞
−∞
=
,
при
)
(
,
при
)
(
)
,
(
КШ
j
j
j
j
x
x
x
u
x
x
x
u
j
x
u
если max
f
f
N
<
(2.21)
Отклонения функции
)
,
(
)
(
КШ
j
x
u
x
u
j
j
∑
+∞
−∞
=
Φ
=
от исходной функции
)
(x
u
при x , расположенных в интервалах между узлами сетки (
j
x
x
≠
), называются осцилляциями Гиббса (рис.2.10).
Осцилляции
Гиббса при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
появляются вследствие
Глава 2. Функция дискретного аргумента
32
отсутствия высокочастотных гармоник в функциях
)
,
(
КШ
j
x
Φ
, спектр которых ограничен частотой Найквиста
N
f .
Рис.2.10. Осцилляции Гиббса при восстановлении по формуле Котельникова–
Шеннона трапециевидного импульса
В преобразовании Фурье осцилляции Гиббса возникают при вычислении функции
)
(
)
(
nL
x
u
x
u
±
=
по формулам (1.1) или (1.4), или
(1.5) с усеченным рядом Фурье. Пусть периодическая функция
)
(
)
(
nL
x
u
x
u
±
=
имеет ограниченный спектр
)
( f
U
и формула (1.19) принимает соответственно следующий вид :
∑
+
=
−
=
−
δ
=
max max
)
(
k
k
k
k
k
d
L
k
f
f
U
,
(2.22) где
L
k
f
max max
=
– максимальная частота, max
k
– максимальный номер гармоник в дискретном спектре периодической функции
)
(
)
(
nL
x
u
x
u
±
=
. Для функции с ограниченным спектром ряд Фурье, например (1.15), записывается следующим образом:
∑
+
=
−
=
π
=
max max
2
)
(
k
k
k
k
x
f
i
k
k
e
d
x
u
(2.23)
Функция
)
(
x
u
, восстановленная усеченным рядом Фурье, в котором осуществляется суммирование по k от
∗
−
k до
∗
+
k , где max
k
k
<
∗
, равна:
∑
∗
∗
+
=
−
=
π
=
k
k
k
k
x
f
i
k
k
e
d
x
u
2
)
(
(2.24)
Глава 2. Функция дискретного аргумента
33
Высшая частота в ряде (2.24) является частотой Найквиста
L
k
f
N
/
∗
=
При max
k
k
<
∗
частота
Найквиста
N
f меньше максимальной частоты max
f
в спектре
)
( f
U
(2.22), что и приводит к появлению осцилляций Гиббса, как и при использовании формулы
Котельникова-Шеннона в случае max
f
f
N
<
. Для последовательности прямоугольных импульсов, наример, вычисление по формулам (1.1) или
(1.4), или (1.5) всегда сводится к суммированию усеченных рядов
Фурье, так как спектр последовательности таких импульсов является неограниченным.
Наиболее существенны осцилляции Гиббса, возникающие при вычислениях по формуле Котельникова–Шеннона или суммировании усеченного ряда Фурье, для разрывных функций и в меньшей степени для непрерывных функций с разрывами производных. Следует заметить, что для функций с неограниченным спектром уменьшение шага дискретизации
x
∆
и, соответственно, увеличение частоты
Найквиста
N
f не приводит к уменьшению амплитуды осцилляций
Гиббса в восстановленной функции
)
(
x
u
, а вызывает сокращение их периода из-за уменьшения шага x
∆
Возникновение осцилляций Гиббса при восстановлении функции по усеченному ряду Фурье наглядно иллюстрирует формирование последовательности знакопеременных прямоугольных импульсов, период следования которых
L
вдвое больше их длительности
0
h
(рис. 2.11 (а)). В этом случае коэффициенты разложения
k
d
(1.12) имеют вид:
2
sin
k
k
A
d
k
π
π
=
(2.25)
Коэффициенты разложения действительны и в спектре последовательности импульсов присутствуют только косинус компоненты с нечетными номерами
K
,
2
,
1
,
0
,
1 2
=
+
=
m
m
k
. При этом амплитуды гармоник
k
a
(1.7) знакопеременны и их величина обратно пропорциональна номеру
k
:
=
+
=
−
π
=
2
при
0
,
1 2
при
)
1
(
2
m
k
m
k
k
A
a
m
k
(2.26)
Глава 2. Функция дискретного аргумента
34
Рис.2.11. Периодическая последовательность знакопеременных прямоугольных импульсов (а), амплитуды косинус компонент
k
a в ряде Фурье (б), восстановленная функция
)
(
x
u
, как сумма усеченного ряда Фурье при различном числе слагаемых:
0
*
=
m
(в),
1
*
=
m
(г),
2
*
=
m
(д) и
3
*
=
m
(е)
Глава 2. Функция дискретного аргумента
35
В результате восстановленная функция
)
(
x
u
, вычисленная как сумма усеченного ряда Фурье для рассматриваемой последовательности импульсов записывается следующим образом:
+
π
+
−
π
=
∑
=
L
x
m
m
A
x
u
m
m
m
)
1 2
(
2
cos
1 2
)
1
(
2
)
(
*
0
(2.27)
Амплитуды a
k
косинус-компонент разложения функции u(x) в ряд
Фурье приведены на рис. 2.11 (б). В усеченном ряде Фурье вычисляется сумма конечного числа слагаемых в (2.27) от
0
=
m
до
∗
=
m
m
Последовательное суммирование членов усеченного ряда Фурье при
3
,
2
,
1
,
0
*
=
m
представлено соответствующими кривыми на рис. 2.11 (в – е).
§2.5. Взаимосвязь функции и спектра при дискретизации аргумента
Общую логику перехода от функции
)
(
x
u
и ее спектра
)
(
f
U
к сеточной функции
j
u
и ее спектра
)
(
f
U
x
∆
можно проследить поэтапно с помощью следующей диаграммы (рис.2.12).
1. Функция непрерывного аргумента
)
(
x
u
и ее образ Фурье
)
(
f
U
, определенный на непрерывной оси частот, однозначно связаны преобразованием Фурье (1.14):
)
(
)
(
f
U
x
u
↔
,
(2.28) где переменные x и
f
являются непрерывными и определены на бесконечной оси
)
,
(
∞
+
−∞
∈
x
и
)
,
(
∞
+
−∞
∈
f
2. Поскольку в численном моделировании производятся операции с массивами чисел, выполняется переход от непрерывных переменных x и
f
к дискретным множествам с шагами дискретизации
x
∆
и
f
∆
, соответственно:
j
x
x
x
j
⋅
∆
≡
→
и
k
f
f
f
k
⋅
∆
≡
→
(2.29)
Глава 2. Функция дискретного аргумента
36 3. При дискретизации переменных x и
f происходит переход от функций непрерывного аргумента
)
(x
u
и
)
( f
U
к сеточным функциям
)
( j
u
и
:
)
(k
U
)
(
)
(
)
(
j
x
u
j
u
x
u
⋅
∆
≡
→
и
)
(
)
(
)
(
k
f
U
k
U
f
U
⋅
∆
≡
→
(2.30)
4. Поскольку сеточная функция
)
(k
U
представляет собой дискретный спектр с интервалом частот между соседними гармониками
f
∆
, то она является образом Фурье периодической функции с периодом
f
L
∆
=
1
:
)
(
)
(
nL
x
u
x
u
±
=
,
K
,
2
,
1
,
0
=
n
(2.31а)
Для сеточной функции
)
( j
u
условие периодичности принимает вид:
)
(
)
(
nN
j
u
j
u
±
=
,
2.31б) где число узлов
N
на периоде сеточной функции равно отношению периода
L
к шагу дискретизации
x
∆
:
x
L
N
∆
=
(2.32)
Итак, в результате дискретизации по оси частот и перехода от непрерывного спектра
)
(
f
U
к дискретному спектру
)
(
k
U
функция
)
(
x
u
и сеточная функция
)
(
j
u
становятся периодическими.
5. Функция дискретного аргумента
)
(
j
u
согласно (2.7) имеет периодический спектр:
∆
−
=
∆
∆
x
n
f
U
f
U
x
x
)
(
,
(2.33)
Для сеточной функции
)
(k
U
условие периодичности принимает вид:
Глава 2. Функция дискретного аргумента
37
)
(
)
(
nP
k
U
k
U
±
=
(2.34) где число гармоник
P
на периоде спектра.
Итак, в результате дискретизации переменной x и перехода от функции
)
(
x
u
к сеточной
)
(
j
u
стали периодическими спектр
)
(
f
U
и его дискретная форма
)
(
k
U
Число гармоник
P
на периоде спектра равно отношению его периода
1
)
(
−
∆
x
к шагу дискретизации по частоте
f
∆
:
f
x
P
∆
∆
=
−
1
)
(
(2.35)
Поскольку
1
−
=
∆
L
f
, то
N
P
=
. Число гармоник на периоде дискретного спектра совпадает с числом узлов на периоде сеточной функции. Это означает, что при преобразовании Фурье информация сохраняется и численный массив гармоник
)
(k
U
,
N
k
K
,
2
,
1
=
, содержит тот же объем информации, что и массив значений сеточной функции
)
( j
u
,
N
j
K
,
2
,
1
=
6. Таким образом, сеточная функция
)
( j
u
и ее образ Фурье
)
(k
U
однозначно связаны преобразованием Фурье:
)
(
)
(
k
U
j
u
↔
(2.36)
При этом оригинал
)
( j
u
и Фурье-образ
)
(k
U
являются периодическими функциями дискретного аргумента:
)
(
)
(
nN
j
u
j
u
±
=
и
)
(
)
(
nN
k
U
k
U
±
=
,
(2.37) где N – число узлов на периоде сеточной функции
)
( j
u
или число гармоник на периоде дискретного спектра
)
(k
U
. Схематически сеточную функцию
)
( j
u
, для которой осуществляется преобразование Фурье, и ее образ
)
(k
U
иллюстрирует рис.2.12.
Ключевыми характеристиками спектра при дискретном преобразовании Фурье являются:
•
Частота Найквиста
)
2
/(
1
x
f
N
∆
=
, равная верхней границе спектра, воспроизводимого на сетке с шагом дискретизации x
∆
,
Глава 2. Функция дискретного аргумента
38
•
Спектральное разрешение, или шаг дискретизации по частоте
L
f
/
1
=
∆
, воспроизводимый для функции с периодом L.
Рис.2.12. Трансформация функции непрерывного аргумента
)
(x
u
и ее спектра
)
( f
U
при дискретизации переменных x и f и при переходе к сеточной функции
)
( j
u
и ее дискретному спектру
)
(k
U
§2.6 Вычисление производных с использованием спектров
Рассмотрим функцию
)
(
j
x
u
с периодом L,заданную на равномерной сетке, содержащей N узлов с шагом
N
L
x
/
=
∆
. Используя формулу Котельникова–Шеннона, получим по сеточным значениям функции
)
(
j
x
u
восстановленную функцию
)
(
x
u
непрерывного аргумента
∑
−
−
=
−
∆
π
=
1 2
/
2
/
)
(
sinc
)
(
)
(
N
N
j
j
j
x
x
x
x
u
x
u
. Дифференцируя эту формулу, можно найти ее производные
dx
u
d /
,
2 2
/
dx
u
d
и т.д. при любых x, в том числе в узлах сетки. Вместе с тем, можно предложить более простой и универсальный способ дифференцирования сеточных функций. Для этого введем волновое число k-ой Фурье-гармоники
Глава 2. Функция дискретного аргумента
39
L
k
f
k
k
π
=
π
=
κ
2 2
, где
1 2
/
2
/
−
≤
≤
−
N
k
N
, и разложим
)
(
x
u
на отрезке
[–L/2, L/2] в ряд Фурье. Имеем
)
exp(
)
(
)
(
1 2
/
2
/
x
i
f
U
x
u
k
k
N
N
k
κ
=
∑
−
−
=
(2.38)
Дифференцируя это соотношение, получаем, что производные восстановленной функции равны
κ
κ
−
=
κ
κ
=
∑
∑
−
−
=
−
−
=
).
exp(
)
(
),
exp(
)
(
1 2
/
2
/
2 2
2 1
2
/
2
/
x
i
f
U
dx
u
d
x
i
f
U
i
dx
u
d
k
k
N
N
k
k
k
k
N
N
k
k
(2.39)
Сопоставляя эти формулы с исходным разложением (2.38), приходим к выводу, что первой производной
dx
u
d /
соответствует спектр
)
(
k
k
f
U
i
κ
, а второй производной
2 2
/
dx
u
d
соответствует спектр
)
(
2
k
k
f
U
κ
−
. Кратко эти утверждения можно записать так: если
)
(
)
(
k
f
U
x
u
↔
, то
)
(
k
k
f
U
i
dx
u
d
κ
↔
,
)
(
2 2
2
k
k
f
U
dx
u
d
κ
−
↔
и т.д. (2.40)
Таким образом, процедура вычисления производных с использование спектров может быть представлена следующим образом.
Сначала вычисляют спектр
)
(
k
f
U
функции
)
(x
u
, заданной в узлах равномерной сетки
x
j
x
j
∆
=
(
1 2
/
2
/
−
≤
≤
−
N
j
N
), используя алгоритм прямого дискретного преобразования Фурье (см. § 3.1). Затем преобразуют этот спектр в соответствии с формулами (2.40), и с помощью обратного дискретного преобразования Фурье (см. § 3.1) восстанавливают массив производных в узлах равномерной сетки.
Если наложения частот для спектра
)
(
k
f
U
нет, то, в соответствии с теоремой Котельникова‒Шеннона, восстановленная между узлами сетки функция
)
(
x
u
тождественно совпадает с исходной
Глава 2. Функция дискретного аргумента
40
функцией
)
(x
u
. Следовательно, в этом случае
j
j
x
x
x
x
dx
du
dx
u
d
=
=
≡
. В свою очередь, если нет наложения частот для спектра первой производной
)
(
k
k
f
U
κ
, то
j
j
x
x
x
x
dx
u
d
dx
u
d
=
=
≡
2 2
2 2
. Подобные рассуждения могут быть продолжены для производных более высокого порядка.
Успешное использование спектрального подхода на примере дифференцирования гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
проиллюстрировано на рис. 2.13.
Рис. 2.13. Использование спектров для вычисления первой и второй производной гауссовской функции
)
/
exp(
)
(
2 0
2
a
x
x
u
−
=
на сетке с
32
=
N
(левые две колонки) и
64
=
N
(правые две колонки)
Глава 2. Функция дискретного аргумента
41
Спектральный подход совместно с алгоритмом быстрого преобразования Фурье (см. главу 5) является весьма эффективным и экономичным.
Он широко используется при решении дифференциальных уравнений (см. например статью J. Fleck, J. Morris and M. Feit, "Time-Dependent Propagation of High Energy Laser Beams through the Atmosphere," Applied Physics A, Vol. 10, No. 2, 1976, pp. 129-
160, в которой по-видимому впервые были убедительно продемонстрированы преимущества спектрального подхода при решении квазиоптического уравнения).
Однако, практическое применение спектрального подхода для вычисления производных требует определенной аккуратности. В самом деле, если для спектра функции или ее производных имеет место наложение частот, то возникновение осцилляций Гиббса между узлами сетки приводит к ошибкам при вычислении производных в узлах сетки.
Возникновение подобного рода ошибок при нахождении первой производной супергауссовой функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
проиллюстрировано на рис. 2.14 – 2.15.
Рис. 2.14. Вычисление первой производной супергауссовской функции
)
)
/
(
exp(
)
(
12 0
a
x
x
u
−
=
. Верхний ряд: исходная функция u(x) (серые линии) и сеточная функция
)
(
j
x
u
на сетке с N = 16; ее спектр U(f
k
); восстановленная по формуле Котельникова-Шеннона функция
)
(
x
u
. Нижний ряд: производная
dx
du /
, найденная аналитически (серые линии) и в узлах сетки (черные линии); спектр
|
)
(
|
k
k
f
U
i
κ
; производная
dx
u
d /
в узлах сетки.
Глава 2. Функция дискретного аргумента
42
На рисунке 2.14 отчетливо видно, что при восстановлении функции
)
(
x
u
по искаженному наложением частот спектру возникают значительные осцилляции Гиббса. Отличные от нуля наклоны функции
)
(
x
u
в узлах сетки приводят к отличным от нуля производным в тех областях, где производные исходной функции тождественно равны нулю. Возникающие ошибки могут быть уменьшены путем увеличения числа узлов сетки на период (рис. 2.15). В самом деле, увеличение N приводит к уменьшению ∆x и, как следствие, к увеличению частоты
Найквиста, относительному сужению спектра функции в полосе
N
N
f
f
+
−
,
и ослаблению эффекта наложения частот.
Рис. 2.15. То же самое, что на рис. 2.14, но на сетке с N = 32
Замечание. При практическом использовании описанного подхода важно учитывать порядок нумерации узлов сетки и Фурье- гармоник в соответствующих числовых массивах. В частности, в некоторых стандартных подпрограммах применяется следующая нумерация:
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
. В этом случае для корректного вычисления спектра первой производной вместо соответствия
)
(
k
k
f
U
i
dx
u
d
κ
↔
(
1 2
/
2
/
−
≤
≤
−
N
k
N
) неоходимо разбить
Глава 2. Функция дискретного аргумента
43 спектр на два массива и пользоваться формулами соответствия
−
≤
≤
κ
−
≤
≤
κ
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
N
k
N
f
U
i
N
k
f
U
i
dx
u
d
k
N
k
N
k
k
Для спектра второй производной справедливы следующие формулы соответствия:
−
≤
≤
κ
−
−
≤
≤
κ
−
↔
−
−
1 2
/
при
)
(
,
1 2
/
0
при
)
(
2 2
2 2
N
k
N
f
U
N
k
f
U
dx
u
d
k
N
k
N
k
k
Спектры производных более высокого порядка вычисляются аналогично.
Глава 3. Дискретное преобразование Фурье
44
1 2 3 4 5
Глава
3. Дискретное преобразование Фурье (ДПФ)
§3.1. Анализ Фурье. Ортогональность гармоник в дискретном
пространстве
. Синтез Фурье
Получим формулу для вычисления на сетке преобразования
Фурье периодической функции
)
(
)
(
x
u
nL
x
u
=
±
, где
K
,
2
,
1
=
n
Введем на периоде
L функции
u(x) равномерную сетку
x
j
x
j
∆
=
с шагом
N
L
x
=
∆
. Здесь N – число узлов сетки, которое совпадает с числом отрезков разбиения. При этом номер узла сетки
j пробегает значения
1 2
/
2
/
−
≤
≤
−
N
j
N
и сеточная функция
)
(
)
(
j
x
u
j
u
≡
периодична с периодом N, т.е.
)
(
)
(
j
u
nN
j
u
=
±
. Важно обратить внимание на то, что в силу периодичности функции
)
( j
u
справедливо равенство
)
2
/
(
)
2
/
(
N
u
N
u
−
=
Спектр периодичной функции представляет собой ряд
Фурье
dx
L
ikx
x
u
L
f
U
k
U
L
L
k
π
−
=
≡
−
2
exp
)
(
1
)
(
)
(
2
/
2
/
,
(3.1) где k – номер фурье-гармоники.
Предполагая, что спектр
)
( f
U
ограничен и
N
f
f
≤
max
, по формуле
Котельникова–Шеннона (2.19) имеем для периодической функции
−
−
=
−
∆
π
=
≡
1 2
/
2
/
)
(
sinc
)
(
)
(
)
(
N
N
j
j
x
x
x
j
u
x
u
x
u
(3.2)
Рис.3.1. Периодическая функция.
Границы отрезка периодичности [–L/2,
L/2] функции обозначены символом ×, узлы сетки – вертикальными рисками
Глава 3. Дискретное преобразование Фурье
45
Подставляя u(x) в виде (3.2) в формулу (3.1), и используя для u(j) представление (2.2) через гребневую функцию Дирака, получаем
π
−
−
∆
π
−
δ
∆
=
−
−
−
=
L
ikx
x
x
x
x
u
x
x
x
L
k
U
j
L
L
N
N
j
j
2
exp
)
(
sinc
)
(
)
(
1
)
(
2
/
2
/
1 2
/
2
/
Отсюда, в соответствии с определением функции Дирака (§1), следует, что
−
−
=
∆
π
−
∆
=
1 2
/
2
/
2
exp
)
(
)
(
N
N
j
L
x
ikj
j
u
L
x
k
U
Учитывая, что
N
L
x
1
=
∆
и вводя обозначение
π
=
N
i
W
N
2
exp
, запишем последнее равенство в виде
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
j
kj
N
W
j
u
N
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
k
K
(3.3)
Это выражение называется формулой прямого дискретного преобразования
Фурье
(дискретного анализа
Фурье).
Оно определяет k-ю фурье-гармонику дискретного спектра U(k) по функции дискретного аргумента u(j). Выражение (3.3) является дискретным аналогом формулы
(1.5) для вычисления коэффициентов разложения
k
d
в ряд Фурье периодической функции. При замене во второй формуле (1.5) интеграла суммой и в подстановках
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.3).
Рассмотрим свойства дискретных гармонических функций
kj
N
W
, определенных на множестве номеров гармоник
1 2
/
,
,
2
/
−
−
=
N
N
k
L
в пространстве частот и множестве узлов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
в пространстве отсчетов.
Глава 3. Дискретное преобразование Фурье
46 1. Гармоники разных номеров k и l ортогональны на периоде отсчетов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
l
k
l
k
N
W
W
N
N
j
lj
N
kj
N
(3.4)
2. Гармоники одного и того же номера k, взятые в разных точках сетки j и m, ортогональны на периоде спектра
1 2
/
,
,
2
/
−
−
=
N
N
k
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
m
j
m
j
N
W
W
N
N
k
km
N
kj
N
(3.5)
Используя свойства ортогональности гармоник, получим формулу дискретного синтеза Фурье для вычисления функции дискретного аргумента u(j) по гармоникам U(k) дискретного спектра. Согласно (3.3) имеем
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
m
km
N
W
m
u
N
k
U
(3.6)
Умножим левую и правую части этого равенства на
kj
N
W
и просуммируем по всем k слева и справа. Получим
−
−
=
−
−
=
−
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
)
(
1
)
(
N
N
k
N
N
m
kj
N
km
N
N
N
k
kj
N
W
W
m
u
N
W
k
U
Поменяем в правой части равенства порядок суммирования:
−
−
=
−
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
1
)
(
)
(
N
N
k
kj
N
km
N
N
N
m
N
N
k
kj
N
W
W
N
m
u
W
k
U
В силу ортогональности гармоник (3.5) вторая сумма в правой части равна N при
j
m
=
и обращается в ноль при
j
m
≠
. Отсюда, поменяв местами правую и левую части равенства, получаем
Глава 3. Дискретное преобразование Фурье
47
−
−
=
=
1 2
/
2
/
)
(
)
(
N
N
k
kj
N
W
k
U
j
u
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
(3.7)
Выражение (3.7) называется формулой обратного дискретного преобразования Фурье, с помощью которой вычисляется функция дискретного аргумента u(j) по ее спектру U(k). Формула (3.7) является дискретным аналогом разложения (1.5) периодической функции в ряд Фурье. При замене в сумме (1.5) бесконечных пределов на суммирование от –N/2 до N/2–1 и в подстановках
)
(k
U
d
k
=
,
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.7).
§3.2 Свойства ДПФ. Формулы запаздывания, смещения и
свертки
Выпишем вновь формулы дискретного преобразования
Фурье
=
=
−
−
=
−
−
=
−
1 2
/
2
/
1 2
/
2
/
,
)
(
)
(
,
)
(
1
)
(
N
N
k
kj
N
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(3.8) где
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
,
π
=
N
i
W
N
2
exp
Перечислим кратко основные свойства дискретных оригинала и его Фурье-образа. К ним относятся:
1. Периодичность:
)
(
)
(
j
u
nN
j
u
=
±
,
)
(
)
(
k
U
nN
k
U
=
±
2. Линейность:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
β
+
α
↔
β
+
α
3. Изменение знака:
)
(
)
(
k
U
j
u
−
↔
−
4. Комплексное сопряжение:
)
(
*
)
(
*
k
U
j
u
−
↔
5. Запаздывание:
km
N
W
k
U
m
j
u
−
↔
−
)
(
)
(
6. Смещение:
jl
N
W
j
u
l
k
U
)
(
)
(
↔
−
7. Свертка:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
⋅
↔
⊗
,
Глава 3. Дискретное преобразование Фурье
48 где
−
−
=
−
⋅
=
⊗
1 2
/
2
/
2 1
2 1
)
(
)
(
1
)
(
)
(
N
N
m
m
j
u
m
u
N
j
u
j
u
8. Образ Фурье
)
( j
δ
–функции Дирака:
1
)
(
↔
δ
j
9. Образ Фурье запаздывающей функции Дирака
)
(
0
j
j
−
δ
:
0
)
(
0
kj
N
W
j
j
↔
−
δ
§3.3. Двумерное преобразование Фурье
Рассмотрим функцию двух переменных
)
,
(
y
x
u
, заданную на квадратной области
2
/
2
/
L
x
L
≤
≤
−
,
2
/
2
/
L
y
L
≤
≤
−
(рис. 3.2) и построим равномерную сетку
1 2
/
,
,
2
/
−
−
=
N
N
j
K
,
1 2
/
,
,
2
/
−
−
=
N
N
m
K
с квадратными ячейками размерами
x
x
∆
×
∆
, где
N
L
x
/
=
∆
Введем сеточную функцию
)
,
(
)
,
(
x
m
x
j
u
m
j
u
∆
∆
≡
Воспользовавшись формулой (3.8), запишем N прямых дискретных преобразования
Фурье для столбцов двумерного массива
)
,
( m
j
u
. Вводя вспомогательную функцию
)
,
( l
j
U
и используя обозначение
π
=
N
i
W
N
2
exp
, имеем
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
m
lm
N
W
m
j
u
N
l
j
U
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
Выполнив теперь N дискретных преобразований для строк
)
,
( l
j
U
, получаем двумерный спектр
)
,
( l
k
U
функции
)
,
( m
j
u
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
j
kj
N
W
l
j
U
N
l
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Рис. 3.2. Двумерная сетка
Глава 3. Дискретное преобразование Фурье
49
Записанные выше формулы удобно объединить в одну. Таким образом, прямое двумерное преобразование Фурье имеет вид
lm
N
N
N
j
N
N
m
kj
N
W
W
m
j
u
N
l
k
U
−
−
−
=
−
−
=
−
=
1 2
/
2
/
1 2
/
2
/
2
)
,
(
1
)
,
(
,
(3.9)
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Обратное двумерное преобразование Фурье записывается как
lm
N
N
N
k
N
N
l
kj
N
W
W
l
k
U
m
j
u
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
)
,
(
)
,
(
(3.10)
При практическом использовании преобразований (3.9), (3.10) нужно принять во внимание, что двумерная дискретизация оригинала
)
,
( m
j
u
и его Фурье-образа
)
,
( l
k
U
приводит к их принудительной периодизации с периодом N как по j, k, так и по
m, l, т.е.
)
,
(
)
,
(
2 1
m
j
u
N
n
m
N
n
j
u
=
±
±
,
)
,
(
)
,
(
2 1
l
k
U
N
n
l
N
n
k
U
=
±
±
, где
K
,
2
,
1
,
0
,
2 1
±
±
=
n
n
. Для корректного выполнения двумерных преобразований Фурье необходимо следить за отсутствием наложения отсчетов и частот сразу по обеим координатным и частотным осям. Указанное обстоятельство проиллюстрировано на рис. 3.3, где оригинал и Фурье-образ условно изображены линиями равного значения.
Рис. 3.3. Периодизация двумерной функции (слева) и двумерного спектра (справа). Здесь
N
f
F
2
=
– ширина частотной полосы,
L
k
f
k
/
=
,
L
l
f
l
/
=
Глава 4. Практика дискретного преобразования Фурье
50
Глава
4. Практика дискретного преобразования Фурье
При практическом использовании ДПФ ключевым является вопрос о выборе шага
∆
x дискретизации функции u(x) на сетке, а также области ee регистрации L, которая играет роль периода при принудительной периодизации функции u(x), неизбежно связанной с переходом к дискретному спектру. На спектральном языке речь идет о выборе ширины спектральной полосы
]
,
,
[
N
N
f
f
K
−
, граница которой равна частоте Найквиста
x
f
N
∆
=
2 1
, и о частотном разрешении сетки, которое равно
L
f
1
=
∆
§4.1. Выбор шага дискретизации на сетке
∆∆∆∆
x
Для выбора шага
x
∆
сетки определяющим является ширина спектра функции-оригинала. Если спектр оригинала ограничен, т.е. существует верхняя граница спектра max
f
, то шаг
x
∆
выбирается из условия превышения частотой Найквиста сетки
x
f
N
∆
=
2 1
верхней границы max
f
спектра рассматриваемой функции: max
f
f
N
≥
, или max
2 1
f
x
≤
∆
(4.1)
Если спектр функции-оригинала неограничен, то за величину верхней его границы max
f
можно принять значение, при котором спектральная компонента
)
(
max
f
U
мала:
)
(
max
)
(
max
f
U
f
U
f
<<
(4.2)
Например, для гауссовой функции
−
=
2 0
2
exp
)
(
a
x
x
u
спектр имеет вид
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
. Если принять, что
0
max
1
a
f
=
, то
Глава 4. Практика дискретного преобразования Фурье
51 относительная величина спектральной компоненты на границе спектральной полосы составляет
4
max
10
)
0
(
/
)
(
−
≤
U
f
U
и шаг дискретизации согласно (4.1) должен удовлетворять неравенству
2 0
a
x
≤
∆
, т.е. на полуширину a
0
гауссовой функции должно приходиться не менее двух шагов сетки. При таком выборе шага
x
∆
наложение частот практически отсутствует.
Непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру, близка к исходной
)
(x
u
(рис. 4.1).
Рис. 4.1. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
j
j
−
=
на сетке с шагом
0 5
,
0 a
x
=
∆
; ее дискретный спектр
(
)
2 2
0 2
0
exp
)
(
k
k
f
a
a
f
U
π
−
π
=
и непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру
В общем случае спектр
)
( f
U
функции
)
(x
u
не известен и для границы спектральной полосы используются качественные оценки, которые включают в себя и возможное уширение спектра в процессе решения конкретной задачи. В отсутствии представлений о спектре
)
( f
U
функции
)
(x
u
шаг дискретизации
x
∆
выбирается таким, чтобы на интервале наибольшего градиента (максимальной производной) функции приходился хотя бы один узел сетки.
На рис. 4.2 приведена в качестве примера функция
)
(x
u
, которая в узком интервале от 0,35L до 0,45L быстро уменьшается. Там же изображены ее спектр
)
( f
U
и функция
)
(
x
u
, восстановленная по дискретному спектру, полученному при различных шагах дискретизации x
∆
. Видно, что в случае, когда шаг
L
L
x
03
,
0 32
≈
=
∆
, при котором узел сетки находится в интервале между максимальным и
Глава 4. Практика дискретного преобразования Фурье
52 минимальным значениями функции, спектральные компоненты на частоте Найквиста малы и, следовательно, наложение частот несущественно. Функция, восстановленная по дискретному спектру в этом случае близка к исходной. В то же время, при шаге
L
L
x
06
,
0 16
≈
=
∆
в область сильного градиента не попадает ни один промежуточный узел сетки, частота Найквиста мала, появляется наложение частот, и восстановленная функция существенно отличается от исходной.
Рис.4.2. Произвольная функция u(x) с большой производной в интервале
0,35L < x < 0,45L, ее дискретные аналоги, спектры U(f) и восстановленные функции
)
(
x
u
при различном шаге дискретизации x
∆
Верхняя строка:
32
/
L
x
=
∆
; нижняя строка:
16
/
L
x
=
∆
Может оказаться так, что при чрезмерно малом
x
∆
спектральная ширина сетки
N
f окажется избыточно большой. Разумно выбранное соотношение между разрешением сетки и шириной спектра функции во многих случаях позволит сократить вычислительные затраты при выполнении ДПФ.
В качестве примера рассмотрим гауссову функцию
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
на периоде длиной
0 16
a
L
=
. На рис. 4.3 видно, что сетка с числом узлов
32
=
N
и шагом
0 5
,
0
a
x
=
∆
является вполне достаточной для воспроизведения как функции, так и ее спектра. При
Глава 4. Практика дискретного преобразования Фурье
53 этом на полуширину функции приходится 2 узла, а полуширина ее спектра, равная
0 0
1
a
f
π
=
, в π раз меньше частоты Найквиста
0
/
1 a
f
N
=
Рис. 4.3. Гауссова функция u(x
i
) и ее спектр U(f
k
) на сетке с N = 32 (слева) и на сетке c N = 64 (справа)
В то же время, сетка с числом узлов N = 64 и шагом
0 25
,
0
a
x
=
∆
является в данном случае явно избыточной, поскольку спектр функции содержит примерно половину нулевых компонент, вычисление которых требует дополнительны затрат.
Подводя итог, можно утверждать, что в случае, когда не предполагается выполнять каких либо операций с ограниченным спектром, приводящих в последующем к его уширению, оптимальное разрешение сетки достигается при max
2 1
f
x
≈
∆
где max
f
– верхняя граница спектра.
§4.2. Выбор области периодизации функции L
При выборе L необходимо в первую очередь учитывать принудительную периодизацию функции u(x), неизбежно возникающую из-за дискретности ее спектра. Одним из последствий этого может явиться появление разрывов функции или ее производных на границах периода
[–L/2, L/2] исходной функции с ее периодическими продолжениями. Возникновение разрывов при периодизации функции
u(x) вызывает расширение спектра, которое имеет чисто вычислительную природу. Поэтому необходимо контролировать и подавлять появление артефактов, связанных с таким расширением спектра и, как следствие этого, возникновения эффекта наложения частот и связанных с ним погрешностей.
Глава 4. Практика дискретного преобразования Фурье
54
В соответствии с общепринятыми рекомендациями, для непериодической функции период L следует выбирать из условия малости функции u(x) на границах периода. При этом взаимные перекрытия исходной функции и ее периодических продолжений, практически, отсутствуют:
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
(4.3)
Например, для гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
ее относительная величина на границах периода при
0 6a
L
=
составляет
4 10
)
0
(
/
)
2
/
(
−
≈
±
u
L
u
, и перекрытием функции и ее продолжений можно пренебречь. Заметим, что у симметричной функции при периодическом продолжении не возникают разрывы на границах периода при любом периоде L.
Однако, при неудачном выборе L возможно появление на границах периода разрывов производных функции u(x). Иллюстрацией этого эффекта служит рис. 4.4, на котором продемонстрировано вычисление первой производной гауссовой функции, принудительно периодизированной с периодом
0 3a
L
=
. Отчетливо видны осцилляции
Гиббса на профиле производной восстановленной функции
dx
u
d /
, наиболее сильно проявляющиеся в окрестности точек разрыва производной (изломов на профиле) периодизированной функции
)
(x
u
Заметим, что с увеличением числа узлов N на выбранном периоде, т.е. с уменьшением шага дискретизации
∆
x и, следовательно, увеличением частоты Найквиста f
N
, амплитуда осцилляций не уменьшается.
Иными словами, при разрыве производной спектр периодизированной функции становится неограниченным и осцилляции, вызванные разрывом производной, не ослабляются по мере увеличения числа узлов сетки N (§2.4).
Поэтому, фактически единственный способ избежать искажений спектра из-за наложения частот у периодизированной функции
)
(x
u
состоит в выборе такого периода L, при котором не возникают взаимные перекрытия исходной функции и ее периодических продолжений. Если же излом существует на профиле самой функции в пределах периода ее регистрации, то устранить возникшее при этом наложение частот путем увеличения числа узлов сетки N не
Глава 4. Практика дискретного преобразования Фурье
55 представляется возможным. В этом случае необходимо осуществлять контролируемое ограничение спектра исследуемой функции.
Рис. 4.4. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
, периодизированная с периодом
0 3a
L
=
; модуль спектра ее первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
. Верхняя строка:
N = 32; средняя строка:
N = 64; нижняя строка: N = 128
В частности, для сокращения спектральной полосы периодизированной функции нередко используются так называемые окна, являющиеся некоторыми весовыми функциями, после умножения на которые оригинала u(x)обрабатываемаяфункция на границах
Глава 4. Практика дискретного преобразования Фурье
56 периода обращается в нуль. Не вдаваясь в детали построения таких окон и анализа их спектральных свойств, отошлем читателя к великолепной книге [4], в главе 3 которой такой анализ дан с исчерпывающей полнотой.
Для уменьшения скачков функции или ее производных, возникающих при ее периодизации, можно наложить окно П(x) на функцию u(x), т.е. сформировать некоторую «буферную» область, благодаря которой условие
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
будет выполняться в виде сильного неравенства.
Рассмотрим в качестве примера дискретное преобразование
Фурье линейной функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданной на отрезке
2
/
2
/
L
x
L
<
<
−
На рис. 4.5 изображена периодизированная функция, модуль дискретного спектра этой функции
|
)
(
|
f
U
и ее производной
|
)
(
|
f
U
i
κ
, а также производная
dx
u
d /
, восстановленная по дискретному спектру.
Рис. 4.5. Линейная функция
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданная на сетке с
N = 32; модуль ее спектра
|
)
(
|
f
U
; модуль спектра первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
Из рисунка видно, что наличие разрывов функции при
2
/
L
x
−
=
и при
2
/
L
x
=
при ее периодизации вызывает наложение частот в ее спектре, которое, в свою очередь, приводит к появлению осцилляций Гиббса, и, как следствие, к возникновению значительных ошибок в вычислении первой производной.
Очевидно, что указанные выше ошибки не могут быть устранены путем изменения периода L. Однако, наложение окна, при котором вводятся буферные зоны в окрестности границ периода,
Глава 4. Практика дискретного преобразования Фурье
57 позволяет существенно ослабить влияние разрывов функции при ее периодизации.
Рис. 4.6. Функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
, сглаженная в окрестности точки
L/2 путем наложения окна П(x) (4.4) на линейную функцию
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
; модуль спектра ee первой производной
|
)
(
|
f
U
i
′
κ
; первая производная восстановленной функции
dx
u
d
/
′
. Верхняя строка:
N = 32; средняя строка: N = 64; нижняя строка: N = 128
Например, плавное убывание функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
от максимального значения до нуля может быть обеспечено путем ее умножения на окно
Глава 4. Практика дискретного преобразования Фурье
58
(
)
<
≥
−
−
=
Π
,
при
1
,
при
)
/
)
((
exp
)
(
0 0
0
x
x
x
x
a
x
x
x
b
(4.4) с помощью которого сглаженная функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
становится близкой к нулю на границе
2
/
L
x
=
Окно П(x) зависит от трех свободных параметров x
0
, a и b, подбираемых опытным путем. Эмпирически установлено, что для рассматриваемой функции близкие к оптимальным результаты с точки зрения уменьшения осцилляций Гиббса дают следующие значения параметров:
4
/
0
L
x
=
,
12
/
L
a
=
,
4
=
b
На рис. 4.6 продемонстрирован пример использования рассматриваемого окна. Видно, что по сравнению со случаем, представленным на рис. 4.5, у периодизированной функции с окном
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
отсутствует разрыв. В области
4
/
2
/
L
x
L
≤
≤
−
ошибки при вычислении первой производной в целом существенно снижены. Слабо выраженные осцилляции на профиле
dx
u
d
/
′
дополнительно ослабляются с уменьшением шага дискретизации при увеличении числа узлов N на периоде. Паразитный отрицательный выброс при
4
/
L
x
>
связан с дифференцированием произведения исходной функции и окна П(x).
§4.3. Частотное разрешение
∆∆∆∆
f
С выбором области периодизации L связано частотное разрешение преобразования Фурье. Действительно, шаг дискретизации в спектральном пространстве
L
f
1
=
∆
представляет собой интервал между соседними фурье-гармониками. Величина
∆
f является частотным разрешением ДПФ, которое равно наименьшему интервалу частот, различимому в дискретном спектре.
Если в спектре U(f) присутствует узкая линия, т.е. малая область частот
δ
f, в которой существует локальный экстремум U(f), то шаг по частоте
∆
f должен удовлетворять условию
f
f
δ
<
∆
(4.5)
Глава 4. Практика дискретного преобразования Фурье
59
В противном случае узкая линия может оказаться между гармониками дискретного спектра и не будет воспроизводиться. Для повышения частотного разрешения при ДПФ необходимо увеличивать размер области периодизации L функции u. При экспериментальном получении выборки отсчетов u(j) нужно максимально увеличивать ее длину, т.е. число отсчетов N.
На рис. 4.7 проиллюстрировано влияние длины выборки L на частотное разрешение спектра ДПФ. В левой колонке рисунка изображены отсчеты некоторой гладкой функции u(x), которая при
0
a
x
j
±
=
обращается в нуль. При шаге дискретизации
0 0
17
,
0 6
a
a
x
≈
=
∆
шесть отсчетов функции u(x
j
)хорошо воспроизводят ее на интервале
0 0
a
x
<
<
и, следовательно, частота
Найквиста
)
2
/(
1
x
f
N
∆
=
значительно превышает максимальную частоту искомого спектра
)
( f
U
Пусть период принудительной периодизации выбран равным
0 7
,
2 a
L
≈
. Его границы отмечены вертикальными штрихпунктирными отрезками (на рисунке вверху слева). Видно, что при таком выборе периода L функция на его границах мала, условие (4.3) выполняется и перекрытие периодических продолжений отсутствует. Получаемый при таком выборе периода спектр
)
(
k
f
U
изображен на рисунке вверху справа. Видно, что в полосе частот от
N
f
−
до
N
f
+
амплитуда гармоник монотонно убывает и обращается в нуль на ее границах (вверху справа).
Однако, при выбранном периоде L частотное разрешение
L
f
/
1
=
∆
оказывается недостаточным для воспроизведения тонкой структуры искомого спектра. При увеличении периода вдвое
0 4
,
5 2
a
L
L
≈
=
′
(внизу слева) видно, что в искомом спектре существует узкая спектральная линия, которая при прежнем периоде L
отсутствовала(внизу справа). Это является следствием улучшения частотного разрешения, при котором интервал между гармониками дискретного спектра
L
f
′
=
′
∆
1
при увеличении периода от L до
L
L
2
=
′
сократился вдвое.
Глава 4. Практика дискретного преобразования Фурье
60
Рис. 4.7. Влияние длины выборки L на частотное разрешение спектра
∆
f.
Левая колонка – отсчеты некоторой функции u(x
j
), следующие с шагом
0 0
17
,
0 6
a
a
x
≈
=
∆
. Выделенной центральной части выборки длиной
0 0
7
,
2 6
16 16
a
a
x
L
≈
=
∆
⋅
=
, ограниченной вертикальными штрихпунктирными линиями, соответствует спектр в верхней части правой колонки. Его частотное разрешение
0 0
37
,
0 16 6
a
a
f
≈
=
∆
недостаточно для отображения особенностей полученного спектра. Увеличение длины выборки до
0 3
,
5 32
a
x
L
≈
∆
⋅
=
′
повышает частотное разрешение спектра до
0 0
19
,
0 32 6
a
a
f
≈
=
′
∆
(нижняя часть правой колонки), что позволяет обнаружить в спектре две узкие линии, неразличимые при длине выборки
x
L
∆
⋅
=
16
Дальнейшее улучшение частотного разрешения при увеличении длины выборки до
L
L
4
=
′′
позволяет оценить ширину узкой спектральной линии в дискретном спектре
)
(
k
f
U
(см. рис. 4.8). Следует заметить, что улучшение частотного разрешения при неизменном шаге дискретизации x
∆
требует увеличения числа узлов N на расчетной сетке и, следовательно, объема вычислений.
В численном моделировании для определения необходимого частотного разрешения обычно выполнятся тестовые вычисления спектра с увеличением периода принудительной периодизации
Глава 4. Практика дискретного преобразования Фурье
61 функции, чтобы убедиться в отсутствии тонкой структуры спектра или обнаружить ее существование.
При спектральном анализе экспериментальных результатов следует увеличивать длину области регистрации функции, чтобы не пропустить возможные тонкие линии при их обработке средствами ДПФ.
Рис. 4.8. Увеличение длины выборки от
L
L
2
=
′
до
L
L
4
=
′′
для улучшения частотного разрешения спектра (ср. с нижней строкой рис. 4.7). Для экономии места изображены только правые части выборки и спектра
§4.4. Заключительная иллюстрация влияния шага дискретизации и
периода
функции на спектр при ДПФ
Основные особенности трансформации оригинала и его спектра при изменении периода регистрации
L и шага сетки
∆
x проиллюстрированы на итоговом рис. 4.9.
На верхней строке рисунка слева изображены N = 16 дискретных отсчетов u(x
j
) гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
с периодом
0 8a
L
=
и шагом
2 16 0
a
L
x
=
=
∆
. На той же строке справа изображены
N = 16 гармоник
U(f
k
) ее спектра
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
с шагом по частоте
0 8
1
a
f
=
∆
. При этом частота Найквиста
0 1
a
f
N
=
. На средней строке проиллюстрировано уменьшение шага сетки вдвое при том же периоде
0 8a
L
=
: N = 32;
4 32 0
a
L
x
=
=
′
∆
;
0 8
1
a
f
=
∆
;
0 2
a
f
N
=
′
. Нижняя строка иллюстрирует увеличение периода вдвое, т.е.
0 16a
L
=
′
при первоначальном шаге
Глава 4. Практика дискретного преобразования Фурье
62 2
32 0
a
L
x
=
′
=
∆
. При этом шаг по частоте
0 16 1
a
f
=
′
∆
, а частота
Найквиста
0 1
a
f
N
=
Рис. 4.9. Трансформация оригинала
)
(
j
x
u
и его спектра
)
(
k
f
U
при изменении периода регистрации L и шага сетки
∆
x.
Верхняя строка: период
0 8a
L
=
; шаг сетки
2
/
16
/
0
a
L
x
=
=
∆
; шаг по частоте
)
8
/(
1 0
a
f
=
∆
; частота Найквиста
0
/
1 a
f
N
=
Средняя строка:
0 8a
L
=
;
4
/
32
/
0
a
L
x
=
=
′
∆
;
)
8
/(
1 0
a
f
=
∆
;
0
/
2 a
f
N
=
′
Нижняя строка:
0 16a
L
=
′
;
2
/
32
/
0
a
L
x
=
′
=
∆
;
)
16
/(
1 0
a
f
=
′
∆
;
0
/
1 a
f
N
=
Глава 5. Быстрое преобразование Фурье
63
1 2 3 4 5
Глава
3. Дискретное преобразование Фурье (ДПФ)
§3.1. Анализ Фурье. Ортогональность гармоник в дискретном
пространстве
. Синтез Фурье
Получим формулу для вычисления на сетке преобразования
Фурье периодической функции
)
(
)
(
x
u
nL
x
u
=
±
, где
K
,
2
,
1
=
n
Введем на периоде
L функции
u(x) равномерную сетку
x
j
x
j
∆
=
с шагом
N
L
x
=
∆
. Здесь N – число узлов сетки, которое совпадает с числом отрезков разбиения. При этом номер узла сетки
j пробегает значения
1 2
/
2
/
−
≤
≤
−
N
j
N
и сеточная функция
)
(
)
(
j
x
u
j
u
≡
периодична с периодом N, т.е.
)
(
)
(
j
u
nN
j
u
=
±
. Важно обратить внимание на то, что в силу периодичности функции
)
( j
u
справедливо равенство
)
2
/
(
)
2
/
(
N
u
N
u
−
=
Спектр периодичной функции представляет собой ряд
Фурье
dx
L
ikx
x
u
L
f
U
k
U
L
L
k
π
−
=
≡
−
2
exp
)
(
1
)
(
)
(
2
/
2
/
,
(3.1) где k – номер фурье-гармоники.
Предполагая, что спектр
)
( f
U
ограничен и
N
f
f
≤
max
, по формуле
Котельникова–Шеннона (2.19) имеем для периодической функции
−
−
=
−
∆
π
=
≡
1 2
/
2
/
)
(
sinc
)
(
)
(
)
(
N
N
j
j
x
x
x
j
u
x
u
x
u
(3.2)
Рис.3.1. Периодическая функция.
Границы отрезка периодичности [–L/2,
L/2] функции обозначены символом ×, узлы сетки – вертикальными рисками
Глава 3. Дискретное преобразование Фурье
45
Подставляя u(x) в виде (3.2) в формулу (3.1), и используя для u(j) представление (2.2) через гребневую функцию Дирака, получаем
π
−
−
∆
π
−
δ
∆
=
−
−
−
=
L
ikx
x
x
x
x
u
x
x
x
L
k
U
j
L
L
N
N
j
j
2
exp
)
(
sinc
)
(
)
(
1
)
(
2
/
2
/
1 2
/
2
/
Отсюда, в соответствии с определением функции Дирака (§1), следует, что
−
−
=
∆
π
−
∆
=
1 2
/
2
/
2
exp
)
(
)
(
N
N
j
L
x
ikj
j
u
L
x
k
U
Учитывая, что
N
L
x
1
=
∆
и вводя обозначение
π
=
N
i
W
N
2
exp
, запишем последнее равенство в виде
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
j
kj
N
W
j
u
N
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
k
K
(3.3)
Это выражение называется формулой прямого дискретного преобразования
Фурье
(дискретного анализа
Фурье).
Оно определяет k-ю фурье-гармонику дискретного спектра U(k) по функции дискретного аргумента u(j). Выражение (3.3) является дискретным аналогом формулы
(1.5) для вычисления коэффициентов разложения
k
d
в ряд Фурье периодической функции. При замене во второй формуле (1.5) интеграла суммой и в подстановках
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.3).
Рассмотрим свойства дискретных гармонических функций
kj
N
W
, определенных на множестве номеров гармоник
1 2
/
,
,
2
/
−
−
=
N
N
k
L
в пространстве частот и множестве узлов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
в пространстве отсчетов.
Глава 3. Дискретное преобразование Фурье
46 1. Гармоники разных номеров k и l ортогональны на периоде отсчетов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
l
k
l
k
N
W
W
N
N
j
lj
N
kj
N
(3.4)
2. Гармоники одного и того же номера k, взятые в разных точках сетки j и m, ортогональны на периоде спектра
1 2
/
,
,
2
/
−
−
=
N
N
k
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
m
j
m
j
N
W
W
N
N
k
km
N
kj
N
(3.5)
Используя свойства ортогональности гармоник, получим формулу дискретного синтеза Фурье для вычисления функции дискретного аргумента u(j) по гармоникам U(k) дискретного спектра. Согласно (3.3) имеем
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
m
km
N
W
m
u
N
k
U
(3.6)
Умножим левую и правую части этого равенства на
kj
N
W
и просуммируем по всем k слева и справа. Получим
−
−
=
−
−
=
−
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
)
(
1
)
(
N
N
k
N
N
m
kj
N
km
N
N
N
k
kj
N
W
W
m
u
N
W
k
U
Поменяем в правой части равенства порядок суммирования:
−
−
=
−
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
1
)
(
)
(
N
N
k
kj
N
km
N
N
N
m
N
N
k
kj
N
W
W
N
m
u
W
k
U
В силу ортогональности гармоник (3.5) вторая сумма в правой части равна N при
j
m
=
и обращается в ноль при
j
m
≠
. Отсюда, поменяв местами правую и левую части равенства, получаем
Глава 3. Дискретное преобразование Фурье
47
−
−
=
=
1 2
/
2
/
)
(
)
(
N
N
k
kj
N
W
k
U
j
u
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
(3.7)
Выражение (3.7) называется формулой обратного дискретного преобразования Фурье, с помощью которой вычисляется функция дискретного аргумента u(j) по ее спектру U(k). Формула (3.7) является дискретным аналогом разложения (1.5) периодической функции в ряд Фурье. При замене в сумме (1.5) бесконечных пределов на суммирование от –N/2 до N/2–1 и в подстановках
)
(k
U
d
k
=
,
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.7).
§3.2 Свойства ДПФ. Формулы запаздывания, смещения и
свертки
Выпишем вновь формулы дискретного преобразования
Фурье
=
=
−
−
=
−
−
=
−
1 2
/
2
/
1 2
/
2
/
,
)
(
)
(
,
)
(
1
)
(
N
N
k
kj
N
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(3.8) где
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
,
π
=
N
i
W
N
2
exp
Перечислим кратко основные свойства дискретных оригинала и его Фурье-образа. К ним относятся:
1. Периодичность:
)
(
)
(
j
u
nN
j
u
=
±
,
)
(
)
(
k
U
nN
k
U
=
±
2. Линейность:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
β
+
α
↔
β
+
α
3. Изменение знака:
)
(
)
(
k
U
j
u
−
↔
−
4. Комплексное сопряжение:
)
(
*
)
(
*
k
U
j
u
−
↔
5. Запаздывание:
km
N
W
k
U
m
j
u
−
↔
−
)
(
)
(
6. Смещение:
jl
N
W
j
u
l
k
U
)
(
)
(
↔
−
7. Свертка:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
⋅
↔
⊗
,
Глава 3. Дискретное преобразование Фурье
48 где
−
−
=
−
⋅
=
⊗
1 2
/
2
/
2 1
2 1
)
(
)
(
1
)
(
)
(
N
N
m
m
j
u
m
u
N
j
u
j
u
8. Образ Фурье
)
( j
δ
–функции Дирака:
1
)
(
↔
δ
j
9. Образ Фурье запаздывающей функции Дирака
)
(
0
j
j
−
δ
:
0
)
(
0
kj
N
W
j
j
↔
−
δ
§3.3. Двумерное преобразование Фурье
Рассмотрим функцию двух переменных
)
,
(
y
x
u
, заданную на квадратной области
2
/
2
/
L
x
L
≤
≤
−
,
2
/
2
/
L
y
L
≤
≤
−
(рис. 3.2) и построим равномерную сетку
1 2
/
,
,
2
/
−
−
=
N
N
j
K
,
1 2
/
,
,
2
/
−
−
=
N
N
m
K
с квадратными ячейками размерами
x
x
∆
×
∆
, где
N
L
x
/
=
∆
Введем сеточную функцию
)
,
(
)
,
(
x
m
x
j
u
m
j
u
∆
∆
≡
Воспользовавшись формулой (3.8), запишем N прямых дискретных преобразования
Фурье для столбцов двумерного массива
)
,
( m
j
u
. Вводя вспомогательную функцию
)
,
( l
j
U
и используя обозначение
π
=
N
i
W
N
2
exp
, имеем
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
m
lm
N
W
m
j
u
N
l
j
U
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
Выполнив теперь N дискретных преобразований для строк
)
,
( l
j
U
, получаем двумерный спектр
)
,
( l
k
U
функции
)
,
( m
j
u
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
j
kj
N
W
l
j
U
N
l
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Рис. 3.2. Двумерная сетка
Глава 3. Дискретное преобразование Фурье
49
Записанные выше формулы удобно объединить в одну. Таким образом, прямое двумерное преобразование Фурье имеет вид
lm
N
N
N
j
N
N
m
kj
N
W
W
m
j
u
N
l
k
U
−
−
−
=
−
−
=
−
=
1 2
/
2
/
1 2
/
2
/
2
)
,
(
1
)
,
(
,
(3.9)
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Обратное двумерное преобразование Фурье записывается как
lm
N
N
N
k
N
N
l
kj
N
W
W
l
k
U
m
j
u
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
)
,
(
)
,
(
(3.10)
При практическом использовании преобразований (3.9), (3.10) нужно принять во внимание, что двумерная дискретизация оригинала
)
,
( m
j
u
и его Фурье-образа
)
,
( l
k
U
приводит к их принудительной периодизации с периодом N как по j, k, так и по
m, l, т.е.
)
,
(
)
,
(
2 1
m
j
u
N
n
m
N
n
j
u
=
±
±
,
)
,
(
)
,
(
2 1
l
k
U
N
n
l
N
n
k
U
=
±
±
, где
K
,
2
,
1
,
0
,
2 1
±
±
=
n
n
. Для корректного выполнения двумерных преобразований Фурье необходимо следить за отсутствием наложения отсчетов и частот сразу по обеим координатным и частотным осям. Указанное обстоятельство проиллюстрировано на рис. 3.3, где оригинал и Фурье-образ условно изображены линиями равного значения.
Рис. 3.3. Периодизация двумерной функции (слева) и двумерного спектра (справа). Здесь
N
f
F
2
=
– ширина частотной полосы,
L
k
f
k
/
=
,
L
l
f
l
/
=
Глава 4. Практика дискретного преобразования Фурье
50
Глава
4. Практика дискретного преобразования Фурье
При практическом использовании ДПФ ключевым является вопрос о выборе шага
∆
x дискретизации функции u(x) на сетке, а также области ee регистрации L, которая играет роль периода при принудительной периодизации функции u(x), неизбежно связанной с переходом к дискретному спектру. На спектральном языке речь идет о выборе ширины спектральной полосы
]
,
,
[
N
N
f
f
K
−
, граница которой равна частоте Найквиста
x
f
N
∆
=
2 1
, и о частотном разрешении сетки, которое равно
L
f
1
=
∆
§4.1. Выбор шага дискретизации на сетке
∆∆∆∆
x
Для выбора шага
x
∆
сетки определяющим является ширина спектра функции-оригинала. Если спектр оригинала ограничен, т.е. существует верхняя граница спектра max
f
, то шаг
x
∆
выбирается из условия превышения частотой Найквиста сетки
x
f
N
∆
=
2 1
верхней границы max
f
спектра рассматриваемой функции: max
f
f
N
≥
, или max
2 1
f
x
≤
∆
(4.1)
Если спектр функции-оригинала неограничен, то за величину верхней его границы max
f
можно принять значение, при котором спектральная компонента
)
(
max
f
U
мала:
)
(
max
)
(
max
f
U
f
U
f
<<
(4.2)
Например, для гауссовой функции
−
=
2 0
2
exp
)
(
a
x
x
u
спектр имеет вид
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
. Если принять, что
0
max
1
a
f
=
, то
Глава 4. Практика дискретного преобразования Фурье
51 относительная величина спектральной компоненты на границе спектральной полосы составляет
4
max
10
)
0
(
/
)
(
−
≤
U
f
U
и шаг дискретизации согласно (4.1) должен удовлетворять неравенству
2 0
a
x
≤
∆
, т.е. на полуширину a
0
гауссовой функции должно приходиться не менее двух шагов сетки. При таком выборе шага
x
∆
наложение частот практически отсутствует.
Непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру, близка к исходной
)
(x
u
(рис. 4.1).
Рис. 4.1. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
j
j
−
=
на сетке с шагом
0 5
,
0 a
x
=
∆
; ее дискретный спектр
(
)
2 2
0 2
0
exp
)
(
k
k
f
a
a
f
U
π
−
π
=
и непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру
В общем случае спектр
)
( f
U
функции
)
(x
u
не известен и для границы спектральной полосы используются качественные оценки, которые включают в себя и возможное уширение спектра в процессе решения конкретной задачи. В отсутствии представлений о спектре
)
( f
U
функции
)
(x
u
шаг дискретизации
x
∆
выбирается таким, чтобы на интервале наибольшего градиента (максимальной производной) функции приходился хотя бы один узел сетки.
На рис. 4.2 приведена в качестве примера функция
)
(x
u
, которая в узком интервале от 0,35L до 0,45L быстро уменьшается. Там же изображены ее спектр
)
( f
U
и функция
)
(
x
u
, восстановленная по дискретному спектру, полученному при различных шагах дискретизации x
∆
. Видно, что в случае, когда шаг
L
L
x
03
,
0 32
≈
=
∆
, при котором узел сетки находится в интервале между максимальным и
Глава 4. Практика дискретного преобразования Фурье
52 минимальным значениями функции, спектральные компоненты на частоте Найквиста малы и, следовательно, наложение частот несущественно. Функция, восстановленная по дискретному спектру в этом случае близка к исходной. В то же время, при шаге
L
L
x
06
,
0 16
≈
=
∆
в область сильного градиента не попадает ни один промежуточный узел сетки, частота Найквиста мала, появляется наложение частот, и восстановленная функция существенно отличается от исходной.
Рис.4.2. Произвольная функция u(x) с большой производной в интервале
0,35L < x < 0,45L, ее дискретные аналоги, спектры U(f) и восстановленные функции
)
(
x
u
при различном шаге дискретизации x
∆
Верхняя строка:
32
/
L
x
=
∆
; нижняя строка:
16
/
L
x
=
∆
Может оказаться так, что при чрезмерно малом
x
∆
спектральная ширина сетки
N
f окажется избыточно большой. Разумно выбранное соотношение между разрешением сетки и шириной спектра функции во многих случаях позволит сократить вычислительные затраты при выполнении ДПФ.
В качестве примера рассмотрим гауссову функцию
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
на периоде длиной
0 16
a
L
=
. На рис. 4.3 видно, что сетка с числом узлов
32
=
N
и шагом
0 5
,
0
a
x
=
∆
является вполне достаточной для воспроизведения как функции, так и ее спектра. При
Глава 4. Практика дискретного преобразования Фурье
53 этом на полуширину функции приходится 2 узла, а полуширина ее спектра, равная
0 0
1
a
f
π
=
, в π раз меньше частоты Найквиста
0
/
1 a
f
N
=
Рис. 4.3. Гауссова функция u(x
i
) и ее спектр U(f
k
) на сетке с N = 32 (слева) и на сетке c N = 64 (справа)
В то же время, сетка с числом узлов N = 64 и шагом
0 25
,
0
a
x
=
∆
является в данном случае явно избыточной, поскольку спектр функции содержит примерно половину нулевых компонент, вычисление которых требует дополнительны затрат.
Подводя итог, можно утверждать, что в случае, когда не предполагается выполнять каких либо операций с ограниченным спектром, приводящих в последующем к его уширению, оптимальное разрешение сетки достигается при max
2 1
f
x
≈
∆
где max
f
– верхняя граница спектра.
§4.2. Выбор области периодизации функции L
При выборе L необходимо в первую очередь учитывать принудительную периодизацию функции u(x), неизбежно возникающую из-за дискретности ее спектра. Одним из последствий этого может явиться появление разрывов функции или ее производных на границах периода
[–L/2, L/2] исходной функции с ее периодическими продолжениями. Возникновение разрывов при периодизации функции
u(x) вызывает расширение спектра, которое имеет чисто вычислительную природу. Поэтому необходимо контролировать и подавлять появление артефактов, связанных с таким расширением спектра и, как следствие этого, возникновения эффекта наложения частот и связанных с ним погрешностей.
Глава 4. Практика дискретного преобразования Фурье
54
В соответствии с общепринятыми рекомендациями, для непериодической функции период L следует выбирать из условия малости функции u(x) на границах периода. При этом взаимные перекрытия исходной функции и ее периодических продолжений, практически, отсутствуют:
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
(4.3)
Например, для гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
ее относительная величина на границах периода при
0 6a
L
=
составляет
4 10
)
0
(
/
)
2
/
(
−
≈
±
u
L
u
, и перекрытием функции и ее продолжений можно пренебречь. Заметим, что у симметричной функции при периодическом продолжении не возникают разрывы на границах периода при любом периоде L.
Однако, при неудачном выборе L возможно появление на границах периода разрывов производных функции u(x). Иллюстрацией этого эффекта служит рис. 4.4, на котором продемонстрировано вычисление первой производной гауссовой функции, принудительно периодизированной с периодом
0 3a
L
=
. Отчетливо видны осцилляции
Гиббса на профиле производной восстановленной функции
dx
u
d /
, наиболее сильно проявляющиеся в окрестности точек разрыва производной (изломов на профиле) периодизированной функции
)
(x
u
Заметим, что с увеличением числа узлов N на выбранном периоде, т.е. с уменьшением шага дискретизации
∆
x и, следовательно, увеличением частоты Найквиста f
N
, амплитуда осцилляций не уменьшается.
Иными словами, при разрыве производной спектр периодизированной функции становится неограниченным и осцилляции, вызванные разрывом производной, не ослабляются по мере увеличения числа узлов сетки N (§2.4).
Поэтому, фактически единственный способ избежать искажений спектра из-за наложения частот у периодизированной функции
)
(x
u
состоит в выборе такого периода L, при котором не возникают взаимные перекрытия исходной функции и ее периодических продолжений. Если же излом существует на профиле самой функции в пределах периода ее регистрации, то устранить возникшее при этом наложение частот путем увеличения числа узлов сетки N не
Глава 4. Практика дискретного преобразования Фурье
55 представляется возможным. В этом случае необходимо осуществлять контролируемое ограничение спектра исследуемой функции.
Рис. 4.4. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
, периодизированная с периодом
0 3a
L
=
; модуль спектра ее первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
. Верхняя строка:
N = 32; средняя строка:
N = 64; нижняя строка: N = 128
В частности, для сокращения спектральной полосы периодизированной функции нередко используются так называемые окна, являющиеся некоторыми весовыми функциями, после умножения на которые оригинала u(x)обрабатываемаяфункция на границах
Глава 4. Практика дискретного преобразования Фурье
56 периода обращается в нуль. Не вдаваясь в детали построения таких окон и анализа их спектральных свойств, отошлем читателя к великолепной книге [4], в главе 3 которой такой анализ дан с исчерпывающей полнотой.
Для уменьшения скачков функции или ее производных, возникающих при ее периодизации, можно наложить окно П(x) на функцию u(x), т.е. сформировать некоторую «буферную» область, благодаря которой условие
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
будет выполняться в виде сильного неравенства.
Рассмотрим в качестве примера дискретное преобразование
Фурье линейной функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданной на отрезке
2
/
2
/
L
x
L
<
<
−
На рис. 4.5 изображена периодизированная функция, модуль дискретного спектра этой функции
|
)
(
|
f
U
и ее производной
|
)
(
|
f
U
i
κ
, а также производная
dx
u
d /
, восстановленная по дискретному спектру.
Рис. 4.5. Линейная функция
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданная на сетке с
N = 32; модуль ее спектра
|
)
(
|
f
U
; модуль спектра первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
Из рисунка видно, что наличие разрывов функции при
2
/
L
x
−
=
и при
2
/
L
x
=
при ее периодизации вызывает наложение частот в ее спектре, которое, в свою очередь, приводит к появлению осцилляций Гиббса, и, как следствие, к возникновению значительных ошибок в вычислении первой производной.
Очевидно, что указанные выше ошибки не могут быть устранены путем изменения периода L. Однако, наложение окна, при котором вводятся буферные зоны в окрестности границ периода,
Глава 4. Практика дискретного преобразования Фурье
57 позволяет существенно ослабить влияние разрывов функции при ее периодизации.
Рис. 4.6. Функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
, сглаженная в окрестности точки
L/2 путем наложения окна П(x) (4.4) на линейную функцию
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
; модуль спектра ee первой производной
|
)
(
|
f
U
i
′
κ
; первая производная восстановленной функции
dx
u
d
/
′
. Верхняя строка:
N = 32; средняя строка: N = 64; нижняя строка: N = 128
Например, плавное убывание функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
от максимального значения до нуля может быть обеспечено путем ее умножения на окно
Глава 4. Практика дискретного преобразования Фурье
58
(
)
<
≥
−
−
=
Π
,
при
1
,
при
)
/
)
((
exp
)
(
0 0
0
x
x
x
x
a
x
x
x
b
(4.4) с помощью которого сглаженная функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
становится близкой к нулю на границе
2
/
L
x
=
Окно П(x) зависит от трех свободных параметров x
0
, a и b, подбираемых опытным путем. Эмпирически установлено, что для рассматриваемой функции близкие к оптимальным результаты с точки зрения уменьшения осцилляций Гиббса дают следующие значения параметров:
4
/
0
L
x
=
,
12
/
L
a
=
,
4
=
b
На рис. 4.6 продемонстрирован пример использования рассматриваемого окна. Видно, что по сравнению со случаем, представленным на рис. 4.5, у периодизированной функции с окном
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
отсутствует разрыв. В области
4
/
2
/
L
x
L
≤
≤
−
ошибки при вычислении первой производной в целом существенно снижены. Слабо выраженные осцилляции на профиле
dx
u
d
/
′
дополнительно ослабляются с уменьшением шага дискретизации при увеличении числа узлов N на периоде. Паразитный отрицательный выброс при
4
/
L
x
>
связан с дифференцированием произведения исходной функции и окна П(x).
§4.3. Частотное разрешение
∆∆∆∆
f
С выбором области периодизации L связано частотное разрешение преобразования Фурье. Действительно, шаг дискретизации в спектральном пространстве
L
f
1
=
∆
представляет собой интервал между соседними фурье-гармониками. Величина
∆
f является частотным разрешением ДПФ, которое равно наименьшему интервалу частот, различимому в дискретном спектре.
Если в спектре U(f) присутствует узкая линия, т.е. малая область частот
δ
f, в которой существует локальный экстремум U(f), то шаг по частоте
∆
f должен удовлетворять условию
f
f
δ
<
∆
(4.5)
Глава 4. Практика дискретного преобразования Фурье
59
В противном случае узкая линия может оказаться между гармониками дискретного спектра и не будет воспроизводиться. Для повышения частотного разрешения при ДПФ необходимо увеличивать размер области периодизации L функции u. При экспериментальном получении выборки отсчетов u(j) нужно максимально увеличивать ее длину, т.е. число отсчетов N.
На рис. 4.7 проиллюстрировано влияние длины выборки L на частотное разрешение спектра ДПФ. В левой колонке рисунка изображены отсчеты некоторой гладкой функции u(x), которая при
0
a
x
j
±
=
обращается в нуль. При шаге дискретизации
0 0
17
,
0 6
a
a
x
≈
=
∆
шесть отсчетов функции u(x
j
)хорошо воспроизводят ее на интервале
0 0
a
x
<
<
и, следовательно, частота
Найквиста
)
2
/(
1
x
f
N
∆
=
значительно превышает максимальную частоту искомого спектра
)
( f
U
Пусть период принудительной периодизации выбран равным
0 7
,
2 a
L
≈
. Его границы отмечены вертикальными штрихпунктирными отрезками (на рисунке вверху слева). Видно, что при таком выборе периода L функция на его границах мала, условие (4.3) выполняется и перекрытие периодических продолжений отсутствует. Получаемый при таком выборе периода спектр
)
(
k
f
U
изображен на рисунке вверху справа. Видно, что в полосе частот от
N
f
−
до
N
f
+
амплитуда гармоник монотонно убывает и обращается в нуль на ее границах (вверху справа).
Однако, при выбранном периоде L частотное разрешение
L
f
/
1
=
∆
оказывается недостаточным для воспроизведения тонкой структуры искомого спектра. При увеличении периода вдвое
0 4
,
5 2
a
L
L
≈
=
′
(внизу слева) видно, что в искомом спектре существует узкая спектральная линия, которая при прежнем периоде L
отсутствовала(внизу справа). Это является следствием улучшения частотного разрешения, при котором интервал между гармониками дискретного спектра
L
f
′
=
′
∆
1
при увеличении периода от L до
L
L
2
=
′
сократился вдвое.
Глава 4. Практика дискретного преобразования Фурье
60
Рис. 4.7. Влияние длины выборки L на частотное разрешение спектра
∆
f.
Левая колонка – отсчеты некоторой функции u(x
j
), следующие с шагом
0 0
17
,
0 6
a
a
x
≈
=
∆
. Выделенной центральной части выборки длиной
0 0
7
,
2 6
16 16
a
a
x
L
≈
=
∆
⋅
=
, ограниченной вертикальными штрихпунктирными линиями, соответствует спектр в верхней части правой колонки. Его частотное разрешение
0 0
37
,
0 16 6
a
a
f
≈
=
∆
недостаточно для отображения особенностей полученного спектра. Увеличение длины выборки до
0 3
,
5 32
a
x
L
≈
∆
⋅
=
′
повышает частотное разрешение спектра до
0 0
19
,
0 32 6
a
a
f
≈
=
′
∆
(нижняя часть правой колонки), что позволяет обнаружить в спектре две узкие линии, неразличимые при длине выборки
x
L
∆
⋅
=
16
Дальнейшее улучшение частотного разрешения при увеличении длины выборки до
L
L
4
=
′′
позволяет оценить ширину узкой спектральной линии в дискретном спектре
)
(
k
f
U
(см. рис. 4.8). Следует заметить, что улучшение частотного разрешения при неизменном шаге дискретизации x
∆
требует увеличения числа узлов N на расчетной сетке и, следовательно, объема вычислений.
В численном моделировании для определения необходимого частотного разрешения обычно выполнятся тестовые вычисления спектра с увеличением периода принудительной периодизации
Глава 4. Практика дискретного преобразования Фурье
61 функции, чтобы убедиться в отсутствии тонкой структуры спектра или обнаружить ее существование.
При спектральном анализе экспериментальных результатов следует увеличивать длину области регистрации функции, чтобы не пропустить возможные тонкие линии при их обработке средствами ДПФ.
Рис. 4.8. Увеличение длины выборки от
L
L
2
=
′
до
L
L
4
=
′′
для улучшения частотного разрешения спектра (ср. с нижней строкой рис. 4.7). Для экономии места изображены только правые части выборки и спектра
§4.4. Заключительная иллюстрация влияния шага дискретизации и
периода
функции на спектр при ДПФ
Основные особенности трансформации оригинала и его спектра при изменении периода регистрации
L и шага сетки
∆
x проиллюстрированы на итоговом рис. 4.9.
На верхней строке рисунка слева изображены N = 16 дискретных отсчетов u(x
j
) гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
с периодом
0 8a
L
=
и шагом
2 16 0
a
L
x
=
=
∆
. На той же строке справа изображены
N = 16 гармоник
U(f
k
) ее спектра
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
с шагом по частоте
0 8
1
a
f
=
∆
. При этом частота Найквиста
0 1
a
f
N
=
. На средней строке проиллюстрировано уменьшение шага сетки вдвое при том же периоде
0 8a
L
=
: N = 32;
4 32 0
a
L
x
=
=
′
∆
;
0 8
1
a
f
=
∆
;
0 2
a
f
N
=
′
. Нижняя строка иллюстрирует увеличение периода вдвое, т.е.
0 16a
L
=
′
при первоначальном шаге
Глава 4. Практика дискретного преобразования Фурье
62 2
32 0
a
L
x
=
′
=
∆
. При этом шаг по частоте
0 16 1
a
f
=
′
∆
, а частота
Найквиста
0 1
a
f
N
=
Рис. 4.9. Трансформация оригинала
)
(
j
x
u
и его спектра
)
(
k
f
U
при изменении периода регистрации L и шага сетки
∆
x.
Верхняя строка: период
0 8a
L
=
; шаг сетки
2
/
16
/
0
a
L
x
=
=
∆
; шаг по частоте
)
8
/(
1 0
a
f
=
∆
; частота Найквиста
0
/
1 a
f
N
=
Средняя строка:
0 8a
L
=
;
4
/
32
/
0
a
L
x
=
=
′
∆
;
)
8
/(
1 0
a
f
=
∆
;
0
/
2 a
f
N
=
′
Нижняя строка:
0 16a
L
=
′
;
2
/
32
/
0
a
L
x
=
′
=
∆
;
)
16
/(
1 0
a
f
=
′
∆
;
0
/
1 a
f
N
=
Глава 5. Быстрое преобразование Фурье
63
1 2 3 4 5
Глава
3. Дискретное преобразование Фурье (ДПФ)
§3.1. Анализ Фурье. Ортогональность гармоник в дискретном
пространстве
. Синтез Фурье
Получим формулу для вычисления на сетке преобразования
Фурье периодической функции
)
(
)
(
x
u
nL
x
u
=
±
, где
K
,
2
,
1
=
n
Введем на периоде
L функции
u(x) равномерную сетку
x
j
x
j
∆
=
с шагом
N
L
x
=
∆
. Здесь N – число узлов сетки, которое совпадает с числом отрезков разбиения. При этом номер узла сетки
j пробегает значения
1 2
/
2
/
−
≤
≤
−
N
j
N
и сеточная функция
)
(
)
(
j
x
u
j
u
≡
периодична с периодом N, т.е.
)
(
)
(
j
u
nN
j
u
=
±
. Важно обратить внимание на то, что в силу периодичности функции
)
( j
u
справедливо равенство
)
2
/
(
)
2
/
(
N
u
N
u
−
=
Спектр периодичной функции представляет собой ряд
Фурье
dx
L
ikx
x
u
L
f
U
k
U
L
L
k
π
−
=
≡
−
2
exp
)
(
1
)
(
)
(
2
/
2
/
,
(3.1) где k – номер фурье-гармоники.
Предполагая, что спектр
)
( f
U
ограничен и
N
f
f
≤
max
, по формуле
Котельникова–Шеннона (2.19) имеем для периодической функции
−
−
=
−
∆
π
=
≡
1 2
/
2
/
)
(
sinc
)
(
)
(
)
(
N
N
j
j
x
x
x
j
u
x
u
x
u
(3.2)
Рис.3.1. Периодическая функция.
Границы отрезка периодичности [–L/2,
L/2] функции обозначены символом ×, узлы сетки – вертикальными рисками
Глава 3. Дискретное преобразование Фурье
45
Подставляя u(x) в виде (3.2) в формулу (3.1), и используя для u(j) представление (2.2) через гребневую функцию Дирака, получаем
π
−
−
∆
π
−
δ
∆
=
−
−
−
=
L
ikx
x
x
x
x
u
x
x
x
L
k
U
j
L
L
N
N
j
j
2
exp
)
(
sinc
)
(
)
(
1
)
(
2
/
2
/
1 2
/
2
/
Отсюда, в соответствии с определением функции Дирака (§1), следует, что
−
−
=
∆
π
−
∆
=
1 2
/
2
/
2
exp
)
(
)
(
N
N
j
L
x
ikj
j
u
L
x
k
U
Учитывая, что
N
L
x
1
=
∆
и вводя обозначение
π
=
N
i
W
N
2
exp
, запишем последнее равенство в виде
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
j
kj
N
W
j
u
N
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
k
K
(3.3)
Это выражение называется формулой прямого дискретного преобразования
Фурье
(дискретного анализа
Фурье).
Оно определяет k-ю фурье-гармонику дискретного спектра U(k) по функции дискретного аргумента u(j). Выражение (3.3) является дискретным аналогом формулы
(1.5) для вычисления коэффициентов разложения
k
d
в ряд Фурье периодической функции. При замене во второй формуле (1.5) интеграла суммой и в подстановках
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.3).
Рассмотрим свойства дискретных гармонических функций
kj
N
W
, определенных на множестве номеров гармоник
1 2
/
,
,
2
/
−
−
=
N
N
k
L
в пространстве частот и множестве узлов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
в пространстве отсчетов.
Глава 3. Дискретное преобразование Фурье
46 1. Гармоники разных номеров k и l ортогональны на периоде отсчетов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
l
k
l
k
N
W
W
N
N
j
lj
N
kj
N
(3.4)
2. Гармоники одного и того же номера k, взятые в разных точках сетки j и m, ортогональны на периоде спектра
1 2
/
,
,
2
/
−
−
=
N
N
k
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
m
j
m
j
N
W
W
N
N
k
km
N
kj
N
(3.5)
Используя свойства ортогональности гармоник, получим формулу дискретного синтеза Фурье для вычисления функции дискретного аргумента u(j) по гармоникам U(k) дискретного спектра. Согласно (3.3) имеем
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
m
km
N
W
m
u
N
k
U
(3.6)
Умножим левую и правую части этого равенства на
kj
N
W
и просуммируем по всем k слева и справа. Получим
−
−
=
−
−
=
−
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
)
(
1
)
(
N
N
k
N
N
m
kj
N
km
N
N
N
k
kj
N
W
W
m
u
N
W
k
U
Поменяем в правой части равенства порядок суммирования:
−
−
=
−
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
1
)
(
)
(
N
N
k
kj
N
km
N
N
N
m
N
N
k
kj
N
W
W
N
m
u
W
k
U
В силу ортогональности гармоник (3.5) вторая сумма в правой части равна N при
j
m
=
и обращается в ноль при
j
m
≠
. Отсюда, поменяв местами правую и левую части равенства, получаем
Глава 3. Дискретное преобразование Фурье
47
−
−
=
=
1 2
/
2
/
)
(
)
(
N
N
k
kj
N
W
k
U
j
u
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
(3.7)
Выражение (3.7) называется формулой обратного дискретного преобразования Фурье, с помощью которой вычисляется функция дискретного аргумента u(j) по ее спектру U(k). Формула (3.7) является дискретным аналогом разложения (1.5) периодической функции в ряд Фурье. При замене в сумме (1.5) бесконечных пределов на суммирование от –N/2 до N/2–1 и в подстановках
)
(k
U
d
k
=
,
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.7).
§3.2 Свойства ДПФ. Формулы запаздывания, смещения и
свертки
Выпишем вновь формулы дискретного преобразования
Фурье
=
=
−
−
=
−
−
=
−
1 2
/
2
/
1 2
/
2
/
,
)
(
)
(
,
)
(
1
)
(
N
N
k
kj
N
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(3.8) где
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
,
π
=
N
i
W
N
2
exp
Перечислим кратко основные свойства дискретных оригинала и его Фурье-образа. К ним относятся:
1. Периодичность:
)
(
)
(
j
u
nN
j
u
=
±
,
)
(
)
(
k
U
nN
k
U
=
±
2. Линейность:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
β
+
α
↔
β
+
α
3. Изменение знака:
)
(
)
(
k
U
j
u
−
↔
−
4. Комплексное сопряжение:
)
(
*
)
(
*
k
U
j
u
−
↔
5. Запаздывание:
km
N
W
k
U
m
j
u
−
↔
−
)
(
)
(
6. Смещение:
jl
N
W
j
u
l
k
U
)
(
)
(
↔
−
7. Свертка:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
⋅
↔
⊗
,
Глава 3. Дискретное преобразование Фурье
48 где
−
−
=
−
⋅
=
⊗
1 2
/
2
/
2 1
2 1
)
(
)
(
1
)
(
)
(
N
N
m
m
j
u
m
u
N
j
u
j
u
8. Образ Фурье
)
( j
δ
–функции Дирака:
1
)
(
↔
δ
j
9. Образ Фурье запаздывающей функции Дирака
)
(
0
j
j
−
δ
:
0
)
(
0
kj
N
W
j
j
↔
−
δ
§3.3. Двумерное преобразование Фурье
Рассмотрим функцию двух переменных
)
,
(
y
x
u
, заданную на квадратной области
2
/
2
/
L
x
L
≤
≤
−
,
2
/
2
/
L
y
L
≤
≤
−
(рис. 3.2) и построим равномерную сетку
1 2
/
,
,
2
/
−
−
=
N
N
j
K
,
1 2
/
,
,
2
/
−
−
=
N
N
m
K
с квадратными ячейками размерами
x
x
∆
×
∆
, где
N
L
x
/
=
∆
Введем сеточную функцию
)
,
(
)
,
(
x
m
x
j
u
m
j
u
∆
∆
≡
Воспользовавшись формулой (3.8), запишем N прямых дискретных преобразования
Фурье для столбцов двумерного массива
)
,
( m
j
u
. Вводя вспомогательную функцию
)
,
( l
j
U
и используя обозначение
π
=
N
i
W
N
2
exp
, имеем
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
m
lm
N
W
m
j
u
N
l
j
U
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
Выполнив теперь N дискретных преобразований для строк
)
,
( l
j
U
, получаем двумерный спектр
)
,
( l
k
U
функции
)
,
( m
j
u
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
j
kj
N
W
l
j
U
N
l
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Рис. 3.2. Двумерная сетка
Глава 3. Дискретное преобразование Фурье
49
Записанные выше формулы удобно объединить в одну. Таким образом, прямое двумерное преобразование Фурье имеет вид
lm
N
N
N
j
N
N
m
kj
N
W
W
m
j
u
N
l
k
U
−
−
−
=
−
−
=
−
=
1 2
/
2
/
1 2
/
2
/
2
)
,
(
1
)
,
(
,
(3.9)
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Обратное двумерное преобразование Фурье записывается как
lm
N
N
N
k
N
N
l
kj
N
W
W
l
k
U
m
j
u
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
)
,
(
)
,
(
(3.10)
При практическом использовании преобразований (3.9), (3.10) нужно принять во внимание, что двумерная дискретизация оригинала
)
,
( m
j
u
и его Фурье-образа
)
,
( l
k
U
приводит к их принудительной периодизации с периодом N как по j, k, так и по
m, l, т.е.
)
,
(
)
,
(
2 1
m
j
u
N
n
m
N
n
j
u
=
±
±
,
)
,
(
)
,
(
2 1
l
k
U
N
n
l
N
n
k
U
=
±
±
, где
K
,
2
,
1
,
0
,
2 1
±
±
=
n
n
. Для корректного выполнения двумерных преобразований Фурье необходимо следить за отсутствием наложения отсчетов и частот сразу по обеим координатным и частотным осям. Указанное обстоятельство проиллюстрировано на рис. 3.3, где оригинал и Фурье-образ условно изображены линиями равного значения.
Рис. 3.3. Периодизация двумерной функции (слева) и двумерного спектра (справа). Здесь
N
f
F
2
=
– ширина частотной полосы,
L
k
f
k
/
=
,
L
l
f
l
/
=
Глава 4. Практика дискретного преобразования Фурье
50
Глава
4. Практика дискретного преобразования Фурье
При практическом использовании ДПФ ключевым является вопрос о выборе шага
∆
x дискретизации функции u(x) на сетке, а также области ee регистрации L, которая играет роль периода при принудительной периодизации функции u(x), неизбежно связанной с переходом к дискретному спектру. На спектральном языке речь идет о выборе ширины спектральной полосы
]
,
,
[
N
N
f
f
K
−
, граница которой равна частоте Найквиста
x
f
N
∆
=
2 1
, и о частотном разрешении сетки, которое равно
L
f
1
=
∆
§4.1. Выбор шага дискретизации на сетке
∆∆∆∆
x
Для выбора шага
x
∆
сетки определяющим является ширина спектра функции-оригинала. Если спектр оригинала ограничен, т.е. существует верхняя граница спектра max
f
, то шаг
x
∆
выбирается из условия превышения частотой Найквиста сетки
x
f
N
∆
=
2 1
верхней границы max
f
спектра рассматриваемой функции: max
f
f
N
≥
, или max
2 1
f
x
≤
∆
(4.1)
Если спектр функции-оригинала неограничен, то за величину верхней его границы max
f
можно принять значение, при котором спектральная компонента
)
(
max
f
U
мала:
)
(
max
)
(
max
f
U
f
U
f
<<
(4.2)
Например, для гауссовой функции
−
=
2 0
2
exp
)
(
a
x
x
u
спектр имеет вид
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
. Если принять, что
0
max
1
a
f
=
, то
Глава 4. Практика дискретного преобразования Фурье
51 относительная величина спектральной компоненты на границе спектральной полосы составляет
4
max
10
)
0
(
/
)
(
−
≤
U
f
U
и шаг дискретизации согласно (4.1) должен удовлетворять неравенству
2 0
a
x
≤
∆
, т.е. на полуширину a
0
гауссовой функции должно приходиться не менее двух шагов сетки. При таком выборе шага
x
∆
наложение частот практически отсутствует.
Непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру, близка к исходной
)
(x
u
(рис. 4.1).
Рис. 4.1. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
j
j
−
=
на сетке с шагом
0 5
,
0 a
x
=
∆
; ее дискретный спектр
(
)
2 2
0 2
0
exp
)
(
k
k
f
a
a
f
U
π
−
π
=
и непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру
В общем случае спектр
)
( f
U
функции
)
(x
u
не известен и для границы спектральной полосы используются качественные оценки, которые включают в себя и возможное уширение спектра в процессе решения конкретной задачи. В отсутствии представлений о спектре
)
( f
U
функции
)
(x
u
шаг дискретизации
x
∆
выбирается таким, чтобы на интервале наибольшего градиента (максимальной производной) функции приходился хотя бы один узел сетки.
На рис. 4.2 приведена в качестве примера функция
)
(x
u
, которая в узком интервале от 0,35L до 0,45L быстро уменьшается. Там же изображены ее спектр
)
( f
U
и функция
)
(
x
u
, восстановленная по дискретному спектру, полученному при различных шагах дискретизации x
∆
. Видно, что в случае, когда шаг
L
L
x
03
,
0 32
≈
=
∆
, при котором узел сетки находится в интервале между максимальным и
Глава 4. Практика дискретного преобразования Фурье
52 минимальным значениями функции, спектральные компоненты на частоте Найквиста малы и, следовательно, наложение частот несущественно. Функция, восстановленная по дискретному спектру в этом случае близка к исходной. В то же время, при шаге
L
L
x
06
,
0 16
≈
=
∆
в область сильного градиента не попадает ни один промежуточный узел сетки, частота Найквиста мала, появляется наложение частот, и восстановленная функция существенно отличается от исходной.
Рис.4.2. Произвольная функция u(x) с большой производной в интервале
0,35L < x < 0,45L, ее дискретные аналоги, спектры U(f) и восстановленные функции
)
(
x
u
при различном шаге дискретизации x
∆
Верхняя строка:
32
/
L
x
=
∆
; нижняя строка:
16
/
L
x
=
∆
Может оказаться так, что при чрезмерно малом
x
∆
спектральная ширина сетки
N
f окажется избыточно большой. Разумно выбранное соотношение между разрешением сетки и шириной спектра функции во многих случаях позволит сократить вычислительные затраты при выполнении ДПФ.
В качестве примера рассмотрим гауссову функцию
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
на периоде длиной
0 16
a
L
=
. На рис. 4.3 видно, что сетка с числом узлов
32
=
N
и шагом
0 5
,
0
a
x
=
∆
является вполне достаточной для воспроизведения как функции, так и ее спектра. При
Глава 4. Практика дискретного преобразования Фурье
53 этом на полуширину функции приходится 2 узла, а полуширина ее спектра, равная
0 0
1
a
f
π
=
, в π раз меньше частоты Найквиста
0
/
1 a
f
N
=
Рис. 4.3. Гауссова функция u(x
i
) и ее спектр U(f
k
) на сетке с N = 32 (слева) и на сетке c N = 64 (справа)
В то же время, сетка с числом узлов N = 64 и шагом
0 25
,
0
a
x
=
∆
является в данном случае явно избыточной, поскольку спектр функции содержит примерно половину нулевых компонент, вычисление которых требует дополнительны затрат.
Подводя итог, можно утверждать, что в случае, когда не предполагается выполнять каких либо операций с ограниченным спектром, приводящих в последующем к его уширению, оптимальное разрешение сетки достигается при max
2 1
f
x
≈
∆
где max
f
– верхняя граница спектра.
§4.2. Выбор области периодизации функции L
При выборе L необходимо в первую очередь учитывать принудительную периодизацию функции u(x), неизбежно возникающую из-за дискретности ее спектра. Одним из последствий этого может явиться появление разрывов функции или ее производных на границах периода
[–L/2, L/2] исходной функции с ее периодическими продолжениями. Возникновение разрывов при периодизации функции
u(x) вызывает расширение спектра, которое имеет чисто вычислительную природу. Поэтому необходимо контролировать и подавлять появление артефактов, связанных с таким расширением спектра и, как следствие этого, возникновения эффекта наложения частот и связанных с ним погрешностей.
Глава 4. Практика дискретного преобразования Фурье
54
В соответствии с общепринятыми рекомендациями, для непериодической функции период L следует выбирать из условия малости функции u(x) на границах периода. При этом взаимные перекрытия исходной функции и ее периодических продолжений, практически, отсутствуют:
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
(4.3)
Например, для гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
ее относительная величина на границах периода при
0 6a
L
=
составляет
4 10
)
0
(
/
)
2
/
(
−
≈
±
u
L
u
, и перекрытием функции и ее продолжений можно пренебречь. Заметим, что у симметричной функции при периодическом продолжении не возникают разрывы на границах периода при любом периоде L.
Однако, при неудачном выборе L возможно появление на границах периода разрывов производных функции u(x). Иллюстрацией этого эффекта служит рис. 4.4, на котором продемонстрировано вычисление первой производной гауссовой функции, принудительно периодизированной с периодом
0 3a
L
=
. Отчетливо видны осцилляции
Гиббса на профиле производной восстановленной функции
dx
u
d /
, наиболее сильно проявляющиеся в окрестности точек разрыва производной (изломов на профиле) периодизированной функции
)
(x
u
Заметим, что с увеличением числа узлов N на выбранном периоде, т.е. с уменьшением шага дискретизации
∆
x и, следовательно, увеличением частоты Найквиста f
N
, амплитуда осцилляций не уменьшается.
Иными словами, при разрыве производной спектр периодизированной функции становится неограниченным и осцилляции, вызванные разрывом производной, не ослабляются по мере увеличения числа узлов сетки N (§2.4).
Поэтому, фактически единственный способ избежать искажений спектра из-за наложения частот у периодизированной функции
)
(x
u
состоит в выборе такого периода L, при котором не возникают взаимные перекрытия исходной функции и ее периодических продолжений. Если же излом существует на профиле самой функции в пределах периода ее регистрации, то устранить возникшее при этом наложение частот путем увеличения числа узлов сетки N не
Глава 4. Практика дискретного преобразования Фурье
55 представляется возможным. В этом случае необходимо осуществлять контролируемое ограничение спектра исследуемой функции.
Рис. 4.4. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
, периодизированная с периодом
0 3a
L
=
; модуль спектра ее первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
. Верхняя строка:
N = 32; средняя строка:
N = 64; нижняя строка: N = 128
В частности, для сокращения спектральной полосы периодизированной функции нередко используются так называемые окна, являющиеся некоторыми весовыми функциями, после умножения на которые оригинала u(x)обрабатываемаяфункция на границах
Глава 4. Практика дискретного преобразования Фурье
56 периода обращается в нуль. Не вдаваясь в детали построения таких окон и анализа их спектральных свойств, отошлем читателя к великолепной книге [4], в главе 3 которой такой анализ дан с исчерпывающей полнотой.
Для уменьшения скачков функции или ее производных, возникающих при ее периодизации, можно наложить окно П(x) на функцию u(x), т.е. сформировать некоторую «буферную» область, благодаря которой условие
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
будет выполняться в виде сильного неравенства.
Рассмотрим в качестве примера дискретное преобразование
Фурье линейной функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданной на отрезке
2
/
2
/
L
x
L
<
<
−
На рис. 4.5 изображена периодизированная функция, модуль дискретного спектра этой функции
|
)
(
|
f
U
и ее производной
|
)
(
|
f
U
i
κ
, а также производная
dx
u
d /
, восстановленная по дискретному спектру.
Рис. 4.5. Линейная функция
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданная на сетке с
N = 32; модуль ее спектра
|
)
(
|
f
U
; модуль спектра первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
Из рисунка видно, что наличие разрывов функции при
2
/
L
x
−
=
и при
2
/
L
x
=
при ее периодизации вызывает наложение частот в ее спектре, которое, в свою очередь, приводит к появлению осцилляций Гиббса, и, как следствие, к возникновению значительных ошибок в вычислении первой производной.
Очевидно, что указанные выше ошибки не могут быть устранены путем изменения периода L. Однако, наложение окна, при котором вводятся буферные зоны в окрестности границ периода,
Глава 4. Практика дискретного преобразования Фурье
57 позволяет существенно ослабить влияние разрывов функции при ее периодизации.
Рис. 4.6. Функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
, сглаженная в окрестности точки
L/2 путем наложения окна П(x) (4.4) на линейную функцию
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
; модуль спектра ee первой производной
|
)
(
|
f
U
i
′
κ
; первая производная восстановленной функции
dx
u
d
/
′
. Верхняя строка:
N = 32; средняя строка: N = 64; нижняя строка: N = 128
Например, плавное убывание функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
от максимального значения до нуля может быть обеспечено путем ее умножения на окно
Глава 4. Практика дискретного преобразования Фурье
58
(
)
<
≥
−
−
=
Π
,
при
1
,
при
)
/
)
((
exp
)
(
0 0
0
x
x
x
x
a
x
x
x
b
(4.4) с помощью которого сглаженная функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
становится близкой к нулю на границе
2
/
L
x
=
Окно П(x) зависит от трех свободных параметров x
0
, a и b, подбираемых опытным путем. Эмпирически установлено, что для рассматриваемой функции близкие к оптимальным результаты с точки зрения уменьшения осцилляций Гиббса дают следующие значения параметров:
4
/
0
L
x
=
,
12
/
L
a
=
,
4
=
b
На рис. 4.6 продемонстрирован пример использования рассматриваемого окна. Видно, что по сравнению со случаем, представленным на рис. 4.5, у периодизированной функции с окном
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
отсутствует разрыв. В области
4
/
2
/
L
x
L
≤
≤
−
ошибки при вычислении первой производной в целом существенно снижены. Слабо выраженные осцилляции на профиле
dx
u
d
/
′
дополнительно ослабляются с уменьшением шага дискретизации при увеличении числа узлов N на периоде. Паразитный отрицательный выброс при
4
/
L
x
>
связан с дифференцированием произведения исходной функции и окна П(x).
§4.3. Частотное разрешение
∆∆∆∆
f
С выбором области периодизации L связано частотное разрешение преобразования Фурье. Действительно, шаг дискретизации в спектральном пространстве
L
f
1
=
∆
представляет собой интервал между соседними фурье-гармониками. Величина
∆
f является частотным разрешением ДПФ, которое равно наименьшему интервалу частот, различимому в дискретном спектре.
Если в спектре U(f) присутствует узкая линия, т.е. малая область частот
δ
f, в которой существует локальный экстремум U(f), то шаг по частоте
∆
f должен удовлетворять условию
f
f
δ
<
∆
(4.5)
Глава 4. Практика дискретного преобразования Фурье
59
В противном случае узкая линия может оказаться между гармониками дискретного спектра и не будет воспроизводиться. Для повышения частотного разрешения при ДПФ необходимо увеличивать размер области периодизации L функции u. При экспериментальном получении выборки отсчетов u(j) нужно максимально увеличивать ее длину, т.е. число отсчетов N.
На рис. 4.7 проиллюстрировано влияние длины выборки L на частотное разрешение спектра ДПФ. В левой колонке рисунка изображены отсчеты некоторой гладкой функции u(x), которая при
0
a
x
j
±
=
обращается в нуль. При шаге дискретизации
0 0
17
,
0 6
a
a
x
≈
=
∆
шесть отсчетов функции u(x
j
)хорошо воспроизводят ее на интервале
0 0
a
x
<
<
и, следовательно, частота
Найквиста
)
2
/(
1
x
f
N
∆
=
значительно превышает максимальную частоту искомого спектра
)
( f
U
Пусть период принудительной периодизации выбран равным
0 7
,
2 a
L
≈
. Его границы отмечены вертикальными штрихпунктирными отрезками (на рисунке вверху слева). Видно, что при таком выборе периода L функция на его границах мала, условие (4.3) выполняется и перекрытие периодических продолжений отсутствует. Получаемый при таком выборе периода спектр
)
(
k
f
U
изображен на рисунке вверху справа. Видно, что в полосе частот от
N
f
−
до
N
f
+
амплитуда гармоник монотонно убывает и обращается в нуль на ее границах (вверху справа).
Однако, при выбранном периоде L частотное разрешение
L
f
/
1
=
∆
оказывается недостаточным для воспроизведения тонкой структуры искомого спектра. При увеличении периода вдвое
0 4
,
5 2
a
L
L
≈
=
′
(внизу слева) видно, что в искомом спектре существует узкая спектральная линия, которая при прежнем периоде L
отсутствовала(внизу справа). Это является следствием улучшения частотного разрешения, при котором интервал между гармониками дискретного спектра
L
f
′
=
′
∆
1
при увеличении периода от L до
L
L
2
=
′
сократился вдвое.
Глава 4. Практика дискретного преобразования Фурье
60
Рис. 4.7. Влияние длины выборки L на частотное разрешение спектра
∆
f.
Левая колонка – отсчеты некоторой функции u(x
j
), следующие с шагом
0 0
17
,
0 6
a
a
x
≈
=
∆
. Выделенной центральной части выборки длиной
0 0
7
,
2 6
16 16
a
a
x
L
≈
=
∆
⋅
=
, ограниченной вертикальными штрихпунктирными линиями, соответствует спектр в верхней части правой колонки. Его частотное разрешение
0 0
37
,
0 16 6
a
a
f
≈
=
∆
недостаточно для отображения особенностей полученного спектра. Увеличение длины выборки до
0 3
,
5 32
a
x
L
≈
∆
⋅
=
′
повышает частотное разрешение спектра до
0 0
19
,
0 32 6
a
a
f
≈
=
′
∆
(нижняя часть правой колонки), что позволяет обнаружить в спектре две узкие линии, неразличимые при длине выборки
x
L
∆
⋅
=
16
Дальнейшее улучшение частотного разрешения при увеличении длины выборки до
L
L
4
=
′′
позволяет оценить ширину узкой спектральной линии в дискретном спектре
)
(
k
f
U
(см. рис. 4.8). Следует заметить, что улучшение частотного разрешения при неизменном шаге дискретизации x
∆
требует увеличения числа узлов N на расчетной сетке и, следовательно, объема вычислений.
В численном моделировании для определения необходимого частотного разрешения обычно выполнятся тестовые вычисления спектра с увеличением периода принудительной периодизации
Глава 4. Практика дискретного преобразования Фурье
61 функции, чтобы убедиться в отсутствии тонкой структуры спектра или обнаружить ее существование.
При спектральном анализе экспериментальных результатов следует увеличивать длину области регистрации функции, чтобы не пропустить возможные тонкие линии при их обработке средствами ДПФ.
Рис. 4.8. Увеличение длины выборки от
L
L
2
=
′
до
L
L
4
=
′′
для улучшения частотного разрешения спектра (ср. с нижней строкой рис. 4.7). Для экономии места изображены только правые части выборки и спектра
§4.4. Заключительная иллюстрация влияния шага дискретизации и
периода
функции на спектр при ДПФ
Основные особенности трансформации оригинала и его спектра при изменении периода регистрации
L и шага сетки
∆
x проиллюстрированы на итоговом рис. 4.9.
На верхней строке рисунка слева изображены N = 16 дискретных отсчетов u(x
j
) гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
с периодом
0 8a
L
=
и шагом
2 16 0
a
L
x
=
=
∆
. На той же строке справа изображены
N = 16 гармоник
U(f
k
) ее спектра
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
с шагом по частоте
0 8
1
a
f
=
∆
. При этом частота Найквиста
0 1
a
f
N
=
. На средней строке проиллюстрировано уменьшение шага сетки вдвое при том же периоде
0 8a
L
=
: N = 32;
4 32 0
a
L
x
=
=
′
∆
;
0 8
1
a
f
=
∆
;
0 2
a
f
N
=
′
. Нижняя строка иллюстрирует увеличение периода вдвое, т.е.
0 16a
L
=
′
при первоначальном шаге
Глава 4. Практика дискретного преобразования Фурье
62 2
32 0
a
L
x
=
′
=
∆
. При этом шаг по частоте
0 16 1
a
f
=
′
∆
, а частота
Найквиста
0 1
a
f
N
=
Рис. 4.9. Трансформация оригинала
)
(
j
x
u
и его спектра
)
(
k
f
U
при изменении периода регистрации L и шага сетки
∆
x.
Верхняя строка: период
0 8a
L
=
; шаг сетки
2
/
16
/
0
a
L
x
=
=
∆
; шаг по частоте
)
8
/(
1 0
a
f
=
∆
; частота Найквиста
0
/
1 a
f
N
=
Средняя строка:
0 8a
L
=
;
4
/
32
/
0
a
L
x
=
=
′
∆
;
)
8
/(
1 0
a
f
=
∆
;
0
/
2 a
f
N
=
′
Нижняя строка:
0 16a
L
=
′
;
2
/
32
/
0
a
L
x
=
′
=
∆
;
)
16
/(
1 0
a
f
=
′
∆
;
0
/
1 a
f
N
=
Глава 5. Быстрое преобразование Фурье
63
1 2 3 4 5
Глава
3. Дискретное преобразование Фурье (ДПФ)
§3.1. Анализ Фурье. Ортогональность гармоник в дискретном
пространстве
. Синтез Фурье
Получим формулу для вычисления на сетке преобразования
Фурье периодической функции
)
(
)
(
x
u
nL
x
u
=
±
, где
K
,
2
,
1
=
n
Введем на периоде
L функции
u(x) равномерную сетку
x
j
x
j
∆
=
с шагом
N
L
x
=
∆
. Здесь N – число узлов сетки, которое совпадает с числом отрезков разбиения. При этом номер узла сетки
j пробегает значения
1 2
/
2
/
−
≤
≤
−
N
j
N
и сеточная функция
)
(
)
(
j
x
u
j
u
≡
периодична с периодом N, т.е.
)
(
)
(
j
u
nN
j
u
=
±
. Важно обратить внимание на то, что в силу периодичности функции
)
( j
u
справедливо равенство
)
2
/
(
)
2
/
(
N
u
N
u
−
=
Спектр периодичной функции представляет собой ряд
Фурье
dx
L
ikx
x
u
L
f
U
k
U
L
L
k
π
−
=
≡
−
2
exp
)
(
1
)
(
)
(
2
/
2
/
,
(3.1) где k – номер фурье-гармоники.
Предполагая, что спектр
)
( f
U
ограничен и
N
f
f
≤
max
, по формуле
Котельникова–Шеннона (2.19) имеем для периодической функции
−
−
=
−
∆
π
=
≡
1 2
/
2
/
)
(
sinc
)
(
)
(
)
(
N
N
j
j
x
x
x
j
u
x
u
x
u
(3.2)
Рис.3.1. Периодическая функция.
Границы отрезка периодичности [–L/2,
L/2] функции обозначены символом ×, узлы сетки – вертикальными рисками
Глава 3. Дискретное преобразование Фурье
45
Подставляя u(x) в виде (3.2) в формулу (3.1), и используя для u(j) представление (2.2) через гребневую функцию Дирака, получаем
π
−
−
∆
π
−
δ
∆
=
−
−
−
=
L
ikx
x
x
x
x
u
x
x
x
L
k
U
j
L
L
N
N
j
j
2
exp
)
(
sinc
)
(
)
(
1
)
(
2
/
2
/
1 2
/
2
/
Отсюда, в соответствии с определением функции Дирака (§1), следует, что
−
−
=
∆
π
−
∆
=
1 2
/
2
/
2
exp
)
(
)
(
N
N
j
L
x
ikj
j
u
L
x
k
U
Учитывая, что
N
L
x
1
=
∆
и вводя обозначение
π
=
N
i
W
N
2
exp
, запишем последнее равенство в виде
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
j
kj
N
W
j
u
N
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
k
K
(3.3)
Это выражение называется формулой прямого дискретного преобразования
Фурье
(дискретного анализа
Фурье).
Оно определяет k-ю фурье-гармонику дискретного спектра U(k) по функции дискретного аргумента u(j). Выражение (3.3) является дискретным аналогом формулы
(1.5) для вычисления коэффициентов разложения
k
d
в ряд Фурье периодической функции. При замене во второй формуле (1.5) интеграла суммой и в подстановках
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.3).
Рассмотрим свойства дискретных гармонических функций
kj
N
W
, определенных на множестве номеров гармоник
1 2
/
,
,
2
/
−
−
=
N
N
k
L
в пространстве частот и множестве узлов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
в пространстве отсчетов.
Глава 3. Дискретное преобразование Фурье
46 1. Гармоники разных номеров k и l ортогональны на периоде отсчетов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
l
k
l
k
N
W
W
N
N
j
lj
N
kj
N
(3.4)
2. Гармоники одного и того же номера k, взятые в разных точках сетки j и m, ортогональны на периоде спектра
1 2
/
,
,
2
/
−
−
=
N
N
k
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
m
j
m
j
N
W
W
N
N
k
km
N
kj
N
(3.5)
Используя свойства ортогональности гармоник, получим формулу дискретного синтеза Фурье для вычисления функции дискретного аргумента u(j) по гармоникам U(k) дискретного спектра. Согласно (3.3) имеем
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
m
km
N
W
m
u
N
k
U
(3.6)
Умножим левую и правую части этого равенства на
kj
N
W
и просуммируем по всем k слева и справа. Получим
−
−
=
−
−
=
−
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
)
(
1
)
(
N
N
k
N
N
m
kj
N
km
N
N
N
k
kj
N
W
W
m
u
N
W
k
U
Поменяем в правой части равенства порядок суммирования:
−
−
=
−
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
1
)
(
)
(
N
N
k
kj
N
km
N
N
N
m
N
N
k
kj
N
W
W
N
m
u
W
k
U
В силу ортогональности гармоник (3.5) вторая сумма в правой части равна N при
j
m
=
и обращается в ноль при
j
m
≠
. Отсюда, поменяв местами правую и левую части равенства, получаем
Глава 3. Дискретное преобразование Фурье
47
−
−
=
=
1 2
/
2
/
)
(
)
(
N
N
k
kj
N
W
k
U
j
u
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
(3.7)
Выражение (3.7) называется формулой обратного дискретного преобразования Фурье, с помощью которой вычисляется функция дискретного аргумента u(j) по ее спектру U(k). Формула (3.7) является дискретным аналогом разложения (1.5) периодической функции в ряд Фурье. При замене в сумме (1.5) бесконечных пределов на суммирование от –N/2 до N/2–1 и в подстановках
)
(k
U
d
k
=
,
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.7).
§3.2 Свойства ДПФ. Формулы запаздывания, смещения и
свертки
Выпишем вновь формулы дискретного преобразования
Фурье
=
=
−
−
=
−
−
=
−
1 2
/
2
/
1 2
/
2
/
,
)
(
)
(
,
)
(
1
)
(
N
N
k
kj
N
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(3.8) где
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
,
π
=
N
i
W
N
2
exp
Перечислим кратко основные свойства дискретных оригинала и его Фурье-образа. К ним относятся:
1. Периодичность:
)
(
)
(
j
u
nN
j
u
=
±
,
)
(
)
(
k
U
nN
k
U
=
±
2. Линейность:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
β
+
α
↔
β
+
α
3. Изменение знака:
)
(
)
(
k
U
j
u
−
↔
−
4. Комплексное сопряжение:
)
(
*
)
(
*
k
U
j
u
−
↔
5. Запаздывание:
km
N
W
k
U
m
j
u
−
↔
−
)
(
)
(
6. Смещение:
jl
N
W
j
u
l
k
U
)
(
)
(
↔
−
7. Свертка:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
⋅
↔
⊗
,
Глава 3. Дискретное преобразование Фурье
48 где
−
−
=
−
⋅
=
⊗
1 2
/
2
/
2 1
2 1
)
(
)
(
1
)
(
)
(
N
N
m
m
j
u
m
u
N
j
u
j
u
8. Образ Фурье
)
( j
δ
–функции Дирака:
1
)
(
↔
δ
j
9. Образ Фурье запаздывающей функции Дирака
)
(
0
j
j
−
δ
:
0
)
(
0
kj
N
W
j
j
↔
−
δ
§3.3. Двумерное преобразование Фурье
Рассмотрим функцию двух переменных
)
,
(
y
x
u
, заданную на квадратной области
2
/
2
/
L
x
L
≤
≤
−
,
2
/
2
/
L
y
L
≤
≤
−
(рис. 3.2) и построим равномерную сетку
1 2
/
,
,
2
/
−
−
=
N
N
j
K
,
1 2
/
,
,
2
/
−
−
=
N
N
m
K
с квадратными ячейками размерами
x
x
∆
×
∆
, где
N
L
x
/
=
∆
Введем сеточную функцию
)
,
(
)
,
(
x
m
x
j
u
m
j
u
∆
∆
≡
Воспользовавшись формулой (3.8), запишем N прямых дискретных преобразования
Фурье для столбцов двумерного массива
)
,
( m
j
u
. Вводя вспомогательную функцию
)
,
( l
j
U
и используя обозначение
π
=
N
i
W
N
2
exp
, имеем
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
m
lm
N
W
m
j
u
N
l
j
U
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
Выполнив теперь N дискретных преобразований для строк
)
,
( l
j
U
, получаем двумерный спектр
)
,
( l
k
U
функции
)
,
( m
j
u
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
j
kj
N
W
l
j
U
N
l
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Рис. 3.2. Двумерная сетка
Глава 3. Дискретное преобразование Фурье
49
Записанные выше формулы удобно объединить в одну. Таким образом, прямое двумерное преобразование Фурье имеет вид
lm
N
N
N
j
N
N
m
kj
N
W
W
m
j
u
N
l
k
U
−
−
−
=
−
−
=
−
=
1 2
/
2
/
1 2
/
2
/
2
)
,
(
1
)
,
(
,
(3.9)
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Обратное двумерное преобразование Фурье записывается как
lm
N
N
N
k
N
N
l
kj
N
W
W
l
k
U
m
j
u
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
)
,
(
)
,
(
(3.10)
При практическом использовании преобразований (3.9), (3.10) нужно принять во внимание, что двумерная дискретизация оригинала
)
,
( m
j
u
и его Фурье-образа
)
,
( l
k
U
приводит к их принудительной периодизации с периодом N как по j, k, так и по
m, l, т.е.
)
,
(
)
,
(
2 1
m
j
u
N
n
m
N
n
j
u
=
±
±
,
)
,
(
)
,
(
2 1
l
k
U
N
n
l
N
n
k
U
=
±
±
, где
K
,
2
,
1
,
0
,
2 1
±
±
=
n
n
. Для корректного выполнения двумерных преобразований Фурье необходимо следить за отсутствием наложения отсчетов и частот сразу по обеим координатным и частотным осям. Указанное обстоятельство проиллюстрировано на рис. 3.3, где оригинал и Фурье-образ условно изображены линиями равного значения.
Рис. 3.3. Периодизация двумерной функции (слева) и двумерного спектра (справа). Здесь
N
f
F
2
=
– ширина частотной полосы,
L
k
f
k
/
=
,
L
l
f
l
/
=
Глава 4. Практика дискретного преобразования Фурье
50
Глава
4. Практика дискретного преобразования Фурье
При практическом использовании ДПФ ключевым является вопрос о выборе шага
∆
x дискретизации функции u(x) на сетке, а также области ee регистрации L, которая играет роль периода при принудительной периодизации функции u(x), неизбежно связанной с переходом к дискретному спектру. На спектральном языке речь идет о выборе ширины спектральной полосы
]
,
,
[
N
N
f
f
K
−
, граница которой равна частоте Найквиста
x
f
N
∆
=
2 1
, и о частотном разрешении сетки, которое равно
L
f
1
=
∆
§4.1. Выбор шага дискретизации на сетке
∆∆∆∆
x
Для выбора шага
x
∆
сетки определяющим является ширина спектра функции-оригинала. Если спектр оригинала ограничен, т.е. существует верхняя граница спектра max
f
, то шаг
x
∆
выбирается из условия превышения частотой Найквиста сетки
x
f
N
∆
=
2 1
верхней границы max
f
спектра рассматриваемой функции: max
f
f
N
≥
, или max
2 1
f
x
≤
∆
(4.1)
Если спектр функции-оригинала неограничен, то за величину верхней его границы max
f
можно принять значение, при котором спектральная компонента
)
(
max
f
U
мала:
)
(
max
)
(
max
f
U
f
U
f
<<
(4.2)
Например, для гауссовой функции
−
=
2 0
2
exp
)
(
a
x
x
u
спектр имеет вид
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
. Если принять, что
0
max
1
a
f
=
, то
Глава 4. Практика дискретного преобразования Фурье
51 относительная величина спектральной компоненты на границе спектральной полосы составляет
4
max
10
)
0
(
/
)
(
−
≤
U
f
U
и шаг дискретизации согласно (4.1) должен удовлетворять неравенству
2 0
a
x
≤
∆
, т.е. на полуширину a
0
гауссовой функции должно приходиться не менее двух шагов сетки. При таком выборе шага
x
∆
наложение частот практически отсутствует.
Непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру, близка к исходной
)
(x
u
(рис. 4.1).
Рис. 4.1. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
j
j
−
=
на сетке с шагом
0 5
,
0 a
x
=
∆
; ее дискретный спектр
(
)
2 2
0 2
0
exp
)
(
k
k
f
a
a
f
U
π
−
π
=
и непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру
В общем случае спектр
)
( f
U
функции
)
(x
u
не известен и для границы спектральной полосы используются качественные оценки, которые включают в себя и возможное уширение спектра в процессе решения конкретной задачи. В отсутствии представлений о спектре
)
( f
U
функции
)
(x
u
шаг дискретизации
x
∆
выбирается таким, чтобы на интервале наибольшего градиента (максимальной производной) функции приходился хотя бы один узел сетки.
На рис. 4.2 приведена в качестве примера функция
)
(x
u
, которая в узком интервале от 0,35L до 0,45L быстро уменьшается. Там же изображены ее спектр
)
( f
U
и функция
)
(
x
u
, восстановленная по дискретному спектру, полученному при различных шагах дискретизации x
∆
. Видно, что в случае, когда шаг
L
L
x
03
,
0 32
≈
=
∆
, при котором узел сетки находится в интервале между максимальным и
Глава 4. Практика дискретного преобразования Фурье
52 минимальным значениями функции, спектральные компоненты на частоте Найквиста малы и, следовательно, наложение частот несущественно. Функция, восстановленная по дискретному спектру в этом случае близка к исходной. В то же время, при шаге
L
L
x
06
,
0 16
≈
=
∆
в область сильного градиента не попадает ни один промежуточный узел сетки, частота Найквиста мала, появляется наложение частот, и восстановленная функция существенно отличается от исходной.
Рис.4.2. Произвольная функция u(x) с большой производной в интервале
0,35L < x < 0,45L, ее дискретные аналоги, спектры U(f) и восстановленные функции
)
(
x
u
при различном шаге дискретизации x
∆
Верхняя строка:
32
/
L
x
=
∆
; нижняя строка:
16
/
L
x
=
∆
Может оказаться так, что при чрезмерно малом
x
∆
спектральная ширина сетки
N
f окажется избыточно большой. Разумно выбранное соотношение между разрешением сетки и шириной спектра функции во многих случаях позволит сократить вычислительные затраты при выполнении ДПФ.
В качестве примера рассмотрим гауссову функцию
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
на периоде длиной
0 16
a
L
=
. На рис. 4.3 видно, что сетка с числом узлов
32
=
N
и шагом
0 5
,
0
a
x
=
∆
является вполне достаточной для воспроизведения как функции, так и ее спектра. При
Глава 4. Практика дискретного преобразования Фурье
53 этом на полуширину функции приходится 2 узла, а полуширина ее спектра, равная
0 0
1
a
f
π
=
, в π раз меньше частоты Найквиста
0
/
1 a
f
N
=
Рис. 4.3. Гауссова функция u(x
i
) и ее спектр U(f
k
) на сетке с N = 32 (слева) и на сетке c N = 64 (справа)
В то же время, сетка с числом узлов N = 64 и шагом
0 25
,
0
a
x
=
∆
является в данном случае явно избыточной, поскольку спектр функции содержит примерно половину нулевых компонент, вычисление которых требует дополнительны затрат.
Подводя итог, можно утверждать, что в случае, когда не предполагается выполнять каких либо операций с ограниченным спектром, приводящих в последующем к его уширению, оптимальное разрешение сетки достигается при max
2 1
f
x
≈
∆
где max
f
– верхняя граница спектра.
§4.2. Выбор области периодизации функции L
При выборе L необходимо в первую очередь учитывать принудительную периодизацию функции u(x), неизбежно возникающую из-за дискретности ее спектра. Одним из последствий этого может явиться появление разрывов функции или ее производных на границах периода
[–L/2, L/2] исходной функции с ее периодическими продолжениями. Возникновение разрывов при периодизации функции
u(x) вызывает расширение спектра, которое имеет чисто вычислительную природу. Поэтому необходимо контролировать и подавлять появление артефактов, связанных с таким расширением спектра и, как следствие этого, возникновения эффекта наложения частот и связанных с ним погрешностей.
Глава 4. Практика дискретного преобразования Фурье
54
В соответствии с общепринятыми рекомендациями, для непериодической функции период L следует выбирать из условия малости функции u(x) на границах периода. При этом взаимные перекрытия исходной функции и ее периодических продолжений, практически, отсутствуют:
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
(4.3)
Например, для гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
ее относительная величина на границах периода при
0 6a
L
=
составляет
4 10
)
0
(
/
)
2
/
(
−
≈
±
u
L
u
, и перекрытием функции и ее продолжений можно пренебречь. Заметим, что у симметричной функции при периодическом продолжении не возникают разрывы на границах периода при любом периоде L.
Однако, при неудачном выборе L возможно появление на границах периода разрывов производных функции u(x). Иллюстрацией этого эффекта служит рис. 4.4, на котором продемонстрировано вычисление первой производной гауссовой функции, принудительно периодизированной с периодом
0 3a
L
=
. Отчетливо видны осцилляции
Гиббса на профиле производной восстановленной функции
dx
u
d /
, наиболее сильно проявляющиеся в окрестности точек разрыва производной (изломов на профиле) периодизированной функции
)
(x
u
Заметим, что с увеличением числа узлов N на выбранном периоде, т.е. с уменьшением шага дискретизации
∆
x и, следовательно, увеличением частоты Найквиста f
N
, амплитуда осцилляций не уменьшается.
Иными словами, при разрыве производной спектр периодизированной функции становится неограниченным и осцилляции, вызванные разрывом производной, не ослабляются по мере увеличения числа узлов сетки N (§2.4).
Поэтому, фактически единственный способ избежать искажений спектра из-за наложения частот у периодизированной функции
)
(x
u
состоит в выборе такого периода L, при котором не возникают взаимные перекрытия исходной функции и ее периодических продолжений. Если же излом существует на профиле самой функции в пределах периода ее регистрации, то устранить возникшее при этом наложение частот путем увеличения числа узлов сетки N не
Глава 4. Практика дискретного преобразования Фурье
55 представляется возможным. В этом случае необходимо осуществлять контролируемое ограничение спектра исследуемой функции.
Рис. 4.4. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
, периодизированная с периодом
0 3a
L
=
; модуль спектра ее первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
. Верхняя строка:
N = 32; средняя строка:
N = 64; нижняя строка: N = 128
В частности, для сокращения спектральной полосы периодизированной функции нередко используются так называемые окна, являющиеся некоторыми весовыми функциями, после умножения на которые оригинала u(x)обрабатываемаяфункция на границах
Глава 4. Практика дискретного преобразования Фурье
56 периода обращается в нуль. Не вдаваясь в детали построения таких окон и анализа их спектральных свойств, отошлем читателя к великолепной книге [4], в главе 3 которой такой анализ дан с исчерпывающей полнотой.
Для уменьшения скачков функции или ее производных, возникающих при ее периодизации, можно наложить окно П(x) на функцию u(x), т.е. сформировать некоторую «буферную» область, благодаря которой условие
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
будет выполняться в виде сильного неравенства.
Рассмотрим в качестве примера дискретное преобразование
Фурье линейной функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданной на отрезке
2
/
2
/
L
x
L
<
<
−
На рис. 4.5 изображена периодизированная функция, модуль дискретного спектра этой функции
|
)
(
|
f
U
и ее производной
|
)
(
|
f
U
i
κ
, а также производная
dx
u
d /
, восстановленная по дискретному спектру.
Рис. 4.5. Линейная функция
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданная на сетке с
N = 32; модуль ее спектра
|
)
(
|
f
U
; модуль спектра первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
Из рисунка видно, что наличие разрывов функции при
2
/
L
x
−
=
и при
2
/
L
x
=
при ее периодизации вызывает наложение частот в ее спектре, которое, в свою очередь, приводит к появлению осцилляций Гиббса, и, как следствие, к возникновению значительных ошибок в вычислении первой производной.
Очевидно, что указанные выше ошибки не могут быть устранены путем изменения периода L. Однако, наложение окна, при котором вводятся буферные зоны в окрестности границ периода,
Глава 4. Практика дискретного преобразования Фурье
57 позволяет существенно ослабить влияние разрывов функции при ее периодизации.
Рис. 4.6. Функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
, сглаженная в окрестности точки
L/2 путем наложения окна П(x) (4.4) на линейную функцию
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
; модуль спектра ee первой производной
|
)
(
|
f
U
i
′
κ
; первая производная восстановленной функции
dx
u
d
/
′
. Верхняя строка:
N = 32; средняя строка: N = 64; нижняя строка: N = 128
Например, плавное убывание функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
от максимального значения до нуля может быть обеспечено путем ее умножения на окно
Глава 4. Практика дискретного преобразования Фурье
58
(
)
<
≥
−
−
=
Π
,
при
1
,
при
)
/
)
((
exp
)
(
0 0
0
x
x
x
x
a
x
x
x
b
(4.4) с помощью которого сглаженная функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
становится близкой к нулю на границе
2
/
L
x
=
Окно П(x) зависит от трех свободных параметров x
0
, a и b, подбираемых опытным путем. Эмпирически установлено, что для рассматриваемой функции близкие к оптимальным результаты с точки зрения уменьшения осцилляций Гиббса дают следующие значения параметров:
4
/
0
L
x
=
,
12
/
L
a
=
,
4
=
b
На рис. 4.6 продемонстрирован пример использования рассматриваемого окна. Видно, что по сравнению со случаем, представленным на рис. 4.5, у периодизированной функции с окном
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
отсутствует разрыв. В области
4
/
2
/
L
x
L
≤
≤
−
ошибки при вычислении первой производной в целом существенно снижены. Слабо выраженные осцилляции на профиле
dx
u
d
/
′
дополнительно ослабляются с уменьшением шага дискретизации при увеличении числа узлов N на периоде. Паразитный отрицательный выброс при
4
/
L
x
>
связан с дифференцированием произведения исходной функции и окна П(x).
§4.3. Частотное разрешение
∆∆∆∆
f
С выбором области периодизации L связано частотное разрешение преобразования Фурье. Действительно, шаг дискретизации в спектральном пространстве
L
f
1
=
∆
представляет собой интервал между соседними фурье-гармониками. Величина
∆
f является частотным разрешением ДПФ, которое равно наименьшему интервалу частот, различимому в дискретном спектре.
Если в спектре U(f) присутствует узкая линия, т.е. малая область частот
δ
f, в которой существует локальный экстремум U(f), то шаг по частоте
∆
f должен удовлетворять условию
f
f
δ
<
∆
(4.5)
Глава 4. Практика дискретного преобразования Фурье
59
В противном случае узкая линия может оказаться между гармониками дискретного спектра и не будет воспроизводиться. Для повышения частотного разрешения при ДПФ необходимо увеличивать размер области периодизации L функции u. При экспериментальном получении выборки отсчетов u(j) нужно максимально увеличивать ее длину, т.е. число отсчетов N.
На рис. 4.7 проиллюстрировано влияние длины выборки L на частотное разрешение спектра ДПФ. В левой колонке рисунка изображены отсчеты некоторой гладкой функции u(x), которая при
0
a
x
j
±
=
обращается в нуль. При шаге дискретизации
0 0
17
,
0 6
a
a
x
≈
=
∆
шесть отсчетов функции u(x
j
)хорошо воспроизводят ее на интервале
0 0
a
x
<
<
и, следовательно, частота
Найквиста
)
2
/(
1
x
f
N
∆
=
значительно превышает максимальную частоту искомого спектра
)
( f
U
Пусть период принудительной периодизации выбран равным
0 7
,
2 a
L
≈
. Его границы отмечены вертикальными штрихпунктирными отрезками (на рисунке вверху слева). Видно, что при таком выборе периода L функция на его границах мала, условие (4.3) выполняется и перекрытие периодических продолжений отсутствует. Получаемый при таком выборе периода спектр
)
(
k
f
U
изображен на рисунке вверху справа. Видно, что в полосе частот от
N
f
−
до
N
f
+
амплитуда гармоник монотонно убывает и обращается в нуль на ее границах (вверху справа).
Однако, при выбранном периоде L частотное разрешение
L
f
/
1
=
∆
оказывается недостаточным для воспроизведения тонкой структуры искомого спектра. При увеличении периода вдвое
0 4
,
5 2
a
L
L
≈
=
′
(внизу слева) видно, что в искомом спектре существует узкая спектральная линия, которая при прежнем периоде L
отсутствовала(внизу справа). Это является следствием улучшения частотного разрешения, при котором интервал между гармониками дискретного спектра
L
f
′
=
′
∆
1
при увеличении периода от L до
L
L
2
=
′
сократился вдвое.
Глава 4. Практика дискретного преобразования Фурье
60
Рис. 4.7. Влияние длины выборки L на частотное разрешение спектра
∆
f.
Левая колонка – отсчеты некоторой функции u(x
j
), следующие с шагом
0 0
17
,
0 6
a
a
x
≈
=
∆
. Выделенной центральной части выборки длиной
0 0
7
,
2 6
16 16
a
a
x
L
≈
=
∆
⋅
=
, ограниченной вертикальными штрихпунктирными линиями, соответствует спектр в верхней части правой колонки. Его частотное разрешение
0 0
37
,
0 16 6
a
a
f
≈
=
∆
недостаточно для отображения особенностей полученного спектра. Увеличение длины выборки до
0 3
,
5 32
a
x
L
≈
∆
⋅
=
′
повышает частотное разрешение спектра до
0 0
19
,
0 32 6
a
a
f
≈
=
′
∆
(нижняя часть правой колонки), что позволяет обнаружить в спектре две узкие линии, неразличимые при длине выборки
x
L
∆
⋅
=
16
Дальнейшее улучшение частотного разрешения при увеличении длины выборки до
L
L
4
=
′′
позволяет оценить ширину узкой спектральной линии в дискретном спектре
)
(
k
f
U
(см. рис. 4.8). Следует заметить, что улучшение частотного разрешения при неизменном шаге дискретизации x
∆
требует увеличения числа узлов N на расчетной сетке и, следовательно, объема вычислений.
В численном моделировании для определения необходимого частотного разрешения обычно выполнятся тестовые вычисления спектра с увеличением периода принудительной периодизации
Глава 4. Практика дискретного преобразования Фурье
61 функции, чтобы убедиться в отсутствии тонкой структуры спектра или обнаружить ее существование.
При спектральном анализе экспериментальных результатов следует увеличивать длину области регистрации функции, чтобы не пропустить возможные тонкие линии при их обработке средствами ДПФ.
Рис. 4.8. Увеличение длины выборки от
L
L
2
=
′
до
L
L
4
=
′′
для улучшения частотного разрешения спектра (ср. с нижней строкой рис. 4.7). Для экономии места изображены только правые части выборки и спектра
§4.4. Заключительная иллюстрация влияния шага дискретизации и
периода
функции на спектр при ДПФ
Основные особенности трансформации оригинала и его спектра при изменении периода регистрации
L и шага сетки
∆
x проиллюстрированы на итоговом рис. 4.9.
На верхней строке рисунка слева изображены N = 16 дискретных отсчетов u(x
j
) гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
с периодом
0 8a
L
=
и шагом
2 16 0
a
L
x
=
=
∆
. На той же строке справа изображены
N = 16 гармоник
U(f
k
) ее спектра
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
с шагом по частоте
0 8
1
a
f
=
∆
. При этом частота Найквиста
0 1
a
f
N
=
. На средней строке проиллюстрировано уменьшение шага сетки вдвое при том же периоде
0 8a
L
=
: N = 32;
4 32 0
a
L
x
=
=
′
∆
;
0 8
1
a
f
=
∆
;
0 2
a
f
N
=
′
. Нижняя строка иллюстрирует увеличение периода вдвое, т.е.
0 16a
L
=
′
при первоначальном шаге
Глава 4. Практика дискретного преобразования Фурье
62 2
32 0
a
L
x
=
′
=
∆
. При этом шаг по частоте
0 16 1
a
f
=
′
∆
, а частота
Найквиста
0 1
a
f
N
=
Рис. 4.9. Трансформация оригинала
)
(
j
x
u
и его спектра
)
(
k
f
U
при изменении периода регистрации L и шага сетки
∆
x.
Верхняя строка: период
0 8a
L
=
; шаг сетки
2
/
16
/
0
a
L
x
=
=
∆
; шаг по частоте
)
8
/(
1 0
a
f
=
∆
; частота Найквиста
0
/
1 a
f
N
=
Средняя строка:
0 8a
L
=
;
4
/
32
/
0
a
L
x
=
=
′
∆
;
)
8
/(
1 0
a
f
=
∆
;
0
/
2 a
f
N
=
′
Нижняя строка:
0 16a
L
=
′
;
2
/
32
/
0
a
L
x
=
′
=
∆
;
)
16
/(
1 0
a
f
=
′
∆
;
0
/
1 a
f
N
=
Глава 5. Быстрое преобразование Фурье
63
1 2 3 4 5
Глава
3. Дискретное преобразование Фурье (ДПФ)
§3.1. Анализ Фурье. Ортогональность гармоник в дискретном
пространстве
. Синтез Фурье
Получим формулу для вычисления на сетке преобразования
Фурье периодической функции
)
(
)
(
x
u
nL
x
u
=
±
, где
K
,
2
,
1
=
n
Введем на периоде
L функции
u(x) равномерную сетку
x
j
x
j
∆
=
с шагом
N
L
x
=
∆
. Здесь N – число узлов сетки, которое совпадает с числом отрезков разбиения. При этом номер узла сетки
j пробегает значения
1 2
/
2
/
−
≤
≤
−
N
j
N
и сеточная функция
)
(
)
(
j
x
u
j
u
≡
периодична с периодом N, т.е.
)
(
)
(
j
u
nN
j
u
=
±
. Важно обратить внимание на то, что в силу периодичности функции
)
( j
u
справедливо равенство
)
2
/
(
)
2
/
(
N
u
N
u
−
=
Спектр периодичной функции представляет собой ряд
Фурье
dx
L
ikx
x
u
L
f
U
k
U
L
L
k
π
−
=
≡
−
2
exp
)
(
1
)
(
)
(
2
/
2
/
,
(3.1) где k – номер фурье-гармоники.
Предполагая, что спектр
)
( f
U
ограничен и
N
f
f
≤
max
, по формуле
Котельникова–Шеннона (2.19) имеем для периодической функции
−
−
=
−
∆
π
=
≡
1 2
/
2
/
)
(
sinc
)
(
)
(
)
(
N
N
j
j
x
x
x
j
u
x
u
x
u
(3.2)
Рис.3.1. Периодическая функция.
Границы отрезка периодичности [–L/2,
L/2] функции обозначены символом ×, узлы сетки – вертикальными рисками
Глава 3. Дискретное преобразование Фурье
45
Подставляя u(x) в виде (3.2) в формулу (3.1), и используя для u(j) представление (2.2) через гребневую функцию Дирака, получаем
π
−
−
∆
π
−
δ
∆
=
−
−
−
=
L
ikx
x
x
x
x
u
x
x
x
L
k
U
j
L
L
N
N
j
j
2
exp
)
(
sinc
)
(
)
(
1
)
(
2
/
2
/
1 2
/
2
/
Отсюда, в соответствии с определением функции Дирака (§1), следует, что
−
−
=
∆
π
−
∆
=
1 2
/
2
/
2
exp
)
(
)
(
N
N
j
L
x
ikj
j
u
L
x
k
U
Учитывая, что
N
L
x
1
=
∆
и вводя обозначение
π
=
N
i
W
N
2
exp
, запишем последнее равенство в виде
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
j
kj
N
W
j
u
N
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
k
K
(3.3)
Это выражение называется формулой прямого дискретного преобразования
Фурье
(дискретного анализа
Фурье).
Оно определяет k-ю фурье-гармонику дискретного спектра U(k) по функции дискретного аргумента u(j). Выражение (3.3) является дискретным аналогом формулы
(1.5) для вычисления коэффициентов разложения
k
d
в ряд Фурье периодической функции. При замене во второй формуле (1.5) интеграла суммой и в подстановках
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.3).
Рассмотрим свойства дискретных гармонических функций
kj
N
W
, определенных на множестве номеров гармоник
1 2
/
,
,
2
/
−
−
=
N
N
k
L
в пространстве частот и множестве узлов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
в пространстве отсчетов.
Глава 3. Дискретное преобразование Фурье
46 1. Гармоники разных номеров k и l ортогональны на периоде отсчетов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
l
k
l
k
N
W
W
N
N
j
lj
N
kj
N
(3.4)
2. Гармоники одного и того же номера k, взятые в разных точках сетки j и m, ортогональны на периоде спектра
1 2
/
,
,
2
/
−
−
=
N
N
k
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
m
j
m
j
N
W
W
N
N
k
km
N
kj
N
(3.5)
Используя свойства ортогональности гармоник, получим формулу дискретного синтеза Фурье для вычисления функции дискретного аргумента u(j) по гармоникам U(k) дискретного спектра. Согласно (3.3) имеем
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
m
km
N
W
m
u
N
k
U
(3.6)
Умножим левую и правую части этого равенства на
kj
N
W
и просуммируем по всем k слева и справа. Получим
−
−
=
−
−
=
−
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
)
(
1
)
(
N
N
k
N
N
m
kj
N
km
N
N
N
k
kj
N
W
W
m
u
N
W
k
U
Поменяем в правой части равенства порядок суммирования:
−
−
=
−
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
1
)
(
)
(
N
N
k
kj
N
km
N
N
N
m
N
N
k
kj
N
W
W
N
m
u
W
k
U
В силу ортогональности гармоник (3.5) вторая сумма в правой части равна N при
j
m
=
и обращается в ноль при
j
m
≠
. Отсюда, поменяв местами правую и левую части равенства, получаем
Глава 3. Дискретное преобразование Фурье
47
−
−
=
=
1 2
/
2
/
)
(
)
(
N
N
k
kj
N
W
k
U
j
u
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
(3.7)
Выражение (3.7) называется формулой обратного дискретного преобразования Фурье, с помощью которой вычисляется функция дискретного аргумента u(j) по ее спектру U(k). Формула (3.7) является дискретным аналогом разложения (1.5) периодической функции в ряд Фурье. При замене в сумме (1.5) бесконечных пределов на суммирование от –N/2 до N/2–1 и в подстановках
)
(k
U
d
k
=
,
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.7).
§3.2 Свойства ДПФ. Формулы запаздывания, смещения и
свертки
Выпишем вновь формулы дискретного преобразования
Фурье
=
=
−
−
=
−
−
=
−
1 2
/
2
/
1 2
/
2
/
,
)
(
)
(
,
)
(
1
)
(
N
N
k
kj
N
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(3.8) где
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
,
π
=
N
i
W
N
2
exp
Перечислим кратко основные свойства дискретных оригинала и его Фурье-образа. К ним относятся:
1. Периодичность:
)
(
)
(
j
u
nN
j
u
=
±
,
)
(
)
(
k
U
nN
k
U
=
±
2. Линейность:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
β
+
α
↔
β
+
α
3. Изменение знака:
)
(
)
(
k
U
j
u
−
↔
−
4. Комплексное сопряжение:
)
(
*
)
(
*
k
U
j
u
−
↔
5. Запаздывание:
km
N
W
k
U
m
j
u
−
↔
−
)
(
)
(
6. Смещение:
jl
N
W
j
u
l
k
U
)
(
)
(
↔
−
7. Свертка:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
⋅
↔
⊗
,
Глава 3. Дискретное преобразование Фурье
48 где
−
−
=
−
⋅
=
⊗
1 2
/
2
/
2 1
2 1
)
(
)
(
1
)
(
)
(
N
N
m
m
j
u
m
u
N
j
u
j
u
8. Образ Фурье
)
( j
δ
–функции Дирака:
1
)
(
↔
δ
j
9. Образ Фурье запаздывающей функции Дирака
)
(
0
j
j
−
δ
:
0
)
(
0
kj
N
W
j
j
↔
−
δ
§3.3. Двумерное преобразование Фурье
Рассмотрим функцию двух переменных
)
,
(
y
x
u
, заданную на квадратной области
2
/
2
/
L
x
L
≤
≤
−
,
2
/
2
/
L
y
L
≤
≤
−
(рис. 3.2) и построим равномерную сетку
1 2
/
,
,
2
/
−
−
=
N
N
j
K
,
1 2
/
,
,
2
/
−
−
=
N
N
m
K
с квадратными ячейками размерами
x
x
∆
×
∆
, где
N
L
x
/
=
∆
Введем сеточную функцию
)
,
(
)
,
(
x
m
x
j
u
m
j
u
∆
∆
≡
Воспользовавшись формулой (3.8), запишем N прямых дискретных преобразования
Фурье для столбцов двумерного массива
)
,
( m
j
u
. Вводя вспомогательную функцию
)
,
( l
j
U
и используя обозначение
π
=
N
i
W
N
2
exp
, имеем
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
m
lm
N
W
m
j
u
N
l
j
U
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
Выполнив теперь N дискретных преобразований для строк
)
,
( l
j
U
, получаем двумерный спектр
)
,
( l
k
U
функции
)
,
( m
j
u
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
j
kj
N
W
l
j
U
N
l
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Рис. 3.2. Двумерная сетка
Глава 3. Дискретное преобразование Фурье
49
Записанные выше формулы удобно объединить в одну. Таким образом, прямое двумерное преобразование Фурье имеет вид
lm
N
N
N
j
N
N
m
kj
N
W
W
m
j
u
N
l
k
U
−
−
−
=
−
−
=
−
=
1 2
/
2
/
1 2
/
2
/
2
)
,
(
1
)
,
(
,
(3.9)
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Обратное двумерное преобразование Фурье записывается как
lm
N
N
N
k
N
N
l
kj
N
W
W
l
k
U
m
j
u
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
)
,
(
)
,
(
(3.10)
При практическом использовании преобразований (3.9), (3.10) нужно принять во внимание, что двумерная дискретизация оригинала
)
,
( m
j
u
и его Фурье-образа
)
,
( l
k
U
приводит к их принудительной периодизации с периодом N как по j, k, так и по
m, l, т.е.
)
,
(
)
,
(
2 1
m
j
u
N
n
m
N
n
j
u
=
±
±
,
)
,
(
)
,
(
2 1
l
k
U
N
n
l
N
n
k
U
=
±
±
, где
K
,
2
,
1
,
0
,
2 1
±
±
=
n
n
. Для корректного выполнения двумерных преобразований Фурье необходимо следить за отсутствием наложения отсчетов и частот сразу по обеим координатным и частотным осям. Указанное обстоятельство проиллюстрировано на рис. 3.3, где оригинал и Фурье-образ условно изображены линиями равного значения.
Рис. 3.3. Периодизация двумерной функции (слева) и двумерного спектра (справа). Здесь
N
f
F
2
=
– ширина частотной полосы,
L
k
f
k
/
=
,
L
l
f
l
/
=
Глава 4. Практика дискретного преобразования Фурье
50
Глава
4. Практика дискретного преобразования Фурье
При практическом использовании ДПФ ключевым является вопрос о выборе шага
∆
x дискретизации функции u(x) на сетке, а также области ee регистрации L, которая играет роль периода при принудительной периодизации функции u(x), неизбежно связанной с переходом к дискретному спектру. На спектральном языке речь идет о выборе ширины спектральной полосы
]
,
,
[
N
N
f
f
K
−
, граница которой равна частоте Найквиста
x
f
N
∆
=
2 1
, и о частотном разрешении сетки, которое равно
L
f
1
=
∆
§4.1. Выбор шага дискретизации на сетке
∆∆∆∆
x
Для выбора шага
x
∆
сетки определяющим является ширина спектра функции-оригинала. Если спектр оригинала ограничен, т.е. существует верхняя граница спектра max
f
, то шаг
x
∆
выбирается из условия превышения частотой Найквиста сетки
x
f
N
∆
=
2 1
верхней границы max
f
спектра рассматриваемой функции: max
f
f
N
≥
, или max
2 1
f
x
≤
∆
(4.1)
Если спектр функции-оригинала неограничен, то за величину верхней его границы max
f
можно принять значение, при котором спектральная компонента
)
(
max
f
U
мала:
)
(
max
)
(
max
f
U
f
U
f
<<
(4.2)
Например, для гауссовой функции
−
=
2 0
2
exp
)
(
a
x
x
u
спектр имеет вид
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
. Если принять, что
0
max
1
a
f
=
, то
Глава 4. Практика дискретного преобразования Фурье
51 относительная величина спектральной компоненты на границе спектральной полосы составляет
4
max
10
)
0
(
/
)
(
−
≤
U
f
U
и шаг дискретизации согласно (4.1) должен удовлетворять неравенству
2 0
a
x
≤
∆
, т.е. на полуширину a
0
гауссовой функции должно приходиться не менее двух шагов сетки. При таком выборе шага
x
∆
наложение частот практически отсутствует.
Непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру, близка к исходной
)
(x
u
(рис. 4.1).
Рис. 4.1. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
j
j
−
=
на сетке с шагом
0 5
,
0 a
x
=
∆
; ее дискретный спектр
(
)
2 2
0 2
0
exp
)
(
k
k
f
a
a
f
U
π
−
π
=
и непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру
В общем случае спектр
)
( f
U
функции
)
(x
u
не известен и для границы спектральной полосы используются качественные оценки, которые включают в себя и возможное уширение спектра в процессе решения конкретной задачи. В отсутствии представлений о спектре
)
( f
U
функции
)
(x
u
шаг дискретизации
x
∆
выбирается таким, чтобы на интервале наибольшего градиента (максимальной производной) функции приходился хотя бы один узел сетки.
На рис. 4.2 приведена в качестве примера функция
)
(x
u
, которая в узком интервале от 0,35L до 0,45L быстро уменьшается. Там же изображены ее спектр
)
( f
U
и функция
)
(
x
u
, восстановленная по дискретному спектру, полученному при различных шагах дискретизации x
∆
. Видно, что в случае, когда шаг
L
L
x
03
,
0 32
≈
=
∆
, при котором узел сетки находится в интервале между максимальным и
Глава 4. Практика дискретного преобразования Фурье
52 минимальным значениями функции, спектральные компоненты на частоте Найквиста малы и, следовательно, наложение частот несущественно. Функция, восстановленная по дискретному спектру в этом случае близка к исходной. В то же время, при шаге
L
L
x
06
,
0 16
≈
=
∆
в область сильного градиента не попадает ни один промежуточный узел сетки, частота Найквиста мала, появляется наложение частот, и восстановленная функция существенно отличается от исходной.
Рис.4.2. Произвольная функция u(x) с большой производной в интервале
0,35L < x < 0,45L, ее дискретные аналоги, спектры U(f) и восстановленные функции
)
(
x
u
при различном шаге дискретизации x
∆
Верхняя строка:
32
/
L
x
=
∆
; нижняя строка:
16
/
L
x
=
∆
Может оказаться так, что при чрезмерно малом
x
∆
спектральная ширина сетки
N
f окажется избыточно большой. Разумно выбранное соотношение между разрешением сетки и шириной спектра функции во многих случаях позволит сократить вычислительные затраты при выполнении ДПФ.
В качестве примера рассмотрим гауссову функцию
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
на периоде длиной
0 16
a
L
=
. На рис. 4.3 видно, что сетка с числом узлов
32
=
N
и шагом
0 5
,
0
a
x
=
∆
является вполне достаточной для воспроизведения как функции, так и ее спектра. При
Глава 4. Практика дискретного преобразования Фурье
53 этом на полуширину функции приходится 2 узла, а полуширина ее спектра, равная
0 0
1
a
f
π
=
, в π раз меньше частоты Найквиста
0
/
1 a
f
N
=
Рис. 4.3. Гауссова функция u(x
i
) и ее спектр U(f
k
) на сетке с N = 32 (слева) и на сетке c N = 64 (справа)
В то же время, сетка с числом узлов N = 64 и шагом
0 25
,
0
a
x
=
∆
является в данном случае явно избыточной, поскольку спектр функции содержит примерно половину нулевых компонент, вычисление которых требует дополнительны затрат.
Подводя итог, можно утверждать, что в случае, когда не предполагается выполнять каких либо операций с ограниченным спектром, приводящих в последующем к его уширению, оптимальное разрешение сетки достигается при max
2 1
f
x
≈
∆
где max
f
– верхняя граница спектра.
§4.2. Выбор области периодизации функции L
При выборе L необходимо в первую очередь учитывать принудительную периодизацию функции u(x), неизбежно возникающую из-за дискретности ее спектра. Одним из последствий этого может явиться появление разрывов функции или ее производных на границах периода
[–L/2, L/2] исходной функции с ее периодическими продолжениями. Возникновение разрывов при периодизации функции
u(x) вызывает расширение спектра, которое имеет чисто вычислительную природу. Поэтому необходимо контролировать и подавлять появление артефактов, связанных с таким расширением спектра и, как следствие этого, возникновения эффекта наложения частот и связанных с ним погрешностей.
Глава 4. Практика дискретного преобразования Фурье
54
В соответствии с общепринятыми рекомендациями, для непериодической функции период L следует выбирать из условия малости функции u(x) на границах периода. При этом взаимные перекрытия исходной функции и ее периодических продолжений, практически, отсутствуют:
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
(4.3)
Например, для гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
ее относительная величина на границах периода при
0 6a
L
=
составляет
4 10
)
0
(
/
)
2
/
(
−
≈
±
u
L
u
, и перекрытием функции и ее продолжений можно пренебречь. Заметим, что у симметричной функции при периодическом продолжении не возникают разрывы на границах периода при любом периоде L.
Однако, при неудачном выборе L возможно появление на границах периода разрывов производных функции u(x). Иллюстрацией этого эффекта служит рис. 4.4, на котором продемонстрировано вычисление первой производной гауссовой функции, принудительно периодизированной с периодом
0 3a
L
=
. Отчетливо видны осцилляции
Гиббса на профиле производной восстановленной функции
dx
u
d /
, наиболее сильно проявляющиеся в окрестности точек разрыва производной (изломов на профиле) периодизированной функции
)
(x
u
Заметим, что с увеличением числа узлов N на выбранном периоде, т.е. с уменьшением шага дискретизации
∆
x и, следовательно, увеличением частоты Найквиста f
N
, амплитуда осцилляций не уменьшается.
Иными словами, при разрыве производной спектр периодизированной функции становится неограниченным и осцилляции, вызванные разрывом производной, не ослабляются по мере увеличения числа узлов сетки N (§2.4).
Поэтому, фактически единственный способ избежать искажений спектра из-за наложения частот у периодизированной функции
)
(x
u
состоит в выборе такого периода L, при котором не возникают взаимные перекрытия исходной функции и ее периодических продолжений. Если же излом существует на профиле самой функции в пределах периода ее регистрации, то устранить возникшее при этом наложение частот путем увеличения числа узлов сетки N не
Глава 4. Практика дискретного преобразования Фурье
55 представляется возможным. В этом случае необходимо осуществлять контролируемое ограничение спектра исследуемой функции.
Рис. 4.4. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
, периодизированная с периодом
0 3a
L
=
; модуль спектра ее первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
. Верхняя строка:
N = 32; средняя строка:
N = 64; нижняя строка: N = 128
В частности, для сокращения спектральной полосы периодизированной функции нередко используются так называемые окна, являющиеся некоторыми весовыми функциями, после умножения на которые оригинала u(x)обрабатываемаяфункция на границах
Глава 4. Практика дискретного преобразования Фурье
56 периода обращается в нуль. Не вдаваясь в детали построения таких окон и анализа их спектральных свойств, отошлем читателя к великолепной книге [4], в главе 3 которой такой анализ дан с исчерпывающей полнотой.
Для уменьшения скачков функции или ее производных, возникающих при ее периодизации, можно наложить окно П(x) на функцию u(x), т.е. сформировать некоторую «буферную» область, благодаря которой условие
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
будет выполняться в виде сильного неравенства.
Рассмотрим в качестве примера дискретное преобразование
Фурье линейной функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданной на отрезке
2
/
2
/
L
x
L
<
<
−
На рис. 4.5 изображена периодизированная функция, модуль дискретного спектра этой функции
|
)
(
|
f
U
и ее производной
|
)
(
|
f
U
i
κ
, а также производная
dx
u
d /
, восстановленная по дискретному спектру.
Рис. 4.5. Линейная функция
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданная на сетке с
N = 32; модуль ее спектра
|
)
(
|
f
U
; модуль спектра первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
Из рисунка видно, что наличие разрывов функции при
2
/
L
x
−
=
и при
2
/
L
x
=
при ее периодизации вызывает наложение частот в ее спектре, которое, в свою очередь, приводит к появлению осцилляций Гиббса, и, как следствие, к возникновению значительных ошибок в вычислении первой производной.
Очевидно, что указанные выше ошибки не могут быть устранены путем изменения периода L. Однако, наложение окна, при котором вводятся буферные зоны в окрестности границ периода,
Глава 4. Практика дискретного преобразования Фурье
57 позволяет существенно ослабить влияние разрывов функции при ее периодизации.
Рис. 4.6. Функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
, сглаженная в окрестности точки
L/2 путем наложения окна П(x) (4.4) на линейную функцию
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
; модуль спектра ee первой производной
|
)
(
|
f
U
i
′
κ
; первая производная восстановленной функции
dx
u
d
/
′
. Верхняя строка:
N = 32; средняя строка: N = 64; нижняя строка: N = 128
Например, плавное убывание функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
от максимального значения до нуля может быть обеспечено путем ее умножения на окно
Глава 4. Практика дискретного преобразования Фурье
58
(
)
<
≥
−
−
=
Π
,
при
1
,
при
)
/
)
((
exp
)
(
0 0
0
x
x
x
x
a
x
x
x
b
(4.4) с помощью которого сглаженная функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
становится близкой к нулю на границе
2
/
L
x
=
Окно П(x) зависит от трех свободных параметров x
0
, a и b, подбираемых опытным путем. Эмпирически установлено, что для рассматриваемой функции близкие к оптимальным результаты с точки зрения уменьшения осцилляций Гиббса дают следующие значения параметров:
4
/
0
L
x
=
,
12
/
L
a
=
,
4
=
b
На рис. 4.6 продемонстрирован пример использования рассматриваемого окна. Видно, что по сравнению со случаем, представленным на рис. 4.5, у периодизированной функции с окном
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
отсутствует разрыв. В области
4
/
2
/
L
x
L
≤
≤
−
ошибки при вычислении первой производной в целом существенно снижены. Слабо выраженные осцилляции на профиле
dx
u
d
/
′
дополнительно ослабляются с уменьшением шага дискретизации при увеличении числа узлов N на периоде. Паразитный отрицательный выброс при
4
/
L
x
>
связан с дифференцированием произведения исходной функции и окна П(x).
§4.3. Частотное разрешение
∆∆∆∆
f
С выбором области периодизации L связано частотное разрешение преобразования Фурье. Действительно, шаг дискретизации в спектральном пространстве
L
f
1
=
∆
представляет собой интервал между соседними фурье-гармониками. Величина
∆
f является частотным разрешением ДПФ, которое равно наименьшему интервалу частот, различимому в дискретном спектре.
Если в спектре U(f) присутствует узкая линия, т.е. малая область частот
δ
f, в которой существует локальный экстремум U(f), то шаг по частоте
∆
f должен удовлетворять условию
f
f
δ
<
∆
(4.5)
Глава 4. Практика дискретного преобразования Фурье
59
В противном случае узкая линия может оказаться между гармониками дискретного спектра и не будет воспроизводиться. Для повышения частотного разрешения при ДПФ необходимо увеличивать размер области периодизации L функции u. При экспериментальном получении выборки отсчетов u(j) нужно максимально увеличивать ее длину, т.е. число отсчетов N.
На рис. 4.7 проиллюстрировано влияние длины выборки L на частотное разрешение спектра ДПФ. В левой колонке рисунка изображены отсчеты некоторой гладкой функции u(x), которая при
0
a
x
j
±
=
обращается в нуль. При шаге дискретизации
0 0
17
,
0 6
a
a
x
≈
=
∆
шесть отсчетов функции u(x
j
)хорошо воспроизводят ее на интервале
0 0
a
x
<
<
и, следовательно, частота
Найквиста
)
2
/(
1
x
f
N
∆
=
значительно превышает максимальную частоту искомого спектра
)
( f
U
Пусть период принудительной периодизации выбран равным
0 7
,
2 a
L
≈
. Его границы отмечены вертикальными штрихпунктирными отрезками (на рисунке вверху слева). Видно, что при таком выборе периода L функция на его границах мала, условие (4.3) выполняется и перекрытие периодических продолжений отсутствует. Получаемый при таком выборе периода спектр
)
(
k
f
U
изображен на рисунке вверху справа. Видно, что в полосе частот от
N
f
−
до
N
f
+
амплитуда гармоник монотонно убывает и обращается в нуль на ее границах (вверху справа).
Однако, при выбранном периоде L частотное разрешение
L
f
/
1
=
∆
оказывается недостаточным для воспроизведения тонкой структуры искомого спектра. При увеличении периода вдвое
0 4
,
5 2
a
L
L
≈
=
′
(внизу слева) видно, что в искомом спектре существует узкая спектральная линия, которая при прежнем периоде L
отсутствовала(внизу справа). Это является следствием улучшения частотного разрешения, при котором интервал между гармониками дискретного спектра
L
f
′
=
′
∆
1
при увеличении периода от L до
L
L
2
=
′
сократился вдвое.
Глава 4. Практика дискретного преобразования Фурье
60
Рис. 4.7. Влияние длины выборки L на частотное разрешение спектра
∆
f.
Левая колонка – отсчеты некоторой функции u(x
j
), следующие с шагом
0 0
17
,
0 6
a
a
x
≈
=
∆
. Выделенной центральной части выборки длиной
0 0
7
,
2 6
16 16
a
a
x
L
≈
=
∆
⋅
=
, ограниченной вертикальными штрихпунктирными линиями, соответствует спектр в верхней части правой колонки. Его частотное разрешение
0 0
37
,
0 16 6
a
a
f
≈
=
∆
недостаточно для отображения особенностей полученного спектра. Увеличение длины выборки до
0 3
,
5 32
a
x
L
≈
∆
⋅
=
′
повышает частотное разрешение спектра до
0 0
19
,
0 32 6
a
a
f
≈
=
′
∆
(нижняя часть правой колонки), что позволяет обнаружить в спектре две узкие линии, неразличимые при длине выборки
x
L
∆
⋅
=
16
Дальнейшее улучшение частотного разрешения при увеличении длины выборки до
L
L
4
=
′′
позволяет оценить ширину узкой спектральной линии в дискретном спектре
)
(
k
f
U
(см. рис. 4.8). Следует заметить, что улучшение частотного разрешения при неизменном шаге дискретизации x
∆
требует увеличения числа узлов N на расчетной сетке и, следовательно, объема вычислений.
В численном моделировании для определения необходимого частотного разрешения обычно выполнятся тестовые вычисления спектра с увеличением периода принудительной периодизации
Глава 4. Практика дискретного преобразования Фурье
61 функции, чтобы убедиться в отсутствии тонкой структуры спектра или обнаружить ее существование.
При спектральном анализе экспериментальных результатов следует увеличивать длину области регистрации функции, чтобы не пропустить возможные тонкие линии при их обработке средствами ДПФ.
Рис. 4.8. Увеличение длины выборки от
L
L
2
=
′
до
L
L
4
=
′′
для улучшения частотного разрешения спектра (ср. с нижней строкой рис. 4.7). Для экономии места изображены только правые части выборки и спектра
§4.4. Заключительная иллюстрация влияния шага дискретизации и
периода
функции на спектр при ДПФ
Основные особенности трансформации оригинала и его спектра при изменении периода регистрации
L и шага сетки
∆
x проиллюстрированы на итоговом рис. 4.9.
На верхней строке рисунка слева изображены N = 16 дискретных отсчетов u(x
j
) гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
с периодом
0 8a
L
=
и шагом
2 16 0
a
L
x
=
=
∆
. На той же строке справа изображены
N = 16 гармоник
U(f
k
) ее спектра
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
с шагом по частоте
0 8
1
a
f
=
∆
. При этом частота Найквиста
0 1
a
f
N
=
. На средней строке проиллюстрировано уменьшение шага сетки вдвое при том же периоде
0 8a
L
=
: N = 32;
4 32 0
a
L
x
=
=
′
∆
;
0 8
1
a
f
=
∆
;
0 2
a
f
N
=
′
. Нижняя строка иллюстрирует увеличение периода вдвое, т.е.
0 16a
L
=
′
при первоначальном шаге
Глава 4. Практика дискретного преобразования Фурье
62 2
32 0
a
L
x
=
′
=
∆
. При этом шаг по частоте
0 16 1
a
f
=
′
∆
, а частота
Найквиста
0 1
a
f
N
=
Рис. 4.9. Трансформация оригинала
)
(
j
x
u
и его спектра
)
(
k
f
U
при изменении периода регистрации L и шага сетки
∆
x.
Верхняя строка: период
0 8a
L
=
; шаг сетки
2
/
16
/
0
a
L
x
=
=
∆
; шаг по частоте
)
8
/(
1 0
a
f
=
∆
; частота Найквиста
0
/
1 a
f
N
=
Средняя строка:
0 8a
L
=
;
4
/
32
/
0
a
L
x
=
=
′
∆
;
)
8
/(
1 0
a
f
=
∆
;
0
/
2 a
f
N
=
′
Нижняя строка:
0 16a
L
=
′
;
2
/
32
/
0
a
L
x
=
′
=
∆
;
)
16
/(
1 0
a
f
=
′
∆
;
0
/
1 a
f
N
=
Глава 5. Быстрое преобразование Фурье
63
1 2 3 4 5
Глава
3. Дискретное преобразование Фурье (ДПФ)
§3.1. Анализ Фурье. Ортогональность гармоник в дискретном
пространстве
. Синтез Фурье
Получим формулу для вычисления на сетке преобразования
Фурье периодической функции
)
(
)
(
x
u
nL
x
u
=
±
, где
K
,
2
,
1
=
n
Введем на периоде
L функции
u(x) равномерную сетку
x
j
x
j
∆
=
с шагом
N
L
x
=
∆
. Здесь N – число узлов сетки, которое совпадает с числом отрезков разбиения. При этом номер узла сетки
j пробегает значения
1 2
/
2
/
−
≤
≤
−
N
j
N
и сеточная функция
)
(
)
(
j
x
u
j
u
≡
периодична с периодом N, т.е.
)
(
)
(
j
u
nN
j
u
=
±
. Важно обратить внимание на то, что в силу периодичности функции
)
( j
u
справедливо равенство
)
2
/
(
)
2
/
(
N
u
N
u
−
=
Спектр периодичной функции представляет собой ряд
Фурье
dx
L
ikx
x
u
L
f
U
k
U
L
L
k
π
−
=
≡
−
2
exp
)
(
1
)
(
)
(
2
/
2
/
,
(3.1) где k – номер фурье-гармоники.
Предполагая, что спектр
)
( f
U
ограничен и
N
f
f
≤
max
, по формуле
Котельникова–Шеннона (2.19) имеем для периодической функции
−
−
=
−
∆
π
=
≡
1 2
/
2
/
)
(
sinc
)
(
)
(
)
(
N
N
j
j
x
x
x
j
u
x
u
x
u
(3.2)
Рис.3.1. Периодическая функция.
Границы отрезка периодичности [–L/2,
L/2] функции обозначены символом ×, узлы сетки – вертикальными рисками
Глава 3. Дискретное преобразование Фурье
45
Подставляя u(x) в виде (3.2) в формулу (3.1), и используя для u(j) представление (2.2) через гребневую функцию Дирака, получаем
π
−
−
∆
π
−
δ
∆
=
−
−
−
=
L
ikx
x
x
x
x
u
x
x
x
L
k
U
j
L
L
N
N
j
j
2
exp
)
(
sinc
)
(
)
(
1
)
(
2
/
2
/
1 2
/
2
/
Отсюда, в соответствии с определением функции Дирака (§1), следует, что
−
−
=
∆
π
−
∆
=
1 2
/
2
/
2
exp
)
(
)
(
N
N
j
L
x
ikj
j
u
L
x
k
U
Учитывая, что
N
L
x
1
=
∆
и вводя обозначение
π
=
N
i
W
N
2
exp
, запишем последнее равенство в виде
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
j
kj
N
W
j
u
N
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
k
K
(3.3)
Это выражение называется формулой прямого дискретного преобразования
Фурье
(дискретного анализа
Фурье).
Оно определяет k-ю фурье-гармонику дискретного спектра U(k) по функции дискретного аргумента u(j). Выражение (3.3) является дискретным аналогом формулы
(1.5) для вычисления коэффициентов разложения
k
d
в ряд Фурье периодической функции. При замене во второй формуле (1.5) интеграла суммой и в подстановках
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.3).
Рассмотрим свойства дискретных гармонических функций
kj
N
W
, определенных на множестве номеров гармоник
1 2
/
,
,
2
/
−
−
=
N
N
k
L
в пространстве частот и множестве узлов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
в пространстве отсчетов.
Глава 3. Дискретное преобразование Фурье
46 1. Гармоники разных номеров k и l ортогональны на периоде отсчетов
1 2
/
,
,
2
/
−
−
=
N
N
j
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
l
k
l
k
N
W
W
N
N
j
lj
N
kj
N
(3.4)
2. Гармоники одного и того же номера k, взятые в разных точках сетки j и m, ортогональны на периоде спектра
1 2
/
,
,
2
/
−
−
=
N
N
k
L
:
≠
=
=
⋅
−
−
=
−
при
0
,
при
1 2
/
2
/
m
j
m
j
N
W
W
N
N
k
km
N
kj
N
(3.5)
Используя свойства ортогональности гармоник, получим формулу дискретного синтеза Фурье для вычисления функции дискретного аргумента u(j) по гармоникам U(k) дискретного спектра. Согласно (3.3) имеем
−
−
=
−
=
1 2
/
2
/
)
(
1
)
(
N
N
m
km
N
W
m
u
N
k
U
(3.6)
Умножим левую и правую части этого равенства на
kj
N
W
и просуммируем по всем k слева и справа. Получим
−
−
=
−
−
=
−
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
)
(
1
)
(
N
N
k
N
N
m
kj
N
km
N
N
N
k
kj
N
W
W
m
u
N
W
k
U
Поменяем в правой части равенства порядок суммирования:
−
−
=
−
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
1 2
/
2
/
1
)
(
)
(
N
N
k
kj
N
km
N
N
N
m
N
N
k
kj
N
W
W
N
m
u
W
k
U
В силу ортогональности гармоник (3.5) вторая сумма в правой части равна N при
j
m
=
и обращается в ноль при
j
m
≠
. Отсюда, поменяв местами правую и левую части равенства, получаем
Глава 3. Дискретное преобразование Фурье
47
−
−
=
=
1 2
/
2
/
)
(
)
(
N
N
k
kj
N
W
k
U
j
u
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
(3.7)
Выражение (3.7) называется формулой обратного дискретного преобразования Фурье, с помощью которой вычисляется функция дискретного аргумента u(j) по ее спектру U(k). Формула (3.7) является дискретным аналогом разложения (1.5) периодической функции в ряд Фурье. При замене в сумме (1.5) бесконечных пределов на суммирование от –N/2 до N/2–1 и в подстановках
)
(k
U
d
k
=
,
L
k
f
k
/
=
,
x
j
x
∆
=
и
N
x
L
∆
=
, можно формально перейти к (3.7).
§3.2 Свойства ДПФ. Формулы запаздывания, смещения и
свертки
Выпишем вновь формулы дискретного преобразования
Фурье
=
=
−
−
=
−
−
=
−
1 2
/
2
/
1 2
/
2
/
,
)
(
)
(
,
)
(
1
)
(
N
N
k
kj
N
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(3.8) где
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
,
π
=
N
i
W
N
2
exp
Перечислим кратко основные свойства дискретных оригинала и его Фурье-образа. К ним относятся:
1. Периодичность:
)
(
)
(
j
u
nN
j
u
=
±
,
)
(
)
(
k
U
nN
k
U
=
±
2. Линейность:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
β
+
α
↔
β
+
α
3. Изменение знака:
)
(
)
(
k
U
j
u
−
↔
−
4. Комплексное сопряжение:
)
(
*
)
(
*
k
U
j
u
−
↔
5. Запаздывание:
km
N
W
k
U
m
j
u
−
↔
−
)
(
)
(
6. Смещение:
jl
N
W
j
u
l
k
U
)
(
)
(
↔
−
7. Свертка:
)
(
)
(
)
(
)
(
2 1
2 1
k
U
k
U
j
u
j
u
⋅
↔
⊗
,
Глава 3. Дискретное преобразование Фурье
48 где
−
−
=
−
⋅
=
⊗
1 2
/
2
/
2 1
2 1
)
(
)
(
1
)
(
)
(
N
N
m
m
j
u
m
u
N
j
u
j
u
8. Образ Фурье
)
( j
δ
–функции Дирака:
1
)
(
↔
δ
j
9. Образ Фурье запаздывающей функции Дирака
)
(
0
j
j
−
δ
:
0
)
(
0
kj
N
W
j
j
↔
−
δ
§3.3. Двумерное преобразование Фурье
Рассмотрим функцию двух переменных
)
,
(
y
x
u
, заданную на квадратной области
2
/
2
/
L
x
L
≤
≤
−
,
2
/
2
/
L
y
L
≤
≤
−
(рис. 3.2) и построим равномерную сетку
1 2
/
,
,
2
/
−
−
=
N
N
j
K
,
1 2
/
,
,
2
/
−
−
=
N
N
m
K
с квадратными ячейками размерами
x
x
∆
×
∆
, где
N
L
x
/
=
∆
Введем сеточную функцию
)
,
(
)
,
(
x
m
x
j
u
m
j
u
∆
∆
≡
Воспользовавшись формулой (3.8), запишем N прямых дискретных преобразования
Фурье для столбцов двумерного массива
)
,
( m
j
u
. Вводя вспомогательную функцию
)
,
( l
j
U
и используя обозначение
π
=
N
i
W
N
2
exp
, имеем
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
m
lm
N
W
m
j
u
N
l
j
U
,
1 2
/
,
,
2
/
−
−
=
N
N
j
L
Выполнив теперь N дискретных преобразований для строк
)
,
( l
j
U
, получаем двумерный спектр
)
,
( l
k
U
функции
)
,
( m
j
u
−
−
=
−
=
1 2
/
2
/
)
,
(
1
)
,
(
N
N
j
kj
N
W
l
j
U
N
l
k
U
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Рис. 3.2. Двумерная сетка
Глава 3. Дискретное преобразование Фурье
49
Записанные выше формулы удобно объединить в одну. Таким образом, прямое двумерное преобразование Фурье имеет вид
lm
N
N
N
j
N
N
m
kj
N
W
W
m
j
u
N
l
k
U
−
−
−
=
−
−
=
−
=
1 2
/
2
/
1 2
/
2
/
2
)
,
(
1
)
,
(
,
(3.9)
1 2
/
,
,
2
/
−
−
=
N
N
k
L
,
1 2
/
,
,
2
/
−
−
=
N
N
l
L
Обратное двумерное преобразование Фурье записывается как
lm
N
N
N
k
N
N
l
kj
N
W
W
l
k
U
m
j
u
−
−
=
−
−
=
=
1 2
/
2
/
1 2
/
2
/
)
,
(
)
,
(
(3.10)
При практическом использовании преобразований (3.9), (3.10) нужно принять во внимание, что двумерная дискретизация оригинала
)
,
( m
j
u
и его Фурье-образа
)
,
( l
k
U
приводит к их принудительной периодизации с периодом N как по j, k, так и по
m, l, т.е.
)
,
(
)
,
(
2 1
m
j
u
N
n
m
N
n
j
u
=
±
±
,
)
,
(
)
,
(
2 1
l
k
U
N
n
l
N
n
k
U
=
±
±
, где
K
,
2
,
1
,
0
,
2 1
±
±
=
n
n
. Для корректного выполнения двумерных преобразований Фурье необходимо следить за отсутствием наложения отсчетов и частот сразу по обеим координатным и частотным осям. Указанное обстоятельство проиллюстрировано на рис. 3.3, где оригинал и Фурье-образ условно изображены линиями равного значения.
Рис. 3.3. Периодизация двумерной функции (слева) и двумерного спектра (справа). Здесь
N
f
F
2
=
– ширина частотной полосы,
L
k
f
k
/
=
,
L
l
f
l
/
=
Глава 4. Практика дискретного преобразования Фурье
50
Глава
4. Практика дискретного преобразования Фурье
При практическом использовании ДПФ ключевым является вопрос о выборе шага
∆
x дискретизации функции u(x) на сетке, а также области ee регистрации L, которая играет роль периода при принудительной периодизации функции u(x), неизбежно связанной с переходом к дискретному спектру. На спектральном языке речь идет о выборе ширины спектральной полосы
]
,
,
[
N
N
f
f
K
−
, граница которой равна частоте Найквиста
x
f
N
∆
=
2 1
, и о частотном разрешении сетки, которое равно
L
f
1
=
∆
§4.1. Выбор шага дискретизации на сетке
∆∆∆∆
x
Для выбора шага
x
∆
сетки определяющим является ширина спектра функции-оригинала. Если спектр оригинала ограничен, т.е. существует верхняя граница спектра max
f
, то шаг
x
∆
выбирается из условия превышения частотой Найквиста сетки
x
f
N
∆
=
2 1
верхней границы max
f
спектра рассматриваемой функции: max
f
f
N
≥
, или max
2 1
f
x
≤
∆
(4.1)
Если спектр функции-оригинала неограничен, то за величину верхней его границы max
f
можно принять значение, при котором спектральная компонента
)
(
max
f
U
мала:
)
(
max
)
(
max
f
U
f
U
f
<<
(4.2)
Например, для гауссовой функции
−
=
2 0
2
exp
)
(
a
x
x
u
спектр имеет вид
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
. Если принять, что
0
max
1
a
f
=
, то
Глава 4. Практика дискретного преобразования Фурье
51 относительная величина спектральной компоненты на границе спектральной полосы составляет
4
max
10
)
0
(
/
)
(
−
≤
U
f
U
и шаг дискретизации согласно (4.1) должен удовлетворять неравенству
2 0
a
x
≤
∆
, т.е. на полуширину a
0
гауссовой функции должно приходиться не менее двух шагов сетки. При таком выборе шага
x
∆
наложение частот практически отсутствует.
Непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру, близка к исходной
)
(x
u
(рис. 4.1).
Рис. 4.1. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
j
j
−
=
на сетке с шагом
0 5
,
0 a
x
=
∆
; ее дискретный спектр
(
)
2 2
0 2
0
exp
)
(
k
k
f
a
a
f
U
π
−
π
=
и непрерывная функция
)
(
x
u
, восстановленная по дискретному спектру
В общем случае спектр
)
( f
U
функции
)
(x
u
не известен и для границы спектральной полосы используются качественные оценки, которые включают в себя и возможное уширение спектра в процессе решения конкретной задачи. В отсутствии представлений о спектре
)
( f
U
функции
)
(x
u
шаг дискретизации
x
∆
выбирается таким, чтобы на интервале наибольшего градиента (максимальной производной) функции приходился хотя бы один узел сетки.
На рис. 4.2 приведена в качестве примера функция
)
(x
u
, которая в узком интервале от 0,35L до 0,45L быстро уменьшается. Там же изображены ее спектр
)
( f
U
и функция
)
(
x
u
, восстановленная по дискретному спектру, полученному при различных шагах дискретизации x
∆
. Видно, что в случае, когда шаг
L
L
x
03
,
0 32
≈
=
∆
, при котором узел сетки находится в интервале между максимальным и
Глава 4. Практика дискретного преобразования Фурье
52 минимальным значениями функции, спектральные компоненты на частоте Найквиста малы и, следовательно, наложение частот несущественно. Функция, восстановленная по дискретному спектру в этом случае близка к исходной. В то же время, при шаге
L
L
x
06
,
0 16
≈
=
∆
в область сильного градиента не попадает ни один промежуточный узел сетки, частота Найквиста мала, появляется наложение частот, и восстановленная функция существенно отличается от исходной.
Рис.4.2. Произвольная функция u(x) с большой производной в интервале
0,35L < x < 0,45L, ее дискретные аналоги, спектры U(f) и восстановленные функции
)
(
x
u
при различном шаге дискретизации x
∆
Верхняя строка:
32
/
L
x
=
∆
; нижняя строка:
16
/
L
x
=
∆
Может оказаться так, что при чрезмерно малом
x
∆
спектральная ширина сетки
N
f окажется избыточно большой. Разумно выбранное соотношение между разрешением сетки и шириной спектра функции во многих случаях позволит сократить вычислительные затраты при выполнении ДПФ.
В качестве примера рассмотрим гауссову функцию
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
на периоде длиной
0 16
a
L
=
. На рис. 4.3 видно, что сетка с числом узлов
32
=
N
и шагом
0 5
,
0
a
x
=
∆
является вполне достаточной для воспроизведения как функции, так и ее спектра. При
Глава 4. Практика дискретного преобразования Фурье
53 этом на полуширину функции приходится 2 узла, а полуширина ее спектра, равная
0 0
1
a
f
π
=
, в π раз меньше частоты Найквиста
0
/
1 a
f
N
=
Рис. 4.3. Гауссова функция u(x
i
) и ее спектр U(f
k
) на сетке с N = 32 (слева) и на сетке c N = 64 (справа)
В то же время, сетка с числом узлов N = 64 и шагом
0 25
,
0
a
x
=
∆
является в данном случае явно избыточной, поскольку спектр функции содержит примерно половину нулевых компонент, вычисление которых требует дополнительны затрат.
Подводя итог, можно утверждать, что в случае, когда не предполагается выполнять каких либо операций с ограниченным спектром, приводящих в последующем к его уширению, оптимальное разрешение сетки достигается при max
2 1
f
x
≈
∆
где max
f
– верхняя граница спектра.
§4.2. Выбор области периодизации функции L
При выборе L необходимо в первую очередь учитывать принудительную периодизацию функции u(x), неизбежно возникающую из-за дискретности ее спектра. Одним из последствий этого может явиться появление разрывов функции или ее производных на границах периода
[–L/2, L/2] исходной функции с ее периодическими продолжениями. Возникновение разрывов при периодизации функции
u(x) вызывает расширение спектра, которое имеет чисто вычислительную природу. Поэтому необходимо контролировать и подавлять появление артефактов, связанных с таким расширением спектра и, как следствие этого, возникновения эффекта наложения частот и связанных с ним погрешностей.
Глава 4. Практика дискретного преобразования Фурье
54
В соответствии с общепринятыми рекомендациями, для непериодической функции период L следует выбирать из условия малости функции u(x) на границах периода. При этом взаимные перекрытия исходной функции и ее периодических продолжений, практически, отсутствуют:
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
(4.3)
Например, для гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
ее относительная величина на границах периода при
0 6a
L
=
составляет
4 10
)
0
(
/
)
2
/
(
−
≈
±
u
L
u
, и перекрытием функции и ее продолжений можно пренебречь. Заметим, что у симметричной функции при периодическом продолжении не возникают разрывы на границах периода при любом периоде L.
Однако, при неудачном выборе L возможно появление на границах периода разрывов производных функции u(x). Иллюстрацией этого эффекта служит рис. 4.4, на котором продемонстрировано вычисление первой производной гауссовой функции, принудительно периодизированной с периодом
0 3a
L
=
. Отчетливо видны осцилляции
Гиббса на профиле производной восстановленной функции
dx
u
d /
, наиболее сильно проявляющиеся в окрестности точек разрыва производной (изломов на профиле) периодизированной функции
)
(x
u
Заметим, что с увеличением числа узлов N на выбранном периоде, т.е. с уменьшением шага дискретизации
∆
x и, следовательно, увеличением частоты Найквиста f
N
, амплитуда осцилляций не уменьшается.
Иными словами, при разрыве производной спектр периодизированной функции становится неограниченным и осцилляции, вызванные разрывом производной, не ослабляются по мере увеличения числа узлов сетки N (§2.4).
Поэтому, фактически единственный способ избежать искажений спектра из-за наложения частот у периодизированной функции
)
(x
u
состоит в выборе такого периода L, при котором не возникают взаимные перекрытия исходной функции и ее периодических продолжений. Если же излом существует на профиле самой функции в пределах периода ее регистрации, то устранить возникшее при этом наложение частот путем увеличения числа узлов сетки N не
Глава 4. Практика дискретного преобразования Фурье
55 представляется возможным. В этом случае необходимо осуществлять контролируемое ограничение спектра исследуемой функции.
Рис. 4.4. Гауссова функция
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
, периодизированная с периодом
0 3a
L
=
; модуль спектра ее первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
. Верхняя строка:
N = 32; средняя строка:
N = 64; нижняя строка: N = 128
В частности, для сокращения спектральной полосы периодизированной функции нередко используются так называемые окна, являющиеся некоторыми весовыми функциями, после умножения на которые оригинала u(x)обрабатываемаяфункция на границах
Глава 4. Практика дискретного преобразования Фурье
56 периода обращается в нуль. Не вдаваясь в детали построения таких окон и анализа их спектральных свойств, отошлем читателя к великолепной книге [4], в главе 3 которой такой анализ дан с исчерпывающей полнотой.
Для уменьшения скачков функции или ее производных, возникающих при ее периодизации, можно наложить окно П(x) на функцию u(x), т.е. сформировать некоторую «буферную» область, благодаря которой условие
)
(
max
)
2
/
(
),
2
/
(
x
u
L
u
L
u
x
<<
−
будет выполняться в виде сильного неравенства.
Рассмотрим в качестве примера дискретное преобразование
Фурье линейной функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданной на отрезке
2
/
2
/
L
x
L
<
<
−
На рис. 4.5 изображена периодизированная функция, модуль дискретного спектра этой функции
|
)
(
|
f
U
и ее производной
|
)
(
|
f
U
i
κ
, а также производная
dx
u
d /
, восстановленная по дискретному спектру.
Рис. 4.5. Линейная функция
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
, заданная на сетке с
N = 32; модуль ее спектра
|
)
(
|
f
U
; модуль спектра первой производной
|
)
(
|
f
U
i
κ
; первая производная восстановленной функции
dx
u
d /
Из рисунка видно, что наличие разрывов функции при
2
/
L
x
−
=
и при
2
/
L
x
=
при ее периодизации вызывает наложение частот в ее спектре, которое, в свою очередь, приводит к появлению осцилляций Гиббса, и, как следствие, к возникновению значительных ошибок в вычислении первой производной.
Очевидно, что указанные выше ошибки не могут быть устранены путем изменения периода L. Однако, наложение окна, при котором вводятся буферные зоны в окрестности границ периода,
Глава 4. Практика дискретного преобразования Фурье
57 позволяет существенно ослабить влияние разрывов функции при ее периодизации.
Рис. 4.6. Функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
, сглаженная в окрестности точки
L/2 путем наложения окна П(x) (4.4) на линейную функцию
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
; модуль спектра ee первой производной
|
)
(
|
f
U
i
′
κ
; первая производная восстановленной функции
dx
u
d
/
′
. Верхняя строка:
N = 32; средняя строка: N = 64; нижняя строка: N = 128
Например, плавное убывание функции
)
2
/
(
)
(
L
x
x
u
+
⋅
α
=
от максимального значения до нуля может быть обеспечено путем ее умножения на окно
Глава 4. Практика дискретного преобразования Фурье
58
(
)
<
≥
−
−
=
Π
,
при
1
,
при
)
/
)
((
exp
)
(
0 0
0
x
x
x
x
a
x
x
x
b
(4.4) с помощью которого сглаженная функция
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
становится близкой к нулю на границе
2
/
L
x
=
Окно П(x) зависит от трех свободных параметров x
0
, a и b, подбираемых опытным путем. Эмпирически установлено, что для рассматриваемой функции близкие к оптимальным результаты с точки зрения уменьшения осцилляций Гиббса дают следующие значения параметров:
4
/
0
L
x
=
,
12
/
L
a
=
,
4
=
b
На рис. 4.6 продемонстрирован пример использования рассматриваемого окна. Видно, что по сравнению со случаем, представленным на рис. 4.5, у периодизированной функции с окном
)
(
)
(
)
(
x
x
u
x
u
Π
⋅
=
′
отсутствует разрыв. В области
4
/
2
/
L
x
L
≤
≤
−
ошибки при вычислении первой производной в целом существенно снижены. Слабо выраженные осцилляции на профиле
dx
u
d
/
′
дополнительно ослабляются с уменьшением шага дискретизации при увеличении числа узлов N на периоде. Паразитный отрицательный выброс при
4
/
L
x
>
связан с дифференцированием произведения исходной функции и окна П(x).
§4.3. Частотное разрешение
∆∆∆∆
f
С выбором области периодизации L связано частотное разрешение преобразования Фурье. Действительно, шаг дискретизации в спектральном пространстве
L
f
1
=
∆
представляет собой интервал между соседними фурье-гармониками. Величина
∆
f является частотным разрешением ДПФ, которое равно наименьшему интервалу частот, различимому в дискретном спектре.
Если в спектре U(f) присутствует узкая линия, т.е. малая область частот
δ
f, в которой существует локальный экстремум U(f), то шаг по частоте
∆
f должен удовлетворять условию
f
f
δ
<
∆
(4.5)
Глава 4. Практика дискретного преобразования Фурье
59
В противном случае узкая линия может оказаться между гармониками дискретного спектра и не будет воспроизводиться. Для повышения частотного разрешения при ДПФ необходимо увеличивать размер области периодизации L функции u. При экспериментальном получении выборки отсчетов u(j) нужно максимально увеличивать ее длину, т.е. число отсчетов N.
На рис. 4.7 проиллюстрировано влияние длины выборки L на частотное разрешение спектра ДПФ. В левой колонке рисунка изображены отсчеты некоторой гладкой функции u(x), которая при
0
a
x
j
±
=
обращается в нуль. При шаге дискретизации
0 0
17
,
0 6
a
a
x
≈
=
∆
шесть отсчетов функции u(x
j
)хорошо воспроизводят ее на интервале
0 0
a
x
<
<
и, следовательно, частота
Найквиста
)
2
/(
1
x
f
N
∆
=
значительно превышает максимальную частоту искомого спектра
)
( f
U
Пусть период принудительной периодизации выбран равным
0 7
,
2 a
L
≈
. Его границы отмечены вертикальными штрихпунктирными отрезками (на рисунке вверху слева). Видно, что при таком выборе периода L функция на его границах мала, условие (4.3) выполняется и перекрытие периодических продолжений отсутствует. Получаемый при таком выборе периода спектр
)
(
k
f
U
изображен на рисунке вверху справа. Видно, что в полосе частот от
N
f
−
до
N
f
+
амплитуда гармоник монотонно убывает и обращается в нуль на ее границах (вверху справа).
Однако, при выбранном периоде L частотное разрешение
L
f
/
1
=
∆
оказывается недостаточным для воспроизведения тонкой структуры искомого спектра. При увеличении периода вдвое
0 4
,
5 2
a
L
L
≈
=
′
(внизу слева) видно, что в искомом спектре существует узкая спектральная линия, которая при прежнем периоде L
отсутствовала(внизу справа). Это является следствием улучшения частотного разрешения, при котором интервал между гармониками дискретного спектра
L
f
′
=
′
∆
1
при увеличении периода от L до
L
L
2
=
′
сократился вдвое.
Глава 4. Практика дискретного преобразования Фурье
60
Рис. 4.7. Влияние длины выборки L на частотное разрешение спектра
∆
f.
Левая колонка – отсчеты некоторой функции u(x
j
), следующие с шагом
0 0
17
,
0 6
a
a
x
≈
=
∆
. Выделенной центральной части выборки длиной
0 0
7
,
2 6
16 16
a
a
x
L
≈
=
∆
⋅
=
, ограниченной вертикальными штрихпунктирными линиями, соответствует спектр в верхней части правой колонки. Его частотное разрешение
0 0
37
,
0 16 6
a
a
f
≈
=
∆
недостаточно для отображения особенностей полученного спектра. Увеличение длины выборки до
0 3
,
5 32
a
x
L
≈
∆
⋅
=
′
повышает частотное разрешение спектра до
0 0
19
,
0 32 6
a
a
f
≈
=
′
∆
(нижняя часть правой колонки), что позволяет обнаружить в спектре две узкие линии, неразличимые при длине выборки
x
L
∆
⋅
=
16
Дальнейшее улучшение частотного разрешения при увеличении длины выборки до
L
L
4
=
′′
позволяет оценить ширину узкой спектральной линии в дискретном спектре
)
(
k
f
U
(см. рис. 4.8). Следует заметить, что улучшение частотного разрешения при неизменном шаге дискретизации x
∆
требует увеличения числа узлов N на расчетной сетке и, следовательно, объема вычислений.
В численном моделировании для определения необходимого частотного разрешения обычно выполнятся тестовые вычисления спектра с увеличением периода принудительной периодизации
Глава 4. Практика дискретного преобразования Фурье
61 функции, чтобы убедиться в отсутствии тонкой структуры спектра или обнаружить ее существование.
При спектральном анализе экспериментальных результатов следует увеличивать длину области регистрации функции, чтобы не пропустить возможные тонкие линии при их обработке средствами ДПФ.
Рис. 4.8. Увеличение длины выборки от
L
L
2
=
′
до
L
L
4
=
′′
для улучшения частотного разрешения спектра (ср. с нижней строкой рис. 4.7). Для экономии места изображены только правые части выборки и спектра
§4.4. Заключительная иллюстрация влияния шага дискретизации и
периода
функции на спектр при ДПФ
Основные особенности трансформации оригинала и его спектра при изменении периода регистрации
L и шага сетки
∆
x проиллюстрированы на итоговом рис. 4.9.
На верхней строке рисунка слева изображены N = 16 дискретных отсчетов u(x
j
) гауссовой функции
(
)
2 0
2
/
exp
)
(
a
x
x
u
−
=
с периодом
0 8a
L
=
и шагом
2 16 0
a
L
x
=
=
∆
. На той же строке справа изображены
N = 16 гармоник
U(f
k
) ее спектра
(
)
2 2
0 2
0
exp
)
(
f
a
a
f
U
π
−
π
=
с шагом по частоте
0 8
1
a
f
=
∆
. При этом частота Найквиста
0 1
a
f
N
=
. На средней строке проиллюстрировано уменьшение шага сетки вдвое при том же периоде
0 8a
L
=
: N = 32;
4 32 0
a
L
x
=
=
′
∆
;
0 8
1
a
f
=
∆
;
0 2
a
f
N
=
′
. Нижняя строка иллюстрирует увеличение периода вдвое, т.е.
0 16a
L
=
′
при первоначальном шаге
Глава 4. Практика дискретного преобразования Фурье
62 2
32 0
a
L
x
=
′
=
∆
. При этом шаг по частоте
0 16 1
a
f
=
′
∆
, а частота
Найквиста
0 1
a
f
N
=
Рис. 4.9. Трансформация оригинала
)
(
j
x
u
и его спектра
)
(
k
f
U
при изменении периода регистрации L и шага сетки
∆
x.
Верхняя строка: период
0 8a
L
=
; шаг сетки
2
/
16
/
0
a
L
x
=
=
∆
; шаг по частоте
)
8
/(
1 0
a
f
=
∆
; частота Найквиста
0
/
1 a
f
N
=
Средняя строка:
0 8a
L
=
;
4
/
32
/
0
a
L
x
=
=
′
∆
;
)
8
/(
1 0
a
f
=
∆
;
0
/
2 a
f
N
=
′
Нижняя строка:
0 16a
L
=
′
;
2
/
32
/
0
a
L
x
=
′
=
∆
;
)
16
/(
1 0
a
f
=
′
∆
;
0
/
1 a
f
N
=
Глава 5. Быстрое преобразование Фурье
63
1 2 3 4 5
Глава
5. Быстрое преобразование Фурье (БПФ)
§5.1. Алгоритм БПФ
В настоящее время алгоритмы быстрого преобразования Фурье хорошо известны и широко используются в спектральном анализе. Хотя в современной литературе излагается целый ряд различных подходов к разработке алгоритмов БПФ, мы ограничимся одним из них, а именно, так называемым алгоритмом Кули–Тьюки, впервые описанным в статье
J. W. Cooley and J. W. Tukey, "An algorithm for the machine calculation of complex Fourier series," Math. Comput. 19, 297–301 (1965).
Необходимость введения быстрых алгоритмов суммирования рядов Фурье связана со значительными вычислительными затратами, требующимися при выполнении преобразований Фурье над массивами большой размерности. В самом деле, для вычисления одной Фурье- гармоники по N отсчетам (см. формулу (3.3)), нужно выполнить порядка
N операций, каждая из которых включает вычисление
kj
N
W
−
, умножение
kj
N
W
j
u
−
⋅
)
(
и сложение. Для нахождения всего спектра, состоящего из N гармоник, требуется порядка S
0
= N
2
операций. То же самое касается и обратного преобразования
Фурье.
Алгоритм
БПФ позволяет значительно уменьшить число операций, причем одним из ключевых моментов является периодичность ядра преобразования
kj
N
W
с периодом N.
Для удобства и компактности изложения временно откажемся от принятых ранее пределов нумерации узлов сетки и фурье-гармоник от
2
/
N
−
до
1 2
/
−
N
, и будем использовать для оригинала и спектра пределы суммирования от 0 до N – 1. При этом прямое и обратное преобразования выразятся формулами
=
=
−
=
−
=
−
1 0
1 0
,
)
(
)
(
,
)
(
1
)
(
N
k
kj
N
N
j
kj
N
W
k
U
j
u
W
j
u
N
k
U
(5.1)
1
,
,
1
,
0
−
=
N
k
L
,
1
,
,
1
,
0
−
=
N
j
L
,
π
=
N
i
W
N
2
exp
Глава 5. Быстрое преобразование Фурье
64
На рис. 5.1 изображены дискретный оригинал и дискретный спектр при такой нумерации узлов сетки и фурье-гармоник.
Рис. 5.1. Альтернативная нумерация узлов сетки j и фурье-гармоник k
Алгоритм быстрого суммирования рядов Фурье принципиально основывается на возможности разбиения числа N на сомножители.
Отметим сразу, что если N – простое число, то построить указанный алгоритм не удается. Рассмотрим для определенности прямое преобразование Фурье
−
=
−
=
1 0
)
(
1
)
(
N
j
kj
N
W
j
u
N
k
U
(5.2)
Предположим, что N – составное, т.е.
2 1
N
N
N
⋅
=
,
(5.3) где N
1
и N
2
– целые числа. Тогда, разбив число N на N
2
групп по N
1
отсчетов, можно представить текущий номер узла сетки в виде
1 2
1
N
j
j
j
+
=
, где
1
,
,
1
,
0 1
1
−
=
N
j
L
,
1
,
,
1
,
0 2
2
−
=
N
j
L
(рис. 5.2).
Рис. 5.2. Представление номеров узлов сетки j в виде N
2
групп по N
1
узлов в каждой группе
Аналогично представим номер фурье-гармоники как
2 1
2
N
k
k
k
+
=
, где
1
,
,
1
,
0 1
1
−
=
N
k
L
,
1
,
,
1
,
0 2
2
−
=
N
k
L
(рис. 5.3).
Глава 5. Быстрое преобразование Фурье
65
Рис. 5.3. Представление номера фурье-гармоники k в виде N
1
групп по N
2
гармоник в каждой группе
Введем обозначение
)
,
(
)
(
)
(
2 1
1 2
1
j
j
u
N
j
j
u
j
u
=
+
=
. Тем самым мы сведем одномерный массив
)
( j
u
к двумерному массиву
)
,
(
2 1
j
j
u
, состоящему из N
2
строк и N
1
столбцов. Тогда прямое преобразование
Фурье (5.2) выразится в виде
−
=
+
−
−
=
=
1 0
)
(
2 1
1 0
1 1
1 2
1 2
2
)
,
(
1
)
(
N
j
N
j
j
k
N
N
j
W
j
j
u
N
k
U
(5.4)
Вынесем за знак внутренней суммы не зависящий от j
2
множитель
1
kj
N
W
−
, а в оставшемся сомножителе представим
2 1
2
N
k
k
k
+
=
. После этого имеем
1 2
2 1
1 1
1 2
2 2
2 1
1 0
2 1
1 0
)
,
(
1
)
(
N
N
j
k
N
N
j
N
j
k
N
N
j
kj
N
W
W
j
j
u
W
N
k
U
−
−
=
−
−
=
−
⋅
=
(5.5)
Учтем, что
N
j
k
N
N
N
j
k
N
W
W
2 1
1 2
2 1
−
−
=
. Используя явный вид
π
=
N
i
W
N
2
exp
, получаем, что
1 2
1 1
2 2
1 2
=
=
⋅
π
−
−
j
k
i
N
N
j
k
N
e
W
. Введем обозначение для внутренней суммы в (5.5), а именно
1 2
2 2
2
)
,
(
1
)
,
(
2 1
0 1
2 2
1
N
j
k
N
N
j
W
j
j
u
N
k
j
U
−
−
=
=
(5.6)
Выражение (5.6) называют спектром разреженных отсчетов, где j
1
– параметр, принимающий значения
1
,
,
1
,
0 1
1
−
=
N
j
L
. Разреженные отсчеты
)
*,
(
2 1
j
j
u
образуются из отсчетов с номерами j
1
*, взятыми во всех группах с
1
,
,
1
,
0 2
2
−
=
N
j
L
(рис. 5.4).
Глава 5. Быстрое преобразование Фурье
66
Рис. 5.4. Разреженные отсчеты
Используя (5.6), прямое преобразование Фурье можно записать следующим образом:
1 2
1 2
1 1
)
(
1 0
2 1
1 2
1
)
,
(
1
)
,
(
)
(
j
N
k
k
N
N
j
W
k
j
U
N
k
k
U
k
U
+
−
−
=
=
≡
(5.7)
Видно, что
)
,
(
2 1
k
j
U
многократно используются при вычислении всего спектра
)
,
(
2 1
k
k
U
(
1
,
,
1
,
0 1
1
−
=
N
k
L
,
1
,
,
1
,
0 2
2
−
=
N
k
L
).
Если
)
,
(
2 1
k
j
U
вычислить один раз и затем использовать при суммировании ряда (5.7) в готовом виде, то число операций сокращается. В частности, при
2 1
N
N
N
⋅
=
нужно проделать:
2 2
N
операций для вычисления по
(5.6) спектра разреженных отсчетов для одного номера
*
1
j
, и
1 2
2
N
N
⋅
операций для всех номеров
1
j
. Далее
1
N
операций требуется для вычисления по (5.7) одной гармоники
)
(
k
U
и
N
N
⋅
1
операций для вычисления всех гармоник. Таким образом, число операций в этом случае равно
)
(
2 1
1 1
2 2
N
N
N
N
N
N
N
+
⋅
=
⋅
+
⋅
, тогда как без разбиения отсчетов на группы число операций составляет
2
N
. Нетрудно показать, что при
3 2
1
N
N
N
N
⋅
⋅
=
число операций равно
)
(
3 2
1
N
N
N
N
+
+
⋅
т.д.
Отсюда ясно, что экономия вычислительных затрат возрастает при увеличении числа целочисленных сомножителей, на которые возможно разбиение N.
§5.2. Оценка эффективности
Наибольший интерес представляет случай, когда
m
q
N
=
, где
N
m
q
log
=
. В этом случае число операций, требующихся для преобразования Фурье,
N
Nq
Nqm
S
q
q
log
=
=
, и выигрыш Z по сравнению с прямым суммированием рядов Фурье составляет
Глава 5. Быстрое преобразование Фурье
67
N
q
N
N
Nq
N
S
S
Z
q
q
q
log log
2 0
=
=
=
Очевидно, что максимальный выигрыш по числу операций достигается при минимальном
N
q
q
log
. Рассмотрим функцию
N
q
q
f
q
log
)
(
=
и найдем такое q, при она достигает минимума при фиксированном N.
Имеем
0
)
(ln
)
1
(
ln ln ln ln
2
=
−
=
∂
∂
=
∂
∂
q
q
q
q
N
q
N
q
q
q
f
Отсюда получаем, что минимум функции
N
q
q
log достигается при
1
ln
=
q
, т.е. при
72
,
2
≈
=
e
q
. В алгоритме Кули–Тьюки q выбрано равным 2, что объясняется алгоритмической простотой.
§5.3. Двоичная инверсия
Важной особенностью алгоритма БПФ является необходимость такой перестановки элементов входной последовательности u(j), чтобы выходная последовательность U(k) имела естественный (прямой) порядок расположения, т. е.
1
,
1,
,
0
−
=
N
k
L
. Характер такой перестановки элементов входной последовательности может быть описан сравнительно просто. В случае, когда N является степенью числа
2, входная последовательность должна быть расположена в памяти в двоично-инверсном порядке, который определяется следующим образом. Если записать порядковые номера элементов входной последовательности в двоичном коде, используя m двоичных разрядов, причем
m
N
2
=
, а затем инвертировать порядок следования разрядов, то получаемые при этом числа и будут номерами элементов входной последовательности после их перестановки. Более подробно с практической реализацией двоичной инверсии, в частности, с весьма эффективным алгоритмом Рейдера, можно познакомиться, например, в
[4], §6.4. Для случая
3 2
8
=
=
N
прямой порядок номеров приведен в таблице 1 слева, а двоично-инверсный порядок – справа.
Глава 5. Быстрое преобразование Фурье
68
Таблица 1. Двоичная инверсия
Исходный номер элемента последова- тельности
Двоичное представление исходного номера
Двоично- инверсная перестановка номера
Десятичное представление номера после инверсной перестановки
0 000 000 0
1 001 100 4
2 010 010 2
3 011 110 6
4 100 001 1
5 101 101 5
6 110 011 3
7 111 111 7
В таблице помещены исходные номера последовательности в десятичном представлении (первая колонка), в двоичном представлении (вторая колонка), двоично-инверсном представлении (третья колонка) и в десятичном представлении после двоичной инверсии (четвертая (колонка).
§5.4. Простой пример. Графическая схема БПФ
Поясним на простом примере, как используются спектры разреженных отсчетов. Пусть N = 4 = 2 2
. Запишем вначале прямое преобразование Фурье (5.2) для последовательности u(j), где j = 0, 1, 2, 3.
[
]
)
3
(
)
2
(
)
1
(
)
0
(
4 1
)
0
(
u
u
u
u
U
+
+
+
=
,
[
]
3 2
1
)
3
(
)
2
(
)
1
(
)
0
(
4 1
)
1
(
−
−
−
+
+
+
=
W
u
W
u
W
u
u
U
,
[
]
6 4
2
)
3
(
)
2
(
)
1
(
)
0
(
4 1
)
2
(
−
−
−
+
+
+
=
W
u
W
u
W
u
u
U
,
[
]
9 6
3
)
3
(
)
2
(
)
1
(
)
0
(
4 1
)
3
(
−
−
−
+
+
+
=
W
u
W
u
W
u
u
U