Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Численные методы. Лекции. Часть 2

.pdf
Скачиваний:
116
Добавлен:
16.04.2015
Размер:
672 Кб
Скачать
☆

Определение 3.1. Последовательность квадратурных формул — квадратурный процесс.

Такая последовательность определяется двумя треугольными матрицами:

Матрицей узлов:

 

 

x1(2)

 

 

x1(1)

X =

 

·(·n·)

 

 

 

 

x

 

 

1

 

 

 

 

 

· · ·

 

 

 

 

 

 

 

 

и матрицей коэффициентов:

 

 

A1(2)

 

 

A1(1)

A =

 

· ·(n·)

 

 

 

 

A

 

 

1

 

 

 

 

 

· · ·

 

 

 

 

 

 

 

 

x(2)2

· · ·

x(2n)

· · ·

A(2)2

· · ·

A(2n)

· · ·

· · ·

xn(n)

· · ·

· · ·

· · ·

· · ·

An(n)

· · ·

· · ·

· · ·

(3.1)

(3.2)

Квадратурная формула соответствующая n -ой строке этих матриц имеет вид:

b

n

p(x)f (x) dx = A(kn)f (x(kn)) + Rn(f ) = Sn(f ) + Rn(f ). (3.3)

a

k=1

 

Определение 3.2. Будем говорить, что квадратурный процесс, определенный матрицами X и A , сходится для функции f , если

lim S (f ) =

lim

n

A(n)f (x(n)) =

a

b

 

 

p(x)f (x) dx.

(3.4)

n→∞ n

 

k k

 

n→∞ k=1

 

Сходимость зависит как от свойств интегрируемой функции

f (x) , так и от выбора квадратурных формул.

Две основные проблемы теории сходимости:

•Заданы матрицы X и A и нужно определить, для какого класса Φ функций f можно гарантировать выполнение (3.4);

11

•Задан класс Φ функций f и нужно определить, каким условиям должны удовлетворять матрицы X и A , чтобы можно

было гарантировать сходимость квадратурного процесса для всех функций f Φ.

§4. Интерполяционные квадратурные формулы

Будем проводить построение квадратурных формул основанное на алгебраическом интерполировании

Предположим, что узлы xk, k = 1, . . . , n выбраны и мы имеем право при построении квадратурной формулы распоряжаться

выбором лишь коэффициентов

Ak .

 

 

Выполним интерполирование подынтегральной функции

f (x) по ее значениям в узлах

xk ,

k = 1, . . . , n

при помощи

многочлена Ln−1(x)

степени n − 1 :

 

 

f (x) = Ln−1(x) + rn(x) =

 

 

n

 

 

 

ω(x)

 

 

 

 

=

 

 

 

 

 

 

(xk ) + rn(x),

(4.1)

 

 

 

 

 

 

 

(x

−

xk )ω (xk) f

 

k=1

 

 

 

 

 

 

 

 

ω(x) = (x − x1)(x − x2) . . . (x − xn).

Если представление (4.1) внести под интеграл , то получим равенство

ab p(x)f (x) dx = ab p(x)Ln−1(x) dx + ab p(x)rn(x) dx.

(4.2)

Отбросив справа интеграл с остаточным членом rn(x) , получим правило приближенного вычисления определенного интеграла, называемое интерполяционным(от способа представления подынтегральной функции):

 

 

 

n

(4.3)

ab p(x)f (x) dx ≈ k=1 Ak f (xk );

 

 

 

 

 

Ak = a

b

p(x)

ω(x)

 

 

 

 

 

 

dx.

(4.4)

 

(x − xk )ω (xk )

12

Методическая погрешность интерполяционного правила (4.3), (4.4) выражается через остаточный член интерполирования:

Rn(x) =

n

ab p(x)rn(x) dx. (4.5)

ab p(x)f (x) dx − k=1 Ak f (xk) =

 

 

 

Интерполяционная квадратурная формула (4.3), (4.4) характеризуется утверждением

