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

Методы вычислительной математики

..pdf
Скачиваний:
17
Добавлен:
15.11.2022
Размер:
3.42 Mб
Скачать

 

Ψ

 

max

 

f (m+1)(x)

 

b

 

ω(x)

 

dx

(m +1)!= M m+1 b

 

ω(x)

 

dx (m +1)!.

 

 

 

 

 

 

 

 

 

 

 

 

 

x [a,b]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

a

 

 

 

 

 

 

Здесь использовано обозначение

M m+1

= max

 

f (m+1)(x)

 

. Из последнего со-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x [a,b]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

отношения следует, что квадратурная формула интерполяционного типа выполняется точно для всех функций, являющихся полиномами степени не выше m. В этом случае в формуле (7.3) имеет место точное равенство,

b

m

 

f (x)dx = Ck f (xk ).

 

a

k=0

 

Справедливо и обратное утверждение.

 

 

b

m

Теорема 7.1. Если квадратурная формула f (x)dx = dk f (xk ) является

 

a

k=0

точной для всех многочленов степени m, то она является квадратурной формулой интерполяционного типа.

Доказательство. Необходимо показать, что

dk = Ck = b

(x x0 ) (x xk1 )(x xk+1 ) (x xm )

 

dx, k =

 

 

.

 

 

0,m

 

 

 

a (xk x0 ) (xk xk1 )(xk xk+1 ) (xk xm )

 

 

 

 

 

Если функция f(x) является полиномом степени m, то ее можно предста-

вить в форме полинома Лагранжа

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

f (x)= ϕk (x)f (xk ),

 

 

 

 

 

 

 

 

 

k=0

 

 

 

 

 

 

 

где

(x x0 ) (x xk1 )(x xk+1 ) (x xm )

 

 

 

 

 

 

 

 

ϕk (x) =

 

, xk Ωm , k =

 

.

 

0,m

(xk x0 ) (xk xk1 )(xk xk+1 ) (xk xm )

 

 

 

 

 

 

 

 

Поскольку все функции ϕk (x), k = 0,m , являются по построению полиномами степени m, то в соответствии с условием теоремы

b

m

m

ϕk (x)dx = diϕk (xi )= diδki = dk , k =

 

,

0,m

a

i=0

i=0

так как согласно правилу построения полинома Лагранжа ϕk (xi )= δki . С другой

стороны,

согласно выражению (7.16)

 

 

 

b ϕk (x)dx = b

(x x0 ) (x xk 1 )(x xk +1 ) (x xm )

 

dx = Ck , k =

 

,

 

0,m

 

 

 

a

a (xk x0 ) (xk xk 1 )(xk xk +1 ) (xk xm )

 

 

 

то есть dk = Ck ,

k =

 

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

 

 

 

0,m

 

 

 

151

7.7. Квадратурные формулы наивысшей точности. Формулы Гаусса

На заданной сетке Ωm требуется построить точную квадратурную формулу вида (7.3) для полинома максимально возможной степени. Для этого рассматриваются полиномы вида xi , i = 0,n . Для каждого такого полинома может быть записана точная квадратурная формула интерполяционного типа:

b

m

 

xi dx = Ck xki , i =

 

.

(7.17)

0,n

ak=0

Вкомпонентной записи (после интегрирования):

m

i = 0, b a = Ck ;

k=0

i 1, (b2 a2 ) 2 m Ck xk ;

= − =

k=0

i 2, (b3 a3 ) 3 m C x2 ;

= − = k k

k =0

i 3, (b4 a4 ) 4 m C x3 ;

= − = k k

k=0

i = n, (bn+1 an+1 ) (n +1) = m C xn .

k k k=0

Выражения (7.17) можно рассматривать как систему n + 1 нелинейного алгебраического уравнения относительно 2m + 2 неизвестных,

C0 , C1 , C2 , , Cm , x0 , x1, x2 , , xm .

Для разрешимости этой системы уравнений требуется, чтобы число уравнений было равно числу неизвестных, то есть n + 1= 2m + 2, откуда следует, что n = 2m + 1. Иными словами, задача заключается в выборе сетки Ωm , содержащей n + 1 узел, обеспечивающей точность формулы (7.3) для полиномов степени n = 2m + 1.

Пример 7.1. Рассматривается разностная сетка Ω1 на отрезке [1,1], содержащая два узла: x0 и x1. Определить положения этих узлов и коэффициенты C0 , C1 для полинома степени n = 2m + 1 = 3.

Система уравнений (7.17) для рассматриваемого случая принимает вид

152

 

 

2 = C0

