Data analysis
.pdfФурье для функции f(x).
До сих пор рассматривалось разложение в тригонометрический ряд функции с периодом 2π. В случае, если функция f(x) имеет период 2l, где l − некоторое действительное число, то, производя замену переменного,
x = πlt
мы получим функцию
ϕ(t) = f lt ,
π
которая будет иметь период 2π.
Для такой функции мы можем найти ряд Фурье
|
|
|
|
a0 |
∞ |
|
|
|
|
||
ϕ(t) ~ |
|
+∑an cos nx +bn sin nx, |
|
||||||||
|
|
|
|||||||||
|
|
|
|
|
2 |
n=1 |
|
|
|
|
|
где |
|
|
|
|
|
|
|
|
|
|
|
an |
= |
1 |
|
π∫ϕ(t) cos ntdt; |
bn = |
1 |
π∫ϕ(t) sin ntdt, |
||||
π |
|||||||||||
|
π |
||||||||||
|
|
|
|
|
−π |
|
|
|
−π |
|
|
или |
|
|
|
|
|
|
|
|
|
|
|
a |
= 1 l |
f (x) cos n π xdx; |
b |
= 1 l |
f (x) sin n π xdx, |
||||||
n |
|
l −∫l |
l |
|
n |
l −∫l |
l |
||||
|
|
|
|
где n = 1,2,3…, а потому функции f(x) будет отвечать ряд
|
a0 |
∞ |
π x +bn sin n |
π x, |
|
f (x) ~ |
+∑an cos n |
||||
2 |
|||||
|
n=1 |
l |
l |
где числа an и bn определены формулами (2.7)
(2.7)
(2.8)
- 11 -
В случае, если можно классифицировать исходную функцию f(x) как чётную или нечётную, то выражения (2.7) и (2.8) существенно упрощаются, а именно:
если на интервале (−l, l) функция f(x) четная, то для всех n = 1,2,3,… имеют место равенства bn = 0 и
a |
= 2 l |
f (x) cos n π xdx; |
||
n |
|
l |
∫0 |
l |
|
|
|||
если |
на |
интервале (−l, l) функция f(x) нечетная, то для всех |
||
n = 1,2,3,… имеют место равенства an = 0 и |
||||
b |
= |
2 |
l |
f (x)sin n π xdx. |
|
||||
n |
|
l |
∫0 |
l |
|
|
В случае если функция f(x) непериодическая, то для того чтобы воспользоваться разложением Фурье необходимо её периодизировать, т.е. просто полагаем, что за пределами отрезка –π ≤ x ≤ π функция совпадает с самой собой внутри этого отрезка.
На практике, решая задачи аппроксимации или интерполирования на ЭВМ, или в случае задания функции f(x) в табличном виде, удобно пользоваться дискретным преобразованием Фурье.
Если заданы m значений функции yk = f(xk) при xk = kT/m (k = 0,1,2,…, m−1), то на интервале (0, T) функцию y = f(x) можно представить в виде тригонометрического полинома Фурье
|
a |
n |
2π |
|
2π |
|
|
m |
|
|
||
F (x) = |
0 |
+∑aj cos j |
T |
x +bj sin j |
T |
x |
n < |
|
|
, |
(2.9) |
|
2 |
2 |
|||||||||||
|
j=1 |
|
|
|
|
|
|
тогда, коэффициенты преобразования определяются по формулам
- 12 -
|
|
|
2 |
|
m−1 |
|
2π |
|
|
|
|
|
aj |
= |
|
|
∑yk cos j |
|
k, |
|
|
|
|
||
|
|
|
|
|
|
|
(2.10) |
|||||
|
|
|
m k =0 |
|
T |
|
|
|
|
|||
|
|
|
2 m−1 |
2π |
|
|
|
|
m |
|||
bj |
= |
|
|
|
∑yk sin j |
|
T |
k |
|
0 |
≤ j < |
. |
|
|
|
|
|||||||||
|
|
m k =0 |
|
|
|
|
|
2 |
Формулы (2.10) называются дискретным преобразованием Фурье
функции y = f(x).
3. Численное интегрирование
Задача численного интегрирования заключается в нахождении приближенного значения интеграла
b |
|
I = ∫ f (x)dx , |
(3.1) |
a |
|
где функция f (x) непрерывна на интервале [a, b] |
|
Сущность большинства методов вычисления определенных |
|
интегралов сводится к замене подынтегральной |
функции f (x) |
аппроксимирующей функцией ϕ(x) , чтобы интеграл от нее легко
вычислялся в элементарных функциях. |
|
|
|
|
|
|||||
Чаще |
всего |
f (x) |
заменяют |
некоторым |
обобщенным |
|||||
интерполяционным многочленом: |
|
|
|
|
|
|||||
|
|
N |
|
|
|
|
|
|
|
|
f (x) = ∑ f (xi )ϕi (x) + r(x) |
|
|
|
|
(3.2) |
|||||
|
|
i=1 |
|
|
, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
где |
f (xi ) |
– |
значения |
функции |
в |
узлах |
xi |
|||
(a = x0 |
< x1 < x2 |
<... < xi |
<... < xN |
= b), а |
|
r(x) – |
остаточный |
член |
- 13 -
аппроксимации. Подставляем (2) в (1), тогда в качестве приближенного значения интеграла можно рассматривать число
N |
|
IN = ∑ci f (xi ) + R, |
(3.3) |
i=0
b
где ci = ∫ϕi (x)dx – весовые множители, зависящие только от узлов, но не
a
b
зависящие от выбора f (x) , R = ∫r(x)dx – погрешность.
a
Формула (3.3) называется квадратурной формулой.
Задачей численного интегрирования является нахождение таких узлов xi и таких весовых множителей ci , чтобы погрешность R была минимальна.
Рассмотрим некоторые методы нахождения определенного интеграла функции.
3.1. Метод прямоугольников
Рассмотрим самую простую квадратурную формулу, когда подынтегральная функция f (x) на отрезке интегрирования [a, b]
заменяется интерполяционным многочленом нулевого порядка, т.е. константой. Таким образом, приближенное значение интеграла определяется как площадь прямоугольника, одна из сторон которого есть длина отрезка интегрирования, а другая – аппроксимирующая константа.
Выбор аппроксимирующей константы является неоднозначным, т.к. она может быть выбрана равной значению подынтегральной функции в
- 14 -
любой точке интервала интегрирования. В зависимости от выбора константы различают методы левых, средних и правых прямоугольников.
В методе средних прямоугольников в качестве аппроксимирующей константы выбирается значение функции в середине отрезка
интегрирования xсрi |
= |
xi+1 − xi |
(рис. 1). Тогда |
|
|
||||
|
|
2 |
|
|
N |
), |
|
|
|
IN = ∑hf (xсрi |
(3.4) |
i=0
где h = xi+1 − xi – шаг разбиения.
f (x) |
|
|
|
x0 xср |
x1 |
xN |
x |
Рис. 1. Метод средних прямоугольников
f (x) |
|
|
|
x0 |
x1 |
xN |
x |
Рис. 2. Метод левых прямоугольников
- 15 -
В случае метода левых прямоугольников, в качестве константы берется значение функции на левой границе отрезка интегрирования, в случае метода правых прямоугольников – на правой границе. Тогда, получаем
|
N −1 |
|
IN |
= ∑hf (xi ) |
(3.5) |
|
i=0 |
|
|
|
|
для метода левых прямоугольников, и |
|
|
|
N |
|
IN |
= ∑hf (xi ) |
(3.6) |
|
i=1 |
|
|
|
для метода правых прямоугольников.
Оценим погрешность метода средних прямоугольников. Для этого рассмотрим выражение для интеграла на отрезке [xi , xi+1 ]:
xi+1 |
|
Ii = ∫ f (x)dx = hf (xсрi ) + Ri , |
(3.7) |
xi
где Ri – погрешность метода на данном шаге. Для ее оценки разложим функцию f (x) в ряд Тейлора в окрестности точки xсрi :
f |
|
|
|
|
′ |
|
i |
′′ |
(x − xсрi |
)2 |
|
|
|
|
|
||||
|
|
|
|
|
|
|
+... |
|
|
|
|
||||||||
(x) = f (x) + f (x)( x − xср ) + f (x) |
2! |
|
(3.8) |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
Подставим разложение в ряд Тейлора (3.8) в формулу для метода |
|||||||||||||||||||
средних прямоугольников (3.7) и, почленно интегрируя, получаем: |
|
||||||||||||||||||
i |
|
(x−xсрi )2 |
|
|
xi+1 |
′ |
i |
(x−xсрi )3 |
|
|
xi+1 |
′′ |
i |
i |
h3 |
|
′′ i |
||
|
|
|
|||||||||||||||||
I =hf (xср) + |
|
|
|
|
|
|
|
f |
|
|
=hf (xср) + |
|
|
||||||
|
|
f (xср) + |
3! |
|
|
|
(xср) +... |
24 |
f (xср) +... |
||||||||||
|
2! |
|
|
xi |
|
|
|
|
|
xi |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- 16 -
Следовательно, погрешность метода средних прямоугольников определяется следующим образом:
N |
N |
|
i |
h3 |
i |
|
|
h2 xN |
|
||
R = ∑Ri = ∑ hf (xср ) + |
|
f ′′(xср ) |
= |
|
|
f ′′(x)dx. |
|||||
24 |
24 x∫ |
||||||||||
i=0 |
i=1 |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
0 |
|
3.2. Метод трапеций
Теперь заменим функцию на отрезке [xi , xi+1 ] многочленом первого порядка (рис.3). Это равносильно замене кривой на секущую. В данном случае для каждого интервала значение интеграла криволинейной функции заменяется на площадь трапеции. Тогда из геометрических соображений следует формула трапеций:
x |
|
f (xi |
) + f (xi+1 ) |
|
|
||
∫i +1 f (x)dx = h |
+ Ri |
|
|||||
|
|
2 |
|
|
|||
xi |
|
|
|
|
|
(3.9) |
|
|
|
|
|
|
|
|
|
или на интервале [a, b] : |
|
|
|
|
|||
I = ∫ f (x)dx =∑h f (xi ) + f (xi+1 ) + R |
|
||||||
b |
N |
|
|
|
|
|
|
a |
i=0 |
2 |
|
. |
(3.10) |
f (x)
xi |
xi+1 |
х |
Рис. 3. Метод трапеций
- 17 -
Найдем погрешность этой формулы путем интегрирования тейлоровского разложения подынтегральной функции f (x) в
окрестности точки xi .
f (x) = f (xi ) + f ′(xi )( x − xi ) + |
f ′′(xi ) |
(x − xi )2 |
+... |
|||||||||||||||||||
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
(3.11) |
Тогда |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xi +1 |
f (x)dx = hf (xi ) + |
h |
2 |
f |
′ |
|
|
h |
3 |
|
|
′′ |
|
|
|
|||||||
∫ |
|
|
− |
|
|
|
|
|
|
|
||||||||||||
|
2 |
(xi ) |
|
2 |
f (xi ) +... |
(3.12) |
||||||||||||||||
xi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
С помощью (11) найдем f (x) |
в точке xi+1 : |
|
|
|
||||||||||||||||||
|
|
|
|
′ |
|
|
|
) + |
h2 |
f |
|
′′ |
|
|
|
|
) +... |
|
||||
f (xi+1 ) = f (xi ) + hf (xi |
2 |
|
|
(xi |
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Следовательно, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
hf |
′ |
|
= f (xi + h) |
− f (xi ) − |
|
h2 |
|
|
f |
′′ |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||
(xi ) |
|
|
2 |
|
|
(xi ) −... |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(3.13) |
||
Подставляем (13) в (12) и получаем |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
x |
|
|
|
f (xi |
) + f (xi+1 ) |
− h |
3 |
|
|
|||||||||||||
∫i +1 |
f (x)dx = h |
|
f ′′(xi ) +... |
|||||||||||||||||||
|
|
|
||||||||||||||||||||
xi |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
12 |
|
|
||
Тогда погрешность вычисляется следующим образом: |
||||||||||||||||||||||
Ri |
= − |
h3 |
′′ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
f (xi ) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
или
R = − h2 ∫b f ′′(x)dx. 12 a
Таким образом, мы получаем, что погрешность метода трапеций в 2
- 18 -
раза больше погрешности метода средних прямоугольников. По этой причине метод трапеций используют только в тех случаях, когда функция задана только в узлах сетки, а в середине интервалов неизвестна.
3.3. Метод Симпсона
Рассмотрим случай, когда в подынтегральная функция f (x)
заменяется интерполяционном полиномом второго порядка P(x) , т.е.
параболой, проведенной через три узла x0 , x1 и x2 . Таким образом,
x2 |
x2 |
|
∫ |
f (x)dx = ∫P(x)dx + R |
|
x0 |
|
x0 |
Для записи многочлена P(x) воспользуемся интерполяционной
функцией Ньютона для трех узлов:
P(x) = f (x |
) + |
f (x1 ) − f (x0 ) |
(x − x |
) + |
f (x0 ) −2 f (x1 ) + f (x2 ) |
(x − x |
)(x |
− x ), |
|
|
|||||||
0 |
|
h |
0 |
|
2h2 |
0 |
|
1 |
|
|
|
|
|
|
|
||
где h = x1 − x0 = x2 − x1 – |
расстояние между узлами. |
Сделаем |
замену |
t = x − x0 и вычислим интеграл от полинома:
x2 |
2h |
|
3 f (x |
0 |
) − |
4 f (x |
) + f (x |
2 |
) |
|
f (x |
0 |
) −2 f |
(x |
) + f (x |
2 |
) |
|
|
|
∫ |
P(x)dx = ∫ f (x0 ) − |
|
|
1 |
|
|
+ |
|
|
|
1 |
|
|
t 2 |
dt |
|||||
|
|
|
h |
|
|
|
|
|
2h |
2 |
|
|
|
|||||||
x0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Таким образом, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
2∫h P(t)dt = h |
( f (x0 ) +4 f (x1 ) + f (x2 )). |
|
|
|
|
|
|
|
|
|
|
(3.14) |
||||||||
0 |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Последнее |
соотношение |
называют |
|
формулой |
Симпсона |
|
или |
- 19 -
формулой парабол.
Для оценки погрешности формулы Симпсона разложим
подынтегральную функцию f (x) в ряд Тейлора в окрестности точки x1 |
и |
||||||||||
почленно проинтегрируем в интервале [x0 , x2 ]: |
|
||||||||||
x |
|
|
|
h3 |
|
h5 |
|
|
|
|
|
∫2 |
f (x)dx = 2hf (x1 ) + |
f ′′(x1 ) + |
f ( IV ) (x1 ) +... |
|
|||||||
|
3 4 5 |
|
|||||||||
x0 |
3 |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
Теперь просуммируем разложение в ряд Тейлора функции f (x) |
в |
||||||||||
окрестности точки x1 в узлах x0 и x2 . В результате получаем: |
|
||||||||||
x |
|
h |
|
|
|
|
|
|
2h5 |
|
|
∫2 |
f (x)dx = |
(f (x0 ) +4 f (x1 ) + f (x2 ))− |
|
f ( IV ) (x1 ) +... |
|
||||||
|
180 |
|
|||||||||
|
3 |
|
|
|
|
|
|
|
x0
Таким образом, главным членом погрешности при вычислении интеграла методом Симпсона на интервале [x0 , x2 ] является величина
R = − 2h5 f ( IV ) (x1 ) 180 .
3.4. Метод Филона
Очень часто при решении радиотехнических задач встречаются быстро осциллирующие функции, т.е. функции, описывающие
высокочастотное колебание с модулированной амплитудой.
Рассмотренные ранее методы приводят к большому объему вычислений, т.к. для точного нахождения интеграла приходится брать настолько мелкий шаг, чтобы одна осцилляция содержала бы много узлов интегрирования.
- 20 -