Теорема 4.1. Для того, чтобы квадратурная формула (4.3) была точной для алгебраических многочленов степени n−1, необходимо и достаточно, чтобы она была интерполяционной.

Необходимость

Будем предполагать, что правило точно для всякого многочлена f (x) степени deg f (x) = n − 1.

Покажем , что оно интерполяционное. Положим,

ω(x)

f (x) = (x − xi)ω (xi) = ωi(x);

ω(x) = (x − x1)(x − x2) · . . . · (x − xn).

Это многочлен степени n − 1 , принимающий в узлах xi значения

 

1

i = k.

ωi(xk) =

0

i = k;

И так как квадратурное правило

b

n

p(x)f (x) dx = Aif (xi)

a

i=1

 

предполагается точным для всякого многочлена степени n −1, оно верно и для многочлена ωi(x) и должно быть

a

b

b

 

ω(x)

 

p(x)ωi(x) dx = a

p(x)

 

dx =

 

(x − xi)ω (xi)

 

 

n

 

 

 

 

 

 

 

 

=

 

Ak ωi(xk) = Ai,

 

 

 

k=1

13

ω(x)

и правило (4.2) действительно является интерполяционным.

Достаточность

Пусть f (x) есть произвольный многочлен, степень которого не больше n − 1.

Если f (x) интерполировать по значениям в узлах xi, то в силу единственности интерполяционного многочлена, должно быть точным равенство

 

n

 

 

ω(x)

 

i

 

 

 

 

 

 

 

f (x) =

(x

−

xi)ω (xi) f (xi);

 

=1

 

 

 

 

И кроме того, правило предполагается интерполяционным и, стало быть, его коэффициенты имеют значения

b

Ai = a p(x) (x − xi)ω (xi) dx.

Поэтому верны равенства

b

n

b

 

ω(x)

a

p(x)f (x) dx = i=1 f (xi) a

 

 

 

p(x)

 

 

 

dx =

(x

−

xi)ω (xi)

 

 

 

 

 

 

n

= Aif (xi),

i=1

и правило

b

n

p(x)f (x) dx = Aif (xi)

a

i=1

 

точно выполняется для f (x).

Что и требовалось доказать.

Доказанная теорема позволяет утверждать, что всякое квадратурное правило

b n

p(x)f (x) dx ≈ Aif (xi),

a i=1

14

алгебраическая степень точности которого не меньше n − 1, является интерполяционным.

Интерполяционные квадратурные формулы характеризуются тем, что при всяком расположении узлов xi алгебраическая степень точности их не меньше n − 1.

Увеличение степени точности возможно только за счет выбора узлов.

§5. Погрешность интерполяционной квадратурной формулы.

Как известно, для любых функций f (x) с конечными значениями остаточный член интерполирования rn(x) записывается в виде:

rn(x) = ω(x)f (x1, x2, . . . , xn, x).

А значит, для любой функции f (x) с конечными значениями на [a, b] и такой, что интегралы имеют смысл, погрешность квадратурной интерполяционной формулы имеет вид:

b

Rn(f ) = ω(x)f (x1, x2, . . . , xn, x) dx.

a

Но это представление на практике используется крайне редко.

В случае, если f (x) имеет непрерывную производную порядка n на [a, b], то на отрезке, содержащем точки x1, . . . , xn, x, существует точка ξ , такая , что для rn(x) верно равенство:

r(x) =

ω(x)

f (n)(ξ), ξ [a, b].

n!

Тогда погрешность квадратурной интерполяционной формулы имеет вид:

1

b

 

Rn(f ) = n! a

p(x)ω(x)f (n)(ξ) dx, ξ [a, b].

(5.1)

15

Для функции f (x) , имеющей непрерывные f (n)(x) C[na,b] и ограниченные по модулю |f (n)(x)| Mn производные порядка n , верна оценка

|Rn(f )| n!

a

b

(5.2)

|p(x)ω(x)| dx.

 