+ C1;

 

 

 

 

 

= C

 

x

 

+ C x ;

 

 

 

 

0

0

0

 

 

 

 

 

 

 

1 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 3 = C0 x02 + C1x12 ;

 

 

 

 

 

= C

 

x

 

+ C x3.

 

 

 

 

0

0

3

 

 

 

 

 

 

 

0

1 1

 

 

Из первого уравнения:

 

C0 = 2 C1;

 

 

Из второго уравнения:

 

0

= (2 C1 )x0 + C1 x1;

x0 = C1x1 (C1 2);

Из последнего уравнения:

0

= (2 C1 )C13 x13

(C1 2)3 + C1x13 .

Отсюда при условии, что x1

0, получается

 

 

C 2

= (C 2)2

, C = ±(C 2), C = 2 C , C =1.

1

1

1

 

 

1

1

1

1

Соответственно,

C0 = 2 C1 =1; x0 = C1 x1 (C1 2)= −x1 .

Из оставшегося уравнения

 

2

= C

0

x2

+ C x2

= 2x2

,

x =, x

0

= −1 3 .

 

 

3

 

0

1

1

1

 

1

 

 

 

 

 

 

 

 

 

 

 

Отсюда вытекает, что

 

 

 

 

 

 

 

1

f (x)dx =f (x0 )+ f (x1 )= f (1 3)+ f (1 3).

1

 

 

 

 

 

 

 

 

 

 

 

Эта формула точна для любого полинома третьей степени. Проверка проводится с использованием, например, полинома f (x)=1 + x + x2 + x3 :

1

(1 + x + x2 + x3 )dx = [x + x2 2 + x3 3 + x4 4]11 = 2 + 2 3 =8 3.

1

С другой стороны, формула (7.17) дает

f (1 3)+ f (1 3)= (1 +1 3 +1 3 +1 3 3)+ (1 1 3 +1 3 1 3 3)= = 2 +23 =83.

Теорема 7.2. Квадратурная формула (7.3) является точной для любого многочлена степени l = 2m + 1 тогда и только тогда, когда выполнены условия:

1. Многочлен

ω(x)= (x x0 )(x x1 ) (x xm )

ортогонален любому многочлену q(x) степени не выше m, то есть

153

b

 

ω(x)q(x)dx = 0.

(7.18)

a

2. Формула (7.3) является квадратурной формулой интерполяционного типа, причем коэффициенты Ck , k = 0,m определяются согласно (7.16).

Доказательство. Для доказательства первоначально показывается необходимость условия теоремы. Предполагается, что формула (7.3) точна для любого полинома степени l = 2m + 1. Это означает, что она точна и для произведения ω(x)q(x), имеющего степень не выше 2m + 1, то есть

b

m

ω(x)q(x)dx = Ck ω(xk )q(xk )= 0 ,

a

k=0

так как ω(xk )= 0 xk Ωm

по построению функции ω(x). Формула (7.16) спра-

ведлива в силу выполнения условий предыдущей теоремы 7.1. Доказательство достаточности условий теоремы. Пусть выполнены тре-

бования 1 и 2. Функция f(x) (многочлен степени 2m + 1) представляется в виде

f (x) = ω(x)q(x)+ r(x),

причем q(x) и r(x) имеют степени не выше m. Такое разложение можно получить, например, следующимобразом(дляупрощенияполагаетсяm = 1, тогдаl = 3). Пусть

f(x) = a + bx + cx2 + dx3

полином третьей степени, ω(x) = (x x0 )(x x1 ). Предполагается, что

q(x) = α +βx, r(x) = γ + δx

– функции с искомыми коэффициентами α, β, γ, δ. В этом случае

ω(x)q(x)+ r(x)= βx3 + [α − β(x0 + x1 )]x2 + [βx0 x1 − α(x0 + x1 )+ δ]x + (αx0 x1 + γ).

Из условия

ω(x)q(x)+ r(x) = f (x)

следует система линейных алгебраических уравнений относительно коэффициентов α, β, γ и δ:

β = d;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ x

) = c;