Mn

 

 

 

Эта оценка погрешности интерполяционной квадратурной формулы является точной, когда произведение p(x)ω(x) сохраняет знак на [a, b] и достигается для многочлена вида

f (x) = Mn!n xn + a1xn−1 + . . . + an.

§6. Квадратурные формулы, использующие значения функций и производных

Иногда можно увеличить точность вычисления определенного интеграла за счет использования наряду со значениями интегрируемой функции значений производных от нее.

Пусть на [a, b] в n точках xi, i = 1, 2, . . . , n; даны значения функции и ее производных, причем, a x1 < x2 < . . . < xn b

 

 

f (j)(xi),

i = 1, 2, . . . , n; j = 0, 1, 2, . . . , mi − 1;

 

m =

 

n

 

n

 

m

 

 

i=1 mi − 1, где

 

i=1 mi - общее число известных величин.

 

По этим данным строим полином Эрмита H (x) :

 

 

 

 

f (x) = Hm(x) + rm(x),

 

(6.1)

Hm(j)(xi) = f (j)(xi),

 

i = 1, 2, . . . , n; j = 0, 1, 2, . . . , mi − 1.

Причем, Hm(x)

можно представить в виде:

 

 

 

 

 

 

 

n mi −1

 

 

 

 

 

 

i

 

 

 

 

 

Hm(x) =

 

 

hij (x)f (j)(xi),

 

(6.2)

 

 

 

 

 

=1

j=0

 

 

где hij (x)− многочлен степени m от x (мн-н влияния).

16

Если в

b

p(x)f (x) dx

a

заменить f (x) ee представлением через полином Эрмита (6.1)

ab p(x)f (x) dx = ab p(x)Hm(x) dx + ab p(x)rm(x) dx

(6.3)

и отбросить интеграл от остатка интерполирования, то получим квадратурную формулу вида:

b

n mi −1

Aij f (j)(xi),

(6.4)

a

p(x)f (x) dx ≈ i=1 j=0

 

 

 

 

где

b

Aij = p(x)hij (x) dx (6.5)

a

Теорема 6.1. Для того , чтобы правило (6.4) было верным для всех многочленов степени m необходимо и достаточно, чтобы его коэффициенты удовлетворяли равенствам (6.5)

Остаточный член при использовании интерполяционного полинома Эрмита определяется следующим образом:

b

Rm(f ) = p(x)rm(x) dx. (6.6)

a

При построении полинома Эрмита был получен результат, который можно сформулировать следующим образом:

Теорема 6.2. Если xi [a, b], x [a, b] i = 1, 2, . . . , n; и f (x) на

[a, b] имеет непрерывную производную f (m+1)(x) , то на [a, b] существует точка ξ [a, b], такая, что справедливо равество

rm(x) =

f (m+1)(ξ)

Ωm(x),

(6.7)

(m + 1)!

Ωm(x) = (x − x1)m1 (x − x2)m2 · · ·(x − xn)mn .

(6.8)

17

При всех этих предположениях, справедливо равенство:

b

f (m+1)(ξ)

 

 

Rm(f ) = a p(x)

Ωm(x) dx,

(6.9)

(m + 1)!

Если ко всему добавить ограничение |f (m+1)(x)| < K , то справедлива оценка

Rm(f )

K

a

b

 

|p(x)Ωm(x)| dx,

(6.10)

 

(m + 1)!

§7. Сходимость

интерполяционных

квадратурных

формул

 

 

 

 

Лемма 7.1. Для любой матрицы узлов X, x(kn) [a, b] квадратурный процесс по интерполяционным квадратурным формулам сходится для любой аналитической функции , точнее для функции, представимой на вещественной оси степеннным рядом

∞

f (x) = aixi.

i=0

Доказательство связано с изучением Rn(f ) → 0, при n → ∞. Рассматривая представления (5.1), (5.2), можно убедиться в том, что для любого полинома Ps(x), такого, что n > s, вы-

полняется равенство

Rn(Ps(x)) = 0.

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

Но подобное утверждение неверно для любой матрицы узлов X и любой непрерывной функции. Это связано с тем, что не сходится интерполяционный квадратурный процесс для этого класса функций (пример Берштейна).

§8. Алгоритм построения интерполяционных квадратурных формул

18

вида:

 

 

n

(8.1)

 

ab p(x)f (x) dx ≈ i=1 Aif (xi).

 

 

 

 

1.

Задать узлы интерполяционной квадратурной

формулы

 

xi, i = 1, 2, . . . , n.

 

 

2.

Вычислить моменты весовой функции p(x) :

 

 

μi = ab p(x)xi dx;

i = 0, 1, . . . , n − 1;

(8.2)

3.

pешить систему линейных алгебpаических систем:

 

 

n

 

 

 

i

s = 0, 1, . . . , n − 1.

 

 

Aixis = μs;

(8.3)

 

=1

 

 

Пpимеp:

Постpоить интерполяционную квадpатуpную фоpмулу для вычисления интегpала:

b

(x)

n

 

dx ≈ i=1 Aif (xi).

(8.4)

a

f√x

 

 

 

 

 

 

В качестве весовой функции возьмем

1

p(x) = √ (8.5) x

и рассмотрим два вида квадратурных формул: одноточечную ( n = 1 ) и двухточечную ( n = 2 ).

Вычислим моменты весовой функции

b

xi

 

μi = a

√

 

dx; i = 0, 1, 2.

(8.6)

x

19

μ0 = a

b

1

 

 

1

 

 

 

√

 

 

 

dx = 2x 2 |ab

 

 

 

x

b

 

 

x

2 3

 

μ1 = a

 

√

 

 

 

dx =

 

 

x 2

|ab

 

3

 

x

b x2

2 5

 

μ2 = a

 

 

√

 

dx =

 

 

x 2

|ab

 

 

5

 

 

x

11

=2(b 2 − a 2 );

 

2

 

3

3

=

 

 

(b 2

− a 2 );

3

 

2

5

5

=

 

 

(b 2

− a 2 ).

5

Одноточечная интерполяционная квадратурная формула, согласно Теореме 1, имеет алгебраическую степень точности не мень-

ше нулевой, т.е. справедливо равенство

b

1

 

 

1

1

R1(1) = a

√

 

dx − A1

= μ0 − A1 = 0; →

A1 = μ0 = 2(b 2

− a 2 ).

x

Теперь покажем, что это наибольшая возможная алгебраическая степень точности построенной квадратурной формулы:

 

b

(x)

1

1

 

 

 

 

 

 

 

 

a

f√

 

 

 

 

dx ≈ 2(b 2

− a 2 )f (xi).

 

 

 

x

 

 

 

Для этого вычислим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

 

x

 

1

 

 

 

 

 

 

 

 

R1(x) = a

 

√

 

dx −

2(b 2

 

 

 

 

 

 

 

 

 

x

1

1

2

3

3

1

 

1

 

 

 

 

= μ1 − 2(b 2

− a 2 )x1

=

 

(b 2

− a 2 ) − 2(b 2

− a 2 )x1

= 0,

 

3

 

(8.7)

1

− a 2 )x1 =

x1 [a, b].

Это и доказывает тот факт, что алгебраическая степень точности квадратурной формулы ( 8.7 ) не больше нуля.

Двухточечная ( x1, x2 [a, b] - заданы) интерполяционная квадратурная формула, согласно Теореме 1, имеет алгебраическую степень точности не меньше единицы, т.е. справедливы равенства

b

1

 

 

 

 

 

 

 

R2(1) = a

√

 

 

 

dx − A1

+ A2

= 0; → A1 + A2 = μ0;

 

x

 

b

 

x

 

 

 

 

 

R2(x) = a

 

√

 

dx − A1x1

+ A2x2

= 0; → A1x1 + A2x2

= μ(8.1;8)

 

x

20