α − β(x

0

 

 

 

 

 

1

 

 

βx

 

x

− α(x

0

+ x

0

)+ δ = b;

 

0 1

 

 

 

 

 

 

 

x

+ γ = a.

 

 

αx

 

 

 

 

0 1

 

 

 

 

 

 

 

154

Корни этой системы:

α = c + d(x0 + x1 ), β = d , γ = a cx0 x1 dx0 x1 (x0 + x1 ),

δ = b + c(x0 + x1 ) + d(x02 + x0 x1 + x12 ).

В силу условия ортогональности (7.18)

b f (x)dx = b ω(x)q(x)dx + b r(x)dx = b r(x)dx .

a

a

a

a

Поскольку (7.3) является формулой интерполяционного типа, то она точна для полинома r(x), имеющего степень не выше m. Отсюда получается

b

m

m

m

r(x)dx = Ck r(xk )

= Ck [f (xk ) − ω(xk

)q(xk )]=Ck f (xk ).

a

k=0

k=0

k =0

В последнем соотношении учтено, что

 

 

ω(xk )= 0 xk Ωm .

 

Из двух последних выражений следует

 

 

b

m

 

 

f (x)dx = Ck f (xk ),

 

a

k=0

 

то есть формула (7.3) оказывается точной для любого многочлена степени 2m +1, что и требовалось доказать.

Использование в условии ортогональности (7.18) в качестве q(x) системы полиномов xi , i = 0,m позволяет рассматривать это условие как систему алгеб-

раических уравнений относительно координат xk , k =

0,m

,

узлов разностной

сетки Ωm , что позволяет упростить построение формул Гаусса:

a

 

1 (x x0 ) (x xm )dx = 0;

 

b

 

a

 

x (x x0 ) (x xm )dx = 0;

(7.19)

b

………………………………

 

 

 

a xm (x x0 ) (x xm )dx = 0.

b

Пример 7.2. Пусть, как и в предыдущем примере, a = – 1, b = 1; рассматривается разностная сетка Ω1 , состоящая из двух узлов: m = 1. Определить положения узлов разностной сетки для полинома степени l = 2m + 1 = 3.

Система уравнений условия ортогональности принимает вид

155

 

1

 

 

(x x0 )(x x1 )dx = 0,

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

11

x(x x

 

)(x x

)dx = 0.

 

 

 

 

 

 

 

 

0

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

Интегрирование первого уравнения:

 

 

 

 

 

 

1 1 (x x0 )(x x1 )dx = 1 [x2 x(x0 + x1 )+ x0 x1 ]dx =

1

 

 

 

 

1

 

]1

 

 

= [x3 3 x2 2(x

0

+ x ) + xx

x

= 2 3 + 2x

x = 0,

 

 

 

1

 

 

0 1

1

 

0 1

x0 x1 = −13.

Аналогично вычисляется интеграл во втором уравнении системы: 1 x(x x0 )(x x1 )dx = 1 [x3 x2 (x0 + x1 )+ xx0 x1 ]dx =

1

 

 

1

 

 

 

 

 

= [x4 4 x3 3

(x

0

+ x ) + x2 x

x 2]1

= −2(x

0

+ x ) 3 = 0,

 

 

1

0 1

1

 

1

x0 = −x1 .

Совместное решение полученных уравнений дает корни x0 = −1 3, x1 =13 ,

что совпадает с результатом примера 7.1.

Рассматриваются условия существования и единственности решения системы уравнений (7.19). Полином

ω(x)= (x x0 ) (x xm )

с помощью алгебраических преобразований представляется в виде

ω(x)= a0 + a1x + a2 x2 +…+ xm+1 .

Условия ортогональности (7.18)

b xi (a0 + a1x + a2 x2 +…+ am xm + xm+1 )dx = 0, i = 0,m ,

a

после преобразования

b xi (a0 + a1x + a2 x2 +…+ am xm )dx = −b xi xm+1dx, i = 0,m

a a

156

записываются в виде системы линейных алгебраических уравнений относительно коэффициентов ak , k = 0,m . Рассматривается соответствующая система однородных уравнений

b xi (a0 + a1x + a2 x2 +…+ am xm )dx = 0, i =

 

.

(7.20)

0,m

a

 

 

 

 

 

 

 

Каждое из этих однородных уравнений домножается на соответствующий

коэффициентai , и полученные выражения суммируются:

 

m b

 

 

 

 

 

 

 

ai xi (a0 + a1x + a2 x2 +…+ am xm )dx = 0 ,

 

i=0 a

 

 

 

 

 

 

 

b (a0 + a1x + a2 x2 +…+ am xm )m

ai xi dx = 0 ,

 

a

 

 

i=0

 

 

 

 

b

m

i

2

 

 

 

 

 

ai x

 

dx = 0.

 

 

 

 

a i=0

 

 

 

 

 

 

Последнее равенство возможно лишь при условии

m

ai xi = 0 ,

i=0

откуда, в силу линейной независимости функций xi , i = 0,m , следует

ai = 0, i = 0,m.

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

ω(x)= (x x0 ) (x xm )

определяется единственным образом.

Теорема 7.3. Если многочлен ω(x) степени m ортогонален на [a,b] любому многочлену степени меньше m, то корни многочлена ω(x) различны и расположены на этом отрезке.

Доказательство. Предполагается, что многочлен ω(x) имеет n различных корней нечетной кратности на [a,b]. Очевидно, что n m . Необходимо показать, что n = m.

Водятся обозначения для корней: ξ1, ξ2 , , ξn ; функция ω(x) представляется в виде

ω(x)= (x − ξ1 )α1 (x − ξ2 )α2 (x − ξn )αn r(x),

157

где α1, α2 , , αn

– нечетные числа, функция r(x) не меняет знак на [a,b]. Вы-

числяется интеграл

 

J = b ω(x)(x − ξ1 )(x − ξ2 ) (x − ξn )r(x)dx =

 

 

a

(7.21)

= b

(x − ξ1 )α1 +1 (x − ξ2 )α2 +1 (x − ξn )αn +1 r(x)dx.

 

a

Поскольку α1 +1, α2 +1, , αn +1 – четные числа и функция r(x) знакопостоянна на [a,b], то интеграл (7.21) отличен от нуля. С другой стороны, если n < m , то многочлен

q(x)= (x − ξ1 )(x − ξ2 ) (x − ξn )

имеет степень меньше m, и из условия теоремы следует, что J = 0. Следовательно, n = m, что и требовалось доказать.

Погрешность интерполяционных формул Гаусса оценивается выражением

Ψ = ( 1 ) b ω2 (x)f (2m) (ξ)dx, ξ [a,b],

2m ! a

и оценивается неравенством

 

 

 

M 2m

b

(x)dx,

 

 

 

 

f (2m)(x)

 

 

Ψ

 

ω2

M

 

= max

 

 

.

 

 

 

 

 

 

 

 

(2m)!a

 

 

2m

x [a,b]

 

xx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Контрольные вопросы и задания

7.1.Определите понятия «квадратурная формула» и «квадратурная сумма».

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

7.3.Как определяется порядок погрешности квадратурной формулы?

7.4.Получите оценку точности квадратурной формулы для варианта метода прямоугольников, изображенного на рис. 7.2.

7.5.Поясните с помощью рис. 7.1 и 7.2 преимущество формулы (7.5) перед

xk

квадратурной формулой f (x)dx f (xk1 )h.

xk 1

7.6.Оценитеточностьквадратурных формулметодовтрапецийиСимпсона.

7.7.Оцените погрешность квадратурной формулы Эйлера (7.13).

7.8.Опишите оценку погрешности квадратурных формул методом Рунге.

158

7.9. При оценке точности квадратурных формул методом Рунге используется выражение Jk Jh,k 2 p1 (Jh / 2,k Jh,k )(2 p1 1). Проанализируйте величину погрешности в случае, когда p = 1.

7.10.Как оценить погрешность квадратурной формулы при интегрировании с переменным шагом?

7.11.Какие формулы приближенного интегрирования относятся

кквадратурным формулам интерполяционного типа?

7.12.В каком случае квадратурная формула интерполяционного типа является точной?

7.13.Какие формулы приближенного интегрирования являются квадратурными формулами наивысшей точности?

7.14.Какая идея лежит в основе построения квадратурных формул Гаусса наивысшей точности?

7.15.Проверьте точность интегрирования полиномов для случая, рассмотренного в примере 7.1.

7.16.Покажите, что если формулы Гаусса точны xi , i = 0,m, то они точны и для любого полинома Pm(x) степени m.

159

8.ОБЫКНОВЕННЫЕ ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ

СНАЧАЛЬНЫМИ УСЛОВИЯМИ (ЗАДАЧА КОШИ)

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

Одним из важнейших вопросов является оценка порядка аппроксимации разностной схемой исходного дифференциального уравнения, позволяющая судить о степени адекватности используемой сеточной модели исходной дифференциальной задаче.

Основная идея решения дифференциальных уравнений численными методами на ЭВМ заключается, как правило, в сведении исходной задачи к решению систем алгебраических (линейных или нелинейных) уравнений. При этом, естественно, возникает вопрос о разрешимости этой получаемой системы.

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

Решением, интегралом или интегральной кривой обыкновенного диффе-

ренциального уравнения первого порядка yx = f (x, y)

называется дифференцируемая функция y(x), удовлетворяющая этому уравнению, такая, что yx (x) f (x, y(x)) на некотором участке изменения аргумента x.

Численные методы следует применять лишь к корректно поставленным задачам, то есть таким, для которых решение существует, единственно и не-

160

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]