Справочник от Автор24
Поделись лекцией за скидку на Автор24

Численные методы

  • ⌛ 2021 год
  • 👀 509 просмотров
  • 📌 480 загрузок
  • 🏢️ УрФУ
Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Конспект лекции по дисциплине «Численные методы» pdf
ЧИСЛЕННЫЕ МЕТОДЫ курс лекций Кандоба И. Н. 2020-2021, ИЕНиМ УрФУ, Екатеринбург N1 Учебный план I семестр 1 2 контрольные работы 2 3 лабораторные работы 3 Коллоквиум 4 Зачет II семестр 1 2 контрольные работы 2 3 лабораторные работы 3 Экзамен Рекомендуемая литература Классические учебники 1 Березин И. С., Жидков Н. П. Методы вычислений. 1962. 2 Бахвалов Н. С. Численные методы. 1973. 3 Калиткин Н. Н. Численные методы. 1978. 4 Хемминг Р. В. Численные методы. 1977. 5 Волков Е. А. Численные методы. 1982. Учебные пособия 1 Пименов В. Г. Численные методы : в 2 ч. Ч.1: М-во образования и науки Рос. Федерации, УрФУ— Екатеринбург: Изд-во Урал. ун-та, 2013.— 112 с. 2 Пименов В. Г., Ложников А. Б. Численные методы : в 2 ч. Ч.2: М-во образования и науки Рос. Федерации, УрФУ— Екатеринбург: Изд-во Урал. ун-та, 2014.— 106 с. ТЕМА 1. Теория погрешностей 1.1. Последовательность моделей и структура погрешности 1 Реальный объект 2 Математическая модель 3 Алгоритмическая модель 4 Вычислительная модель 1 7→ 2 7→ 3 7→ 4 ⇒ Результат (Число) 1 7→ 2 ⇒ Неустранимая погрешность 2 7→ 3 ⇒ Погрешность метода (погрешность усечения) 3 7→ 4 ⇒ Вычислительная погрешностьa a Классификация погрешностей по Колмогорову Пример 1 Реальный объект — колебательный процесс 2 Математическая модель — y = sin(x) 3 Алгоритмическая модель — ye(x) = x − 4 Вычислительная модель ⇒ ye(25, 7) ≈ y = 24, 25401855... x3 3! ? + x5 5! − ... 1.2. Абсолютная и относительная погрешности x — точное число, x? — приближенное число (приближение) Определение 1.1. Абсолютной погрешностью приближения x? называется такая величина Ax? , которая удовлетворяет неравенству |x − x? | ≤ Ax? Определение 1.2. Относительной погрешностью приближения x? (x? 6= 0) называется такая величина ∆x? , которая удовлетворяет неравенству x − x? | | ≤ ∆ x? x? (1.1) (1.2) Ax? — величина размерная: x = x? ± Ax? ∆x? — величина безразмерная: x = x? (1 ± ∆x? ) ∆x ? = Ax ? |x? | (1.3) 1.3. Погрешность и позиционная запись числа 3, 141592653589793238462643 — позиционная запись числа π Определение 1.3. Значащами цифрами числа называются все цифры в его позиционной записи, следующие слева направо, начиная с первой ненулевой Примеры: 1) 0, 00120; 2) 1, 20. Определение 1.4. Цифра в позиционной записи числа называется верной, если абсолютная погрешность числа не превосходит половины единицы разряда, соответствующего этой цифреa aВ противном случае цифра называется сомнительной Примеры: 1) x? = 0, 00120, где Ax? = 0, 00004; 2) x? = 1, 20, где Ax? = 0, 07. 1.4. Определение погрешности значения функции по погрешностям ее аргументов y = f (x1 , x2 , . . . , xn ), x ∈ D[f ] ⊆ Rn , x = (x1 , x2 , . . . , xn )> ∈ Rn . Пусть x?i : Ax?i , ∆x?i (i = 1, 2, . . . , n), x? = (x?1 , x?2 , . . . , x?n )> ∈ Rn . Требуется построить оценку сверху для |y − y ? | = |f (x1 , x2 , . . . , xn ) − f (x?1 , x?2 , . . . , x?n )|. Рассмотрим вспомогательную функцию F (t) = f (x? + th), где h = x − x? = (h1 , h2 , . . . , hn )> : |hi | ≤ Ax?i (i = 1, 2, . . . , n). Пусть f ∈ C 1 . Тогда Pn ∂f ? (x +θh)hi |≤ |y−y ? |=|F (1)−F (0)|=|F 0 (θ)|(1−0)=| i=1 ∂x i Pn Pn (1.4) ∂f ? ? ? | (x +θh)|A ≤ M A xi i x i = Ay ? , i=1 ∂xi i=1 ∂f (x? +θh)| (i = 1, 2, . . . , n). где θ ∈ [0, 1], Mi = maxθ∈[0,1] | ∂x i Если Ax?i  1, то ∂f ? ∂xi (x +θh) Ay ? = ≈ ∂f ? ∂xi (x ) (i = 1, 2, . . . , n). n X ∂f ? | (x )|Ax?i ∂x i i=1 (1.5) 1.5. Погрешности арифметических операций Пусть xi , x?i : Ax?i , ∆x?i (i = 1, 2, . . . , n) I. СЛОЖЕНИЕ Абсолютная погрешность Pn Pn Pn Pn Поскольку | i=1 xi − i=1 x?i | ≤ i=1 |xi − x?i | ≤ i=1 Ax?i , то APni=1 x?i = n X Ax?i (1.6) i=1 Относительная погрешность. Случай 1: x?i > (<)0 (i = 1, 2, . . . , n) В силу (1.3), (1.6) ∆Pni=1 x?i = APn x? P i=1 ?i | n i=1 xi | = APn x? Pni=1 ?i i=1 |xi | Pn = i=1 P n ∆x? |x? i| i=1 i |x? i| ≤ maxi ∆x?i . min ∆x?i ≤ ∆Pni=1 x?i ≤ max ∆x?i i i (1.7) Погрешности арифметических операций Относительная погрешность. Случай 2: x?i разных знаков (i = 1, 2, . . . , n) Частный случай: y ? = x?1 − x?2 , где x?1 > 0, x?2 > 0. Ax? −x? Ax? +Ax? ? x? 1 ∆x? +x2 ∆x? 1 2 В силу (1.3), (1.6) ∆y? = |x?1−x?2| = |x1? −x? |2 = . ? |x? 1 2 1 2 1 −x2 | При вычитании двух положительных близких чисел может произойти значительное увеличение относительной погрешности. √ √ Пример. x1 = 11, x?1 = 3, 32; x2 = 10, x?2 = 3, 16 Пусть Ax?1 = Ax?2 = 0, 005. Тогда Ax?1 −x?2 = Ax?1 + Ax?2 = 0, 01. y ? = x?1 − x?2 = 0, 16 y? = = √ 11 − √ √11−10 √ 11+ 10 10 = = (1.8) √ √ √ √ ( 11− 10)( 11+ 10) √ √ 11+ 10 1 3,32+3,16 = 1 6,48 = (1.9) = 0, 154 1 1 Самостоятельно ответить на вопрос: Почему в результате, полученном с помощью формулы (1.9), все цифры верные? Относительная погрешность операции умножения II. УМНОЖЕНИЕ Qn y = i=1 xi = f (x1 , x2 , . . . , xn ). ПустьQx?i 6= 0, Ax?i , ∆x?i (i = 1, 2, . . . , n) и n y ? = i=1 x?i = f (x?1 , x?2 , . . . , x?n ). Нетрудно заметить, что ∂f f (x1 , x2 , . . . , xn ) (x1 , x2 , . . . , xn ) = ∂xi xi ∀i = 1, 2, . . . , n (1.10) Тогда, в силу (1.3), (1.5) и (1.10), имеем ∆y ? = = = | A ? Qn y i=1 Pn x? i| = ? ? |f (x? 1 ,x2 ,...,xn )| A ? x |x? | i i ? ? |f (x? 1 ,x2 ,...,xn )| i=1 Ax? i i=1 |x? | i ? ? ? |f (x1 ,x2 ,...,xn )| ? ? |f (x? 1 ,x2 ,...,xn )| Pn i=1 ∆x?i Pn = = Ax? i i=1 |x? i| Pn (1.11) = Относительная погрешность операции деления III. ДЕЛЕНИЕ y= x1 x2 = f (x1 , x2 ). Пусть x?i 6= 0, Ax?i , ∆x?i (i = 1, 2) и y ? = ∂f 1 (x1 , x2 ) = , ∂x1 x2 x? 1 . x? 2 ∂f x1 (x1 , x2 ) = − 2 ∂x2 x2 (1.12) Тогда, в силу (1.3), (1.5) и (1.12), имеем ∆y ? = = Ay ? x? | x1? 2 | Ax? 1 |x? 1| = + |x? | 1 Ax? + (x?1)2 |x? 1 2| 2 x? | x1? | 2 Ax? 2 |x? 2| = ∆x?1 + ∆x?2  Ax? 2 = (1.13) = N2 ТЕМА 2. Ускорение сходимости числовых рядов 2.1. Постановка задачи ∞ X an : ∃S = lim SN , N →∞ n=1 SN = N X an (2.1) n=1 e ≤ ε, где ε > 0 — заданная точность. Определить Se ≈ S: |S − S| Пусть ε = ε1 + ε2 , где ε1 — погрешность метода: Se = e N X an (2.2) n=1 e : |S − S| e =| N ∞ X n=1 an − e N X n=1 an | = | ∞ X an | ≤ ε1 (2.3) e +1 n=N ε2 — вычислительная погрешность: ε2 e Aa?n = n = 1, 2, . . . , N e N (2.4) e + |Se − Se? | ≤ ε1 + ε2 = ε Тогда |S − Se? | = |S − Se + Se − Se? | ≤ |S − S| 2.2. Пример ∞ X an , an = n=1 n2 1 ∀n ∈ N +1 (2.5) Пусть ε = 10−5 и, например, ε = ε1 + ε2 , где ε1 = ε2 = 0, 5 · 10−5 . Согласно (2.3), оценим остаток ряда (2.5): R∞ P∞ P∞ | n=N +1 n21+1 | = n=N +1 n21+1 ≤ N x21+1 dx ≤ ≤ R∞ 1 dx N x2 (2.6) = − x1 |∞ N = Из (2.6) следует, что N ≥ 2 · 105 . e = 2 · 105 и Aa? = ε2 = Откуда N e n N 0,5·10−5 2·105 1 N ≤ ε1 = 1 2 · 10−5 = 0, 25 · 10−10 . Для того, чтобы вычислить сумму ряда (2.5) с точностью ε = 10−5 , достаточно в его частичной сумме просуммировать 2 · 105 слагаемыхa . При этом приближенное значение каждого из слагаемых должно содержать не менее 10 верных цифр после запятой в его позиционной записи. a Самостоятельно доказать справедливость неравенства (2.6). 2.3. Метод Куммера Увеличить скорость сходимости числового ряда значит преобразовать общий член ряда так, чтобы для вычисления приближенного значения суммы исходного ряда с заданной точностью потребовалось меньшее количество слагаемых в его частичной сумме. Определение 2.1. P∞ Числовой ряд n=1 bn называется эталонным для ряда (2.1), если P∞ 1 ∃ n=1 bn = B < ∞; 2 ∃ limn→∞ an bn = λ: 0 < |λ| < ∞.a a Общие члены a и b соответствующих рядов асимптотически n n эквивалентны. Метод Куммера Преобразование Куммера P∞ Пусть ряд n=1 bn — эталонный для ряда (2.1). Тогда P∞ P∞ S = n=1 an = n=1 (an − λbn + λbn ) = = = P∞ n=1 P∞ (an − λbn ) + λ n=1 bn  an bn P∞ n=1 bn = (2.7)  − λ + λB Вспомогательный ряд ∞ X  cn = C, cn = bn n=1 S= ∞ X  an −λ ∀n ∈ N bn an = C + λB n=1 При n → ∞ cn → 0 “быстрее”, чем an и bn . (2.8) (2.9) 2.4. Примеры эталонных рядов Класс рядов: α1 an = nαm0 + nm+1 +... , αi ∈ R ∀i, m ≥ 2; an = β0 np +β1 np−1 +...+βp−1 n+βp γ0 nq +γ1 nq−1 +...+γq−1 n+γq , βi , γj ∈ R ∀i, j, q ≥ p + 2. Эталонные ряды P∞ 1 π2 n=1 n2 = 6 P∞ = 1, 2020569032... P∞ = 1 n=1 n3 1 n=1 n4 P∞ 1 n=1 (n+m) P∞ π4 90 = (2.10) 1 m 1+ 1 2 + ... + 1 n=1 (n+k)(n+k+1)...(n+k+l) = 1 m  , m∈N 1 l(k+1)...(k+l) , k, l ∈ N 2.5. Пример ускорения сходимости числового ряда P∞ Рассмотрим ряд (2.5): S = n=1 an , an = n21+1 . Пусть ε = 10−5 и ε = ε1 + ε2 , где ε1 = ε2 = 0, 5 · 10−5 . PNe e = 2 · 105 , и Ранее уже установлено, что S ≈ Se = n=1 an , где N −10 Aa?n = 0, 25 · 10 . Требуется ускорить сходимость ряда (2.5) с помощью метода Куммера. P∞ Очевидно, что эталонным рядом для ряда (2.5) является n=1 Для ряда (2.5) построим более “эффективный” эталонный ряд. Для этого, используя известное разложение в ряд Тейлора в 1 окрестности нуля функции 1−x = 1 + x + x2 + x3 + . . ., можно преобразовать общий член ряда (2.5) следующим образом an = 1 n2 +1 = 1 n2 = 1 n2 = · 1 n2 1 1+ n12 1− − = 1 n2 1 n4 1 n2 .  + 1 n4 − 1 n6 + 1 n6 − ...  + ... = (2.11) Пример ускорения сходимости числового ряда (продолжение) Из (2.11) следует, что в качестве эталонного для ряда (2.5) может  P∞ P∞ 2 4 быть использован ряд n=1 bn = n=1 n12 − n14 = B = π6 − π90 . Здесь limn→∞ an bn = limn→∞ 1 n2 +1 1 1 − n2 n4 = limn→∞ n4 n4 −1 = 1 = λ. Преобразование Куммера P∞ P∞ S = n=1 an = n=1 (an − λbn + λbn ) = = P∞  = P∞ n=1 n=1 1 n2 +1 − 1 n2 (n4 +1) 1 n2 + +  π2 6 1 n4  − + π4 90  π2 6 − π4 90  = (2.12)  Вспомогательный ряд ∞ X n=1 cn = C, cn = 1 ∀n ∈ N n2 (n4 + 1) (2.13) Пример ускорения сходимости числового ряда (продолжение) Аналогично (2.6) оценим модуль остатка вспомогательного ряда (2.13): P∞ P∞ | n=N +1 n2 (n14 +1) | = n=N +1 n2 (n14 +1) ≤ ≤ R∞ 1 dx N x2 (x4 +1) = − 5x1 5 |∞ N = Из (2.14) следует, что N ≥ Ac?n = ε2 e N = −5 0,5·10 10 1 2 5 5 −6 = 0, 5 · 10 1 5N 5 ≤ R∞ 1 dx N x6 ≤ ε1 = 1 2 = · 10−5 e = 10 и · 10. Откуда N . Результат   e? + π2 − π4 , N e = 10, Ac? = 0, 5 · 10−6 , S ≈ Se? = C 6 90 n e ? = PNe c?n , c?n ≈ 2 14 где C ∀n ∈ N. n=1 n (n +1) (2.14) ТЕМА 3. Численное решение уравнений 3.1. Постановка задачи f ∈ C (D[f ]) , D[f ] ⊆ R f (x) = 0 (3.1) ξ ∈ D[f ] : f (ξ) = 0 (3.2) ξ — корень уравнения (6.65) Проблемы 1 Локализация корней уравнения (6.65) (отделение корней) — [a, b] ⊆ D[f ] : ξ ∈ [a, b]; 2 Выбор метода приближенного решения уравнения (6.65) — построение последовательности {xn }∞ n=0 : limn→∞ xn = ξ; 3 Оценка погрешности метода — построение оценки вида e ≤ C(x0 , n, f ), где ξe = xn ; |ξ − ξ| 4 Оценка скорости сходимости метода — построение оценки вида |ξ − xn | ≤ C(n, ξ, f ) 3.2. Локализация корней уравнения f (x)=0 Теорема Если функция непрерывна на некотором отрезке и на концах этого отрезка принимает значения противоположных знаков, то существует точка, в которой значение функции равно нулюa . a Следствие теоремы Больцано-Коши о промежуточном значении Теорема Пусть f ∈ C 1 (D[f ]) , [a, b] ⊆ D[f ]: a) f (a)f (b) ≤ 0; b) f 0 (x) > (<) 0 ∀x ∈ [a, b]. Тогда ∃! ξ ∈ [a, b] : f (ξ) = 0. Утверждение (k) Пусть Pn (x) — многочлен степени n: Pn (c̄) > 0 (k = 0, 1, . . . , n). Тогда Pn (c) > 0 ∀c > c̄. Pn 1 (k) Доказательство: Pn (x) = k=0 k! Pn (c̄)(x − c̄)k . Отсюда ∀c > c̄ (1) (2) (n) 1 1 Pn (c)=Pn (c̄)+Pn (c̄)(c−c̄)+ 2! Pn (c̄)(c−c̄)2 + . . . + n! Pn (c̄)(c−c̄)n >0. 3.3. Методы приближенного решения уравнения f (x)=0 I. Метод дихотомии (метод деления отрезка пополам) f ∈ C ([a, b]), где [a, b] ⊆ D[f ]: f (a)f (b) < 0 Численная процедура: [a0 , b0 ] = [a, b], x0 = a0 +b 2 ;  [a0 , x0 ] , f (a0 )f (x0 )<0 1 [a1 , b1 ] = , x1 = a1 +b 2 ; [x0 , b0 ] , f (x0 )f (b0 )<0 ···  [an−1 , xn−1 ] , f (an−1 )f (xn−1 )<0 n a [an , bn ] = , xn = an +b ; 2 [xn−1 , bn−1 ] , f (xn−1 )f (bn−1 )<0 ··· Последовательность {xn }∞ n=0 сходится, т.к. она фундаментальная и пространство R — полное. a если f (xn ) = 0, то ξ = xn и процедура прерывается Метод дихотомии Оценка погрешности и скорости сходимости метода b−a |ξ − xn | ≤ n (3.3) 2 Метод дихотомии сходится как геометрическая прогрессия со знаменателем 12 . Оценка числа итераций достаточного для достижения заданной точности ε Требуется определить корень уравнения (6.65) с заданной e ≤ ε. Пусть ξe = xn . Тогда из (3.3) следует точностью, т.е. |ξ − ξ| n ≥ log2 b−a ε (3.4) В методе дихотомии используется только знак значений функции f , непрерывной на отрезке локализации [a, b] корня ξ уравнения (6.65). II.а. Метод неподвижных хорд f ∈ C ([a, b]), где [a, b] ⊆ D[f ]: f (a)f (b) < 0 Пусть x0 = a,2 x1 = b, . . ., xn ∈ [a, b] — текущее приближение ξ. Уравнение прямой в отрезках f (x0 ) − f (xn ) y − f (xn ) = x − xn x0 − xn (3.5) геометрически задает хорду, стягивающую текущую (“плавающую”) точку (xn , f (xn )) и зафиксированную точку (x0 , f (x0 )) на графике функции y = f (x). Точка пересечения этой хорды с осью абсцисс геометрически определяет следующее (n + 1-ое) приближение xn+1 корня ξ. Аналитически значение xn+1 определяется как решение следующего из (3.5) уравнения y= f (x0 ) − f (xn ) (x − xn ) + f (xn ) = 0. x0 − xn (3.6) 2 Ответ на вопрос какой из концов отрезка [a, b] следует взять в качестве начального приближения x0 зависит от свойств функции f . Метод неподвижных хорд (продолжение) Решением уравнения (3.6) является x = xn − f (xn ) (x − x0 ). f (xn )−f (x0 ) n Численная процедура метода неподвижных хорд: f (xn ) xn+1 = xn − (xn − x0 ) , n = 0, 1, 2, . . . f (xn ) − f (x0 ) (3.7) Пусть f ∈ C 1 ([a, b]). Тогда, используя формулу Лагранжа, f (ξ) − f (xn ) = f 0 (θ) (ξ − xn ) , θ ∈ [ξ, xn ] Из (3.8) с учетом того, что f (ξ)=0, следует ξ−xn =− (3.8) f (xn ) . Откуда f 0 (θ) Оценка погрешности метода Пусть (a) f ∈ C 1 ([a, b]), (b) m = minx∈[a,b] |f 0 (x)| > 0. Тогда |ξ − xn | ≤ |f (xn )| m a a Следует ли из того, что величина |f (xn )| достаточно мала, что приближение xn уже достаточно близко к корню ξ? (3.9) II.б. Метод подвижных хорд Предлагается “разморозить” неподвижную точку (x0 , f (x0 )) в методе неподвижных хорд и строить очередное приближение xn+1 корня ξ уравнения (6.65) на основе текущего xn и ему предшествовавшего xn−1 приближений Численная процедура метода подвижных хорд: f (xn ) xn+1 = xn − (xn − xn−1 ) , n = 0, 1, 2, . . . f (xn ) − f (xn−1 ) (3.10) В методе хорд, в отличие от метода дихотомии, уже используются значения функции f , непрерывной на отрезке локализации [a, b] корня ξ уравнения (6.65)3 .  3 Самостоятельно представить геометрическую интерпретацию методов неподвижных и подвижных хорд. Может ли метод хорд зацикливаться? Используя геометрическую интерпретацию метода хорд вывести правило выбора одного из концов отрезка локализации корня ξ в качестве его начального приближения x0 . N3 III. Метод Ньютона (метод касательных) f ∈ C 1 ([a, b]), где [a, b] ⊆ D[f ]: f (a)f (b) < 0 Пусть x0 = a,4 x1 , . . ., xn ∈ [a, b] — текущее приближение ξ. Уравнение y = f (xn ) + f 0 (xn ) (x − xn ) (3.11) геометрически задает прямую, касательную к графику функции y = f (x) в точке (xn , f (xn )). Точка пересечения этой касательной с осью абсцисс геометрически определяет следующее (n + 1-ое) приближение xn+1 корня ξ. Аналитически значение xn+1 определяется как решение уравнения y = f (xn ) − f 0 (xn ) (x − xn ) = 0. Решением уравнения (3.12) является x = xn − (3.12) f (xn ) . f 0 (xn ) 4 Ответ на вопрос какой из концов отрезка [a, b] следует взять в качестве начального приближения x0 зависит от свойств функции f . Метод Ньютона (продолжение) Численная процедура метода Ньютона: f (xn ) , n = 0, 1, 2, . . . xn+1 = xn − 0 f (xn ) (3.13) Пусть f ∈ C 1 ([a, b]) и m = minx∈[a,b] |f 0 (x)| > 0. Тогда из (3.9) следует, что |f (xn+1 )| . |ξ − xn+1 | ≤ m Если f ∈ C 2 ([a, b]), то 1 2 f (xn+1 ) = f (xn ) + f 0 (xn ) (xn+1 − xn ) + f 00 (θ) (xn+1 − xn ) , 2 где θ ∈ [xn , xn+1 ]. В силу (3.13), f (xn ) + f 0 (xn ) (xn+1 − xn ) = 0. Следовательно, f (xn+1 ) = 1 00 2 f (θ) (xn+1 − xn ) . 2 Таким образом, |ξ − xn+1 | ≤ |f 00 (θ)| 2 (xn+1 − xn ) . 2m Метод Ньютона (продолжение) Оценка погрешности метода Пусть (a) f ∈ C 2 ([a, b]), (b) m = minx∈[a,b] |f 0 (x)| > 0. Тогда |ξ − xn+1 | ≤ M 2 (xn+1 − xn ) , 2m (3.14) где M = maxx∈[a,b] |f 00 (x)|. Если то M |xn+1 − xn | < 1, 2m (3.15) |ξ − xn+1 | < |xn+1 − xn |. (3.16) Следовательно, когда значения xi стабилизируются начнет выполняться (3.16) и |xn+1 − xn | < ε ⇒ |ξ − xn+1 | < ε. Пусть ε > 0 — заданная точность вычисления корня ξ уравнения (6.65). Тогда при выполнении неравенства (3.15) условие |xn+1 − xn | < ε можно использовать в качестве условия остановки численной процедуры метода Ньютона. Метод Ньютона (продолжение) Для того, чтобы оценить скорость сходимости метода требуется оценить |ξ − xn+1 | через |ξ − xn |. В силу (3.13) ξ − xn+1 = ξ − xn + f (xn ) + f 0 (xn ) (ξ − xn ) f (xn ) = . f 0 (xn ) f 0 (xn ) (3.17) Пусть f ∈ C 2 ([a, b]). Тогда 1 2 f (ξ) = f (xn ) + f 0 (xn ) (ξ − xn ) + f 00 (θ) (ξ − xn ) = 0, 2 где θ ∈ [xn , xn+1 ]. Отсюда 1 2 f (xn ) + f 0 (xn ) (ξ − xn ) = − f 00 (θ) (ξ − xn ) . 2 Таким образом, из (3.17) и (3.18) следует (3.18) Метод Ньютона (продолжение) ξ − xn+1 = − 1 f 00 (θ) 2 (ξ − xn ) 2 f 0 (xn ) (3.19) Откуда Оценка скорости сходимости метода Пусть (a) f ∈ C 2 ([a, b]), (b) m = minx∈[a,b] |f 0 (x)| > 0. Тогда |ξ − xn+1 | ≤ M 2 (ξ − xn ) , 2m (3.20) где M = maxx∈[a,b] |f 00 (x)|. В обозначениях rn = переписать в виде M 2m |ξ − xn | неравенство (3.20) можно rn+1 ≤ rn2 . (3.21) Следовательно, если r0 < 1, то rn → 0 при n → ∞ и при этом, в силу (3.21), скорость сходимости квадратичная. Более того, получено условие на выбор достаточного r0 , обеспечивающего сходимость. Достаточные условия сходимости методов хорд и Ньютона Теорема 3.1. Пусть выполнены следующие условия: (a) f ∈ C 2 ([a, b]); (b) f 00 (x) 6= 0 ∀x ∈ [a, b]; (c) [a, b] ⊆ D[f ]: f (a)f (b) < 0; (d) x0 ∈ [a, b] : f (x0 )f 00 (x0 ) > 0. Тогда методы хорд (3.7), (3.10) и Ньютона (3.13) сходятся к корню ξ ∈ [a, b] уравнения (6.65). Причем сходимость монотонная и методы хорд и Ньютона сходятся к точке ξ с разных сторон. Можно доказать утверждение теоремы, используя геометрическую интерпретацию методов хорд и Ньютона5 . 5 Самостоятельно представить геометрическую интерпретацию метода Ньютона. Может ли метод Ньютона зацикливаться? IV. Метод парабол f ∈ C 2 ([a, b]): M > 0, где M = maxx∈[a,b] |f 00 (x)| Пусть [a, b] ⊆ D[f ]: f (a)f (b) < 0 и xn ∈ [a, b] — текущее приближение корня ξ ∈ [a, b] уравнения (6.65). Например, для определенности можно считать, что f (xn ) > 0. Тогда уравнение y = f (xn ) + f 0 (xn ) (x − xn ) − M 2 (x − xn ) 2 (3.22) геометрически задает параболу6 , которая расположена под графиком функции y = f (x) и касается графика этой функции в точке (xn , f (xn )). Ветви параболы направлены вниз и пересекают ось абсцисс в двух точках. Эти точки геометрически определяют следующие (n + 1-ое) приближения xn+1 корня ξ. Аналитически значения xn+1 определяются как решения уравнения y = f (xn ) + f 0 (xn ) (x − xn ) − M 2 (x − xn ) = 0. 2 (3.23) 6 В случае, если f (x ) < 0, то третье слагаемое в правой части уравнения n (3.22) необходимо записывать со знаком “+”. Метод парабол (продолжение) Здесь уравнение (3.23) удобно записать в виде − M ∆x2n + f 0 (xn )∆xn + f (xn ) = 0, 2 где ∆xn = xn+1 − xn . (±) Решения ∆xn уравнения (3.24) задаются формулой q 2 f 0 (xn ) + 2M f (xn ) −f (x ) ± n (±) ∆xn = . −M (3.24) (3.25) В результате последовательного применения (3.25), можно формально построить две числовые последовательности (±) xn+1 = xn + ∆xn (n = 0, 1, 2, . . .), каждая из которых соответствует своему выбору знака (“+” или “-”) в числителе дроби в правой части равенства (3.25). В общем случае каждая из этих последовательностей может как сходится к корню ξ уравнения (6.65), так и выходить за пределы отрезка [a, b] его локализации7 . 7 Самостоятельно проиллюстрировать геометрически. V. Метод простой итерации ϕ ∈ C ([a, b]), [a, b] ⊆ D[ϕ]: ∃ξ ∈ [a, b] ξ = ϕ(ξ), ξ — корень уравнения x = ϕ(x) (3.26) Уравнение (3.26) может быть получено из уравнения f (x) = 0 (см. (6.65)) различными способами. Например, от уравнения (6.65) можно перейти к уравнению (3.26) следующим, вообще говоря, неравносильным образом x = x + g(x)f (x), где g(x) — некоторая заданная функция8 . Численная процедура метода простой итерации: xn+1 = ϕ(xn ), n = 0, 1, 2, . . . (3.27) Метод простой итерации может как сходиться,так и расходиться9 . 8 Способы задания функции g(x) будут рассмотрены ниже. представить геометрическую интерпретацию метода простой итерации. 9 Самостоятельно Сходимость метода простой итерации Определение 3.1. Пусть R — метрическое пространство с заданной на нем метрикой ρ. Оператор A : R → R называется сжимающим, если ∃q ∈ R 0 < q < 1 : ∀x, y ∈ R ρ (Ax, Ay) ≤ q ρ (x, y) (3.28) Теорема (Принцип сжимающих отображений) Пусть R — полное метрическое пространство с заданной на нем метрикой ρ и оператор A : R → R — сжимающий. Тогда уравнение x = Ax имеет единственное решение ξ ∈ R: ξ = lim xn , n→∞ где ∀x0 ∈ R, xn+1 = Axn , n = 0, 1, 2, . . . . Сходимость метода простой итерации (продолжение) Теорема 3.2. Пусть для функции ϕ(x), x ∈ [a − r, a + r] выполнены следующие условия: (a) ∃q ∈ R 0 < q < 1 : ∀x, y ∈ [a − r, a + r] ⇒ |ϕ(x) − ϕ(y)| ≤ q|x − y|;a (b) |ϕ(a) − a| ≤ (1 − q)r. Тогда ∃!ξ ∈ [a − r, a + r]: ξ = limn→∞ xn , где ∀x0 ∈ [a − r, a + r], xn+1 = ϕ(xn ), n = 0, 1, 2, . . .. a Функция ϕ — равномерно-липшицевая функция на отрезке [a − r, a + r], q — константа Липшица. Доказательство: Для того, чтобы для доказательства утверждения теоремы воспользоваться принципом сжимающих отображений достаточно показать, что ϕ(x) ∈ [a − r, a + r] ∀x ∈ [a − r, a + r], то есть |ϕ(x) − a| ≤ r ∀x ∈ [a − r, a + r]. Действительно, |ϕ(x) − a| = |ϕ(x) − ϕ(a) + ϕ(a) − a| ≤ |ϕ(x) − ϕ(a)| + |ϕ(a) − a| ≤ q|x − a| + (1 − q)r ≤ qr + (1 − q)r = r. Сходимость метода простой итерации (продолжение) Следствие Пусть ϕ ∈ C 1 ([a, b]), где [a, b] ⊆ D[ϕ]: (a) ∃ξ ∈ [a, b] ξ = ϕ(ξ); (b) |ϕ0 (ξ)| < 1. Тогда существует такое ε > 0, что для любого начального приближения x0 ∈ [ξ − ε, ξ + ε] метод простой итерации (3.27) сходится к решению ξ уравнения (3.26).  N4 Скорость сходимости и погрешность метода простой итерации Пусть ξ ∈ [a, b] ⊆ D[ϕ], где ξ — уравнения (3.26), и функция ϕ равномерно-липшицева на отрезке [a, b]: ∃q ∈ R 0 < q < 1 : ∀x, y ∈ [a, b] ⇒ |ϕ(x) − ϕ(y)| ≤ q|x − y| (3.29) Тогда, в силу определения корня ξ уравнения (3.26), численной процедуры (3.27) метода простой итерации и (3.29) |ξ − xn | = |ϕ(ξ) − ϕ(xn−1 )| ≤ q|ξ − xn−1 | = = q|ϕ(ξ) − ϕ(xn−2 )| ≤ q 2 |ξ − xn−2 | = = ... Оценка скорости сходимости метода (3.30) Пусть ξ ∈ [a, b] ⊆ D[ϕ] и выполнено условие (3.28). Тогда |ξ − xn | ≤ q n |ξ − x0 |. Метод простой итерации (3.27) сходится как геометрическая прогрессия со знаменателем q. (3.31) Скорость сходимости и погрешность метода простой итерации (продолжение) |xn+m − xn | = | (xn+m − xn+m−1 ) + (xn+m−1 − xn+m−2 ) + . . . + (xn+1 − xn ) | ≤ ≤ |xn+m − xn+m−1 |+ |xn+m−1 − xn+m−2 | + . . . + |xn+1 − xn | (3.32) ∀n, m ∈ N. Аналогично (3.30) нетрудно показать, что |xn+k − xn+k−1 | ≤ q k |xn − xn−1 | ≤ q n+k−1 |x1 − x0 | ∀n, k ∈ N. (3.33) Тогда из (3.32) с учетом (3.33) следует, что |xn+m − xn | ≤ q n+m−1 |x1 − x0 | + q n+m−2 |x1 − x0 | + . . . + q n |x1 − x0 | =  . = q n |x1 − x0 | q m−1 + q m−2 + . . . + q + 1 . (3.34) Предельный переход при m → ∞ в обеих частях неравенства (3.34) приводит к оценке Погрешность метода простой итерации. Примеры. Оценка погрешности метода Пусть ξ ∈ [a, b] ⊆ D[ϕ] и выполнено условие (3.28). Тогда |ξ − xn | ≤ qn |x1 − x0 |. 1−q (3.35) Пример 1. f (x) = x3 − x − 1 = 0, x ∈ [a, b] = [1, 2]. (3.36) Поскольку f (1) · f (2) = (−1) · 5 < 0 и f 0 (x) = 3x2 − 1 > 0 ∀x ∈ [1, 2], то ∃!ξ ∈ [1, 2] : f (ξ) = 0. Уравнение (3.36) может быть преобразовано в равносильное ему уравнение вида x = ϕ(x). Примеры Способ A) x = ϕ(x) = x3 − 1 (3.37) Поскольку ϕ0 (x) = 3x2 ≥ 3 > 1 ∀x ∈ [1, 2], то ∀x0 ∈ [1, 2] метод простой итерации (3.27) для уравнения (3.37) расходится10 . Способ B) 1 (3.38) x = (x + 1) 3 1 3 Здесь ϕ(x) = (x + 1) и ϕ0 (x) = 1 3 · 1 2 (x+1) 3 Очевидно, что maxx∈[1,2] |ϕ0 (x)| = ϕ0 (1) = . 1 3 · 1 1 (4) 3 < 1 3 = q < 1. Следовательно, в силу неравенства (3.31), метод простой итерации (3.27) для уравнения (3.38) сходится к ξ для любого его начального приближения x0 ∈ [1, 2]. 10 Доказать самостоятельно, используя, например, геометрическую интерпретацию метода простой итерации. Примеры (продолжение) Здесь для ϕ0 (1) можно получить более точную оценку ϕ0 (1) = 1 3 · 1 1 (4) 3 = 1 1 (27) 3 · 1 1 (4) 3 ≤ 1 1 (16) 3 · 1 1 (4) 3 = 1 2 (4) 3 · 1 1 (4) 3 = 1 4 = q. Такая оценка позволяет более точно оценить количество итераций метода, которое достаточно для достижения заданной точности ε > 0 вычисления значения корня ξ уравнения (3.38). Из оценки (3.35) погрешности метода следует, что n  ( 41 ) 1 1 n−1 |x1 − x0 |. |ξ − xn | ≤ 1− 1 |x1 − x0 | = 3 · 4 4 Например, если в качестве начального приближения x0 взять 2 середину отрезка [1, 2], то есть точку x0 = 32 , то x1 = (2, 5) 3 . Нетрудно проверить, что 1, 3 ≤ x1 ≤ 1, 5. Тогда |x1 − x0 | ≤ 0, 2. n−1 1 В этом случае |ξ − xn | ≤ 15 · 14 ≤ ε. В итоге, количество итераций метода, достаточное для достижения заданной точности ε > 0, удовлетворяет неравенству   1 n ≥ 1 + log4 . (3.39) 15ε Примеры (продолжение) В заключение обсуждения метода простой итерации следует остановиться на уже упомянутом выше, вообще говоря, неравносильном способе построения уравнения вида x = ϕ(x) (см. (3.26)) из уравнения f (x) = 0 (см. (6.65)): f (x) = 0 ⇒ x = x + g(x)f (x), (3.40) где g(x) — некоторая заданная функция, которая определяет функцию ϕ в уравнении (3.26) следующим образом ϕ(x) = x + g(x)f (x). (3.41) Очевидно, что любой корень уравнения (6.65) является корнем и уравнения (3.40), а обратное в общем случае неверно. Очевидно, что нули функции g являются корнями уравнения (3.40), а корнями уравнения (6.65), вообще говоря, быть не обязаны. В случае, если требуется вычислить приближенное значение корня ξ уравнения (6.65) (ξ ∈ D[f ] : f (ξ) = 0), используя для этого метод простой итерации для уравнения (3.40), то возникает естественный вопрос: Примеры (продолжение) Как следует задать функцию g в (3.41), чтобы метод простой итерации (3.27) сходился к корню ξ уравнения (6.65) (ξ ∈ D[f ] : f (ξ) = 0) и его скорость сходимости при этом была наибольшей? Пусть f ∈ C 1 ([a, b]), где [a, b] ⊆ D[f ]: f (a)f (b) < 0. Тогда в предположении, что g ∈ C 1 ([a, b]) можно считать, что определяемая выражением (3.41) функция ϕ ∈ C 1 ([a, b]). Локальным достаточным условием сходимости метода простой итерации является |ϕ0 (ξ)| < 1 (см. следствие теоремы 3.2). При этом скорость сходимости метода зависит величины q — максимального абсолютного значения функции ϕ0 (x) = 1 + g 0 (x)f (x) + g(x)f 0 (x) в окрестности [ξ − ε, ξ + ε] корня ξ (см. (3.31)). В силу непрерывности ϕ0 , чем меньше |ϕ0 (ξ)|, тем меньше и значение q. (3.42) Примеры (продолжение) Подстановка ξ в (3.42) приводит к равенству ϕ0 (ξ) = 1 + g(ξ)f 0 (ξ). Требование того, чтобы |ϕ0 (ξ)| принимало минимально возможное значение (ϕ0 (ξ) = 0) приводит к выражению 1 (3.43) g(ξ) = − 0 . f (ξ) Продолжение правила (3.43) задания функции g на [ξ − ε, ξ + ε] приводит к следующему способу определения этой функции 1 x ∈ [ξ − ε, ξ + ε]. (3.44) g(x) = − 0 f (x) В этом случае для любого начального приближения x0 ∈ [ξ − ε, ξ + ε] метод простой итерации для уравнения (3.40) выглядит следующим образом f (xn ) n = 0, 1, . . . . (3.45) f 0 (xn ) Метод Ньютона является методом простой итерации для уравнения f (x) = 0, который обладает наибольшей локальной скоростью сходимости.  xn+1 = xn − N5 ТЕМА 4. Численные методы линейной алгебры Система линейных алгебраических уравнений Ax = b, n где x, b ∈ R , A ∈ R n×n (4.1) (dim(A) = n × n): det(A) 6= 0. (4.2) Методы решения системы (4.1) Точные методы: 1 2 3 Метод, основанный на обращении матрицы A: x̄ = A−1 b; Правило Крамера: x̄i = ∆∆i i = 1, 2, . . . , n, где ∆ = det(A), ∆i — определитель матрицы, полученной из матрицы A заменой ее i-го столбца на вектор-столбец b (i = 1, 2, . . . , n); Метод исключения Гаусса. Приближенные методы — итерационные методы, основанные на процедурах построения последовательностей {x(i) }∞ i=0 : limi→∞ x(i) = x̄. 4.1. Метод исключения Гаусса  a11 x1 + a12 x2 + a13 x3 + . . . + a1n xn = a1n+1      a21 x1 + a22 x2 + a23 x3 + . . . + a2n xn = a2n+1 a31 x1 + a32 x2 + a33 x3 + . . . + a3n xn = a3n+1   ····································    an1 x1 + an2 x2 + an3 x3 + . . . + ann xn = ann+1 (4.3) С помощью элементарных преобразований система (4.3) преобразуется в равносильную ей систему с верхнетреугольной матрицей  x1 + c12 x2 + a13 x3 + . . . + c1n xn = c1n+1     x2 + a23 x3 + . . . + c2n xn = c2n+1  x3 + . . . + c3n xn = c3n+1 (4.4)   · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·    xn = cnn+1 Метод исключения Гаусса (продолжение) В матричной форме это преобразование может быть записано в виде A = B · C, (4.5) где  b11  b21  B= b31 · · · bn1 b22 b32 ··· bn2 b33 ··· bn3 ··· ··· ··· ··· ···   1 0 0    0 , C= 0  · · · ··· bnn c12 1 ··· c13 c23 1 ··· ··· ··· ··· ··· ···  c1n c2n   c3n  (4.6) · · · 1 Тогда  Ax = b ∼ (B · C) x = b ∼ By = b Cx = y (4.7) Метод исключения Гаусса (продолжение) Поскольку det(A) 6= 0, то bii 6= 0 (i = 1, 2, · · · , n). Тогда из (4.3), (4.6), (4.7) следует  y1 =       y2 = y3 =    ···    yn = a1n+1 b11 a2n+1 −b21 y1 b22 a3n+1 −b31 y1 −b32 y2 b33 (4.8) ann+1 −bn1 y1 −bn2 y2 −bn3 y3 −...−bnn−1 yn−1 bnn  xn = yn     xn−1 = yn − cn−1n xn    ··· x3 = y3 − c3n xn − c3n−1 xn−1 − . . . − c34 x4     x2 = y2 − c2n xn − c2n−1 xn−1 − . . . − c23 x3    x1 = y1 − c1n xn − c1n−1 xn−1 − . . . − c12 x2 (4.9) Компактная схема Гаусса Конечношаговая процедура последовательного вычисления значений элементов bij и cij матриц B и C соответственно, позволяющая одновременно определить значения компонент вектора y Пример. Пусть n = 4. Тогда A = B · C ∼    a11 | a21 | a | 31 a41 | a12 a22 | a32 | a42 | a13 a23 a33 | a43 | a14 b11 | a24  b21 | = a34  b31 | a44 | b41 | b22 | b32 | b42 | b33 | b43 |  1 0  0 · 0  0 b44 | ∀i ≥ 1 ⇒ bi1 = ai1 ∀i ≥ 1 c) a1j = b11 c1j ∀j ≥ 2 ⇒ c1j = I. b) ai1 = bi1 II. b) ai2 = bi1 c12 + bi1 ∀i ≥ 2 c) a2j = b21 c1j + b22 c2j ∀j ≥ 3 a1j b11 ⇒ ⇒ c12 1 c13 c23 1 ∀j ≥ 2 bi2 = ai2 − bi1 c12 ∀i ≥ 2 c2j = a2j −b21 c1j b22  c14 c24  c34  1 ∀j ≥ 3 Компактная схема Гаусса (продолжение) a11 | a21 | a | 31 a41 |  a12 a22 | a32 | a42 | a13 a23 a33 | a43 | b11 | a14 a24  b21 | = a34  b31 | a44 | b41 |   b22 | b32 | b42 |  1 0  0 · 0  0 b44 | b33 | b43 | III. b) ai3 = bi1 c13 + bi2 c23 + bi3 ∀i ≥ 3 bi3 = ai3 − bi1 c13 − bi2 c23 ∀i ≥ 3 c12 1 ⇒ c) a3j = b31 c1j + b32 c2j + b33 c3j ∀j ≥ 4 a −b c1j −b32 c2j ∀j ≥ 4 c3j = 3j 31b33 ⇒ IV. b) ai4 = bi1 c14 + bi2 c24 + bi3 c34 + bi4 ∀i ≥ 4 ⇒ bi4 = ai4 − bi1 c14 − bi2 c24 − bi3 c34 ∀i ≥ 4 c) a4j = b41 c1j + b42 c2j + b43 c3j + b44 c4j ∀j ≥ 5 a −b c −b c −b c c4j = 4j 41 1j b4442 2j 43 3j ∀j ≥ 5 ⇒ c13 c23 1  c14 c24  c34  1 Компактная схема Гаусса (продолжение) В результате при j = 5 c учетом (4.8)  15 c15 = ab11 = y1     c = a25 −b21 c15 = y 2 25 b22 a35 −b31 c15 −b32 c25 c = = y3  35  b   c = a45 −b41 c33 15 −b42 c25 −b43 c35 = y4 45 b44 (4.10) Дополнительные возможности: Вычисление определителя матрицы A: det(A) = det(B · C) = det(B)det(C) = det(B) = b11 b22 b33 . . . bnn ; Обращение матрицы A:   A−1 = x(1) , x(2) x(3) , . . . , x(n) , где Ax(i) =b(i) (i=1, 2, . . ., n), > b(i) = (b1 , b2 , . . ., bn ) , bj =δij (j=1, 2, . . ., n); Вычисление решений системы Ax = b при различных ее правых частях b: в силу (4.10) от значений компонент вектора > b = (a1n+1 , a2n+1 , . . . , ann+1 ) зависят только значения yi (i = 1, 2, . . . , n) — правых частей системы Cx = y. 4.2. Определение собственных значений и собственных векторов квадратной матрицы Пусть A ∈ Rn×n (dim(A) = n × n) Определение 4.1. Комплексное число λ ∈ C называется собственным значением матрицы A, если существует ненулевой вектор x ∈ Rn с комплексными компонентами xi ∈ C (i = 1, 2, . . . , n), удовлетворяющий уравнению Ax = λx (4.11) Собственные значения матрицы A являются корнями ее характеристического уравнения ∆(λ) = det(λE − A) = λn − p1 λn−1 − . . . − pn−1 λ − pn = 0, (4.12) где E — единичная матрица размерности n × n. Структура и коэффициенты характеристического многочлена ∆(λ) ∆(λ) = λn − p1 λn−1 − . . . − pn−1 λ − pn = λ − a11  ···   −ai1  = det · · ·  −a j1   ··· −an1  = Qn k=1 ··· ··· ··· ··· ··· ··· ··· −a1i ··· λ − aii | ··· −aji ··· −ani ··· ··· ··· ··· ··· ··· ··· −a1j ··· | − aij | ··· λ − ajj | ··· −anj (λ − akk ) + Pn−2 (λ) = λn − Pn k=1 ··· ··· ··· ··· ··· ··· ··· −a1n ···   −ain   · · · =  −ajn  ···  λ − ann  akk λn−1 + Qn−2 (λ), Отсюда нетрудно видеть, что p1 = n X k=1 akk = tr(A). (4.13) Свойства собственных значений и собственных векторов квадратной матрицы Известно, что алгебраическое уравнение степени n имеет в множестве комплексных чисел ровно n корней λ1 , λ2 , . . . , λn с учҷтом их кратности. При этом из известной теоремы Виета, дающей связь корней уравнения с его коэффициентами, следует Pn p1 = k=1 λk = tr(A), (4.14) (−1)n−1 pn = λ1 · λ2 · . . . · λn = det(A), где λk (k = 1, 2, . . . , n) — корни уравнения (4.12) (собственные значения матрицы A)11 . Каждая квадратная матрица A размерности n × n обладает набором из n собственных значений λk (k = 1, 2, . . . , n) и соответствующих им собственных векторов x(k) (k = 1, 2, . . . , n). Если матрица A симметричная, т.е. aij = aji (i, j = 1, 2, . . . , n), то λk ∈ R (k = 1, 2, . . . , n), а векторы x(k) ортогональны между собой. 11 Соотношения (4.14) можно использовать для контроля вычислений собственных значений матрицы. Локализация собственных значений квадратной матрицы на комплексной плоскости Теорема Гершгорина Все собственные значения матрицы A лежат в объединении кругов S (1) , S (2) , . . . , S (n) , где S (i) = {z ∈ C : |z − aii | ≤ ri }, ri = |ai1 | + . . . + |aii−1 ||aii+1 | + . . . + |ain | — сумма модулей внедиагональных элементов i-ой строки матрицы A. При этом, если k кругов образуют замкнутую область, изолированную от других кругов, то в этой области находится ровно k собственных значений с учетом их кратности. Если матрица A — симметричная, то теорема Гершгорина позволяет определить границы вещественных собственных значений, которые будут находиться в объединении интервалов s(i) = [aii − ri , aii + ri ] (i = 1, 2, ..., n). Примеры локализации собственных значений −2 Пример 1. A= −0, 5 0, 8 0, 5 −3, 5 −0, 5 0, 5 1, 5 0, 5 ! Для матрицы A круги Гершгорина имеют вид: a11 = −2 r1 = |0, 5| + |0, 5| = 1 S (1) = {z ∈ C : |z + 2| ≤ 1} a22 = −3, 5 r2 = | − 0, 5| + |1, 5| = 2 S (2) = {z ∈ C : |z + 3, 5| ≤ 2} a33 = 0, 5 r3 = |0, 8| + | − 0, 5| = 1, 3 S (3) = {z ∈ C : |z − 0, 5| ≤ 1, 3} Нетрудно построить на комплексной плоскости круги S (1) , S (2) и  (3) (1) (2) (1) (2) (3) S и убедиться, что S ∩ S 6= , S ∪ S ∩S = . Таким образом, в объединении кругов S (1) и S (2) находится ровно два собственных значения λ1 и λ2 , а круг S (3) содержит ровно одно собственное значение λ3 . Примеры локализации собственных значений  2, 2  1 Пример 2. A= 0, 5 2 1 1, 3 2 1 0, 5 2 0, 5 1, 6  2 1  1, 6 2 Для симметрической матрицы A указанные интервалы имеют вид: a11 a22 a33 a44 = 2, 2 r1 = |1| + |0, 5| + |2| = 3, 5 = 1, 3 r2 = |1| + |2| + |1| = 4 = 0, 5 r3 = |0, 5| + |2| + |1, 6| = 4, 1 =2 r4 = |2| + |1| + |1, 6| = 4, 6 s(1) = [−1, 3; 5, 7] s(2) = [−2, 7; 5, 3] s(3) = [−3, 6; 4, 6] s(4) = [−2, 6; 6, 6] Все собственные значения матрицы A будут находиться внутри интервала s = s(1) ∪ s(2) ∪ s(3) ∪ s(4) = [−3, 6; 6, 6]. Численные методы определения собственных значений квадратной матрицы Численные методы решения проблемы собственных значений условно делятся на две группы: 1 Точные методы, основанные на вычислении коэффициентов характеристического уравнения (4.12) и его последующем решении (методы Леверрье-Фаддеева, Данилевского, Крылова и др. ); 2 Итерационные методы, основанные на вычислении части или всех собственных значений без использования характеристического уравнения (4.12), как пределов некоторых числовых последовательностей (степенной метод, QR-алгоритм, метод вращений и др.). Метод Леверрье Метод Леверрье построения характеристического уравнения (4.12) матрицы (вычисления его коэффициентов) основан на формулах Ньютонаa для сумм степеней корней алгебраического уравнения. a Курош А.Г. Курс высшей алгебры.- М.: Наука, 1975.–431 с. Пусть λi (i = 1, 2, . . . , n) — полная совокупность корней характеристического уравнения (4.12) матрицы A, где каждый корень повторяется столько раз, какова его кратность. Формула Ньютона Pn Пусть Sk = i=1 λki , k = 1, 2, . . . , n. Тогда kpk = Sk − p1 Sk−1 − . . . − pk−1 S1 , k = 1, 2, . . . , n, где pi (i = 1, 2, . . . , n) — коэффициенты характеристического уравнения (4.12) матрицы A. (4.15) Метод Леверрье (продолжение) Если числа Sk известны, то, решая рекуррентную систему (4.15), можно найти нужные коэффициенты pk :    p1 = S1 1  p2 = 2 (S2 − p1 S1 ) (4.16) ···    pn = n1 (Sn − p1 Sn−1 − . . . − pn−1 S1 ) Из формул (4.11) (или жорданового представления матрицы A) следует, что числа λki (i = 1, 2, . . . , n) являются собственными значениями матрицы Ak , а из формул (4.14) вытекает, что Sk = tr(Ak ), k = 1, 2, . . . , n, Степени Ak = Ak−1 · A (k = 2, 3, . . . , n) матрицы A находятся непосредственным перемножением. (4.17) Метод Леверрье (продолжение) Численная процедура метода Леверрье 1 Вычисляются Ak (k = 1, 2, . . . , n) — степени матрицы A; 2 Вычисляются Sk = tr(Ak ) (k = 1, 2, . . . , n) — следы матриц Ak ; 3 По формулам (4.16) определяются искомые коэффициенты pk (k = 1, 2, . . . , n) характеристического уравнения (4.12) матрицы A. Находятся корни характеристического уравнения (4.12) — собственные значения λi (i = 1, 2, . . . , n) матрицы A. Дополнительные результаты 1 2 Определитель матрицы A: det(A) = (−1)n−1 pn ; Обратная матрица A−1 : в силу теоремы Гамильтона-Кели An − p1 An−1 − . . . − pn−1 A − pn E = 0, где 0 — нуль-матрица размерности n × n. Умножение обеих частей этого равенства на матрицу A−1 приводит к выражению An−1 − p1 An−2 − . . . − pn−1 E − pn A−1 = 0. Откуда A−1 = p1n An−1 − p1 An−2 − . . . − pn−1 E , если pn 6= 0.  N6 Модификация метода Леверрье. Метод Леверрье-Фаддеева. Д.К.Фаддеев предложил видоизменение метода Леверрье, которое кроме упрощений при вычислении коэффициентов pk (k = 1, 2, . . . , n) характеристического уравнения (4.12) матрицы A позволяет более просто определить обратную матрицу A−1 и собственные векторы матрицы A. Вместо набора матриц A, A2 , A3 , . . . , An строится набор матриц A1 , A2 , A3 , . . . , An следующим образом:  A1 = A, q1 = tr(A1 ), B 1 = A1 − q 1 E    A2 = A · B 1 , q2 = 12 tr(A2 ), B2 = A2 − q2 E ················································    An = A · Bn−1 , qn = n1 tr(An ), Bn = An − qn E Из (4.18) следует (4.18) Метод Леверрье-Фаддеева (продолжение) Ak = A · Bk−1 = A (Ak−1 − qk−1 E) = = A (A · Bk−2 − qk−1 E) = A2 · Bk−2 − qk−1 A = = A2 (Ak−2 − qk−2 E) − qk−1 A = = A2 (A · Bk−3 − qk−2 E) − qk−1 A = = A3 · Bk−3 − qk−2 A2 − qk−1 A = = ... = = Ak −q1 Ak−1 −q2 Ak−2 −. . .−qk−2 A2 −qk−1 A (4.19) Bk = Ak −q1 Ak−1 −q2 Ak−2 −. . .−qk−2 A2 −qk−1 A−qk E ∀k = 1, 2, . . . , n Откуда kqk = tr(Ak ) = Sk −q1 Sk−1 −q2 Sk−2 −. . .−qk−2 S2 −qk−1 S1 (4.20) ∀k = 1, 2, . . . , n Метод Леверрье-Фаддеева (продолжение) Поскольку q1 = tr(A1 ) = tr(A) = p1 , то в силу формулы Ньютона (4.15) и равенств (4.20) Коэффициенты характеристического уравнения (4.12) для матрицы A pk = qk k = 1, 2, . . . , n (4.21) Обратная матрица В силу соотношений (4.19), (4.21) и теоремы Гамильтона-Кели Bn = An −p1 An−1 −p2 An−2 −. . .−pn−2 A2 −pn−1 A−pn E = 0 (4.22) Из формул (4.18) и (4.22) следует, что A · Bn−1 = An = Bn + pn E = pn E Откуда, если pn 6= 0, то A−1 = Bn−1 pn (4.23) Нахождение собственных векторов Пусть λ̄ — собственное значение матрицы A Q(λ̄) = λ̄n−1 E + λ̄n−2 B1 + . . . + λ̄Bn−2 + Bn−1 , (4.24) где Bk (k = 1, 2, . . . , n−1) — матрицы, вычисленные по формулам (4.18).  λ̄E − A Q(λ̄) = ∆(λ̄)E, (4.25) где ∆(λ̄) = det(λ̄E − A). Действительно, в силу (4.18) и (4.21)    λ̄E−A Q(λ̄)= λ̄E−A λ̄n−1 E+λ̄n−2 B1 + . . . + λ̄Bn−2 +Bn−1 = =λ̄n E+λ̄n−1 B1 + . . . +λ̄2 Bn−2 +λ̄Bn−1 − −λ̄n−1 A−λ̄n−2 A · B1 − . . . −λ̄A · Bn−2 −A · Bn−1 = =λ̄n E+λ̄n−1 (B1 −A) +λ̄n−2 (B2 −A · B1 ) + . . . + +λ̄ (Bn−1 −A · Bn−2 ) −A · Bn−1 = =λ̄n E−p1 λ̄n−1 E−p2 λ̄n−2 E− . . . −pn−1 λ̄E−pn E= = ∆(λ̄)E. Нахождение собственных векторов (продолжение) Поскольку λ̄ — корень характеристического уравнения (4.12) для матрицы A, то ∆(λ̄) = 0. Таким образом,  λ̄E − A Q(λ̄) = ∆(λ̄)E = 0 Откуда следует, что для любого столбца x̄ матрицы Q(λ̄)  λ̄E − A x̄ = 0 или Ax̄ = λ̄x̄, то есть x̄ 6= 0 — собственный вектор матрицы A, отвечающий собственному значению λ̄. 4.3. Неустранимая погрешность при решении систем линейных алгебраических уравнений Система линейных алгебраических уравнений Ax = b, (4.26) где x, b ∈ Rn , A ∈ Rn×n (dim(A) = n × n): det(A) 6= 0. (4.27) Пусть x̄ = A−1 b — точное решение системы (4.26)a . a Будем считать, что отсутствуют погрешность метода и вычислительная погрешность Неустранимая погрешность в решении системы (4.26) может быть вызвана неточностью в задании значений элементов матрицы A и вектор-столбца правых частей b. Неустранимая погрешность ... (продолжение) “Возмущенная” система линейных алгебраических уравнений (A + ∆A) x = b + ∆b, (4.28) где ∆b ∈ Rn , ∆A ∈ Rn×n (dim(∆A) = n × n) ПРИМЕР   0, 2x1 + x2 = 1 + ∆b1 x2 = 1 + ∆b2 (4.29) −x1 + x2 = 1 + ∆b1 x1 + x2 = 1 + ∆b2 (4.30) Очевидно, что при ∆b1 = ∆b2 = 0 вектор x̄ = (0, 1) точным решением систем (4.29) и (4.30). > является Пусть |∆b1 | ≤ ε, где ε > 0. |∆b2 | ≤ ε, (4.31) Множества возможных решений “возмущенных” систем (4.29) и (4.30) x2 0,2x1+x2=1+ε 0,2x1+x2=1 1+ε x2=1+ε 1 x2=1-ε x2=1 1-ε x1 0,2x1+x2=1-ε x1+x2=1 x2 -x1+x2=1 1+ε 1 1-ε x1 -x1+x2=1+ε -x1+x2=1-ε x1+x2=1+ε x1+x2=1-ε Хорошо и плохо обусловленные системы Одно и то же возмущение правых частей в системе (4.29) привело к значительно большему возмущению решения, чем в системе (4.30). Понятие хорошо и плохо обусловленных систем Системы, у которых малым возмущениям параметров соответствуют малые возмущения решений, называют хорошо обусловленными. В противном случае — плохо обусловленными. Система (4.29) является примером плохо обусловленной системы, система (4.30) — хорошо обусловленной. Нормы векторов и матриц Определение нормы Пусть X — линейное (векторное) пространство. Скалярная функция k · k : X → R называется нормой, если для эта функция обладает следующими свойствами: 1) ∀x ∈ X kxk ≥ 0, kxk = 0 ⇔ x = 0, 2) ∀λ ∈ R ∀x ∈ X kλxk = |λ| · kxk, 3) ∀x, y ∈ X kx + yk ≤ kxk + kyk (4.32) Векторные нормы x ∈ Rn 1) kxk1 = |x1 | + |x2 | + . . . + |xn |, 2) kxk∞ = maxi=1,2,...,n |xi |, 3) kxk2 = p x21 + x22 (4.33) + . . . + x2n , 1 4) kxkr = (|x1 |r + |x2 |r + . . . + |xn |r ) r Норма матрицы Норма матрицы, подчиненная векторной A ∈ Rn×n , x ∈ Rn kAxk = sup kAxk kAk = sup kAxk = sup kxk≤1 kxk=1 kxk6=0 kxk (4.34) Матричные нормы A ∈ Rn×n Pn 1) kAk1 = maxj=1,2,...,n i=1 |aij |, 2) kAk∞ = maxi=1,2,...,n 3) kAk2 = p Pn j=1 |aij |, (4.35) maxi=1,2,...,n λi (A∗ A) Свойства подчиненной матричной нормы A, B ∈ Rn×n , x ∈ Rn 1) kAxk ≤ kAk · kxk, 2) kA · Bk ≤ kAk · kBk (4.36) Оценки неустранимой погрешности в решениях “возмущенных” систем Случай I. “Возмущение” значений правых частей уравнений системы A (x̄ + ∆x) = b + ∆b, (4.37) где ∆b, ∆x ∈ Rn ; Ax̄ = b A (x̄ + ∆x) = Ax̄ + A∆x = b + A∆x ⇒ A∆x = ∆b ⇒ ∆x = A−1 ∆b Отсюда с учетом (4.36) следует: 1) k∆xk = kA−1 ∆bk ≤ kA−1 kk∆bk; kbk 2) Так как Ax̄ = b, то kAx̄k = kbk и kbk ≤ kAkkx̄k ⇒ kx̄k ≥ kAk . k∆xk kA−1 kk∆bk k∆bk ≤ = kA−1 kkAk kbk kx̄k kbk kAk k∆xk k∆bk ≤ cond (A) , kx̄k kbk (4.38) где cond (A) = kA−1 kkAk — число обусловленности матрицы A. Оценки неустранимой погрешности в решениях “возмущенных” систем (продолжение) Случай II. “Возмущение” значений коэффициентов при неизвестных и правых частей уравнений системы (A + ∆A) (x̄ + ∆x) = b + ∆b, где ∆A ∈ R n×n (4.39) n ; ∆b, ∆x ∈ R ; Ax̄ = b b + ∆b = (A + ∆A) (x̄ + ∆x) = = Ax̄ + ∆Ax̄ + (A + ∆A) ∆x = = b + ∆Ax̄ + (A + ∆A) ∆x ⇒ (A + ∆A) ∆x = ∆b − ∆Ax̄ ⇒ A E + A−1 ∆A ∆x = ∆b − ∆Ax̄ ⇒ ∆x = E + A−1 ∆A −1 A−1 (∆b − ∆Ax̄) (4.40) Оценки неустранимой погрешности в решениях “возмущенных” систем (продолжение) Выражение (4.40) с учетом (4.32) и (4.36) приводит к оценке k∆xk ≤ k E + A−1 ∆A −1 kkA−1 k (k∆bk + k∆Akkx̄k) (4.41) Утверждение Пусть B ∈ Rn×n : kBk < 1. Тогда k(E − B) −1 k≤ 1 1 − kBk (4.42) В предположении, что ∆A ∈ Rn×n : k∆Ak < kA1−1 k (kA−1 ∆Ak ≤ kA−1 kk∆Ak < 1)12 , из (4.41) следует13 k∆xk ≤ 12 Когда 13 B 1 1− kA−1 kk∆Ak kA−1 k (k∆bk + k∆Akkx̄k) ∆A мало, то указанное условие выполняется. = −A−1 ∆A (4.43) Оценки неустранимой погрешности в решениях “возмущенных” систем (продолжение) Деление обеих частей неравенства (4.43) на kx̄k приводит к оценке   k∆xk 1 k∆bk −1 ≤ kA k + k∆Ak (4.44) kx̄k 1 − kA−1 kk∆Ak kx̄k kb k Из (4.44) с учетом того, что kx̄k ≥ kAk , следует   k∆xk kA−1 kkAk k∆bk k∆Ak ≤ + kx̄k kbk kAk 1 − kA−1 kkAk k∆Ak kAk k∆xk cond (A) ≤ kx̄k 1 − cond (A) k∆Ak kAk  k∆bk k∆Ak + kbk kAk (4.45)  (4.46) Свойство cond (A) ≥ 1  (4.47) N7 ПРИМЕР Исходная система  1, 01x1 + 0, 99x2 = 2, 00 0, 99x1 + 0, 98x2 = 1, 97 (4.48) “Возмущенная” система  1, 01x1 + 0, 99x2 = 2, 04 0, 99x1 + 0, 98x2 = 1, 99 (4.49) Очевидно, что AT = A и A > 0. Следовательно, λi (A) ∈ R и λi (A) > 0 (i = 1, 2). Поэтому p p 1) kAk2 = maxi=1,2 λi (AT A) = maxi=1,2 λi (A2 ) = maxi=1,2 λi (A); 1 1 2)14 kA−1 k2 = maxi=1,2 λi (A) = mini=1,2 λi (A) . 14 Если A  −1 T AT = A, то E = A−1 A = A−1 . T = AT A−1 T = A A−1 T . Тогда ПРИМЕР λ1 (A) ≈ 1, 98005, λ2 (A) ≈ 0, 00005 cond2 (A) = kA−1 kkAk = maxi=1,2 λi (A) mini=1,2 λi (A) ≈ 1,98005 0,00005 ≈ 4 · 104 Вывод Исходная система (4.48) является плохо обусловленнойa . a Приблизительными значениями числа обусловленности, разделяющими хорошо и плохо обусловленные системы, считается 10-20. Исходная система > > b = (2, 00; 1, 97) ; Решение: x̄ = (1, 00; 1, 00) “Возмущенная” система > > b̃ = (2, 04; 1, 99) = b + ∆b, ∆b = (0, 04; 0, 02) ; > > Решение: x̃ = (3, 00; −1, 00) = x̄ + ∆x, ∆x = (2, 00; −2, 00) Сравнительно малые вариации значений правых частей исходной системы (4.48) приводят к значительным “возмущениям” ее решения. При этом, как нетрудно видеть, λ1 (A)  λ2 (A). Геометрическая интерпретация. Частный случай. Ax̄ = b, (4.50) A (x̄ + ∆x) = b + ∆b, (4.51) где ∆A ∈ Rn×n : A > 0; x̄, b, ∆x, ∆b ∈ Rn : Ax̄ = b. В силу (4.50), (4.51) A∆x = ∆b. (4.52) Частный случай: n = 2 и k∆bk = ε, где ε > 0 p k∆bk = (∆b, ∆b). Из (4.52) следует (∆b, ∆b) = (A∆x, A∆x) = (∆x, A∗ A∆x). (∆x, A∗ A∆x) = ε2 (4.53) Поскольку A∗ A > 0, то уравнение (4.53) определяет в R2 эллипс. Геометрическая интерпретация (Продолжение) u(1) , u(2) ∈ R2 : Au(1) = λ1 u(1) , Au(2) = λ2 u(2) , λ2 > λ1 > 0, u(1) ⊥u(2) Пусть ∆b(i)  u(i) (i = 1, 2). Тогда ∆x(i) = A−1 ∆b(i) = k∆x(i) k = λεi (i = 1, 2). (i) 1 λi ∆b : Тогда в ортонормированной системе координат, задаваемой собственными векторами u(1) , u(2) матрицы A, длины полуосей эллипса, определяемого уравнением (4.53) равны λε1 , λε2 и его эксцентриситет e = λλ12 . Точки этого эллипса геометрически определяют решения ∆x “возмущенной” системы (4.51), соответствующие различным “возмущениям” ∆b (k∆bk = ε) правых частей b системы (4.50). Таким образом, одно и то же “возмущение” по норме правых частей системы (4.50) приводит к различным “возмущениям” ее решений. Разброс норм этих “возмущений” определяется величиной λ2 − λ1 . 4.4. Итерационные методы решения систем линейных алгебраических уравнений Пусть для системы Ax = b построена равносильная ей система вида x = Bx + c, (4.54) где B ∈ Rn×n ; x, c ∈ Rn Численная процедура метода простой итерации x(k+1) = Bx(k) + c, (0) где k = 0, 1, 2, . . .; x ∈R (4.55) n В силу (4.55)  x(k+1) =Bx(k) +c=B Bx(k−1) +c +c=B 2 x(k−1) + (B+E) c=   =B 2 Bx(k−2) +c + (B+E) c=B 3 x(k−2) + B 2 +B+E c= ·········  =B k+1 x(0) + B k +B k−1 + . . . +B 2 +B+E c Метод простой итерации x(k+1) = B k+1 x(0) + k X ! Bi c, (4.56) i=0 где k = 0, 1, 2, . . .; x(0) ∈ Rn Определение 4.2. Предел последовательности матриц (k) Пусть {A(k) }∞ ∈ Rn×m . k=1 , ∀k ∈ N A limk→∞ A(k) = A, где A ∈ Rn×m , если (k) lim aij = aij (∀i = 1, 2, . . . , n; ∀j = 1, 2, . . . , m) k→∞ (4.57) Условие (4.57) равносильно lim kA(k) − Ak = 0 (4.58) lim A(k) x = Ax ∀x ∈ Rn (4.59) k→∞ или k→∞ Метод простой итерации (продолжение) Свойства сходящихся матричных последовательностей (k) ∞ Пусть {A(k) }∞ }k=1 , ∀k ∈ N A(k) , B (k) ∈ Rn×n : k=1 , {B (k) ∃ limk→∞ A = A и ∃ limk→∞ B (k) = B, где A, B ∈ Rn×n . Тогда  ∃ limk→∞ A(k) + B (k) = A + B, ∃ limk→∞ A(k) · B (k) = A · B (4.60) Определение 4.3. Сумма матричного ряда P∞ Пусть k=1 A(k) , ∀k ∈ N A(k) ∈ Rn×m . P∞ Ряд k=1 A(k) называется сходящимся, если Pl (l) (l) ∃ liml→∞ SA = A, где SA = k=1 A(k) , A ∈ Rn×m . Необходимое условие сходимости матричного ряда P∞ Пусть ряд k=1 A(k) сходится. Тогда lim A(k) = 0 k→∞ (4.61) Метод простой итерации (продолжение) Теорема 4.1. Пусть B ∈ Rn×n . limk→∞ B k = 0 ⇔ |λi (B)| < 1 ∀i = 1, 2, . . . , n, где λi (B) (i = 1, 2, . . . , n) — собственные значения матрицы B. Доказательство утверждения теоремы основано на использовании жордановой формы матрицы. Для любой квадратной матрицы B существует невырожденная матрица (преобразование) T такое, что матрица G = T −1 · B · T имеет жорданову форму15 .   G2 = T −1 · B · T · T −1 · B · T = T −1 · B 2 · T, G3 = T −1 · B 2 · T · T −1 · B · T = T −1 · B 2 · T, ·········   Gk = T −1 · B k−1 · T · T −1 · B · T = T −1 · B k · T. Поскольку 1 kGk k ≤ kT −1 kkB k kkT k, 2 B k = T · Gk · T −1 и kB k k ≤ kT kkGk kkT −1 k, то limk→∞ B k = 0 ⇔ limk→∞ Gk = 0. 15 см. теорему о приведении матрицы к жордановой форме Метод простой итерации (продолжение) Предлагается ограничиться рассмотрением основной идеи доказательства утверждения теоремы. В простейшем случае, когда λi (B) ∈ R (i = 1, 2, . . . , n) и λi (B) 6= λj (B) ∀i 6= j, утверждение теоремы становится очевидным. В этом случае   λ1 (B)  0 G= ··· λk1 (B)  0 Gk =  ···  λ2 (B) ··· λk2 (B) ··· ··· ··· ··· ··· ··· ··· ··· ··· 0  , ···  λn (B)  0  . ···  k λn (B) Доказательство утверждения теоремы для случая, когда матрица B имеет кратные и/или комплексные собственные значения, является технически существенно более громоздким16 .  16 Предлагается ознакомиться самостоятельно. N8 Метод простой итерации (продолжение) Теорема 4.2. P∞ Для сходимости ряда k=0 B k необходимо и достаточно, чтобы |λi (B)| < 1 ∀i = 1, 2, . . . , n, где λi (B) (i = 1, 2, . . . , n) — собственные значения матрицы B. Доказательство: Необходимость следует из необходимого условия (4.61) сходимости P∞ ряда i=0 B k и теоремы 4.1. Достаточность Пусть |λi (B)| < 1 ∀i = 1, 2, . . . , n. Тогда λi (E − B) > 0 ∀i = 1, 2, . . . , n. Следовательно, матрица E − B невырождена. Метод простой итерации (продолжение) Нетрудно убедиться, что  E + B + B 2 + . . . + B k · (E − B) = E − B k+1 . (4.62) −1 Умножение обеих частей равенства (4.62) на матрицу (E − B) справа приводит к выражению  −1 E + B + B 2 + . . . + B k = E − B k+1 · (E − B) . (4.63) Переход к пределу при k → ∞ в (4.63) приводит к формуле ∞ X −1 B k = (E − B) . i=0 Поскольку, в силу теоремы 4.1, limk→∞ B k = 0.  Теорема доказана. (4.64) Метод простой итерации (продолжение) Теорема 4.3. Для сходимости итерационного процесса (4.56) (метода простой итерации) при любых начальном приближении x(0) и векторе c необходимо и достаточно, чтобы |λi (B)| < 1 ∀i = 1, 2, . . . , n, где λi (B) (i = 1, 2, . . . , n) — собственные значения матрицы B. Доказательство: Необходимость Если итерационный процесс (4.56) сходится при любых начальном приближении x(0) и векторе c, то он сходится и при x(0) = 0. Для нулевого начального приближения итерационная процедура (4.56) приобретает вид  x(k+1) = E + B + B 2 + . . . + B k c, k = 0, 1, 2, . . . . (4.65) Поскольку для любого вектора c существует предел при k → ∞ левой части равенства (4.65), то существует limk→∞ E + B + B 2 + . . . + B k c. Метод простой итерации (продолжение) В силу определения сходимости матричной последовательности Pk (k) (k) это означает, что ∃ limm→∞ SB , где SB = m=o B m , то есть ряд P ∞ k k=0 B сходится. Тогда условие |λi (B)| < 1 ∀i = 1, 2, . . . , n следует из теоремы 4.2. Достаточность следует из теорем 4.1 и 4.2.  Теорема доказана. Теорема 4.4. Для любой матрицы B ∈ Rn×n справедливы неравенства |λi (B)| < kBk ∀i = 1, 2, . . . , n, (4.66) где λi (B) (i = 1, 2, . . . , n) — собственные значения матрицы B. Доказательство: Пусть λ — собственное значение матрицы B и x 6= 0 — соответствующий ему собственный вектор этой матрицы. Тогда Bx = λx. В силу свойств (4.33), (4.36) нормы Метод простой итерации (продолжение) |λ| · kxk = kλxk = kBxk ≤ kBk · kxk. (4.67) Поскольку kxk > 0, то деление обеих частей выражения (4.67) на kxk приводит к неравенству |λ| ≤ kBk.  Теорема доказана. Следствие Пусть B ∈ Rn×n : kBk < 1. Тогда k(E − B) −1 k≤ 1 1 − kBk (4.68) Доказательство: Поскольку P∞ |λi (B)| ≤ kBk < 1 ∀i = 1, 2, . . . , n, то, в силу теоремы 4.2, ряд k=0 B k сходится и его сумма определяется формулой (4.64). Таким образом, k(E − B) −1 ∞ ∞ ∞ X X X kBkk = k=k Bk k ≤ kB k k ≤ i=0  Следствие доказано. i=0 k=0 1 . 1 − kBk Оценка скорости сходимости метода простой итерации Пусть x̄ ∈ Rn является решением системы (4.54), то есть x̄ = B x̄ + c (4.69) Тогда, в силу формулы (4.55), задающей процедуру метода простой итерации, и (4.69), а также свойств (4.36) нормы kx̄ − x(k+1) k = kB x̄ + c − Bx(k) − ck = kB(x̄ − x(k) )k ≤ ≤ kBkkx̄ − x(k) k = kBkkB x̄ + c − Bx(k−1) − ck = = kBkkB(x̄ − x(k−1) )k ≤ kBk2 kx̄ − x(k−1) k = ·················· ≤ kBkk+1 kx̄ − x(0) k Теорема 4.5. Достаточное условие сходимости Пусть kBk < 1. Тогда итерационный процесс (4.55) сходится при любом начальном приближении x(0) и справедлива оценка kx̄ − x(k) k ≤ kBkk kx̄ − x(0) k ∀k ∈ N (4.70) Достаточные условия сходимости метода простой итерации 1) kBk1 = maxj=1,2,...,n Pn 2) kBk∞ = maxi=1,2,...,n 3) kBk2 = i=1 Pn |bij | < 1, j=1 |bij | < 1, (4.71) p maxi=1,2,...,n λi (B ∗ B) < 1 С учетом (4.14) 2 (kBk2 ) = maxi=1,2,...,n λi (B ∗ B) ≤ ∗ ≤ λ1 (B ∗ B) +P λ2 (BP B) + . . . + λn (B ∗ B) = n n ∗ = tr(B B) = i=1 j=1 b2ij 4) n X n X i=1 j=1 b2ij < 1 (4.72) Погрешность метода простой итерации Пусть kBk < 1 и x̄ ∈ Rn — решение системы (4.54), то есть x̄ = B x̄ + c или −1 x̄ = (E − B) c. (4.73) Аналогично (4.63) нетрудно показать, что  x(k) = B k x(0) + B k−1 + B k−2 + . . . + B 2 + B + E c =  −1 E − B k c. = B k x(0) + (E − B) (4.74) Тогда, в силу (4.73) и (4.74),  −1 −1 x(k) − x̄ = B k x(0) + (E − B) E − B k c − (E − B) c = −1 = B k x(0) − (E − B) B k c. Откуда с учетом (4.68) Оценка погрешности метода простой итерации Пусть kBk < 1. Тогда kx(k) − x̄k ≤ kBkk kx(0) k + kBkk kck ∀k ∈ N. 1 − kBk (4.75) Частные реализации метода простой итерации для системы Ax = b Ax = b, n (4.76) n×n : det(A) 6= 0. где x, b ∈ R , A ∈ R Для системы (4.76) справедливо следующее преобразование Ax = b ∼ ∼ ∼ ∼ Ax − b = 0 ∼ H (Ax − b) = 0 ∼ x = x − H (Ax − b) ∼ x = (E − HA) x + Hb, (4.77) где H ∈ Rn×n — произвольная невырожденная матрица. Таким образом, система (4.76) с помощью преобразования (4.77) может быть преобразована в равносильную ей систему вида x = Bx + c, (4.78) для приближенного решения которой применим метод простой итерации (4.55). Здесь B = E − HA, c = Hb. Частные реализации метода простой итерации для системы Ax = b Согласно оценке (4.70) (см. теорему 4.5), для системы (4.78) метод простой итерации (4.55) сходится также, как геометрическая прогрессия со знаменателем kBk. Следовательно, чем “ближе” в (4.77) матрица H к A−1 , тем быстрее сходится метод простой итерации для системы (4.78) c матрицей B = E − HA. В вычислительной практике для приближенного решения системы (4.76) методом простой итерации используют достаточно много частных способов приведения системы (4.76) к требуемому виду (4.78). Таким образом возникают частные реализации метода простой итерации (4.55). Далее будут рассмотрены: Метод Якоби, Метод Гаусса-Зейделя. Метод Якоби Пусть A ∈ Rn×n : aii 6= 0 ∀i = 1, 2, . . . , n. (4.79) В этом случае из каждого уравнения системы системы (4.76) можно выразить переменную с коэффициентом, задаваемым диагональным элементом матрицы A, через другие переменные. В результате строится равносильная системе (4.76) система (4.78), численная процедура метода простой итерации для которой в покоординатной форме записи имеет вид: Численная процедура метода Якоби P  Pn (k) (k) (k+1) i−1 a x + a x − b xi = − a1ii ij ij i j j j=1 j=i+1 i = 1, 2, . . . , n,  > (0) (0) (0) где k = 0, 1, 2, . . ., x1 , x2 , . . . , xn ∈ Rn . (4.80) Для исследования свойств метода Якоби (4.80) удобно его записать в матричной форме. Для этого предлагается матрицу A представить в виде суммы трех слагаемых: Метод Якоби (продолжение) A = L + D + R, (4.81) где L — нижнетреугольная матрица с нулевой главной диагональю, D — диагональная матрица, R — верхнетреугольная матрица с нулевой главной диагональю. Тогда метод Якоби (4.80) в матричной форме может быть представлен в следующем виде: Численная процедура метода Якоби x(k+1) = −D−1 (L + R) x(k) + D−1 b, (4.82) где k = 0, 1, 2, . . ., x(0) ∈ Rn . Согласно теореме 4.3, критерий сходимости метода Якоби (4.82) может быть сформулирован в терминах корней уравнения det(λE − B) = 0, в котором B = −D−1 (L + R). (4.83) Критерий сходимости метода Якоби Левая часть равенства (4.83) может быть преобразована следующим образом det(λE − B) = det(λE + D−1 (L + R)) = = det(D−1 (λD + L + R)) = = det(D−1 )det(λD + L + R) (4.84) Поскольку в силу сделанных предположений (4.79)17 det(D−1 ) 6= 0, то с учетом (4.84) уравнение (4.83) равносильно следующему det(λD + L + R) = 0. (4.85) Теорема 4.6. Для сходимости метода Якоби (4.82) необходимо и достаточно, чтобы абсолютные значения всех корней уравнения (4.85) были меньше единицы. 17 a ii 6= 0 ∀i = 1, 2, . . . , n Достаточное условие сходимости метода Якоби Достаточное условие сходимости метода Якоби сформулировано в теореме 4.5. Для рассматриваемого метода предлагается его конкретизировать в терминах свойств матрицы A, используя “построчную” норму матрицы B = −D−1 (L + R):  aij − aii , i 6= j B = {bij }ni,j=1 , bij = 0, i=j Для того, чтобы kBk∞ < 1 необходимо и достаточно, чтобы n X n X |bij | = j=1 j=1,j6=i |aij | < 1 ∀i = 1, 2, . . . , n. |aii | (4.86) Условие (4.86) равносильно следующему n X j=1,j6=i |aij | < |aii | ∀i = 1, 2, . . . , n. (4.87) Достаточное условие сходимости метода Якоби (продолжение) Определение 4.4. Матрица A ∈ Rn×n обладает свойством строгого диагонального преобладанияa , если она удовлетворяет условию (4.87). a Если в условиях (4.87) знак неравенства “≤”, то говорят о нестрогом диагональном преобладании. Теорема 4.7. Достаточное условие сходимости Если матрица A системы (4.76) обладает свойством строгого диагонального преобладания, то метод Якоби (4.82) сходится для любого начального приближения x(0) ∈ Rn . Метода Якоби. Замечания. Замечание 4.1. Можно показать, что, если матрица A системы (4.76) обладает свойством нестрогого диагонального преобладания, но хотя бы для одной ее строки выполнено условие строгого диагонального преобладания, то метод Якоби (4.82) сходится для любого начального приближения x(0) ∈ Rn . Замечание 4.2. Перестановка уравнений в системе Ax = b влияет на сходимость метода Якоби (4.82). Пример Пусть n = 2. Численная процедура метода Якоби ( (k+1) (k) a11 x1 + a12 x2 = b1 (k) (k+1) a21 x1 + a22 x2 = b2 (4.88) Геометрическая интерпретация метода Якоби  x2 ① 1 ② ξ x1 ② x2 ① 1 ξ x1 N9 Метод Гаусса-Зейделя Пусть выполнено условие (4.79), то есть A ∈ Rn×n : aii 6= 0 ∀i = 1, 2, . . . , n . Численная процедура метода Гаусса-Зейделя (k+1) xi = − a1ii i = 1, 2, . . . , n, P i−1 j=1 (k+1) aij xj + Pn j=i+1 (k) aij xj − bi  (4.89)  > (0) (0) (0) где k = 0, 1, 2, . . ., x1 , x2 , . . . , xn ∈ Rn . Метод Гаусса-Зейделя в матричной форме имеет вид (L + D)x(k+1) + Rx(k) = b Численная процедура метода Гаусса-Зейделя в матричной форме −1 x(k+1) = − (L + D) Rx(k) + (L + D)−1 b,  > (0) (0) (0) где k = 0, 1, 2, . . ., x1 , x2 , . . . , xn ∈ Rn . (4.90) Критерий сходимости метода Гаусса-Зейделя Согласно теореме 4.3, критерий сходимости метода Гаусса-Зейделя (4.90) может быть сформулирован в терминах корней уравнения det(λE − B) = 0, (4.91) −1 в котором B = − (L + D) R. Левая часть равенства (4.91) может быть преобразована следующим образом −1 det(λE − B) = det(λE + (L + D) R) = −1 = det((L + D) (λL + λD + R)) = −1 = det((L + D) )det(λL + λD + R) (4.92) −1 Поскольку det((L + D) ) 6= 0, то уравнение (4.91) равносильно det(λL + λD + R) = 0. (4.93) Теорема 4.8. Для сходимости метода Гаусса-Зейделя (4.90) необходимо и достаточно, чтобы абсолютные значения всех корней уравнения (4.93) были меньше единицы. Достаточное условие сходимости метода Гаусса-Зейделя Теорема 4.9. Достаточное условие сходимости Если матрица A системы (4.76) является положительно-определенной, то метод Гаусса-Зейделя (4.90) сходится для любого начального приближения x(0) ∈ Rn . Доказательство. Этап 1. Вспомогательная экстремальная задача min F (x), x∈Rn где F (x) = (x, Ax) − 2 (x, b). Необходимое условие экстремума для функции F имеет вид ∇F (x) = 2Ax − 2b = 0, то есть Ax = b. Пусть F0 (x) = F (x) − F (x̄), где x̄ ∈ Rn : Ax̄ = b. Тогда, поскольку A > 0, то для любого x ∈ Rn (4.94) Достаточное условие сходимости метода Гаусса-Зейделя (продолжение) F0 (x) = F (x) − F (x̄) = (x, Ax) − 2 (x, b) − (x̄, Ax̄) + 2 (x̄, b) = = (x, Ax) − 2 (x, Ax̄) − (x̄, Ax̄) + 2 (x̄, Ax̄) = = (x − x̄, A(x − x̄)) ≥ 0. (4.95) Таким образом, для любого x ∈ Rn F (x) ≥ F (x̄). Следовательно, x̄ ∈ Rn — единственная точка минимума18 непрерывной функции F . Этап 2. Метод покоординатного спуска Пусть x(k) — текущее приближение x̄. Тогда следующее приближение x(k+1) на k + 1-ой итерации метода покоординатного спуска определяется в результате выполнения следующей n-шаговой процедуры 18 Матрицей Гессе для функции F является матрица H(F ) = A > 0. Достаточное условие сходимости метода Гаусса-Зейделя (продолжение)   (k) (k) (k) =Arg{minx1 ∈R F x1 , x2 , x3 , . . . , xn },   (k) (k) (k+1) (k+1) , x2 , x3 , . . . , xn }, =Arg{minx2 ∈R F x1 x2 ············  (k+1) x1 (k+1) (k+1) (k+1) (k) (k) , . . . , xi−1 , xi , xi+1 , . . . , xn xi =Arg{minxi ∈R F x1 ············   (k+1) (k+1) (k+1) (k+1) xn =Arg{minxn ∈R F x1 , x2 , . . . , xn−1 , xn }.  }, (4.96) Необходимым условием экстремума на i-ом шаге этой процедуры является следующее равенство  ∂F  (k+1) (k+1) (k) x1 , . . . , xi−1 , xi , xi+1 , . . . , x(k) = 0. n ∂xi (k+1) Следовательно, экстремальная точка xi равенству удовлетворяет Достаточное условие сходимости метода Гаусса-Зейделя (продолжение) ∂F ∂xi  (k+1) x1 (k+1) (k+1) , . . . , xi−1 , xi (k+1) = 2(ai1 x1 (k) +aii+1 xi+1 + (k) (k) , xi+1 , . . . , xn  = (k+1) (k+1) + . . . + aii−1 xi−1 + aii xi + (k) . . . + ain xn − bi ) = 0. (4.97) Нетрудно видеть, что формулы (4.97) идентичны формулам (4.89), задающим численную процедуру Гаусса-Зейделя. Таким образом, метод покоординатного спуска как метод приближенного решения вспомогательной экстремальной задачи (4.94) реализуется как численная процедура метода Гаусса-Зейделя. Этап 3. Сходимость метода покоординатного спуска (k) По построению процедуры (4.96) для x  любого  6= x̄ (k+1) (k) выполняется неравенство F x 0 следует, что при k → ∞ x(k) − x̄ → 0.  Теорема доказана. Метод Гаусса-Зейделя. Замечания. Замечание 4.3. Для системы Ax = b крамеровского типа можно построить равносильную ей систему A∗ Ax = A∗ b (4.101) с неотрицательно-определенной матрицей A∗ A. Если матрица A∗ A является положительно-определенной, то метод Гаусса-Зейделя (4.90) приближеннного решения системы (4.101) сходится. Замечание 4.4. Перестановка уравнений в системе Ax = b влияет на сходимость метода Гаусса-Зейделя (4.90). Пример Пусть n = 2. Численная процедура метода Гаусса-Зейделя ( (k+1) (k) a11 x1 + a12 x2 = b1 (4.102) (k+1) (k+1) a21 x1 + a22 x2 = b2 Геометрическая интерпретация метода Гаусса-Зейделя x2 ① 1 ② ξ x1 x2 ② ① 1 ξ x1 О скорости сходимости метода Гаусса-Зейделя Как было показано при доказательстве теоремы 4.9, численная процедура метода Гаусса-Зейделя реализуется как численная процедура метода покоординатного спуска в задаче минимизации функции F 0 (x) = (x − x̄, A(x − x̄)) , где Ax̄ = b, A > 0. В двумерном случае (n = 2) фазовый портрет функции F 0 (набор линий уровня этой функции) представляет собой набор концентрический эллипсов, главные полуоси которых задаются двумя ортогональными собственными векторами матрицы A, выпущенными из точки x̄. Реализация процедуры метода покоординатного спуска для различных вариантов ориентации собственных векторов матрицы A может проиллюстрирована следующим образом. О скорости сходимости метода Гаусса-Зейделя. Геометрическая интерпретация метода покоординатного спуска.  x2 x2 ξ ξ x1 x1 N10 ТЕМА 5. Численные методы решения систем нелинейных уравнений Система нелинейных уравнений f i (x1 , x2 , . . . , xn ) = 0 i = 1, 2, . . . , n (5.1) f (x) = 0, > (5.2) > где f = (f 1 , f 2 , . . . , f n ) , x = (x1 , x2 , . . . , xn ) ∈ Rn . Задачи 1 Отделение корней; 2 Уточнение корней. Методы уточнения корней 1 Метод простой итерации; 2 Метод Ньютона. 5.1. Метод простой итерации Пусть система (5.1) равносильна системе xi = ϕi (x1 , x2 , . . . , xn ) i = 1, 2, . . . , n (5.3) x = ϕ(x), (5.4) > > где ϕ = (ϕ1 , ϕ2 , . . . , ϕn ) , x = (x1 , x2 , . . . , xn ) ∈ Rn . Численная процедура метода простой итерации   x(k+1) = ϕ x(k) , (5.5) где k = 0, 1, 2, . . .; x(0) ∈ D[ϕ]. Матрица Якоби отображения ϕ  ∂ϕ 1  M ϕ (x ) =    (x) ∂x1 ∂ϕ2 (x) ∂x1 ··· ∂ϕn (x) ∂x1 ∂ϕ1 (x) ∂x2 ∂ϕ2 (x) ∂x2 ··· ∂ϕn (x) ∂x2 ··· ··· ··· ···  ∂ϕ1 (x) ∂xn  ∂ϕ2 (x)  ∂xn  ···  ∂ϕn (x) ∂xn (5.6) Достаточное условие сходимости метода простой итерации Теорема 5.1. Достаточное условие сходимости Пусть функции ϕi (i = 1, 2, . . . , n) непрерывно-дифференцируемы в окрестности решения ξ системы (5.4) и kMϕ (ξ)k < 1. (5.7) Тогда метод простой итерации (5.5) сходится для любого начального приближения x(0) из некоторой окрестности ξ. Доказательство утверждения теоремы является чисто техническим и основано на использовании принципа сжимающих отображений (теоремы о неподвижной точке сжимающего отображения). 5.2. Метод Ньютона Определение 5.1. Отображение (вектор-функция) f : Rn → Rn называется дифференцируемым по Фреше в точке x∗ ∈ D[f ], если ∃P (x∗ ) ∈ Rn×n : ∀x∗ + ∆x ∈ D[f ] ⇒ (5.8) kf (x∗ + ∆x) − f (x∗ ) − P (x∗ ) ∆xk = o (k∆xk) Достаточное условие дифференцируемости Если f i (i = 1, 2, . . . , n) определены и непрерывны со своими частными производными в некоторой окрестности точки x∗ , то вектор-функция f дифференцируема по Фреше в точке x∗ и ее производная в этой точке  ∂f   P (x ∗ ) = f 0 (x ∗ ) =    1 (x∗ ) ∂x1 ∂f 2 (x∗ ) ∂x1 ··· ∂f n (x∗ ) ∂x1 ∂f 1 (x∗ ) ∂x2 ∂f 2 (x∗ ) ∂x2 ··· ∂f n (x∗ ) ∂x2 ··· ··· ··· ··· ∂f 1 (x∗ ) ∂xn  ∂f 2 (x∗ )   ∂xn  ··· ∂f n (x∗ ) ∂xn   (5.9) Метод Ньютона (продолжение) Пусть ξ — решение системы (5.2), то есть f (ξ) = 0, x(k) — текущее приближение ξ. Тогда     kf (ξ) − f (x(k) ) − f 0 (x(k) ) ξ − x(k) k = o kξ − x(k) k . Отсюда ξ ≈ x(k) − [f 0 (x(k) )]−1 f (x(k) ). Численная процедура метода Ньютона x(k+1) = x(k) − [f 0 (x(k) )]−1 f (x(k) ), k = 0, 1, 2, . . . (5.10) где x(0) ∈ D[f ]; f (x(k) ) ∈ Rn ; [f 0 (x(k) )]−1 ∈ Rn×n . Реализация численной процедуры (5.11):  0 (k) f (x )∆x(k) = −f (x(k) ) x(k+1) = x(k) + ∆x(k) k = 0, 1, 2, . . .. (5.11) Сходимость метода Ньютона Теорема 5.2. Достаточные условия локальной сходимости Пусть выполнены следующие условия: a) функции f i (i = 1, 2, . . . , n) непрерывно-дифференцируемы в некоторой окрестности решения ξ системы (5.2); b) у функций f i (i = 1, 2, . . . , n) существуют и равномерно-ограничены частные производные второго порядка в некоторой окрестности ξ; c) матрица f 0 (ξ) обратима. Тогда для любого начального приближения x(0) , достаточно близкого к ξ, метод Ньютона (5.11) сходится и справедлива следующая оценка ∃0 < C ≤ 1 ∀k kx(k+1) − ξk ≤ Ckx(k) − ξk2 . Для доказательства утверждения теоремы используется стандартный аппарат математического анализа. (5.12) ТЕМА 6. Численная интерполяция Постановка задачи Пусть заданы набор данных x0 , x1 , x2 , . . . , xn ∈ [a, b] : xi 6= xj ∀i 6= j y0 , y1 , y2 , . . . , yn (6.1) и класс функций Φ. ϕ ∈ Φ : ϕ(xi ) = yi ∀i = 0, 1, 2, . . . , n. (6.2) Числа xi (i = 0, 1, 2, . . . , n) называют узлами интерполяции19 . Примеры Φ: Φ = hsin kx, cos kxi, k = 1, 2, . . .; Φ = hexpk xi, k = 1, 2, . . .; Φ = hxk i, k = 0, 1, 2, . . . 19 На классе функций Φ требуется определить функцию, график которой проходит через заданные точки (xi , yi ) i = 0, 1, 2, . . . , n. 6.1. Решение задачи численной интерполяции Пусть Φ = hϕ0 (x), ϕ1 (x), ϕ2 (x), . . . , ϕn (x)i x ∈ [a, b] ⊂ D[ϕi ] (i = 0, 1, 2, . . . , n). (6.3) > ∀ϕ ∈ Φ ∃ (a0 , a1 , a2 , . . . , an ) ∈ Rn+1 (6.4) ϕ(x) = a0 ϕ0 (x) + a1 ϕ1 (x) + a2 ϕ2 (x) + . . . + an ϕn (x). Тогда, в силу (6.3) и (6.4), задача численной интерполяции (6.2) сводится к решению следующей системы линейных алгебраических уравнений относительно неизвестных a0 , a1 , a2 , . . . , an a0 ϕ0 (xi ) + a1 ϕ1 (xi ) + a2 ϕ2 (xi ) + . . . + an ϕn (xi ) = yi (6.5) i = 0, 1, 2, . . . , n Возникает вопрос о существовании и единственности решения системы (6.5) для заданных набора данных (6.1) и класса функций Φ. Чебышевская система функций Пример Пусть x0 = −1, x1 = 1; Φ = h1, x2 i. Тогда ∀y0 , y1 определитель матрицы системы (6.5)   1 1 det = 0. 1 1 Определение 6.1. Система функций ϕ0 , ϕ1 , ϕ2 , . . . , ϕn называется чебышевской на отрезке [a, b] ⊂ D[ϕi ] (i = 0, 1, 2, . . . , n), если любая нетривиальная линейная комбинация a0 ϕ0 (x) + a1 ϕ1 (x) + a2 ϕ2 (x) + . . . + an ϕn (x) этих функций имеет на отрезке [a, b] не более, чем n нулей. Разрешимость задачи численной интерполяции Примеры Система функций ϕ0 (x) ≡ 1, ϕ1 (x) = x, ϕ2 (x) = x2 , . . . , ϕn (x) = xn является чебышевской на любом отрезке [a, b]; Система функций ϕ0 (x) = x, ϕ1 (x) = x2 , ϕ2 (x) = x3 , . . . , ϕn (x) = xn+1 не является чебышевской на любом отрезке [a, b], который содержит 0. Теорема 6.1. Для того, чтобы определитель системы (6.5) был отличен от нуля для любого набора узлов интерполяции x0 , x1 , x2 , . . . , xn ∈ [a, b] необходимо и достаточно, чтобы система функций ϕ0 , ϕ1 , ϕ2 , . . . , ϕn была чебышевской на отрезке [a, b]. Доказательство критерия разрешимости задачи численной интерполяции Необходимость. От противного. Пусть определитель системы (6.5) отличен от нуля для любого набора узлов интерполяции x0 , x1 , x2 , . . . , xn ∈ [a, b], а система функций ϕ0 , ϕ1 , ϕ2 , . . . , ϕn не является чебышевской на отрезке [a, b]. Это означает, что существует такая нетривиальная линейная комбинация ā0 ϕ0 (x) + ā1 ϕ1 (x) + ā2 ϕ2 (x) + . . . + ān ϕn (x) этих функций, которая на отрезке [a, b] имеет, по крайней мере, n + 1 нулей x̄0 , x̄1 , x̄2 , . . . , x̄n ∈ [a, b]. Тогда система (6.5) становится однородной ā0 ϕ0 (x̄i ) + ā1 ϕ1 (x̄i ) + ā2 ϕ2 (x̄i ) + . . . + ān ϕn (x̄i ) = 0 i = 0, 1, 2, . . . , n, (6.6) которая имеет нетривиальное решение (ā0 , ā1 , ā2 , . . . , ān ) 6= 0. Следовательно, определитель матрицы системы (6.6) равен нулю. Возникает противоречие. Доказательство критерия разрешимости задачи численной интерполяции Достаточность. От противного. Пусть система функций ϕ0 , ϕ1 , ϕ2 , . . . , ϕn является чебышевской на отрезке [a, b], но существует набор узлов интерполяции x̄0 , x̄1 , x̄2 , . . . , x̄n ∈ [a, b], для которого определитель системы (6.5) равен нулю. Тогда для этого набора узлов соответствующая системе (6.5) однородная система (6.6) имеет нетривиальное решение (ā0 , ā1 , ā2 , . . . , ān ) 6= 0. Следовательно, для нетривиальной линейной комбинации ā0 ϕ0 (x) + ā1 ϕ1 (x) + ā2 ϕ2 (x) + . . . + ān ϕn (x) n + 1 узлов x̄0 , x̄1 , x̄2 , . . . , x̄n ∈ [a, b] являются нулями. Получено противоречие с чебышевостью системы функций ϕ0 , ϕ1 , ϕ2 , . . . , ϕn на отрезке [a, b].  Теорема доказана. Решение задачи численной интерполяции на классе многочленов степени не более, чем n Φ = h1, x, x2 , . . . , xn i ϕ(x) = a0 + a1 x + a2 x2 + . . . + an xn ∀ϕ ∈ Φ Система (6.5) имеет вид  a0 + a1 x0 + a2 x20 + . . . + an xn0 = y0    a0 + a1 x1 + a2 x21 + . . . + an xn1 = y1 ····································    a0 + a1 xn + a2 x2n + . . . + an xnn = yn (6.7) Так как система функций 1, x, x2 , . . . , xn является чебышевской на любом отрезке [a, b], то для любых x0 , x1 , x2 , . . . , xn ∈ [a, b] система (6.7) имеет единственное решение20 . Кроме того, известно, что определитель системы (6.7)21 отличен от нуля для любого набора различных точек x0 , x1 , x2 , . . . , xn . 20 Через любые n + 1 точек можно провести единственный многочлен n-ой степени. 21 Определитель системы (6.7) называется определителем Вандермонда. 6.2. Интерполяционный многочлен Лагранжа Постановка задачи Пусть задан набор данных (6.1). Требуется построить многочлен степени n Pn (x) = a0 + a1 x + a2 x2 + . . . + an xn : (6.8) Pn (xi ) = yi ∀i = 0, 1, 2, . . . , n. Частная задача lk (x) ∈ Φ = h1,x, x2 , . . . , xn i : 0, i 6= k lk (xi ) = δik = ∀i = 0, 1, 2, . . . , n 1, i = k k = 0, 1, 2, . . . , n. (6.9) Решение частной задачи (6.9) lk (x) = (x−x0 )(x−x1 )...(x−xk−1 )(x−xk+1 )...(x−xn ) (xk −x0 )(xk −x1 )...(xk −xk−1 )(xk −xk+1 )...(xk −xn ) k = 0, 1, 2, . . . , n. (6.10) Интерполяционный многочлен Лагранжа ... Решение общей задачи (6.8) Ln (x) = n X yk lk (x) (6.11) k=0 Классическая форма интерполяционного многочлена Лагранжа Пусть для некоторой функции f известны ее значения в n + 1-ой точке xi ∈ D[f ] (i = 0, 1, 2, . . . , n). Ln (x) = n X k=0 f (xk )Πni=0,i6=k x − xi xk − xi (6.12) Основным недостатком формулы (6.12) при ее практическом использовании является необходимость заново пересчитывать все коэффициенты интерполяционного многочлена Лагранжа при изменении набора данных (xi , yi ) (i = 0, 1, 2, . . . , n).  N11 6.3. Погрешность интерполяционного многочлена Лагранжа Определение 6.2. Пусть для некоторой функции f известны ее значения в n + 1-ой точке xi ∈ [a, b] ⊆ D[f ] (i = 0, 1, 2, . . . , n). Тогда под погрешностью интерполяционного многочлена Лагранжа (6.12), построенного для функции f , (погрешностью метода) понимается Rn (x) = f (x) − Ln (x) x ∈ [a, b] (6.13) В предположении, что f ∈ C (n+1) ([a, b]) требуется определить структуру погрешности (6.13). Предлагается искать Rn (x) в следующем виде Rn (x) = g(x)ω n (x) x ∈ [a, b], (6.14) ω n (x) = (x − x0 )(x − x1 )(x − x2 ) . . . (x − xn ). (6.15) где Здесь g(x) — некоторая функция, которую и следует определить. Структура погрешности интерполяционного многочлена Лагранжа Вспомогательная функция F (x) = f (x) − Ln (x) − g(x̄)ω n (x) x ∈ [a, b], (6.16) где x̄ ∈ [a, b] — произвольно-выбранная и зафиксированная точка. Свойства функции F : 1 F ∈ C (n+1) ([a, b]), так как f ∈ C (n+1) ([a, b]); 2 По построению F : F (x̄) = 0, F (xi ) = 0 (i = 0, 1, 2, . . . , n). Таким образом, функция гладкая функция F обращается в ноль в n + 2 точках отрезка [a, b]. Здесь без потери общности можно считать, что a ≤ x0 < x1 < x2 < . . . < xn < x̄ ≤ b Последовательное применение теоремы Ролля приводит к следующим заключениям: Структура погрешности интерполяционного многочлена Лагранжа ... (1) 1) F 0 (xi ) = 0 (i = 1, 2, . . . , n + 1) : (1) (1) xj ∈ [xj−1 , xj ] (j = 1, 2, . . . , n), xn+1 ∈ [xn , x̄]; (2) 2) F 00 (xi ) = 0 (i = 1, 2, . . . , n) : (2) (1) (1) xj ∈ [xj , xj+1 ] (j = 1, 2, . . . , n); (3) (3) 3) F (xi ) = 0 (i = 1, 2, . . . , n − 1) : (3) (2) (2) xj ∈ [xj , xj+1 ] (j = 1, 2, . . . , n − 1); ........................ (n) (n) n) F (xi ) = 0 (i = 1, 2) : (n) (n−1) (n−1) xj ∈ [xj , xj+1 ] (j = 1, 2); (n+1) n + 1) F (ξ) = 0 : (n) (n) ξ ∈ [x1 , x2 ]. Структура погрешности интерполяционного многочлена Лагранжа ... Поскольку ω n (n+1) (x) ≡ (n + 1)! и Ln (n+1) (x) ≡ 0, то из (6.16) следует, что F (n+1) (x) = f (n+1) (x) − (n + 1)!g(x̄). Отсюда с учетом того, что F (n+1) (ξ) = 0 и ξ = ξ(x̄), следует, что g(x̄) = f (n+1) (ξ(x̄)) . (n + 1)! Поскольку x̄ ∈ [a, b] — произвольно-выбранная точка, то g(x) = f (n+1) (ξ(x)) (n + 1)! ∀x ∈ [a, b]. Формулы (6.15) и (6.17) приводят к выражению (6.17) Структура погрешности интерполяционного многочлена Лагранжа ... Погрешность интерполяционного многочлена Лагранжа Пусть f ∈ C (n+1) ([a, b]). Тогда Rn (x) = f (n+1) (ξ(x)) ω n (x) ∀x ∈ [a, b]. (n + 1)! (6.18) Из (6.18) следует Оценка погрешности интерполяционного многочлена Лагранжа Пусть f ∈ C (n+1) ([a, b]). Тогда |Rn (x)| ≤ Mn+1 |ω n (x)| (n + 1)! где Mn+1 = maxx∈[a,b] |f (n+1) (x)|. ∀x ∈ [a, b], (6.19) 6.4. Задача минимизации погрешности численной интерполяции Случай равноотстоящих узлов Пусть xi ∈ [a, b] (i = 0, 1, 2, . . . , n): xi+1 = xi + h ∀i = 0, 1, 2, . . . , n − 1. Тогда величины |ω n (x̄)| = |(x̄ − x0 )(x̄ − x1 )(x̄ − x2 ) . . . (x̄ − xn )| тем больше, чем дальше значение x̄ его аргумента от середины a+b 2 отрезка [a, b]. Постановка задачи ω n (x) = xn+1 + a1 xn + a2 xn−1 + . . . + an−1 x2 + an x + an+1 , где ai ∈ R (i = 1, 2, . . . , n + 1). Пусть Υ — множество многочленов степени n + 1, приведенных над полем вещественных чисел (коэффициент при старшей степени переменной равен единице), V (p) = maxx∈[a,b] |p(x)|, p ∈ Υ. p∗ = Arg{ min V (p) } p∈Υ (6.20) Многочлены Чебышева Определение 6.3. Многочленом Чебышева n-ой степени называется T n (x) = cos (n arccos x) x ∈ [−1, 1], n ∈ N ∪ {0} (6.21) cos((n + 1)y) + cos((n − 1)y) = 2 cos(y) cos(ny) (6.22) Используя формулу (6.22) и обозначения y = arccos x, нетрудно убедиться, что T n+1 (x) + T n−1 (x) = 2T 1 (x)T n (x) x ∈ [−1, 1], n ∈ N Откуда следует рекуррентная формула T n+1 (x) = 2T 1 (x)T n (x) − T n−1 (x) x ∈ [−1, 1], n ∈ N В силу (6.21) и (6.23) T 0 (x) ≡ 1, T 1 (x) = x,  T 2 (x) = 2x2 − 1, T 3 (x) = 2x 2x2 − 1 − x = 4x3 − 3x, ········· (6.23) Экстремальное свойство многочленов Чебышева Таким образом, T n (x) = 2n−1 xn + . . . ∀n ∈ N. Следовательно, p∗n+1 (x) = 1 T n+1 (x) ∈ Υ, x ∈ [−1, 1] 2n (6.24) Теорема 6.2. Многочлен p∗n+1 (x) (x ∈ [−1, 1]), задаваемый формулой (6.24), имеет n + 1 различных корней, принадлежащих отрезку [−1, 1]. Доказательство. p∗n+1 (x) = 0 ⇔ T n+1 (x) = 0. T n+1 (x) = cos((n + 1) arccos x) = 0 ⇔ (n + 1) arccos x = π2 + πk, k ∈ Z ⇔ arccos x = x̄k = cos (2k+1)π 2(n+1) , (2k + 1)π , k = 0, 1, 2, . . . , n 2(n + 1) k∈Z ⇔ (6.25) Нетрудно проверить, что для любого целого значения индекса k: k < 0 или k > n набор, задаваемый (6.25), уже содержит соответствующую такому значению индекса точку.  Теорема доказана. Экстремальное свойство многочленов Чебышева ... Теорема 6.3. Многочлен p∗n+1 (x) (x ∈ [−1, 1]), задаваемый формулой (6.24), является единственным решением экстремальной задачи (6.20) на отрезке [−1, 1]. Оптимальные узлы численной интерполяции на отрезке [−1, 1] При решении задачи численной интерполяции (6.1) по n + 1-ому узлу на отрезке [−1, 1] с помощью интерполяционного многочлена Лагранжа (6.12) оптимальными интерполяционнымиa узлами являются корни x̄k (k = 0, 1, 2, . . . , n) многочлена Чебешева, определяемые формулами (6.25). При этом справедливо неравенство |ω n (x)|=|(x−x̄0 )(x−x̄1 )(x−x̄2 ) . . . (x−x̄n )|≤ aВ смысле решения экстремальной задачи (6.20). 1 ∀x∈[−1, 1] 2n (6.26) Оптимальные узлы численной интерполяции на произвольном отрезке [a, b] ⊂ R Пусть задана некоторая биекция ψ : [a, b] → [−1, 1]. Наиболее простой является линейная функция x= 2t − (b + a) t ∈ [a, b] b−a (6.27) Тогда с помощью биекции (6.28) многочлен Чебышева n + 1-ой степени можно определить на отрезке [a, b] следующим образом   2n+1 2t−(b+a) = 2n tn+1 + . . . t∈[a, b] (6.28) Tn+1 (x)=Tn+1 b−a (b−a)n+1 Многочлен p∗n+1 (t) (t ∈ [a, b]) — решение задачи (6.20) на отрезке [a, b] имеет вид   Tn+1 2t−(b+a) b−a p∗n+1 (t) = ω n (t) = t∈[a, b] (6.29) 22n+1 (b−a)n+1 Оптимальные узлы численной интерполяции на произвольном отрезке ... Таким образом, если в качестве узлов интерполяции на отрезке [a, b] взять точки t̄k = (b − a)x̄k + (b + a) k = 0, 1, 2, . . . , n, 2 (6.30) где x̄k (k = 0, 1, 2, . . . , n) — корни многочлена Чебышева Tn+1 (x), определяемые формулами (6.25), то оценка погрешности численной интерполяции на отрезке [a, b] с помощью интерполяционного многочлена Лагранжа задается неравенством |Rn (t)| ≤ (b−a)n+1 Mn+1 22n+1 (n + 1)! ∀t ∈ [a, b], (6.31) где Mn+1 = maxt∈[a,b] |f (n+1) (t)|. max |ω n (t)| = t∈[a,b] (b−a)n+1 . 22n+1 (6.32) 6.5. Разделенные разности Определение 6.4. Пусть xi , xi+1 , xi+2 , . . . , xi+k ∈ [a, b] ⊂ D[f ]: xi+j 6= xi+s ∀j 6= s. Разделенной разностью k-го порядка функции f , построенной по набору узлов xi , xi+1 , xi+2 , . . . , xi+k , называется число f (xi , xi+1 , . . . , xi+k−1 , xi+k ) = = f (xi ,xi+1 ,...,xi+k−1 )−f (xi+1 ,xi+2 ,...,xi+k ) (6.33) xi −xi+k Пусть заданы значения функции f в узлах интерполяции x0 , x1 , x2 , . . . , xn ∈ [a, b] ⊂ D[f ]: xj 6= xs ∀j 6= s. Тогда, в силу (6.33), разделенными разностями 0-го порядка функции f являются f (x0 ), f (x1 ), f (x2 ), . . . , f (xn ). Примерами разделенных разностей 1-го порядка функции f , построенных по указанному выше набору узлов, являются числа f (xi , xi+1 ) = f (xi ) − f (xi+1 ) ∀i = 0, 1, . . . , n − 1, xi − xi+1 Разделенные разности ... разделенных разностей 2-го порядка — f (xi , xi+1 , xi+2 ) = f (xi , xi+1 ) − f (xi+1 , xi+2 ) ∀i = 0, 1, . . . , n − 2; xi − xi+2 разделенных разностей 3-го порядка — f (xi , xi+1 , xi+2 , xi+3 )= f (xi , xi+1 , xi+2 )−f (xi+1 , xi+2 , xi+3 ) ∀i=0, 1, . . ., n−3 xi −xi+3 ··············· Здесь разделенная разность наибольшего, n-го порядка, функции f , построенная по набору узлов x0 , x1 , x2 , . . . , xn — это число f (x0 , x1 , . . . , xn−1 , xn ) = f (x0 , x1 , . . . , xn−1 ) − f (x1 , . . . , xn−1 , xn ) . x0 − xn Все приведенные выше разделенные разности порядков от 0-го до n-го, построенные для функции f по набору узлов x0 , x1 , x2 , . . . , xn , формируют треугольник Паскаля.  N12 Свойства разделенных разностей Теорема 6.4. Разделенная разность k-го порядка f (xi , xi+1 , . . . , xi+k−1 , xi+k ) функции f , построенная по набору узлов xi , xi+1 , xi+2 , . . . , xi+k , представима в виде f (xi , xi+1 , . . . , xi+k−1 , xi+k ) = Pn f (xi+k ) = k=0 Πn (xi+k −xi+j ) (6.34) j=0,j6=k Утверждение теоремы можно доказать методом математической индукции по порядку k разделенной разности22 . Из формулы (6.34) следуют несколько полезных свойств разделенных разностей. 22 Доказать самостоятельно. Свойства разделенных разностей Свойство 1. При фиксированном наборе узлов xi , xi+1 , xi+2 , . . . , xi+k разделенная разность k-го порядка f (xi , xi+1 , . . . , xi+k−1 , xi+k ) может быть рассмотрена как отображение, действующее из некоторого пространства функций Φ в множество вещественных чисел R, то есть как функционал. Тогда такой функционал является линейным и однородным, то есть ∀f , g ∈ Φ ∀α, β ∈ R (αf + βg) (xi , xi+1 , . . . , xi+k−1 , xi+k ) = = αf (xi , xi+1 , . . . , xi+k−1 , xi+k ) + +βg (xi , xi+1 , . . . , xi+k−1 , xi+k ) (6.35) Свойство 2. Разделенная разность f (xi , xi+1 , . . . , xi+k−1 , xi+k ) не зависит от упорядочения узлов в наборе, по которому она построена. Свойства разделенных разностей ... Свойство 3. Для многочлена Pn (x) степени n разделенная разность n-го порядка является константой, которая не зависит от набора узловa . a Следствие. Для многочлена Pn (x) степени n любая разделенная разность n + 1-го порядка равна нулю. Доказательство. Пусть x0 , x1 , . . . , xn−1 , xn — произвольный набор узлов. Тогда23 Pn (x) ≡ Ln (x) = n X Pn (xk )Πni=0,i6=k k=0 x − xi = a0 xn + . . . , xk − xi (x0 ) (x1 ) a0 = (x0 −x1 )(xP0 n−x + (x1 −x0 )(xP1 n−x + ...+ 2 )...(x0 −xn ) 2 )...(x1 −xn ) Pn (xn ) Pn (xi ) (xi −x0 )...(xi −xi−1 )(xi −xi+1 )...(xi −xn ) + . . . + (xn −x0 )(xn −x1 )...(xn −xn−1 ) = = Pn (x0 , x1 , . . . , xn−1 , xn )  Свойство доказано. 23 Через n + 1-у точку можно провести единственный многочлен степени n. (n + 1)-шаговая процедура для произвольной точки x ∈ [a, b] Пусть x0 , x1 , . . . , xn−1 , xn ∈ [a, b]: [a, b] ⊂ D[f ]. f (x)−f (x ) 0) f (x, x0 )= x−x0 0 ⇒ f (x)=f (x0 )+f (x, x0 )(x−x0 ); f (x,x0 )−f (x0 ,x1 ) ⇒ 1) f (x, x0 , x1 )= x−x1 f (x, x0 )=f (x0 , x1 )+f (x, x0 , x1 )(x−x1 ) ⇒ f (x)=f (x0 )+f (x0 , x1 )(x−x0 )+f (x, x0 , x1 )(x−x0 )(x−x1 ); ···························································· f (x,x0 ,x1 ,...,xn−1 )−f (x0 ,x1 ,...,xn−1 ,xn ) n) f (x, x0 , x1 , . . ., xn−1 , xn )= ⇒ x−xn f (x, x0 , x1 , . . ., xn−1 )=f (x0 , x1 , . . ., xn−1 , xn )+ +f (x, x0 , x1 , . . ., xn−1 , xn )(x−xn ) ⇒ f (x)=f (x0 )+f (x0 , x1 )(x−x0 )+f (x0 , x1 , x2 )(x−x0 )(x−x1 )+. . .+ +f (x0 , x1 , . . ., xn−1 , xn )(x−x0 )(x−x1 ). . .(x−xn−1 )+ +f (x, x0 , x1 , . . ., xn−1 , xn )(x−x0 )(x−x1 ). . .(x−xn−1 )(x−xn ) (6.36) Из (6.36) следует, что f (x) = Pn (x) + Rn (x), где Pn (x)=f (x0 )+ +f (x0 , x1 )(x−x0 )+ +f (x0 , x1 , x2 )(x−x0 )(x−x1 )+ ············································· +f (x0 , x1 , . . ., xk−1 , xk )(x−x0 )(x−x1 ). . .(x−xk−1 )+ +f (x0 , x1 , . . ., xk , xk+1 )(x−x0 )(x−x1 ). . .(x−xk )+ ············································· +f (x0 , x1 , . . ., xn−1 , xn )(x−x0 )(x−x1 ). . .(x−xn−1 ), (6.37) Rn (x) = f (x, x0 , x1 , . . . , xn )(x − x0 )(x − x1 ) . . . (x − xn ). (6.38) Несложно убедиться, что задаваемый формулой (6.37) многочлен n-ой степени решает задачу численной интерполяции, то есть Pn (xk ) = f (xk ) ∀k = 0, 1, 2, . . . , n. Действительно, подстановка точки xk (k = 0, 1, 2, . . . , n) в обе части выражения (6.37) приводит к равенству Pn (xk )=f (x0 )+ +f (x0 , x1 )(xk −x0 )+ +f (x0 , x1 , x2 )(xk −x0 )(xk −x1 )+ ············································· +f (x0 , x1 , . . ., xk−1 , xk )(xk −x0 )(x−x1 ). . .(xk −xk−1 ). В силу свойства 2 разделенных разностей f (x0 , x1 , . . ., xk−1 , xk ) = f (xk , x0 , x1 , . . ., xk−1 ). Таким образом, Pn (xk )=f (x0 )+ +f (x0 , x1 )(xk −x0 )+ +f (x0 , x1 , x2 )(xk −x0 )(xk −x1 )+ ············································· +f (xk , x0 , x1 , . . ., xk−1 )(xk −x0 )(x−x1 ). . .(xk −xk−1 ). (6.39) С другой стороны, (k − 1)-ый шаг в процедуре (6.36) реализуется следующим образом f (x,x0 ,x1 ,...,xk−2 )−f (x0 ,x1 ,...,xk−2 ,xk−1 ) ⇒ k − 1) f (x, x0 , x1 , . . ., xk−2 , xk−1 )= x−xk−1 f (x, x0 , x1 , . . ., xk−2 )=f (x0 , x1 , . . ., xk−2 , xk−1 )+ +f (x, x0 , x1 , . . ., xk−2 , xk−1 )(x−xk−1 ) ⇒ f (x)=f (x0 )+f (x0 , x1 )(x−x0 )+f (x0 , x1 , x2 )(x−x0 )(x−x1 )+. . .+ +f (x0 , x1 , . . ., xk−2 , xk−1 )(x−x0 )(x−x1 ). . .(x−xk−2 )+ +f (x, x0 , x1 , . . ., xk−1 )(x−x0 )(x−x1 ). . .(x−xk−1 ) Откуда f (xk )=f (x0 )+ +f (x0 , x1 )(xk −x0 )+ +f (x0 , x1 , x2 )(xk −x0 )(xk −x1 )+ ············································· +f (xk , x0 , x1 , . . ., xk−1 )(xk −x0 )(x−x1 ). . .(xk −xk−1 ). (6.40) Правые части равенств (6.39) и (6.40) идентичны. Следовательно, Pn (xk ) = f (xk ) (k = 0, 1, 2, . . . , n). Поскольку через (n + 1)-у точку можно провести единственный многочлен n-ой степени, то Pn (x) ≡ Ln (x) x ∈ R. Интерполяционный многочлен Лагранжа в форме Ньютона Определение 6.5. Интерполяционным многочленом Лагранжа в форме Ньютона, построенным для функции f (x) (x∈[a, b] ⊂ D[f ]) по (n+1)-у узлу x0 , x1 , . . ., xn ∈[a, b]: xj 6= xs ∀j6=s, называется многочлен степени n Ln (x)=f (x0 )+ +f (x0 , x1 )(x−x0 )+ +f (x0 , x1 , x2 )(x−x0 )(x−x1 )+ ············································· +f (x0 , x1 , . . ., xk−1 , xk )(x−x0 )(x−x1 ). . .(x−xk−1 )+ +f (x0 , x1 , . . ., xk , xk+1 )(x−x0 )(x−x1 ). . .(x−xk )+ ············································· +f (x0 , x1 , . . ., xn−1 , xn )(x−x0 )(x−x1 ). . .(x−xn−1 ). В силу (6.38) погрешность интерполяционного многочлена Лагранжа в форме Ньютона (6.41) представима в виде (6.41) Интерполяционный многочлен Лагранжа в форме Ньютона... Погрешность интерполяционного многочлена Лагранжа в форме Ньютона Rn (x) = f (x, x0 , x1 , . . . , xn )ω n (x). (6.42) При этом ранее установлено (см. (6.18)), что, если функция f (n+1) (ξ(x)) f ∈ C (n+1) ([a, b]), то Rn (x) = ω n (x) (x ∈ [a, b]). (n+1)! Следовательно, на классе (n + 1) раз непрерывно-дифференцируемых на отрезке [a, b] функций f (x, x0 , x1 , . . . , xn ) = f (n+1) (ξ(x)) , (n + 1)! (6.43) где ξ(x) ∈ [x, x0 , x1 , . . . , xn ]. Обобщением (6.43) является следующее свойство разделенных разностей Интерполяционный многочлен Лагранжа в форме Ньютона... Свойство 4 Пусть f ∈ C (k) ([a, b]). Тогда для любого набора узлов xi , xi+1 , xi+2 , . . . , xi+k ∈ [a, b] ⊂ D[f ]: xi+j 6= xi+s ∀j 6= s f (xi , xi+1 , xi+2 , . . . , xi+k ) = f (k) (η) , k! где η ∈ [xi , xi+1 , xi+2 , . . . , xi+k ]. Пример Пусть f ∈ C (3) ([1, 4]): f (1) = −2, f (2) = 3, f (4) = 1. Требуется по указанному набору данных для функции f построить интерполяционный многочлен Лагранжа. (6.44) ПРИМЕР: f (1) = −2, f (2) = 3, f (4) = 1 Интерполяционный многочлен Лагранжа в классической форме В силу формулы (6.12) (x−1)(x−4) (x−1)(x−2) L2 (x)=f (1) (x−2)(x−4) (1−2)(1−4) +f (2) (2−1)(2−4) +f (4) (4−1)(4−2) = (x−1)(x−4) (x−1)(x−2) =−2 (x−2)(x−4) = (−1)(−3) +3 (1)(−2) +1 (3)(2) =− 23 (x−2)(x−4)− 32 (x−1)(x−4)+ 16 (x−1)(x−2)= =− 32 (x2 −6x+8)− 32 (x2 −5x + 4)+ 16 (x2 −3x + 2)= =−2x2 +11x−11 Проверка Нетрудно убедиться, что L2 (1) = −2, L2 (2) = 3, L2 (4) = 1. ПРИМЕР: f (1) = −2, f (2) = 3, f (4) = 1 Интерполяционный многочлен Лагранжа в форме Ньютона (6.41) L2 (x)=f (x0 ) + f (x0 , x1 )(x−x0 )+f (x0 , x1 , x2 )(x−x0 )(x−x1 ), (6.45) где x0 = 1, x1 = 2, x2 = 4 Таблица разделенных разностей (6.33)  x0 =1 f (x0 )=−2    x1 =2  f (x1 )= 3 x2 =4 f (x2 )= 1  f (x0 , x1 )= 5 f (x1 , x2 )=−1    f (x0 , x1 , x2 )=−2 , (6.46) где f (x )−f (x ) f (x1 )−f (x2 ) 3−1 f (x0 , x1 )= x00 −x1 1 = −2−3 = 2−4 =−1, 1−2 =5, f (x1 , x2 )= x1 −x2 f (x0 ,x1 )−f (x1 ,x2 ) 5−(−1) = 1−4 =−2. f (x0 , x1 , x2 )= x0 −x2 Результат подстановки (6.46) в (6.45) L2 (x)=−2 + 5(x−1)−2(x−1)(x−2)=−2x2 +11x−11 ПРИМЕР: f (1) = −2, f (2) = 3, f (4) = 1 Оценка погрешности Пусть M3 = maxx∈[1,4] |f (3) (x)|. Тогда в силу (6.19) |R2 (x)| ≤ M3 |(x − 1)(x − 2)(x − 4)| 6 ∀x ∈ [1, 4] Таблица разделенных разностей (треугольник Паскаля)  x0    x1     x2     ··· x  n−1  xn  f (x0 ) f (x0 , x1 )    f (x1 ) f (x0 , x1 , x2 )   f (x1 , x2 ) ···   f (x2 ) f (x1 , x2 , x3 )  f (x2 , x3 ) f (x0 , x1 , . . ., xn )  ··· ··· ··· ···   f (xn−1 ) f (xn−2 , xn−1 , xn )   f (xn−1 , xn ) f (xn ) (6.47) Использование таблицы разделенных разностей для построения интерполяционного многочлена Лагранжа в форме Ньютона Ln (x)=f (x0 )+ +f (x0 , x1 )(x−x0 )+ +f (x0 , x1 , x2 )(x−x0 )(x−x1 )+ ············································· +f (x0 , x1 , . . ., xn−1 , xn )(x−x0 )(x−x1 ). . .(x−xn−1 ). (6.48) Практическое использование интерполяционного многочлена Лагранжа в форме Ньютона (см. (6.48)) позволяет в значительной степени преодолеть основной алгоритмический недостаток его классической формы (см. (6.12)). Например, добавление в набор данных (xi , f (xi )) (i = 0, 1, 2, . . . , n) очередной точки (xn+1 , f (xn+1 )) приводит только к вычислению в таблице (6.47) дополнительных (n + 1)-ой разделенной разности и появлению в правой части равенства (6.48) еще одного слагаемого f (x0 , x1 , . . ., xn−1 , xn , xn+1 )(x−x0 )(x−x1 ). . .(x−xn−1 )(x−xn ).  N13 6.6. Разделенные разности с кратными узлами Определение 6.6. Пусть задан набор узлов xi , xi+1 , xi+2 , . . . , xi+k ∈ [a, b] ⊂ D[f ]: среди xi+j (j = 0, 1, . . . , k) не все узлы различные. Разделенной разностью k-го порядка функции f , построенной по набору узлов xi , xi+1 , xi+2 , . . . , xi+k , называется число f (xi , xi+1 , . . . , xi+k−1 , xi+k ) = (6.49)  = limε→0 f xεi , xεi+1 , . . . , xεi+k−1 , xεi+k , где ∀ε > 0 xεi , xεi+1 , . . . , xεi+k−1 , xεi+k ∈ [a, b]: xεi+j 6= xεi+s ∀j 6= s; limε→0 xεi+j = xi+j ∀j = 0, 1, . . . , k. И при этом предел в правой части в (6.49) не зависит от способа задания узлов xεi+j (j = 0, 1, . . . , k). Свойства разделенных разностей с кратными узлами Пусть f ∈ C (k) ([a, b]), [a, b] ⊂ D[f ]. Свойство 1 Для любого набора узлов xi , xi+1 , xi+2 , . . . , xi+k ∈ [a, b] f (xi , xi+1 , xi+2 , . . . , xi+k ) = f (k) (η) , k! (6.50) где η ∈ [xi , xi+1 , xi+2 , . . . , xi+k ]. Свойство 2 При фиксированном наборе узлов xi , xi+1 , xi+2 , . . . , xi+k разделенная разность k-го порядка f (xi , xi+1 , . . . , xi+k−1 , xi+k ) является линейным и однородным функционалом. Свойства разделенных разностей ... Свойство 3 Разделенная разность f (xi , xi+1 , . . . , xi+k−1 , xi+k ) не зависит от упорядочения узлов в наборе, по которому она построена. Свойство 4. Непрерывность. Разделенная разность f (xi , xi+1 , . . . , xi+k−1 , xi+k ) является непрерывной по совокупности переменных функцией k + 1-х переменных. Свойство 5. Дифференцируемость. Пусть f ∈ C (k+2) ([a, b]). Тогда d dx f (x, xi , xi+1 , . . . , xi+k ) = = f (x, x, xi , xi+1 , . . . , xi+k ). (6.51) Свойства разделенных разностей ... Доказательство. d dx f (x, xi , xi+1 , . . . , xi+k )= = limxe→x = limxe→x f (ex,xi ,xi+1 ,...,xi+k )−f (x,xi ,xi+1 ,...,xi+k ) x e−x f (ex,xi ,xi+1 ,...,xi+k )−f (xi ,xi+1 ,...,xi+k ,x) x e−x =|(св.3) =|(св.1,опр.) = limxe→x f (e x, xi , xi+1 , . . . , xi+k , x)=|(св.4) =f (x, xi , xi+1 , . . . , xi+k , x)=|(св.3) =f (x, x, xi , xi+1 , . . . , xi+k )  Свойство доказано. Следствие. Пусть f ∈ C (k+3) ([a, b]). Тогда d2 f (x, xi , xi+1 , . . . , xi+k ) = dx2 = 2f (x, x, x, xi , xi+1 , . . . , xi+k ). (6.52) 6.7. Интерполяция с кратными узлами Постановка задачи Пусть f ∈ C (n+1) ([a, b]), [a, b] ⊂ D[f ] (n = m1 + m2 + . . . + ms − 1) и x1 , x2 , . . . , xs ∈ [a, b]: xi 6= xj ∀i 6= j. f (x1 ), f 0 (x1 ), f 00 (x1 ), . . . , f (m1 −1) (x1 ); f (x2 ), f 0 (x2 ), f 00 (x2 ), . . . , f (m2 −1) (x2 ); ···································· f (xs ), f 0 (xs ), f 00 (xs ), . . . , f (ms −1) (xs ). (6.53) Требуется построить многочлен Ln (x) степени n, который удовлетворяет следующим условиям: Ln (x1 )=f (x1 ), Ln 0 (x1 )=f 0 (x1 ), . . ., Ln (m1 −1) (x1 )=f (m1 −1) (x1 ); Ln (x2 )=f (x2 ), Ln 0 (x2 )=f 0 (x2 ), . . ., Ln (m2 −1) (x2 )=f (m2 −1) (x2 ); ···························································· Ln (xs )=f (xs ), Ln 0 (xs )=f 0 (xs ), . . ., Ls (ms −1) (xs )=f (ms −1) (xs ). (6.54) Существование и единственность решения задачи численной интерполяции с кратными узлами Теорема 6.5. Существует единственный многочлен Ln (x) степени n, который является решением задачи (6.53),(6.54). Доказательство. Единственность От противного. Пусть существует два различных многочлена Pn (x) и Ln (x) (Pn (x) 6= Ln (x)) степени n, которые являются решениями задачи (6.54). Тогда можно построить вспомогательный многочлен Sn (x) = Pn (x) − Ln (x), для которого узлы x1 , x2 , . . . , xs являются корнями кратностей m1 , m2 , . . . , ms соответственно. Таким образом, многочлен Sn (x) степени n имеет n + 1 корней с учетом их кратностей (n + 1 = m1 + m2 + . . . + ms ). Возникает противоречие. Следовательно, Sn (x) ≡ 0, то есть Pn (x) ≡ Ln (x). Существование и единственность решения задачи ... Существование Для построения многочлена Ln (x) степени n, который является решением задачи (6.54), предлагается следующая процедура. Для каждого из узлов xi (i = 1, 2, . . . , s) строится однопараметрическое семейство наборов различных узлов xεij (j = 1, 2, . . . , mi , ε ∈ R): xεij =xi ±ε(j − 1) ∀i = 1, 2, . . . , s ∀j = 1, 2, . . . , mi (6.55) где 0 < ε < ε̄, ε̄ = 1 min |xi − xj |, m̄ = max mi . i=1,2,...,s 2m̄ i,j=1,2,...,s:i6=j (6.56) Очевидно, что в силу (6.56) xεij ∈ [a, b] ∀0 < ε < ε̄ ∀i = 1, 2, . . . , s ∀j = 1, 2, . . . , mi при подходящем выборе знака в правой части выражения (6.55) и lim xεij = xi ε→0 ∀i = 1, 2, . . . , s ∀j = 1, 2, . . . , mi . Существование и единственность решения задачи ... Считая узлы xεij (i = 1, 2, . . . , s j = 1, 2, . . . , mi ) однократными, для функции f для любого 0 < ε < ε̄ по формуле (6.41) можно построить интерполяционный многочлен Лагранжа Lεn (x) степени n = m1 + m2 + . . . + ms − 1: Lεn (x)=f (xε11 )+f (xε11 , xε12 )(x−xε11 )+. . .+ ε 1 −1 +f (xε11 , . . ., xε1m1 )Πm j=1 (x−x1j )+ ε 1 +f (xε11 , . . ., xε1m1 , xε21 )Πm j=1 (x−x1j )+  ε ε 1 +f (xε11 , . . ., xε1m1 , xε21 , xε22 ) Πm j=1 (x−x1j ) (x−x21 )+. . .+ m2 −1 ε ε 1 +f (xε11 , . . ., xε1m1 , xε21 , . . ., xε2m2 )Πm j=1 (x−x1j )Πj=1 (x−x2j )+ ···························································· ms −1 ε ε 1 +f (xε11 , . . ., xε21 , . . ., xεs1 , . . ., xεsms )Πm j=1 (x−x1j ). . .Πj=1 (x−xsj ). (6.57) Существование и единственность решения задачи ... Переход в обеих частях равенства (6.57) к пределу при ε → 0, учитывая свойства разделенных разностей с кратными узлами для достаточно гладкой функции f , приводит к выражению Ln (x)=f (x1 )+f (x1 , x1 )(x−x1 )+. . .+f (x1 , . . ., x1 )(x−x1 )m1 −1 + | {z } m1 +f (x1 , . . ., x1 , x2 )(x−x1 )m1 + | {z } m1 +f (x1 , . . ., x1 , x2 , x2 )(x−x1 )m1 (x−x2 )+. . .+ | {z } m1 +f (x1 , . . ., x1 , x2 , . . ., x2 )(x−x1 )m1 (x−x2 )m2 −1 + | {z } | {z } m1 m2 ···························································· +f (x1 , . . ., x1 , x2 , . . ., x2 , . . ., xs , . . ., xs )· | {z } | {z } | {z } m1 m2 ms ·(x−x1 )m1 . . .(x−xs−1 )ms−1 (x−xs )ms −1 . (6.58) Существование и единственность решения задачи ... Многочлен Ln (x), задаваемый выражением (6.58), решает задачу численной интерполяции (6.53), (6.54). Действительно, с учетом гладкости функции f и свойства 1 разделенных разностей с кратными узлами, подстановка x1 в правую часть выражения (6.58) и ее производные до (m1 −1)-го порядка приводит к Ln (x1 )=f (x1 ), Ln 0 (x1 )=f (x1 , x1 )=f 0 (x1 ), f 00 (x ) Ln 00 (x1 )=2!f (x1 , x1 , x1 )=2! 2! 1 =f 00 (x1 ), ·········································· Ln (m1 −1) (x1 )=(m1 −1)!f (x1 , . . ., x1 )=(m1 −1)! | {z } f (m1 −1) (x1 ) (m1 −1)! =f (m1 −1) (x1 ). m1 (6.59) Аналогичные (6.59) равенства можно получить и для любого из узлов xk (k = 2, 3, . . . , s) с учетом их кратности. Для этого достаточно узлы x1 и xk поменять местами и повторить приведенные выше рассуждения.  Теорема доказана. Интерполяционный многочлен Эрмита Определение 6.7. Пусть f ∈ C (n+1) ([a, b]) (n = m1 + m2 + . . . + ms − 1). Интерполяционным многочленом Эрмита, построенным по набору данных (6.53), называется Ln (x)=f (x1 )+f 0 (x1 )(x−x1 )+ 12 f 00 (x1 )(x−x1 )2 +. . .+ + (m11−1)! f (m1 −1) (x1 )(x−x1 )m1 −1 + +f (x1 , . . ., x1 , x2 )(x−x1 )m1 + | {z } m1 +f (x1 , . . ., x1 , x2 , x2 )(x−x1 )m1 (x−x2 )+. . .+ | {z } m1 +f (x1 , . . ., x1 , x2 , . . ., x2 )(x−x1 )m1 (x−x2 )m2 −1 + | {z } | {z } m1 m2 ············································· +f (x1 , . . ., x1 , x2 , . . ., x2 , . . ., xs , . . ., xs )· | {z } | {z } | {z } m1 m2 ms ·(x−x1 )m1 . . .(x−xs−1 )ms−1 (x−xs )ms −1 . (6.60) Погрешность интерполяционного многочлена Эрмита Погрешность интерполяционного многочлена Эрмита Rn (x) = f (x, x1 , . . ., x1 , x2 , . . ., x2 , . . ., xs , . . ., xs )ω n (x), | {z } | {z } | {z } m1 ms m2 m1 ω n (x) = (x−x1 ) (x−x2 ) (6.61) m2 . . .(x−xs )ms , (6.62) где n = m1 + m2 + . . . + ms − 1. Оценка погрешности интерполяционного многочлена Эрмита Пусть f ∈ C (n+1) ([a, b]). Тогда Rn (x) = |Rn (x)| ≤ f (n+1) (ξ(x)) ω n (x), (n + 1)! Mn+1 |ω n (x)| (n + 1)! ∀x ∈ [a, b], где ξ(x) ∈ [x, x1 , x2 , . . . , xs ], Mn+1 = maxx∈[a,b] |f (n+1) (x)|. (6.63) (6.64) ПРИМЕР Пусть x1 , x2 ∈ [a, b] ⊂ D[f ]: f (x1 ), f 0 (x1 ), f 00 (x1 ); f (x2 ), f 0 (x2 ).  x1   x1    x1    x2  x2  f (x1 ) f (x1 , x1 ) f (x1 ) f (x1 , x1 , x1 ) f (x1 , x1 ) f (x1 ) f (x1 , x1 , x1 , x2 ) f (x1 , x1 , x2 ) f (x1 , x2 ) f (x2 ) f (x1 , x1 , x2 , x2 ) f (x1 , x2 , x2 ) f (x2 , x2 )       f (x1 , x1 , x1 , x2 , x2 )      f (x2 ) Здесь f (x1 , x1 )=f 0 (x1 ), f (x1 , x1 , x1 )= L4 (x)=f (x1 )+f 0 (x1 )(x−x1 )+ f 00 (x1 ) 2 f 00 (x1 ) 2 , f (x2 , x2 )=f 0 (x2 ). (x−x1 )2 + +f (x1 , x1 , x1 , x2 )(x−x1 )3 +f (x1 , x1 , x1 , x2 , x2 )(x−x1 )3 (x−x2 ) 6.8. Сходимость интерполяционного процесса Определение 6.8. Под интерполяционным процессом понимают бесконечную функциональную последовательность, элементами которой являются интерполяционные многочлены Лагранжа Ln (x), каждый из которых построен по своему набору узлов (n) (n) (n) x0 , x1 , . . . , xn ∈ [a, b] ⊂ D[f ], где n → ∞. Пусть f ∈ C ([a, b]). Тогда можно задать такую систему узлов (n) (n) (n) {x0 , x1 , . . . , xn }∞ n=0 , что интерполяционный процесс будет равномерно на отрезке [a, b] сходиться к функции f a . a Например, для построения такой системы узлов могут использоваться корни многочленов Чебышева различных степеней. (n) (n) (n) Для любой системы узлов {x0 , x1 , . . . , xn }∞ n=0 можно на отрезке [a, b] задать такую функцию f , что интерполяционный процесс к этой функции f сходиться не будет.  N14 6.9. Приближенное решение нелинейного уравнения с помощью интерполяционного многочлена Лагранжа Постановка задачи f ∈ C (D[f ]) , D[f ] ⊆ R f (x) = 0 (6.65) ξ ∈ D[f ] : f (ξ) = 0 (6.66) Корень уравнения (6.66) ξ ∈ [a, b] ⊆ D[f ]. Пусть функция f обратима на отрезке [a, b] и задан набор данных x0 , x1 , x2 , . . . , xn ∈ [a, b] : xi 6= xj ∀i 6= j y0 , y1 , y2 , . . . , yn : yi = f (xi ) ∀i = 0, 1, . . . , n (6.67) По набору данных (6.67) для функции f −1 можно построить интерполяционный многочлен Лагранжа Ln (y). Тогда ξ ≈ Ln (0) (6.68) ТЕМА 7. Численное дифференцирование 7.1. Постановка задачи f ∈ C (1) (D[f ]) , D[f ] ⊆ R x0 , x1 , x2 , . . . , xn ∈ [a, b] ⊆ D[f ] : xi 6= xj ∀i 6= j y0 , y1 , y2 , . . . , yn : yi = f (xi ) ∀i = 0, 1, . . . , n (7.1) Требуется, используя набор данных (7.1), определить приближенное значение производной функции f в заданной точке из области ее определения. 7.2. Алгоритм решения (операция численного дифференцирования) f (x) = Ln (x) + Rn (x), f 0 (x) = Ln 0 (x) + Rn 0 (x), f 0 (x) ≈ Ln 0 (x) (7.2) Численное дифференцирование ... 7.3. Погрешность численного дифференцирования Rn 0 (x) = d (f (x, x0 , x1 , . . . , xn )ω n (x)) dx (7.3) Из того, что значение Rn (x) мало не следует, что значение Rn 0 (x) также мало. ПРИМЕР Пусть ϕ(x) = 1 sin(N 2 x), N где N  1. ϕ0 (x) = N cos(N 2 x). Этот пример свидетельствует о неустойчивости операции численного дифференцирования. 7.4. Построение формул численного дифференцирования f (x) = Ln (x) + f (x, x0 , x1 , . . . , xn )ω n (x) Пусть f ∈ C (n+2) (D[f ]). Тогда Rn 0 (x) = d dx (f (x, x0 , x1 , . . . , xn )ω n (x)) =  d = dx f (x, x0 , x1 , . . . , xn ) ω n (x)+ d +f (x, x0 , x1 , . . . , xn ) dx ω n (x) = (7.4) = f (x, x, x0 , x1 , . . . , xn )ω n (x)+ d +f (x, x0 , x1 , . . . , xn ) dx ω n (x) = = f (n+2) (ξ1 (x)) (n+2)! ω n (x) + где ξ1 (x), ξ2 (x) ∈ [x, x0 , x1 , . . . , xn ]. f (n+1) (ξ2 (x)) (n+1)! d dx ω n (x), Построение формул численного дифференцирования Пусть f ∈ C (n+3) (D[f ]). Тогда Rn 00 (x) = d2 dx2 (f (x, x0 , x1 , . . . , xn )ω n (x)) =  d d [ dx f (x, x0 , x1 , . . . , xn ) ω n (x)+ = dx d ω n (x)] = +f (x, x0 , x1 , . . . , xn ) dx d = dx [f (x, x, x0 , x1 , . . . , xn )ω n (x)+ d ω n (x)] = +f (x, x0 , x1 , . . . , xn ) dx = f (x, x, x, x0 , x1 , . . . , xn )ω n (x)+ d +2f (x, x, x0 , x1 , . . . , xn ) dx ω n (x)+ 2 d +f (x, x0 , x1 , . . . , xn ) dx2 ω n (x) = = f (n+3) (η1 (x)) (n+3)! ω n (x)+2 f (n+2) (η2 (x)) (n+2)! f d dx ω n (x)+ (n+1) (η3 (x)) d2 (n+1)! dx2 ω n (x), (7.5) где η1 (x), η2 (x), η3 (x) ∈ [x, x0 , x1 , . . . , xn ]. Оценки погрешностей формул численного дифференцирования Пусть f ∈ C (n+3) (D[f ]). Тогда |Rn 0 (x)| ≤ Mn+1 d Mn+2 |ω n (x)| + | ω n (x)|. (n + 2)! (n + 1)! dx (7.6) Пусть f ∈ C (n+3) (D[f ]). Тогда |Rn 00 (x)| ≤ Mn+3 Mn+2 d Mn+1 d2 |ω n (x)|+2 | ω n (x)|+ | ω n (x)|. (n+3)! (n+2)! dx (n+1)! dx2 (7.7) Здесь x ∈ [x0 , x1 , . . . , xn ], Mk = maxx∈[x0 ,x1 ,...,xn ] |f (k) (x)| (k = n+1, n+2, n+3) Формула численного дифференцирования по двум узлам Исходные данные f ∈ C (3) ([a, b]) , [a, b] ⊆ D[f ] x0 , x1 ∈ [a, b] : x1 = x0 + h, h > 0 y0 , y1 : yi = f (xi ) ∀i = 0, 1 (7.8) f (x) = f (x0 ) + f (x0 , x1 ) (x − x0 ) + f (x, x0 , x1 )ω 1 (x) Формула численного дифференцирования f 0 (x) ≈ f (x0 , x1 ) = f (x0 ) − f (x1 ) x0 − x1 (7.9) Погрешность формулы численного дифференцирования по двум узлам R1 0 (x) = d dx (f (x, x0 , x1 )ω 1 (x)) = d = f (x, x, x0 , x1 )ω 1 (x) + f (x, x0 , x1 ) dx ω 1 (x) = = f (3) (ξ1 (x)) 6 ω 1 (x) + f (2) (ξ2 (x)) 2 (7.10) d dx ω 1 (x), где ξ1 (x), ξ2 (x) ∈ [x, x0 , x1 ]. ω 1 (x) = (x − x0 )(x − x1 ), d dx ω 1 (x) = 2x − (x0 + x1 ) 1 maxx∈[x0 ,x1 ] |ω 1 (x)| = |ω 1 ( x0 +x )| = 2 h2 4 , d d maxx∈[x0 ,x1 ] | dx ω 1 (x)| = | dx ω 1 (xi )| = h, i = 0, 1. (7.11) Частные случаи погрешности формулы численного дифференцирования по двум узлам Случай I. Дифференцирование на середину Пусть x = x0 +x1 . 2 Тогда, в силу (7.10) и (7.11) |R1 0 (x)| = | f (3) (ξ1 (x)) M3 2 ||ω 1 (x)| ≤ h , 6 24 (7.12) где M3 = maxx∈[x0 ,x1 ] |f (3) (x)|. Случай II. Дифференцирование на край Пусть x = xi , i = 0, 1. Тогда, в силу (7.10) и (7.11) |R1 0 (x)| = | f (2) (ξ2 (x)) d M2 || ω 1 (x)| ≤ h, 2 dx 2 где M2 = maxx∈[x0 ,x1 ] |f (2) (x)|. (7.13) Неустранимая погрешность формулы численного дифференцирования по двум узлам Пусть f (xi ) ≈ fi? : Afi ? = ε > 0 (i = 0, 1). Тогда |f (x0 , x1 )−f ? (x0 , x1 )|=| f (x0 )−f (x1 ) =| ≤ x0 −x1 f (x0 )−f0? x0 −x0 − f0? −f1? |= f (x1 )−f1? |≤ − x0 −x1 x0 −x1 ? ? |f (x0 )−f0 | |f (x1 )−f1 | + h h ≤ ≤ hε + hε = 2ε h Неустранимая погрешность Aн (h) = 2ε h (7.14) Задача определения оптимального шага численного дифференцирования по двум узлам |f 0 (x)−f ? (x0 , x1 )|=|f 0 (x)−f (x0 , x1 )+f (x0 , x1 )−f ? (x0 , x1 )|≤ ≤|f 0 (x)−f (x0 , x1 )|+|f (x0 , x1 )−f ? (x0 , x1 )|≤ ≤Aм (h)+Aн (h) Полная погрешность Aп (h) = Aм (h)+Aн (h) (7.15) Aп (h) → min (7.16) Постановка задачи h≥0 ПРИМЕР: Оптимальный шаг численного дифференцирования на середину Пусть f ∈ C (3) ([x0 , x1 ]): M3 = maxx∈[x0 ,x1 ] |f (3) (x)| > 0, x = 3 2 Здесь Aм (h) = M 24 h . x0 +x1 . 2 Постановка задачи Aп (h) = M3 2 2ε h + → min h≥0 24 h (7.17) Aп (h) — строго-выпуклая на (0, +∞) функция. Aп (h? ) = M3 ? 2ε h − ? 2 =0 12 (h ) Оптимальный шаг ? h =   24ε M3  13 (7.18) N15. ТЕМА 8. Численное интегрирование 8.1. Постановка задачи Пусть функция f ограничена на отрезке [a, b] ⊆ D[f ]. x0 , x1 , x2 , . . . , xn ∈ [a, b] : xi 6= xj ∀i 6= j y0 , y1 , y2 , . . . , yn : yi = f (xi ) ∀i = 0, 1, . . . , n I[f ] = Rb a (8.1) f (x)dx 8.2. Алгоритм решения (операция численного интегрирования) f (x) = Ln (x) + Rn (x), Rb I[f ] ≈ a Ln (x)dx 8.3. Погрешность численного интегрирования Z b Z b Rn [f ] = Rn (x)dx = f (x, x0 , x1 , . . . , xn )ω n (x)dx a a (8.2) (8.3) 8.4. Квадратурные формулы численного интегрирования Rb a R b Pn Ln (x)dx = Z Ak = k=0 a = Pn = Pn k=0 k=0 b Πni=0,i6=k a i f (xk )Πni=0,i6=k xx−x dx = k −xi f (xk ) Rb a i Πni=0,i6=k xx−x dx = k −xi Ak f (xk ) x − xi dx, k = 0, 1, 2, . . . , n xk − xi (8.4) Квадратурная сумма Sn [f ] = n X Ak f (xk ), (8.5) k=0 где Ak ∈ R — квадратурные коэффициенты, xk — квадратурные узлы (k = 0, 1, 2, . . . , n). Квадратурные формулы ... Определение 8.1. Формула численного интегрирования I[f ] ≈ Sn [f ] (8.6) называется квадратурной, если ее коэффициенты Ak и узлы xk (k=0, 1, 2, . . ., n) не зависят от функции f . Определение 8.2. Квадратурная формула (8.6) называется интерполяционной, если ее коэффициенты Ak (k=0, 1, 2, . . ., n) вычисляются по формуле (8.4). ПРИМЕР. f ∈ C ([a, b]). Формула (см. Теорему о среднем) Z b f (x)dx = (b − a)f (c), c ∈ [a, b] a не является квадратурной24 . 24 Пояснить самостоятельно. Характеристическое свойство интерполяционной квадратурной формулы Теорема 8.1. Критерий интерполяционности квадратурной формулы Для того, чтобы квадратурная формула (8.6) была интерполяционной необходимо и достаточно, чтобы она была точна для любого многочлена степени n и ниже, то есть I[Pn ] = Sn [Pn ] ∀Pn (x). (8.7) Доказательство. Необходимость Пусть квадратурная формула (8.6) является интерполяционной. Требуется доказать, что она точна для любого многочлена Pn (x) степени n. Характеристическое свойство ... Действительно, так как Pn Sn [Pn ] = Pn Ak Pn (xk ) = = Pn Pn (xk ) = R b Pn = Rb k=0 k=0 k=0 a a k=0 Rb a i Πni=0,i6=k xx−x dx = k −xi i Pn (xk )Πni=0,i6=k xx−x dx = k −xi Pn (x)dx = I[Pn ], i = Pn (x). Pn (xk )Πni=0,i6=k xx−x k −xi Достаточность Пусть квадратурная формула (8.6) точна для любого многочлена Pn (x) степени n. Требуется доказать, что ее коэффициенты Ak (k=0, 1, 2, . . ., n) вычисляются по формуле (8.4). Характеристическое свойство ... В частности, формула (8.6) точна для всех многочленов i Q(j) n (x) = Πni=0,i6=j xx−x (j = 0, 1, 2, . . . , n). Следовательно, j −xi Z b Q(j) n (x)dx = a n X Ak Q(j) n (xk ) = Aj , k=0 поскольку (j) Q  n (xk ) = δjk = 0, j 6= k 1, j = k ∀j = 0, 1, 2, . . . , n. Таким образом, коэффициенты Ak (k=0, 1, 2, . . ., n) квадратурной формулы (8.6) вычисляются по формуле (8.4), то есть квадратурная формула (8.6) является интерполяционной.  Теорема доказана. Алгебраическая степень точности квадратурной формулы Определение 8.3. Алгебраической степенью точности квадратурной формулы (8.6) называется неотрицательное целое число N такое, что 1 Формула (8.6) точна для любого многочлена PN (x); 2 Существует многочлен QN +1 (x), для которого формула (8.6) не точна, то есть I[QN +1 ] 6= Sn [QN +1 ]. Из характеристического свойства интерполяционной квадратурной формулы (теоремы 8.1) следует, что, если квадратурная формула (8.6) является интерполяционной, то ее алгебраическая степень точности N ≥ n, где n + 1 — количество узлов, по которым формула (8.6) построена. Примеры интерполяционных квадратурных формул Случай n = 0: x0 ∈ [a, b]. Формула прямоугольников. I[f ] ≈ (b − a)f (x0 ) (8.8) Если x0 = a, то формула (8.8) называется формулой левых прямоугольников, для которой N = 0; Если x0 = b, то формула (8.8) называется формулой правых прямоугольников, для которой N = 0; Если x0 = a+b 2 , то формула (8.8) называется формулой средних прямоугольников, для которой N = 1. Случай n = 1: x0 = a, x1 = b. Формула трапеций. b−a I[f ] ≈ (f (a) + f (b)) 2 Алгебраическая степень точности N = 1 (8.9) 25 25 Алгебраическую степень точности формул прямоугольников и трапеций нетрудно обосновать на основе геометрической интерпретации этих формул. Примеры интерполяционных квадратурных формул ... Случай n = 2: x0 = a, x1 = a+b 2 , x2 = b. Формула Симпсона. I[f ] ≈ A0 f (a) + A1 f ( a+b ) + A2 f (b) 2 (8.10) Предлагается, используя характеристическое свойство интерполяционной квадратурной формулы (теорему 8.1), определить в квадратурной формуле (8.10) значения ее коэффициентов A0 , A1 , A2 так, чтобы формула (8.10) имела наибольшую алгебраическую степень точности. Из требования точности формулы (8.10) для многочленов степеней 0, 1, 2: Q0 (x) ≡ 1, Q1 (x) = x − a, Q2 (x) = (x − a)2 возникает следующая система линейных алгебраических уравнений относительно A0 , A1 , A2 :  A1 + A2 = b − a   A0 + (b−a)2 b−a (8.11) 2 A1 + (b − a)A2 = 2   (b−a)3 2 2 ( b−a ) A + (b − a) A = 1 2 2 3 Примеры интерполяционных квадратурных формул ... Решением системы (8.11) является: A0 = b−a 4(b − a) b−a , A1 = , A2 = . 6 6 6 Поскольку указанные выше многочлены Q0 (x), Q1 (x), Q2 (x) образуют базис в пространстве многочленов степени не выше второй, а определенный интеграл I[f ] и квадратурная сумма Sn [f ] (см. (8.5)) обладают свойствами линейности и однородности, то квадратурная формула   b−a a+b ) + f (b) (8.12) f (a) + 4f ( I[f ] ≈ 6 2 точна для любого многочлена второй степени. Следовательно, в силу теоремы 8.1, эта формула является интерполяционной. Несложно убедиться, что формула (8.12) точна для многочлена Q3 (x) = (x − a)3 и неточна, например, для многочлена Q4 (x) = (x − a)4 . Таким образом, ее алгебраическая степень точности N = 3. Формулы Ньютона-Котеса Метод неопределенных коэффициентов Численная процедура построения квадратурной формулы, имеющую наибольшую алгебраическую степень точности, в основу которой положено характеристическое свойство интерполяционной квадратурной формулы (теорема 8.1), называют методом неопределенных коэффициентов. Случай n = 3: x0 = a, x1 = a + b−a 3 , x2 =a+ 2(b−a) , x3 3 = b. Соответствующая этому случаю интерполяционная квадратурная формула называется формулой " 83 -ых"a . a Построить самостоятельно, используя метод неопределенных коэффициентов. Определение 8.4. Интерполяционные квадратурные формулы, построенные для наборов равноотстоящих соседних узлов, называются формулами Ньютона-Котеса. Погрешность интерполяционной квадратурной формулы В силу (8.2) и (8.3) Z b Z Rn [f ] = Rn (x)dx = a b f (x, x0 , x1 , . . . , xn )ω n (x)dx. a Оценка погрешности Пусть f ∈ C (n+1) ([a, b]). Тогда |Rn [f ]| ≤ Rb = ≤ a |Rn (x)|dx = Rb a |f (x, x0 , x1 , . . . , xn )||ω n (x)|dx ≤ Mn+1 (n+1)! Rb a |ω n (x)|dx, где Mn+1 = maxx∈[a,b] |f (n+1) (x)|. (8.13) Оценки погрешностей некоторых формул Ньютона-Котеса Формула средних прямоугольников Z b a+b a+b R0 [f ] = f (x, )(x − )dx 2 2 a Z a b a+b |x − |dx = 2 2 Z b  a+b 2 (8.14) 2  2 x − a+b a+b (b − a)2 2 x− dx = |ba+b = 2 2 2 4 Пусть f ∈ C (1) ([a, b]). Тогда |R0 [f ]| ≤ где M1 = maxx∈[a,b] |f 0 (x)|. M1 (b − a)2 , 4 (8.15) Оценки погрешностей ... Формула трапеций Z b f (x, a, b)(x − a)(x − b)dx R1 [f ] = (8.16) a Rb a (x − a)(x − b)dx = 1 2 Rb a = − 12 (x − a)((x − b)2 ) dx = Rb a 3 3 (x − b)2 dx = − (x−b) |ba = − (b−a) 6 6 Пусть f ∈ C (2) ([a, b]). Тогда |R0 [f ]| ≤ где M2 = maxx∈[a,b] |f 00 (x)|.  M2 (b − a)3 , 12 (8.17) N16. 8.5. Оценка погрешности интерполяционной квадратурной формулы для случая N > n Пусть QN (x) — интерполяционный многочлен Эрмита, построенный для функции f по набору кратных узлов x0 , x1 , x2 , . . . , xn ∈ [a, b]. Поскольку I[QN ] = Sn [QN ], то Rn [f ] = I[f ] − Sn [f ] = (I[f ] − I[QN ]) − (Sn [f ] − Sn [QN ]) . Откуда, в силу свойств линейности определенного интеграла и квадратурной суммы, Rn [f ] = I[f − QN ] − Sn [f − QN ], где Sn [f − QN ] = 0, так как QN (xi ) = f (xi ) ∀i = 0, 1, . . . , n. Rn [f ] = I[f − QN ] (8.18) 26 26 Формула (8.18) справедлива для любого интерполяционного многочлена Qm степени m ≤ N . ПРИМЕР. Формула средних прямоугольников n = 0, x0 = a+b 2 , N =1 Пусть Q1 (x) — интерполяционный многочлен Эрмита, построенный по двукратному узлу x0 = a+b 2 , то есть Q1 (x0 ) = f (x0 ), Q01 (x0 ) = f 0 (x0 ). Тогда, в силу (8.18), Rb a+b a+b 2 R0 [f ] = a f (x, a+b 2 , 2 )(x − 2 ) dx = R b f 00 (ξ) (b−a)3 a+b a+b 2 = f (η, a+b , ) (x − ) dx = 2 2 2 2 12 , a где f ∈ C (2) ([a, b]), η ∈ [a, b] (см. теорему о среднем), ξ ∈ [a, b]. Оценка погрешности |R0 [f ]| ≤ M2 (b − a)3 , 24 (8.19) где f ∈ C (2) ([a, b]), M2 = maxx∈[a,b] |f 00 (x)| a . a Если f ∈ C (1) ([a, b]), то |R [f ]| ≤ (см. (8.15)). M1 (b 4 − a)2 , где M1 = maxx∈[a,b] |f 0 (x)| Оценка погрешности формулы Симпсона n = 2, x0 = a, x1 = a+b 2 , x2 = b, N = 3 Пусть Q3 (x) — интерполяционный многочлен Эрмита, построенный по набору узлов x0 , x1 , x2 , где x1 = a+b 2 — двукратный узел, то есть Q3 (x1 ) = f (x1 ), Q03 (x1 ) = f 0 (x1 ). Тогда, в силу (8.18), R2 [f ] = Rb = Rb a a (f (x) − Q3 (x))dx = a+b f (x, a, a+b 2 , 2 , b)(x − a)(x − a+b 2 2 ) (x − b)dx = a+b 2 2 ) (x − b)dx = (8.20) a+b = f (η, a, a+b 2 , 2 , b) =− f (4) (ξ) 4! 4 b−a 5 15 ( 2 ) Rb a (x − a)(x − =− f (4) (ξ) 2880 (b − a)5 , где f ∈ C (4) ([a, b]), η ∈ [a, b] (см. теорему о среднем), ξ ∈ [a, b]. Оценка погрешности формулы Симпсона ... Rb a (x − a)(x − = − 31 Rb = − 32 (x− a+b 2 ) a a+b 2 2 ) (x − b)dx = (2x − a − b)(x − 5 5 4 |ba = − 3·5 1 3 a+b 3 2 ) dx Rb a (x − a)(x − b)d(x − = − 23 Rb a (x − a+b 4 2 ) dx a+b 3 2 ) = =  b−a 5 2 Из (8.20) следует Оценка погрешности формулы Симпсона Пусть f ∈ C (4) ([a, b]). Тогда |R2 [f ]| ≤ M4 (b − a)5 , 2880 где M4 = maxx∈[a,b] |f (4) (x)|. 27 27 Если f ∈ C (3) ([a, b]), то Rb R2 [f ] = a f (x, a, a+b , b)(x − a)(x − 2 a+b )(x 2 − b)dx = C(b − a)4 . (8.21) 8.6. Квадратурный процесс Создается впечатление, что для того, чтобы увеличить точность квадратурной формулы нужно в ней увеличивать количество узлов. Определение 8.5. (n) (n) (n) Пусть задана система узлов x0 , x1 , . . . , xn ∈ [a, b]. Под квадратурным процессом для некоторой функции f (x) ([a, b] ⊆ D[f ]) понимают числовую последовательность {Sn [f ]}∞ n=0 : Pn (n) (n) I[f ] ≈ Sn [f ] = k=0 Ak f (xk ) ∀n ≥ 0. Определение 8.6. Квадратурный процесс {Sn [f ]}∞ n=0 для функции f называется сходящимся, если ∃ lim Sn [f ] = I[f ]. n→∞ Сходимость квадратурного процесса Теорема 8.2. Критерий сходимости интерполяционного квадратурного процесса Для сходимости интерполяционного квадратурного процесса для любой непрерывной функции f необходимо и достаточно, чтобы ∃M > 0 : ∀n ≥ 0 ⇒ n X (n) |Ak | ≤ M. k=0 Доказательство. Необходимостьa . a Березин И. С., Жидков Н. П. Методы вычислений. 1962. Достаточность Пусть выполнено условие (8.22). Зафиксируем функцию f ∈ C ([a, b]). (8.22) Критерий сходимости интерполяционного квадратурного процесса ... Поскольку пространство многочленов плотно в пространстве непрерывных функций, то ∀ε > 0 ∃Qm(ε) : max |f (x) − Qm(ε) (x)| < ε. (8.23) x∈[a,b] Так как формула I[f ] ≈ Sn [f ] является интерполяционной для всех n ≥ 0, то, в силу (8.7) (см. критерий интерполяционности квадратурной формулы), эта формула будет точна для многочлена Qm(ε) для любого n ≥ m(ε), то есть I[Qm(ε) ] = Sn [Qm(ε) ] ∀n ≥ m(ε). (8.24) Следовательно, учитывая линейность определенного интеграла и квадратурной суммы, ∀n ≥ m(ε) справедливо равенство I[f ] − Sn [f ] = I[f − Qm(ε) ] − Sn [f − Qm(ε) ]. (8.25) Критерий сходимости интерполяционного квадратурного процесса ... Таким образом, из (8.23), (8.24), (8.25) следует, что ∀n ≥ m(ε) справедлива оценка |I[f ] − Sn [f ]| ≤ |I[f − Qm(ε) ]| + |Sn [f − Qm(ε) ]| = =| ≤ Rb a  f (x) − Qm(ε) (x) dx|+ (n)   (n) (n) f (xk ) − Qm(ε) (xk ) | ≤ +| Pn Rb |f (x) − Qm(ε) (x)|dx+ a + ≤ε  Теорема доказана. k=0 Ak Pn k=0 Rb a (n) (n) (n) |Ak | · |f (xk ) − Qm(ε) (xk )| ≤ 1dx + ε Pn k=0 (n) |Ak | ≤ ε ((b − a) + M ) . Критерий сходимости интерполяционного квадратурного процесса ... Следствие (n) Если Ak ≥ 0 ∀n ≥ 0 и ∀k = 0, 1, . . . , n, то интерполяционный квадратурный процесс для любой f ∈ C ([a, b]) сходится. Доказательство. Поскольку интерполяционная квадратурная формула точна для Q0 (x) ≡ 1, то Z b n n X X (n) (n) |Ak | = Ak · 1 = 1dx = b − a = M. k=0 k=0 a  Следствие доказано. Поскольку в формулах Ньютона-Котеса, начиная с n = 8, среди (n) коэффициентов Ak появляются отрицательные числа и, более Pn (n) того, для этих формул последовательность { k=0 |Ak |}∞ n=0 расходится, то с помощью формул Ньютона-Котеса невозможно вычислить I[f ] с заранее заданной точностью. 8.7. Составные квадратурные формулы Пусть x0 , x1 , . . . , xm — разбиение отрезка интегрирования [a, b] на m элементарных отрезков [xi , xi+1 ] (i = 0, 1, . . . , m − 1): xi+1 = xi + h i = 0, 1, . . . , m − 1 : x0 = a, h = b−a . m Составная квадратурная формула Z I[f ] = b f (x)dx = a m−1 X Z xi+1 i=0 xi f (x)dx ≈ m−1 X Sn [f |xi , xi+1 ], (8.26) i=0 где Sn [f |xi , xi+1 ] — квадратурная сумма для функции f , которая построена по n + 1-ому узлу, принадлежащим отрезку элементарному [xi , xi+1 ] (i = 0, 1, . . . , m − 1). Примеры составных квадратурных формул Составная формула средних прямоугольников I[f ] ≈ m−1 X  b−a f (x 12 ) + f (x 32 ) + . . . + f (x 2m−1 ) , 2 m (8.27) (i = 0, 1, . . . , m − 1). hf (xi+ 12 ) = i=0 где xi+ 12 = xi + h 2 Пусть f ∈ C (1) ([a, b]) и M1 = maxx∈[a,b] |f 0 (x)|. Тогда |Rm [f ]| ≤ = Pm−1 i=0 |R0 [f |xi , xi+1 ]| ≤ M1 Pm−1 i=0 4 h h= M1 4 · b−a m Pm−1 i=0 M1 2 4 h · (b − a) = = M1 (b−a)2 , 4m Погрешность составной формулы средних прямоугольников M1 (b − a)2 · (8.28) |Rm [f ]| ≤ 4 m Примеры составных квадратурных формул ... Погрешность составной формулы средних прямоугольников Если f ∈ C (2) ([a, b]) и M2 = maxx∈[a,b] |f 00 (x)|, то |Rm [f ]| ≤ M2 (b − a)3 · 24 m2 (8.29) Составная формула трапеций I[f ] ≈ = Pm−1 i=0 b−a m h 2 (f (xi ) + f (xi+1 )) = (8.30) (f (x0 ) + 2f (x1 ) + . . . + 2f (xm−1 ) + f (xm )) , Погрешность составной формулы трапеций Пусть f ∈ C (2) ([a, b]) и M2 = maxx∈[a,b] |f 00 (x)|. Тогда |Rm [f ]| ≤ M2 (b − a)3 · 12 m2 (8.31) Примеры составных квадратурных формул ... Составная формула Симпсона  Pm−1  I[f ] ≈ i=0 h6 f (xi ) + 4f (xi+ 12 ) + f (xi+1 ) = = b−a 6m [f (x0 ) + 4f (x 12 ) + 2f (x1 ) + 4f (x 32 ) + 2f (x2 )+ (8.32) + . . . + 2f (xm−1 ) + 4f (xm− 21 ) + f (xm )], Погрешность составной формулы Симпсона Пусть f ∈ C (4) ([a, b]) и M4 = maxx∈[a,b] |f (4) (x)|. Тогда |Rm [f ]| ≤ M4 (b − a)5 · 2880 m4 (8.33) Сходимость квадратурного процесса для составных квадратурных формул В силу (8.28), (8.29), при m → ∞ |Rm [f ]| ≤ |Rm [f ]| ≤ M1 4 M2 24 · · (b−a)2 m (b−a)3 m2 → 0, → 0. Вывод Следовательно, квадратурный процесс для составной квадратурной формулы средних прямоугольников сходится. Учитывая структуру правых частей неравенств (8.28) и (8.29), погрешность составной квадратурной формулы средних прямоугольников монотонно уменьшается при увеличении количества узлов в разбиении отрезка интегрирования [a, b]. Аналогичный вывод можно сделать и для составных квадратурных формул трапеций и Симпсона на основе соответствующих оценок (8.31) и (8.33) этих формул.  N17. 8.8. Метод Рунге практической оценки погрешности составной квадратурной формулы Составная формула Симпсона Если f ∈ C (4) ([a, b]), то с учетом (8.20) Rm [f ] = Pm−1 = i=0 h4 − 2880 R2 [f |xi , xi+1 ] = − Pm−1 i=0 f (4) Pm−1 f (4) (ξi ) i=0 2880 h5 = (8.34) (ξi )h, где ξi ∈ [xi , xi+1 ] (i = 0, 1, . . . , m − 1). I[f (4) Z ]= a b f (4) (x)dx = m−1 X f (4) (ξi )h + εm (h), (8.35) i=0 R b (4) 1 где εm (h) → 0 при m → ∞ (h → 0). Пусть c = − 2880 f (x)dx. a Тогда в силу (8.34) и (8.35) погрешность составной формулы Симпсона может быть записана в виде Rm [f ] = c · h4 + o(h4 ) (8.36) Метод Рунге практической оценки погрешности составной формулы Симпсона ... 4 Из (8.36) следует, что R2m [f ] = c · h2 + o(h4 ), Следовательно, с точностью до o(h4 ) справедливо  4 1 Rm [f ]. (8.37) R2m [f ] ≈ Откуда 2 I[f ] = Sm [f ] + Rm [f ], (8.38) 1 I[f ] = S2m [f ] + R2m [f ] ≈ S2m [f ] + 16 Rm [f ], где Sk [f ] — квадратурная сумма в правой части равенства (8.32), определяющего составную формулу Симпсона для k узлов разбиения отрезка [a, b]. Соотношения (8.38) образуют систему линейных алгебраических уравнений относительно приближенных значений I[f ] и Rm [f ]. Из (8.38) и (8.37) следует, что 16 (S2m [f ] − Sm [f ]) , (8.39) Rm [f ] ≈ 15 Формула Рунге для составной формулы Симпсона R2m [f ] ≈ 1 (S2m [f ] − Sm [f ]) . 15 (8.40) Метод Рунге практической оценки погрешности составной формулы Симпсона ... Из (8.37) и (8.40) можно получить приближенное условие стабилизации величины погрешности составной формулы Симпсона R4m [f ] 1 S4m [f ] − S2m [f ] ≈ ≈ . S2m [f ] − Sm [f ] R2m [f ] 16 (8.41) Если условие (8.41) достаточно точно выполняется, то отброшенная в равенствах (8.36) величина o(h4 ) уже не имеет принципиального значения в сравнении с погрешностью R4m [f ]. Если же при увеличении m стабилизация не происходит (условие (8.41) не выполняется), то интегрируемая функция f не является достаточно гладкой. Формула Рунге для составной формулы трапеций В силу (8.16), (8.17) Rm [f ] = Pm−1 = i=0 R1 [f |xi , xi+1 ] = − 1 2 − 12 h Pm−1 i=0 00 Pm−1 f 00 (ξi ) i=0 12 2 h3 = (8.42) 2 f (ξi )h = c · h + o(h ), R b 00 1 f (x)dx. где ξi ∈ [xi , xi+1 ] (i = 0, 1, . . . , m − 1), c = − 12 a Аналогично (8.39) и (8.40), для составной формулы трапеций R2m [f ] ≈  2 1 Rm [f ]. 2 (8.43) Формула Рунге для составной формулы трапеций R2m [f ] ≈ 1 (S2m [f ] − Sm [f ]) . 3 (8.44) Формула Рунге для составной квадратурной формулы. Общий случай. Пусть k — порядок точности составной квадратурной формулы на одном шаге (степень длины h отрезка интегрирования в выражении для погрешности на элементарном отрезке интегрирования [xi , xi+1 ] (см. (8.34),(8.42))28 . Тогда  k−1 1 k−1 k−1 Rm [f ]; Rm [f ] = c · h + o(h ), R2m [f ] ≈ 2 I[f ] = Sm [f ]+Rm [f ], Откуда Rm [f ] ≈ I[f ] = S2m [f ]+R2m [f ] ≈ S2m [f ]+ 1 1− 1 2k−1 1 Rm [f ]. 2k−1 (S2m [f ] − Sm [f ]) и Формула Рунге для составной квадратурной формулы k-го порядка точности на одном шаге R2m [f ] ≈ S2m [f ] − Sm [f ] . 2k−1 − 1 28 Для составной формулы Симпсона k = 5, для составной формулы трапеций k = 3. (8.45) Неустранимая погрешность квадратурных формул Пусть 1 2 (n) ≥ 0 ∀n ≥ 0, ∀k = 0, 1, . . . , n29 ; f ∈ C ([a, b]): ∀x ∈ [a, b] |f (x) − fe(x)| ≤ ε. Ak Тогда Оценка неустранимой погрешности квадратурной интерполяционной формулы   Pn (n) (n) (n) |Sn [f ] − Sn [fe]| = | k=0 Ak f (xk ) − fe(xk ) | ≤ Pn Pn (n) (n) ≤ ε · k=0 |Ak | = ε · k=0 Ak = ε(b − a) Вывод С ростом n неустранимая погрешность квадратурной интерполяционной формулы не увеличивается. 29 Интерполяционный квадратурный процесс сходится. 8.9. Вычисление определенных интегралов с весом Постановка задачи Пусть функции f и p ограничены на отрезке [a, b] ⊆ D[f ] ∩ D[p]: Rb p(x)xm dx вычисляются аналитически (m = 0, 1, 2, . . .). a x0 , x1 , x2 , . . . , xn ∈ [a, b] : xi 6= xj ∀i 6= j y0 , y1 , y2 , . . . , yn : yi = f (xi ) ∀i = 0, 1, . . . , n I[f ] = Rb a (8.46) p(x)f (x)dx Алгоритм решения f (x) = Ln (x) + Rn (x), Rb Rb I[f ] = a p(x)Ln (x)dx + a p(x)Rn (x)dx I[f ] ≈ Rb a p(x)Ln (x)dx = Sn [f ] (8.47) Квадратурные формулы наивысшей алгебраической степени точности. Формула Гаусса. Квадратурная интерполяционная формула Z b n n X X x − xi dx = Ak f (xk ), Sn [f ] = p(x) f (xk )Πni=0,i6=k xk − xi a k=0 k=0 Z Ak = b p(x)Πni=0,i6=k a x − xi dx, k = 0, 1, 2, . . . , n xk − xi (8.48) Постановка задачи Пусть квадратурная формула Z b p(x)f (x)dx ≈ I[f ] = a n X Ak f (xk ), (8.49) k=0 строится по n + 1-му различному узлу x0 , x1 , x2 , . . . , xn ∈ [a, b]. Каким образом следует выбирать ее узлы xk и вычислять коэффициенты Ak (k = 0, 1, 2, . . . , n), чтобы формула (8.49) имела наивысшую алгебраическую степень точности? Квадратурные формулы наивысшей алгебраической степени точности ... Теорема 8.3. Для того, чтобы квадратурная формула (8.49) была точна для всех многочленов степени 2n + 1 и ниже необходимо и достаточно, чтобы: a) формула (8.49) была интерполяционной, т.е. ее коэффициенты Ak (k = 0, 1, 2, . . . , n) были вычислены по формулам (8.48); b) узлы x0 , x1 , x2 , . . . , xn ∈ [a, b] были таковыми, чтобы многочлен ω n (x) = (x − x0 )(x − x1 ) . . . (x − xn ) был ортогонален с весом p любому многочлену Qm (x) (m ≤ n), то есть Z b p(x)Qn (x)ω n (x)dx = 0 ∀ Qn (x). a (8.50) Доказательство Необходимость Пусть квадратурная формула (8.49) точна для всех многочленов степени 2n + 1 и ниже. Справедливость условия (a) следует из критерия интерполяционости квадратурной формулы (см. Теорему 8.1). Для любого многочлена Qn (x) справедливо Rb Rb Pn p(x)Qn (x)ω n (x)dx = a p(x)P2n+1 (x)dx = k=0 Ak P2n+1 (xk ) = a = Pn k=0 Ak Qn (xk )ω n (xk ) = 0, где P2n+1 (x) = Qn (x)ω n (x). Таким образом, выполняется и условие (b). Достаточность Пусть для квадратурной формулы (8.49) выполнены условия (a) и (b). Произвольный многочлен Q2n+1 (x) можно представить в виде Доказательство ... Q2n+1 (x) = Gn (x)ω n (x) + Hm (x) (m ≤ n). Тогда Rb Rb p(x)Q2n+1 (x)dx = a p(x) (Gn (x)ω n (x) + Hm (x))dx = a Rb = Rb = Rb = Pn Ak Hm (xk ) + = Pn Ak (Hm (xk ) + Gn (xk )ω n (xk )) = = Pn Ak Q2n+1 (xk ) = Sn [Q], a a p(x)Gn (x)ω n (x)dx + p(x)Hm (x)dx = |(a) k=0 k=0 k=0 a p(x)Hm (x)dx = |(b) Pn Pn k=0 k=0 Ak Hm (xk ) = Ak Gn (xk )ω n (xk ) = то есть формула (8.49) точна для любого многочлена степени 2n + 1 и ниже.  Теорема доказана. О существовании квадратурной формулы алгебраической степени точности N ≥ 2n + 1 Узлы x0 , x1 , x2 , . . . , xn являются корнями многочлена ω n (x) = (x − x0 )(x − x1 ) . . . (x − xn ), который в общем виде может быть записан следующим образом Gn+1 (x) = xn+1 + a1 xn + a2 xn−1 + . . . + an−1 x2 + an x + an+1 , (8.51) где ai ∈ R (i = 1, 2, . . . , n + 1). Задача Требуется построить многочлен Gn+1 (x) вида (8.51), который бы был ортогонален с весом p любому многочлену Qm (x) (m ≤ n). Для того, чтобы многочлен Gn+1 (x) вида (8.51) был ортогонален с весом p любому многочлену Qm (x) (m ≤ n) необходимо и достаточно, чтобы Z b p(x)Gn+1 (x)xm dx = 0 ∀m = 0, 1, 2, . . . , n. (8.52) a О существовании квадратурной формулы алгебраической степени точности N ≥ 2n + 1 ... Равенства (8.52) образуют неоднородную систему, содержащую (n + 1)-о линейное алгебраическое уравнение относительно неизвестных ai ∈ R (i = 1, 2, . . . , n + 1)  Rb p(x) a1 xn +a2 xn−1 + . . . +an−1 x2 +an x+an+1 xm dx= a =− Rb a p(x)xn+m+1 dx (8.53) ∀m = 0, 1, 2, . . . , n. Неоднородная система (8.53) имеет единственное решение тогда и только тогда, когда соответствующая ей однородная система (8.54) имеет лишь тривиальное решение.  Rb p(x) a1 xn +a2 xn−1 + . . . +an−1 x2 +an x+an+1 xm dx=0 a (8.54) ∀m = 0, 1, 2, . . . , n. О существовании квадратурной формулы алгебраической степени точности N ≥ 2n + 1 ... Достаточными условиями того, что однородная система (8.54) имеет лишь тривиальное решение являются следующие: a) p(x) ≥ 0 ∀x ∈ [a, b], Rb b) a p(x)dx > 0. (8.55) Справедливость этого может быть доказана методом от противного. Если предположить, что однородная система (8.54) имеет нетривиальное решение (ā1 , ā2 , . . . , ān+1 ) 6= 0, то суммирование равенств  Rb ān−m+1 a p(x) ā1 xn +ā2 xn−1 + . . . +ān−1 x2 +ān x+ān+1 xm dx=0 ∀m = 0, 1, 2, . . . , n. приводит к выражению Z b 2 p(x) ā1 xn +ā2 xn−1 + . . . +ān−1 x2 +ān x+ān+1 dx=0, a которое противоречит условиям (8.55). О существовании квадратурной формулы алгебраической степени точности N ≥ 2n + 1 ... Таким образом, доказана следующая теорема Теорема 8.4. Пусть весовая функция p(x) (x ∈ [a, b]) удовлетворяет следующим условиям: a) p(x) ≥ 0 ∀x ∈ [a, b]; b) Rb c) ∃ a p(x)dx > 0, Rb a p(x)xk dx ∀k = 0, 1, 2, . . . , 2n + 1. Тогда существует единственный многочлен Gn+1 (x)=xn+1 +a1 xn +a2 xn−1 + . . . +an−1 x2 +an x+an+1 , который ортогонален с весом p любому многочлену Qn (x). (8.56) О существовании квадратурной формулы алгебраической степени точности N ≥ 2n + 1 ... Теорема 8.5. Пусть выполнены условия (8.56). Тогда многочлен Gn+1 (x)=xn+1 +a1 xn +a2 xn−1 + . . . +an−1 x2 +an x+an+1 , который ортогонален с весом p любому многочлену Qm (x) (m ≤ n), имеет на отрезке [a, b] n + 1 различных корней. Доказательство. Принадлежность корней многочлена Gn+1 (x) отрезку [a, b] От противного. Пусть отрезку [a, b] принадлежат s + 1 корней x0 , x1 , x2 , . . . , xs (s < n) корней многочлена Gn+1 (x). Этот многочлен можно представить в виде Gn+1 (x)=Ds+1 (x)Rn−s (x), где Ds+1 (x) = (x − x0 )(x − x1 ) . . . (x − xs ). Доказательство... Поскольку многочлен Gn+1 (x) ортогонален с весом p любому многочлену Qn (x), a (s + 1) ≤ n, то, с одной стороны, Z b p(x)Gn+1 (x)Ds+1 (x)dx = 0. a С другой стороны, Z b Z b 2 p(x) (Ds+1 (x)) Rn−s (x)dx > 0, p(x)Gn+1 (x)Ds+1 (x)dx = a a поскольку a) p(x) ≥ 0 ∀x ∈ [a, b]; Rb b) a p(x)dx > 0; 2 c) (Ds+1 (x)) ≥ 0 ∀x ∈ [a, b]; d) многочлен Rn−s (x) на отрезке [a, b] корней не имеет и, следовательно, для определенности Rn−s (x) > 0 ∀x ∈ [a, b]. Возникает противоречие. Доказательство... Все корни многочлена Gn+1 (x) простые От противного. Пусть у многочлена Gn+1 (x) существует кратный корень xs (0 ≤ s ≤ n). Тогда Gn+1 (x) можно представить в виде 2 Gn+1 (x)= (x − xs ) Rn−1 (x). Аналогично, так как многочлен Gn+1 (x) ортогонален с весом p любому многочлену Qn (x), то, с одной стороны, Z b p(x)Gn+1 (x)Rn−1 (x)dx = 0. a С другой стороны, Rb Rb 2 p(x)Gn+1 (x)Rn−1 (x)dx = a p(x) (x − xs ) Rn−1 (x)Rn−1 (x)dx = a = Rb a 2 2 p(x) (x − xs ) (Rn−1 (x)) dx > 0 в силу указанных выше свойств (8.55) весовой функции p(x). Возникает противоречие.  Теорема доказана.  N18. Алгоритм построения квадратурной формулы алгебраической степени точности N ≥ 2n + 1 Пусть выполнены условия (8.56) (см. теорему 8.4). Требуется по n + 1-у узлу построить квадратурную формулу (8.49) алгебраической степени точности N ≥ 2n + 1. Численная процедура Строится неоднородная система (8.53) линейных алгебраических уравнений относительно неизвестных коэффициентов ai (i = 1, 2, . . . , n + 1) многочлена ω n (x): Rb a  p(x) a1 xn +a2 xn−1 + . . . +an−1 x2 +an x+an+1 xm dx= =− Rb a p(x)xn+m+1 dx ∀m = 0, 1, 2, . . . , n Находится решение ā1 , ā2 , . . . , ān+1 системы (8.53) и определяется многочлен ω n (x) = xn+1 + ā1 xn + ā2 xn−1 + . . . + ān−1 x2 + ān x + ān+1 ; Численная процедура... Вычисляются корни x̄i (i = 0, 1, 2, . . . , n) многочлена ω n (x); В силу интерполяционности искомой квадратурной формуры (см. теорему 8.3) по формулам (8.48) вычисляются ее коэффициенты Āk (k = 0, 1, 2, . . . , n): Z b x − x̄i dx, k = 0, 1, 2, . . . , n; Āk = p(x)Πni=0,i6=k x̄k − x̄i a Строится квадратурная интерполяционная формула (8.49) алгебраической степени точности N ≥ 2n + 1: Z b n X p(x)f (x)dx ≈ Āk f (x̄k ). I[f ] = a k=0 Определение 8.7. Квадратурная интерполяционная формула (8.49) алгебраической степени точности N ≥ 2n + 1, построенная по n + 1-у узлу с помощью описанной выше численной процедуры, называется квадратурной формулой Гаусса. ПРИМЕР Постановка задачи Пусть p(x) ≡ 1 x ∈ [−1, 1], n = 1. Требуется по 2-м узлам построить квадратурную формулу алгебраической степени точности N ≥ 3. 1 Многочлен ω 1 (x) = (x − x0 )(x − x1 ) = x2 + a1 x + a2 ; Система линейных алгебраических уравнений относительно коэффициентов a1 и a2 : Z 1 Z 1 (a1 x + a2 ) xm dx = − xm+2 dx m = 0, 1 −1 или 2 3 4 5 −1  2a2 = − 23 ; 2 3 a1 = 0 Решение системы (8.57): a1 = 0, a2 = − 13 ; Многочлен ω 1 (x) = x2 − 13 , корни которого x0 = − В силу формул (8.48) A0 = A1 = 1; Интерполяционная квадратурная формула: √ √ R1 3 3 ) + f ( ), N = 3. 1 · f (x)dx ≈ f (− 3 3 −1 (8.57) √ 3 3 , √ x1 = 3 3 ; Свойства квадратурной формулы Гаусса Теорема 8.6. Квадратурная формула Гаусса, построенная по n + 1 узлам, имеет алгебраическую степень точности N = 2n + 1. Доказательство. 2 Пусть Q2n+2 (x) = (ω n (x)) . Поскольку весовая функция p удовлетворяет условиям (8.56), то b Z I[Q2n+2 ] = 2 p(x) (ω n (x)) dx > 0. a При этом Sn [Q2n+2 ] = n X k=0 Таким образом, I[Q2n+2 ] 6= Sn [Q2n+2 ].  Теорема доказана. 2 Ak (ω n (xk )) = 0. Свойства квадратурной формулы Гаусса ... Теорема 8.7. Наивысшая алгебраическая степень точности квадратурной формулы, построенной по n + 1 узлам, равна 2n + 1. Доказательство. Пусть существует такая квадратурная формула, у которой N > 2n + 1. Тогда, в силу теоремы 8.3, многочлен ω n (x) должен удовлетворять условию ортогональности с весом p любому многочлену Qn (x). Согласно теореме 8.4, указанному условию удовлетворяет единственный многочлен Gn+1 (x)=xn+1 +a1 xn +a2 xn−1 + . . . +an−1 x2 +an x+an+1 . Этот многочлен имеет единственный набор корней x0 , x1 , x2 , . . . , xn ∈ [a, b] : xi 6= xj ∀i 6= j, которые являются узлами квадратурной формулы. Ее коэффициенты Ak (k = 0, 1, 2, . . . , n) вычисляются по формулам (8.48) единственным образом. Поэтому такая квадратурная формула совпадает с квадратурной формулой Гаусса, у которой, согласно теореме 8.6, N = 2n + 1.  Теорема доказана. Свойства квадратурной формулы Гаусса ... Теорема 8.8. Коэффициенты Ak (k = 0, 1, 2, . . . , n) квадратурной формулы Гаусса положительны. Доказательство.  2 (k) i Пусть Q2n (x) = Πni=0,i6=k xx−x , k = 0, 1, 2, . . . , n. k −xi (k) Очевидно, по построению, ∀x ∈ [a, b] Q2n (x) ≥ 0 и  0, j 6= k (k) Q2n (xj ) = δjk = ∀j = 0, 1, 2, . . . , n 1, j = k При этом, поскольку весовая функция p удовлетворяет условиям (8.56), то Z b (k) (k) I[Q2n ] = p(x)Q2n (x)dx > 0. a Свойства квадратурной формулы Гаусса ... (k) Для всех многочленов Q2n (x) (k = 0, 1, 2, . . . , n) квадратурная формула Гаусса точна. Следовательно, ∀k = 0, 1, 2, . . . , n Z b (k) p(x)Q2n (x)dx = a n X (k) Aj Q2n (xj ) = Ak > 0. j=0  Теорема доказана. Теорема 8.9. Квадратурный процесс Гаусса сходится. Доказательство. Поскольку у квадратурной формулы Гаусса Ak > 0 (k = 0, 1, 2, . . . , n) (см. теорему 8.8) и эта формула является интерполяционной (см. теорему 8.3), то справедливость утверждения теоремы следует из следствия из теоремы 8.2 (критерий сходимости интерполяционного квадратурного процесса).  Теорема доказана. Погрешность квадратурной формулы Гаусса Теорема 8.10. Пусть f ∈ C (2n+2) ([a, b]). Тогда f (2n+2) (ξ) (2n + 2)! Z M2n+2 |Rn [f ]| ≤ (2n + 2)! Z Rn [f ] = b 2 (8.58) 2 (8.59) p(x) (ω n (x)) dx a и справедлива оценка b p(x) (ω n (x)) dx, a где ξ ∈ [a, b], M2n+2 = maxx∈[a,b] |f (2n+2) (x)|. Доказательство. Пусть L2n+1 (x) — интерполяционный многочлен Эрмита, построенный для функции f по набору двукратных узлов xi ∈ [a, b] (i = 0, 1, . . . , n). Доказательство... Тогда 2 f (x) = L2n+1 (x) + f (x, x0 , x0 , . . . , xn , xn ) (ω n (x)) . Следовательно, Rn [f ] = Rb a 2 p(x)f (x, x0 , x0 , . . . , xn , xn ) (ω n (x)) dx = = f (η, x0 , x0 , . . . , xn , xn ) = f (2n+2) (ξ) R b (2n+2)! a Rb a 2 p(x) (ω n (x)) dx = 2 p(x) (ω n (x)) dx, где η ∈ [a, b] (по теореме о среднем), ξ ∈ [a, b] (в силу свойств разделенных разностей с кратными узлами для гладких функций).  Теорема доказана. Вычисление определенных интегралов с особенностями Под особенностью понимается ситуация, в которой стандартные приемы численного интегрирования приводят к неудовлетворительному результатуa . aВ частности, при вычислении несобственных интегралов. Методы устранения особенностей 1 Аналитический; 2 Усечения; 3 Мультипликативный; 4 Аддитивный. I. Аналитический метод устранения особенности Пример π 2 Z ln(sin(x))dx Здесь limx→0 ln(sin(x)) = −∞. Z π 2 π 2 Z ln(sin(x))dx = где R π2 π 2 Z sin(x) ln( )dx + x ln(x)dx, π 2 ln( sin(x) x )dx — интеграл без особенностей, а интеграл ln(x)dx может быть вычислен аналитически: R R π 2 π 2 ln(x)dx = R = π 2 π x0 ln(x)dx = x ln(x)|02 − R π 2 π x · x1 dx = ln( π2 ) − limx→0 x ln(x) − x|02 = где limx→0 x ln(x) = limx→0 ln(x) 1 x = limx→0 1 x − x12 π 2 = 0.  ln( π2 ) − 1 , II. Метод усечения Пример Требуется вычислить несобственный интеграл Z ∞ 1 arctan(x)dx 1 + x3 с заданной точностью ε > 0. Z ∞ arctan(x) dx = 1 + x3 Z ∞ Z A arctan(x) dx + 1 + x3 1 arctan(x)dx ≈ 1 + x3 Z ∞ Z A Z ∞ A arctan(x) dx. 1 + x3 1 arctan(x)dx 1 + x3 1 arctan(x)dx| ≤ ε1 , 3 A 1+x Здесь ε = ε1 + ε2 , где ε1 > 0 — погрешность метода усечения, RA 1 ε2 > 0 — погрешность вычисления интеграла 0 1+x 3 arctan(x)dx. A>0: | Метод усечения. Пример... Поскольку для любой константы A > 0 справедливо 1 arctan(x) > 0, 1 + x3 то | R∞ A 1 1+x3 arctan(x) < R∞ arctan(x)dx| = A 1 1+x3 ≤ π 2 R∞ ≤ π 2 R∞ = π 2 A A A≥ ∀x ∈ [A, ∞), arctan(x)dx ≤ 1 1+x3 dx 1 x3 dx ≤ =  − 2x1 2 |∞ A = Откуда r π 2 π >0 4ε1 π 4A2 ≤ ε1 . III. Мультипликативный метод устранения особенности Z b p(x)f (x)dx, a где функция f (x) без особенностей на [a, b], а функция p(x) обладает особенностью на [a, b]. При этом у функции p(x) существует аналитическая первообразная s(x) (x ∈ [a, b]), которая обратима на [a, b]. Z x p(t)dt x ∈ [a, b] : s(x) = ∃r = s−1 : x = r(s) s ∈ [s(a), s(b)]. a Замена s = s(x): x = r(s), ds = s0 (x)dx = p(x)dx Z b Z s(b) p(x)f (x)dx = f (r(s))ds − a s(a) интеграл без особенностей. Мультипликативный метод устранения особенности Пример Z 1 √ −1 1 dx 1 − x4 1 Z 1 1 1 1 √ √ √ dx = dx 4 2 1−x 1−x 1 + x2 −1 −1 1 1 Здесь f (x) = √1+x , p(x) = √1−x x ∈ [−1, 1]: 2 2 Z x Z x 1 √ p(t)dt = s(x) = dt = arcsin(x) x ∈ [a, b] 1 − t2 Z Замена s = arcsin(x): x = sin(s), ds = s0 (x)dx = Z 1 −1 1 √ dx = 1 − x4 интеграл без особенностей. Z π 2 −π 2 √ 1 dx 1−x2 1 q 1 + sin2 (s) ds − IV. Аддитивный метод устранения особенности Z b f (x)dx, a где производные f (k) (x) не ограничены на [a, b] для всех k ≥ K. Особенность Пусть для приближенного вычисления интеграла требуется использовать метод, для оценки погрешности которого требуется ограниченность производной K-го порядка у подинтегральной функции. f (x) = ϕ(x) + ψ(x), где функция ψ без особенности, а функция ϕ с особенностью, но I[ϕ] вычисляется аналитически. Аддитивный метод устранения особенности... ПРИМЕР f (x) = (x − c)α g(x), где c ∈ [a, b], −1 < α < K a , функция g непрерывнодифференцируема на [a, b] достаточное число раз. a Достаточное условие сходимости интеграла I[f ] g(x) = g(c)  + g (c)(x − c) + . . . + g (K) (c) (x − c)K +  g (K) (c) + g(x) − g(c) − g (c)(x − c) − . . . − K! (x − c)K , K!   g (K) (c) f (x) = (x − c)α g(c) + g 0 (c)(x − c) + . . . + K! (x − c)K +   g (K) (c) +(x − c)α g(x) − g(c) − g 0 (c)(x − c) − . . . − K! (x − c)K = = ϕ(x) + ψ(x), где Аддитивный метод устранения особенности...   g (K) (c) ϕ(x) = (x − c)α g(c) + g 0 (c)(x − c) + . . . + K! (x − c)K   g (K) (c) ψ(x) = (x − c)α g(x) − g(c) − g 0 (c)(x − c) − . . . − K! (x − c)K Здесь I[ϕ] вычисляется аналитически, функцию ψ можно представить в виде ψ(x) = (x−c)α g(x, c, c, . . . , c)(x−c)K+1 = (x−c)α+K+1 g(x, c, c, . . . , c). | {z } | {z } K+1 K+1 В результате особенность сдвинута в производную K + 1-го порядка. I[f ] ≈ I[ϕ] + Sn [ψ], где функция ψ имеет ограниченную на отрезке [a, b] производную K-го порядка  N19.ТЕМА 9. Численные методы решения задачи Коши для обыкновенного дифференциального уравнения первого порядка Постановка задачи Коши y 0 = f (x, y), x ∈ [x0 , x0 + X], (9.1) y(x0 ) = y0 , (9.2) где функция f непрерывна по каждому своему аргументу и имеет непрерывную частную производную f 0y a . a Достаточное условие существования и единственности классического решения y = y(x|x0 , y0 ) задачи Коши (9.1),(9.2), которое является непрерывнодифференцируемой на отрезке [x0 , x0 + X] функцией. Приближенное решение задачи Коши (9.1),(9.2) x0 , x1 , x2 , . . . , xn ∈ [x0 , x0 + X] : xi+1 =xi +hi ∀i = 0, 1, . . . , n−1 y0 , y1 , y2 , . . . , yn : yi ≈ y(xi ) ∀i = 1, . . . , n (9.3) 9.1. Методы, основанные на разложении решения задачи Коши в ряд Тейлора Пусть функция f такова, что у решения y = y(x|x0 , y0 ) задачи Коши (9.1) существуют производные до достаточно большого порядка и xi ∈ [x0 , x0 + X] : xi+1 = xi + h ∀i = 0, 1, . . . , n − 1, h = X n. Разложение функции y(x|x0 , y0 ) в ряд Тейлора в окрестности узла x0 имеет вид 1 1 y(x0 +h)=y(x0 )+y 0 (x0 )h+ y 00 (x0 )h2 + . . . + y (k) (x0 )hk +O(hk+1 ). 2 k! (9.4) Равенство (9.4) для k = 2 можно записать в виде 2 y(x0 +h) = y(x0 ) + f (x0 , y(x0 ))h + h2 [f 0x (x0 , y(x0 ))+ +f 0y (x0 , y(x0 ))f (x0 , y(x0 ))] + O(h3 ), где, в силу дифференциального уравнения (9.1), y 0 (x0 ) = f (x0 , y(x0 )), y 00 (x0 ) = f 0x (x0 , y(x0 )) + f 0y (x0 , y(x0 ))y 0 (x0 ) = = f 0x (x0 , y(x0 )) + f 0y (x0 , y(x0 ))f (x0 , y(x0 )). (9.5) Методы, основанные на разложении решения задачи Коши в ряд Тейлора ... Отбрасывание из правой части равенства (9.5) слагаемого O(h3 ) приводит к приближенному равенству y(x1 ) ≈ y(x0 ) + f (x0 , y(x0 ))h+  2 + h2 f 0x (x0 , y(x0 )) + f 0y (x0 , y(x0 ))f (x0 , y(x0 )) , (9.6) которое связывает точные значения y(x0 ) и y(x1 ) искомого решения задачи Коши в соответствующих узлах. Требование точности этого равенства для приближенных значений yi и yi+1 в произвольных двух соседних узлах xi и xi (0 ≤ i < n) приводит к реккурентной формуле  2 yi+1 = yi + f (xi , yi )h + h2 f 0x (xi , yi ) + f 0y (xi , yi )f (xi , yi ) ∀i = 0, 1, . . . , n − 1, (9.7) которая задает итерационный метод 3-го30 порядка точности на одном шаге (итерации), так как |y(x1 ) − y1 |(9.7) = O(h3 ) при i = 0. 30 Определяется степенью h в слагаемом O(h3 ). 9.2. Метод ломанных Эйлера Для случая k = 1 в равенстве (9.4) аналогично (9.5)-(9.7) можно построить метод, имеющий второй31 порядок точности на одном шаге Явный метод Эйлера yi+1 = yi + f (xi , yi )h ∀i = 0, 1, . . . , n − 1 (9.8) Рис. 1: Геометрическая интерпретация явного метода Эйлера (9.8). 31 Поскольку |y(x1 ) − y1 |(9.8) = O(h2 ) Явный метод Эйлера... Теорема 9.1. Пусть функция f непрерывно-дифференцируема по каждому своему аргументу. Тогда погрешность явного метода Эйлера (9.8) на всем промежутке [x0 , x0 + X] является величиной первого порядка по h, то есть ∃C > 0 : |y(xi ) − yi |(9.8) ≤ Ch ∀i = 0, 1, 2, . . . , n. (9.9) Доказательство. Для точных значений y(xi ) (i = 0, 1, . . . , n − 1) решения задачи Коши (9.1),(9.2) справедливо следующее равенство Z xi+1 f (x, y(x))dx ∀i = 0, 1, . . . , n − 1. (9.10) y(xi+1 ) = y(xi ) + xi Разность соответствующих частей равенств (9.10) и (9.8) с учетом Z xi+1 h= 1dx xi приводит к выражению Доказательство ... y(xi+1 ) − yi+1 = y(xi ) − yi + R xi+1 = y(xi ) − yi + R xi+1 + R xi+1 xi xi xi (f (x, y(x)) − f (xi , yi ))dx = (f (x, y(x)) − f (xi , y(xi )))dx+ (f (xi , y(xi )) − f (xi , yi ))dx. Откуда |y(xi+1 ) − yi+1 | ≤ |y(xi ) − yi | + R xi+1 xi |f (x, y(x)) − f (xi , y(xi ))|dx+ R xi+1 |f (xi , y(xi )) − f (xi , yi )|dx. (9.11) Используя свойства функции f (x, y), можно оценить каждый из определенных интегралов в правой части неравенства (9.11): + xi I) Пусть F (x)=f (x, y(x)) x ∈ [x0 , x0 + X]. Поскольку функция f (x, y) непрерывно-дифференцируема по всем своим аргументам, то функция F (x) является непрерывно-дифференцируемой на отрезке [x0 , x0 + X]. Доказательство ... Следовательно, ∃K > 0 : |F 0 (x)| ≤ K ∀x ∈ [x0 , x0 + X], где F 0 (x) = f 0x (x, y(x)) + f 0y (x, y(x))f (x, y(x))32 . Тогда R xi+1 xi |f (x, y(x)) − f (xi , y(xi ))|dx = R xi+1 = R xi+1 xi xi ≤K |F (x) − F (xi )|dx = |F 0 (ξ(x))| · |x − xi |dx ≤ R xi+1 xi 2 (x − xi )dx = K h2 , (9.12) где ξ(x) ∈ [xi , x], x ∈ [xi , xi+1 ]. II) В силу непрерывности функции f 0y (x, y) ∃L > 0 : |f 0y (x, y)| ≤ L ∀(x, y) ∈ [x0 , x0 + X] × H[yh ], 32 При K = 0 задача Коши (9.1),(9.2) имеет очевидное аналитическое решение y(x) ≡ y0 (x ∈ [x0 , x0 + X]). Этот случай здесь не рассматривается. Доказательство ... где H[yh ] — ограниченное замкнутое множество допустимых значений y(x) и yi (h) (x ∈ [x0 , x0 + X], h ∈ [0, X]). Следовательно, R xi+1 Rx |f (xi , y(xi )) − f (xi , yi )|dx = xii+1 |f 0y (xi , ηi )| · |y(xi ) − yi |dx ≤ xi ≤L R xi+1 xi |y(xi ) − yi |dx = = Lh|y(xi ) − yi |, (9.13) где ηi ∈ [yi , y(xi )]. Пусть εi = |y(xi ) − yi |, i = 0, 1, 2, . . . , n − 1. Из (9.11), (9.12), (9.13) следует εi+1 ≤ εi + K h2 + Lhεi = A(h)εi + B(h), 2 2 где A(h) = 1 + Lh > 0, B(h) = K h2 ≥ 0 ∀h ∈ [0, X]. (9.14) Доказательство ... Так как y(x0 ) = y0 (см. начальное условие (9.2)), то ε0 = 0. Тогда, в силу (9.14), ε1 ≤ A(h)ε0 + B(h) = B(h), ε2 ≤ A(h)ε1 + B(h) ≤ A(h)B(h) + B(h) = (A(h) + 1) B(h), ε3 ≤ A(h)ε2 + B(h) ≤ A(h)  (A(h) + 1) B(h) + B(h) = = A2 (h) + A(h) + 1 B(h), ···························  εi+1 ≤ A(h)εi + B(h) = Ai (h) + Ai−1 (h) + . . . + A(h) + 1 B(h) = i+1 (h)−1 ≤ = B(h) · AA(h)−1 ≤ B(h) · An (h)−1 A(h)−1 ∀i ≤ n − 1. (9.15) Доказательство ... B(h) · An (h)−1 A(h)−1 = Kh2 2 = Kh 2L = K 2L · · (1+Lh)n −1 Lh  1 + LX n = n  −1 = (9.16) ·  1+ LX n n LX  LX  −1 h≤  K ≤ 2L · eLX − 1 h = Ch,  K где C = 2L · eLX − 1 . Таким образом, из (9.15) и (9.16) следует, что εi = |y(xi ) − yi |(9.8) ≤ Ch ∀i = 0, 1, 2, . . . , n.  Теорема доказана. Порядок точности явного метода Эйлера (9.8) на всем промежутке [x0 , x0 + X] на единицу меньше его порядка точности на одном шаге. Явный метод Эйлера... Сходимость явного метода Эйлера (9.8) Из (9.9) следует, что при h → 0 функциональная последовательность сеточных функций {yi (h)}ni=1 , построенных в силу формулы (9.8) для различных значений параметра 0 < h ≤ X, равномерно на отрезке [x0 , x0 + X] сходится к точному решению y = y(x|x0 , y0 ) задачи Коши (9.1),(9.2). Практическое преимущество явного метода Эйлера (9.8) перед другими численными процедурами типа (9.7), построенными на основе разложения решения задачи Коши в ряд Тейлора, заключается в следующем. При численной реализации этого метода не требуется вычислять значения частных производных различных порядков функции f (x, y) — правой части дифференциального уравнения (9.1). Замечание Для всех итерационных численных методов приближенного решения задачи Коши (9.1),(9.2), в результате реализации которых формируется числовая последовательность {yi (h)}ni=1 , определяющая приближенное решение указанной задачи, справедлива следующая закономерность. Если погрешность такого метода на одном шаге является величиной O(hk+1 ), то его погрешность на всем промежутке [x0 , x0 + X] будет величиной O(hk ). 9.3. Методы, основанные на интегральном представлении решения задачи Коши Решение задачи Коши (9.1),(9.2) может быть представлено в виде Z x f (τ, y(τ ))dτ ∀x ∈ [x0 , x0 + X] y(x) = y(x0 ) + (9.17) x0 Из (9.17), что для любого узла xk (k = 0, 1, 2, . . . , n − 1) справедливо равенство Z xk+1 y(xk+1 ) = y(xk ) + F (x)dx, (9.18) xk где F (x) = f (x, y(x)) x ∈ [x0 , x0 + X]. Для вычисления приближенного значения интеграла I[F |[xk , xk+1 ]] в правой части равенства (9.18) может быть использована любая формула численного интегрирования. Тогда замена в (9.18) этого интеграла квадратурной суммой Sm [F |[xk , xk+1 ]] приводит к приближенному равенству Методы, основанные на интегральном представлении решения задачи Коши ... y(xk+1 ) ≈ y(xk ) + Sm [F |[xk , xk+1 ]] или y(xk+1 ) ≈ y(xk ) + m X Āi f (x̄i , y(x̄i )), i=0 где x̄i ∈ [xk , xk+1 ] (i = 0, 1, . . . , m). Требование точности этого равенства для приближенных значений функции y в соответствующих узлах приводит к следующей численной процедуре yk+1 = yk + Pm i=0 Āi f (x̄i , ȳi ) (9.19) k = 0, 1, 2, . . . , n − 1 В частности, формула (9.8) явного метод Эйлера может быть получена с помощью этой методики, если для вычисления приближенного значения интеграла I[F |[xk , xk+1 ]] в (9.18) воспользоваться формулой левых прямоугольников (8.8). 9.4. Метод Эйлера с пересчетом В случае, если для вычисления приближенного значения интеграла I[F |[xk , xk+1 ]] в (9.18) используется формула трапеций (8.9), то численная процедура (9.19) задается следующей неявной формулой yk+1 = yk + h2 [f (xk , yk ) + f (xk+1 , yk+1 )] (9.20) k = 0, 1, 2, . . . , n − 1 На практике для преодоления вычислительных трудностей, обусловленных наличием искомой величины yk+1 в правой части равенства (9.20) в качестве аргумента функции f , предлагается использовать следующую численную схему Численная процедура метода Эйлера с пересчетом ȳk+1 = yk + hf (xk , yk ) yk+1 = yk + h2 [f (xk , yk ) + f (xk+1 , ȳk+1 )] k = 0, 1, 2, . . . , n − 1 (9.21) Погрешность метода Эйлера с пересчетом Для определения порядка точности метода Эйлера с пересчетом (9.21) на одном шаге используется следующее разложение функции y(x|x0 , y0 ) в ряд Тейлора в окрестности узла x0 y(x1 ) = y(x0 ) + f (xi , y(x0 ))h+  2 + h2 f 0x (x0 , y(x0 )) + f 0y (x0 , y(x0 ))f (x0 , y(x0 )) + +O(h3 ), (9.22) В силу (9.21), справедливо y1 = y0 + h2 [f (x0 , y0 ) + f (x1 , ȳ1 )] = = y0 + h2 [f (x0 , y0 ) + f (x0 + h, y0 + hf (x0 , y0 ))] = = y0 + h2 f (x0 , y0 )+ + h2 [f (x0 , y0 ) + f 0x (x0 , y0 )h + f 0y (x0 , y0 )hf (x0 , y0 ) + Ō(h2 )] = y0 + hf (x0 , y0 )+ + h2 [f 0x (x0 , y0 )h + f 0y (x0 , y0 )hf (x0 , y0 )] + Ō(h3 ). (9.23) Погрешность метода Эйлера с пересчетом ... Нетрудно убедиться, что с учетом начального условия (9.1) (y(x0 ) = y0 ) разность соответствующих левых и правых частей выражений (9.27) и (9.28) приводит к равенству y(x1 ) − y1 = O(h3 ) − Ō(h3 ) = Õ(h3 ) (9.24) Вывод Из (9.29) следует, что погрешность метода Эйлера с пересчетом (9.21) на одном шаге является величиной O(h3 ), то есть этот метод имеет третий порядок точность на одном шаге. В силу выше сделанного Замечания, погрешность метода Эйлера с пересчетом (9.21) на всем промежутке [x0 , x0 + X] будет величиной O(h2 ). 33 33 Самостоятельно представить геометрическую интерпретацию метода Эйлера с пересчетом (9.21). 9.5. Метод Коши Если для вычисления приближенного значения интеграла I[F |[xk , xk+1 ]] в (9.18) применяется формула средних прямоугольников (8.8), то численная процедура (9.19) задается формулой yk+1 = yk + hf (xk+ 12 , yk+ 12 ) k = 0, 1, 2, . . . , n − 1, (9.25) где xk+ 21 = xk + h2 , yk+ 12 ≈ y(xk + h2 ) Численная процедура метода Коши ȳk+ 12 = yk + h2 f (xk , yk ) yk+1 = yk + hf (xk+ 12 , ȳk+ 12 ) (9.26) k = 0, 1, 2, . . . , n − 1 34 34 Самостоятельно доказать, что метод Коши (9.26) имеет третий порядок точности на одном шаге и представить его геометрическую интерпретацию. N20. 9.6. Семейство явных методов Рунге-Кутты второго порядка точности на всем промежутке Предлагается построить семейство методов, в которых на каждом шаге требуется последовательно вычислять два значения правой части f (x, y) дифференциального уравнения (9.1). yi+1 = yi + p1 K 1 + p2 K 2 , K 1 = hf (xi , yi ), K 2 = hf (xi + αh, yi + βK 1 ), (9.27) i = 0, 1, 2, . . . , n − 1, где p1 , p2 , α, β ∈ R. Семейство (9.27) содержит четыре параметра: p1 , p2 , α, β. В частности, для явного метода Эйлера (9.8) p1 = 1, p2 = 0, для метода Эйлера с пересчетом (9.21) p1 = 12 , p2 = 12 , α = 1, β = 1, для метода Коши (9.26) p1 = 0, p2 = 1, α = 21 , β = 12 . Семейство явных методов Рунге-Кутты второго порядка точности на всем промежутке ... В (9.27) требуется определить значения параметров p1 , p2 , α, β так, чтобы любой метод из семейства (9.27) имел второй порядок точности на всем промежутке [x0 , x0 + X]. Для этого искомые значения указанных параметров должны обеспечивать третий порядок точности этих методов на одном шаге. Как было ранее показано (см. (9.5), разложение точного решения y(x|x0 , y0 ) задачи Коши (9.1), (9.2) в ряд Тейлора в окрестности узла x0 можно записать следующим образом 2 y(x0 +h) = y(x0 ) + f (x0 , y(x0 ))h + h2 [f 0x (x0 , y(x0 ))+ +f 0y (x0 , y(x0 ))f (x0 , y(x0 ))] + O(h3 ), (9.28) В силу (9.27), справедливо равенство y1 = y0 + p1 hf (x0 , y0 ) + p2 hf (x0 + αh, y0 + βhf (x0 , y0 )) . Требуемое разложение функции f (x, y) в ряд Тейлора в окрестности точки (x0 , y0 ) имеет вид (9.29) Семейство явных методов Рунге-Кутты второго порядка точности на всем промежутке ... f (x0 + αh, y0 + βhf (x0 , y0 )) = f (x0 , y0 ) + f 0x (x0 , y0 )αh+ +f 0y (x0 , y0 )βhf (x0 , y0 ) + O(h2 ) (9.30) Подстановка правой части равенства (9.30) в (9.29) приводит к выражению y1 = y0 + p1 hf (x0 , y0 ) + p2 hf (x0 + αh, y0 + βhf (x0 , y0 )) = = y0 + p1 hf (x0 , y0 ) + p2 h[f (x0 , y0 ) + f 0x (x0 , y0 )αh+ +f 0y (x0 , y0 )f (x0 , y0 )βh + O(h2 )] = (9.31) = y0 + (p1 + p2 ) hf (x0 , y0 ) + p2 αh2 f 0x (x0 , y0 )+ e 3 ). +p2 βh2 f 0y (x0 , y0 )f (x0 , y0 ) + O(h Тогда равенство разностей соответствующих частей выражений (9.28) и (9.31) с учетом начального условия (9.2) (y(x0 ) = y0 ) имеет вид Семейство явных методов Рунге-Кутты второго порядка точности на всем промежутке ...  y(x1 )−y1 = (1−p1 −p2 )hf (x0 , y0 )+ 12 −p2 α h2 f 0x (x0 , y0 )+ + 21 −p2 β h2 f 0y (x0 , y0 )f (x0 , y0 )+O(h3 ). (9.32) Из (9.32) следует, что для того чтобы y(x1 ) − y1 = O(h3 ) значения параметров p1 , p2 , α, β должны удовлетворять системе уравнений   p1 + p2 = 1 p2 α = 12 (9.33)  p2 β = 12 Очевидно, что система (9.33) совместна и имеет однопараметрическое семейство решений. Таким образом, (9.27), (9.33) задают однопараметрическое семейство явных методов Рунге-Кутты второго порядка точности на всем промежутке [x0 , x0 + X]. 9.7. Семейство явных методов Рунге-Кутты четвертого порядка точности на всем промежутке yi+1 = yi + p1 K 1 + p2 K 2 + p3 K 3 + p4 K 4 , K1 K2 K3 K4 = hf (xi , yi ), = hf (xi + α1 h, yi + β1 K 1 ), = hf (xi + α2 h, yi + β2 K 1 + β3 K 2 ), = hf (xi + α3 h, yi + β4 K 1 + β5 K 2 + β6 K 3 ), (9.34) i = 0, 1, 2, . . . , n − 1, где pi , αj , βs ∈ R (i = 1, 2, 3, 4; j = 1, 2, 3; s = 1, 2, 3, 4, 5, 6). Семейство методов (9.34) содержит тринадцать параметров: pi , αj , βs ∈ R (i = 1, 2, 3, 4; j = 1, 2, 3; s + 1, 2, 3, 4, 5, 6). Требование того, чтобы методы (9.34) обладали пятым порядком точности на одном шаге приводит к совместной системе из одиннадцати уравнений, которая имеет двупараметрическое семейство решений. Семейство явных методов Рунге-Кутты четвертого порядка точности на всем промежутке... Метод Рунге-Кутты четвертого порядка точности на всем промежутке yi+1 = yi + 1 6 (K 1 + 2K 2 + 2K 3 + K 4 ) , K 1 = hf (xi , yi ), K 2 = hf (xi + h2 , yi + K2 1 ), (9.35) K 3 = hf (xi + h 2 , yi + K2 2 ), K 4 = hf (xi + h, yi + K 3 ), i = 0, 1, 2, . . . , n − 1. Методы Рунге-Кутты. Заключительные замечания. Метод Рунге-Кутты (9.35) на каждом шаге требует четырех вычислений значений правой части f (x, y) дифференциального уравнения (9.1), но так как он четвертого порядка точности на всем промежутке [x0 , x0 + X], то там, где явный метод Эйлера (9.8) для достижения определенной точности требует 10000 вычислений значений правой части дифференциального уравнения, метод Рунге-Кутты (9.35) — только 40, что ведет к уменьшению вычислительной погрешности. Барьер Бутчера При пяти вычислениях правой части f (x, y) дифференциального уравнения (9.1) не существует явного метода Рунге-Кутты пятого порядка точности на всем промежутке [x0 , x0 + X], этот факт называется барьером Бутчера. Для построения такого метода нужно как минимум шесть вычислений значений правой части. 9.8. Методы Адамса Общая идея На каждом (m-ом) шаге метода Адамса используются значения правой части f (x, y) дифференциального уравнения (9.1) в текущем и предыдущих узлах xm−j (j = 0, 1, . . . , k − 1). Его численная процедура строится на основе интегрального представления точного решения задачи Коши (9.1),(9.2) Z xm+1 y(xm+1 ) = y(xm ) + F (x)dx, (9.36) xm где F (x) = f (x, y(x)) x ∈ [x0 , x0 + X]. Для функции F по указанному набору данных строится интерполяционный многочлен Лагранжа, который подставляется (вместо функции F ) в определенный интеграл в правой части равенства (9.36). Полученное приближенное равенство заменяется на точное для приближенных значений решения задачи Коши. Явные (экстраполяционные) методы Адамса Пусть f m−j = f (xm−j , ym−j ) (j = 0, 1, . . . , k − 1). По этим данным строится интерполяционный многочлен Лагранжа Lk−1 (x) степени k − 1. Определение 9.1. Явным методом Адамса k-го порядка называется метод Rx ym+1 = ym + xmm+1 Lk−1 (x)dx, (9.37) m = k − 1, k, . . . , n − 1. Порядок точности явного метода Адамса k-го порядка на одном шаге O(hk+1 ) ∼ F (k) (ξ) k! Z xm+1 (x − xm )(x − xm−1 ) . . . (x − xm−k+1 )dx, xm (9.38) где ξ ∈ [xm−k+1 , xm+1 ], ym−j = y(xm−j ) (j = 0, 1, . . . , k − 1). Примеры явных методов Адамса k = 1. Явный метод Эйлера. O(h2 ) L0 (x) = F (xm ) = f m , ym+1 = ym + R xm+1 xm L0 (x)dx = ym + f m h, m = 0, 1, . . . , n − 1 k = 2. O(h3 ) L1 (x) = F (xm ) + F (xm , xm−1 )(x − xm ) = f m + ym+1 = ym + R xm+1 xm L1 (x)dx = ym + m = 1, 2, . . . , n − 1 h 2 f m −f m−1 h  3f m − f m−1 , (x − xm ), Примеры явных методов Адамса ... k = 3. Метод Адамса-Бэшфорта. O(h4 ) L2 (x) = F (xm ) + F (xm , xm−1 )(x − xm )+ +F (xm , xm−1 , xm−2 )(x − xm )(x − xm−1 ) = = fm + + f m −f m−1 h (x − xm )+ f m −2f m−1 +f m−2 ym+1 = ym + = ym + 2h2 R xm+1 xm h 12 (x − xm )(x − xm−1 ), L2 (x)dx =  23f m − 16f m−1 + 5f m−2 , m = 2, 3, . . . , n − 1 Неявные (интерполяционные) методы Адамса Формально строится интерполяционный многочлен Лагранжа Lk (x) степени k. Для этого используются данные: f m+1 = f (xm+1 , ym+1 ) и f m−j = f (xm−j , ym−j ) (j = 0, 1, . . . , k − 1). Определение 9.2. Неявным методом Адамса k-го порядка называется метод Rx ym+1 = ym + xmm+1 Lk (x)dx, (9.39) m = {k − 1}k, . . . , n − 1. Порядок точности неявного метода Адамса k-го порядка на одном шаге O(hk+2 ) ∼ F (k+1) (ξ) (k + 1)! Z xm+1 (x − xm+1 )(x − xm ) . . . (x − xm−k+1 )dx, xm (9.40) где ξ ∈ [xm−k+1 , xm+1 ], ym−j = y(xm−j ) (j = 0, 1, . . . , k − 1). Примеры неявных методов Адамса k = 0. Неявный метод Эйлера. O(h2 ) L0 (x) = F (xm+1 ) = f m+1 , ym+1 = ym + R xm+1 xm L0 (x)dx = ym + f m+1 h, m = 0, 1, . . . , n − 1 k = 1. O(h3 ) L1 (x) = F (xm+1 ) + F (xm+1 , xm )(x − xm+1 ) = = f m+1 + ym+1 = ym + f m+1 −f m R xm+1 xm h (x − xm+1 ), L1 (x)dx = ym + m = 0, 1, 2, . . . , n − 1 h 2  f m+1 + f m , Примеры неявных методов Адамса ... k = 2. Метод Адамса-Мултона. O(h4 ) L2 (x) = F (xm+1 ) + F (xm+1 , xm )(x − xm+1 )+ +F (xm+1 , xm , xm−1 )(x − xm+1 )(x − xm ) = = f m+1 + + f m+1 −f m h (x − xm+1 )+ f m+1 −2f m +f m−1 ym+1 = ym + = ym + 2h2 R xm+1 xm h 12 (x − xm+1 )(x − xm ), L2 (x)dx =  5f m+1 + 8f m − f m−1 , m = 1, 2, . . . , n − 1 Методы Адамса. Заключительные замечания. Разгон Для всех методов Адамса, начиная с двухшаговых, кроме начального значения y0 требуется знание стартовых значений y1 , . . . , yk−1 . Процедура вычисления стартовых значений называется разгоном. Рекомендуется делать разгон методами (например, Рунге-Кутты) не меньшего порядка точности на одном шаге, а лучше на единицу большего. Сравнивая явные и неявные методы Адамса, следует отметить: 1 Недостаток неявных методов состоит в необходимости на каждом шаге решать уравнение относительно неизвестной величины ym+1 . 2 Некоторое преимущество неявных методов состоит в точности: при одном и том же порядке k неявные методы имеют порядок точности на одном шаге k + 2, в отличие от явных, у которых порядок точности на одном шаге k + 1. 3 Главное преимущество неявных методов состоит в возможности решать жесткие системы. 9.9. Общий класс многошаговых методов Определение 9.3. k-шаговым разностным методом называется ym = Pk i=1 αi ym−i + h Pk j=0 βj f m−j , (9.41) m = k, . . . , n − 1, где αi ∈ R (i = 0, 1, . . . , k); βj ∈ R, f m−j = f (xm−j , ym−j ) (j = 0, 1, . . . , k). Если β0 = 0, то метод (9.41) называется явным. Если β0 = 6 0, то метод (9.41) называется неявным. Определение 9.4. Невязкой метода (9.41) на одном шаге называется величина zm = y(xm ) − k X i=1 αi y(xm−i ) − h k X j=0 βj f (xm−j , y(xm−j )) (9.42) k-шаговые разностные методы Определение 9.5. Пусть ym−i = y(xm−i ) (j = 1, . . . , k). Погрешностью метода (9.41) на одном шаге (локальной погрешностью) называется величина rm = y(xm ) − ym |(9.41) = y(xm ) − k X i=1 αi ym−i − h k X βj f m−j (9.43) j=0 Теорема 9.2. Невязка zm и погрешность rm на одном шаге метода (9.41) — величины одного порядка по h. Доказательство. Если β0 = 0, то zm = rm . Пусть β0 6= 0 и функция f (x, y) непрерывно-дифференцируема по второму аргументу. Доказательство ... Поскольку y(xm ) = zm + ym = Pk i=1 Pk i=1 αi y(xm−i ) + hβ0 f (xm , y(xm ))+ Pk +h j=1 βj f (xm−j , y(xm−j )), αi y(xm−i ) + hβ0 f (xm , ym )+ Pk +h j=1 βj f (xm−j , y(xm−j )), то rm = zm + hβ0 (f (xm , y(xm )) − f (xm , ym )) = zm + hβ0 f 0y (xm , ξm )rm , где ξm ∈ [ym , y(xm )]. Откуда  zm = 1 − hβ0 f 0y (xm , ξm ) rm . (9.44) Так как 0 ≤ h ≤ X и ∃D ≥ 0 : |f 0y (x, y)| ≤ D, то из (9.44) следует, что ∃0 < C1 ≤ C2 : C1 |rm | ≤ |zm | ≤ C2 |rm |.  Теорема доказана. k-шаговые разностные методы ... Определение 9.6. Неотрицательное целое число N называется алгебраической степенью точности формулы (9.41), если: 1) формула (9.41) точна для всех многочленов степени N и ниже; 2) среди многочленов степени N + 1 найдется хотя бы один, для которого формула (9.41) неточна. Теорема 9.3. Пусть N ≥ 0 — алгебраическая степень точности формулы (9.41). Тогда невязка метода (9.41) на одном шаге zm = O(hN +1 ). Класс явных k-шаговых методов имеет 2k параметров, а класс неявных k-шаговых методов имеет 2k + 1 параметров. Поэтому за счет выбора этих параметров можно получить локальную погрешность наибольшего порядка малости. Подбор параметров следует проводить так, чтобы обеспечить формуле метода (9.41) наибольшую алгебраическую степень точности.  N21. Пример k-шаговых разностных методов Класс явных двухшаговых методов ym = α1 ym−1 + α2 ym−2 + h β1 f m−1 + β2 f m−2  (9.45) Требуется на классе методов (9.45) построить метод с наивысшей алгебраической степенью точности. Последовательная подстановка в (9.45) вместо функции y многочленов35 Q0 (x) ≡ 1, Q1 (x) = x−xm−1 , Q2 (x) = (x−xm−1 )2 , Q3 (x) = (x−xm−1 )3 , то есть требование точности формулы (9.45) для указанных многочленов, приводит к системе уравнений    1 = α1 + α2  h = −α2 h + h(β1 + β2 ) 2 h = α2 h2 + h(−2hβ2 )    3 h = −α2 h3 + h(3h2 β2 ) 35 Здесь следует учитывать, что f m−i = f (xm−i , ym−i ) = y 0m−i . Пример... Решением этой системы является  α1 = −4    α2 = 5  β1 = 4   β2 = 2 подстановка которого в (9.45) приводит к методу  ym = −4ym−1 + 5ym−2 + h 4f m−1 + 2f m−2 , (9.46) который имеет алгебраическую степень точности N = 3 (как нетрудно проверить, для многочлена Q4 (x) = (x − xm−1 )4 формула (9.46) неточна). Согласно теоремам 9.2 и 9.3, метод (9.46) имеет невязку (локальную погрешность) O(h4 ), которая на порядок выше явного двухшагового метода Адамса из того же класса методов. Однако метод (9.46), несмотря на его достаточно высокий порядок точности, расходится. В этом можно убедиться на тестовом примере. Пример... Тестовая задача Коши y 0 = 0, x ∈ [0, X], (9.47) y(0) = y0 = 0. (9.48) Задача (9.47), (9.48) имеет тривиальное решение y(x) ≡ 0 x ∈ [0, X]. Метод (9.46) для дифференциального уравнения (9.47) имеет вид ym = −4ym−1 + 5ym−2 . (9.49) Чтобы воспользоваться этим методом для приближенного решения задачи (9.47), (9.48) необходимо выполнить его разгон, то есть определить y1 . Реализация разгона с помощью любого численного метода приводит к тому, что y1 вычисляется с некоторой малой ошибкой y1 = ε > 0. В этом случае дальнейшее использование метода (9.49) приводит к следующему результату: y2 = −4ε, y3 = 21ε, y4 = 104ε, y5 = 521ε, . . . (9.50) Пример... Как видно из (9.50), при использовании метода (9.49) от шага к шагу происходит достаточно быстрое увеличение величины ошибки εm = |y(xm ) − ym |, (m = 0, 1, 2, . . .): ε0 = 0, ε1 = ε, ε = ε, ε3 = 21ε, ε4 = 104ε, ε5 = 521ε, . . . , что свидетельствует о расходимости метода (9.49). Такое явление называется неустойчивостью метода: Неустойчивость k-шагового метода по начальным условиям Малая ошибка в начальных условиях y1 , y2 , . . . , yk−1 , для k-шагового метода приводит к ее увеличению в приближенных значениях ym (m ≥ k) решения задачи Коши на его последующих итерациях. Чтобы получить условия, которые гарантируют устойчивость и в конечном итоге — сходимость многошаговых методов, требуется рассмотреть элементы теории линейных разностных уравнений. 9.10. Линейные разностные уравнения и их устойчивость Линейное однородное разностное уравнение k-го порядка с постоянными коэффициентами ym + a1 ym−1 + a2 ym−2 + . . . + ak ym−k = 0, (9.51) где ai ∈ R (i = 1, 2, . . . , k). Пример: Линейное однородное разностное уравнение 2-го порядка ym + 4ym−1 − 5ym−2 = 0. Если заданы начальные условия — числа y0 , y1 , . . . , yk−1 , то следующие члены последовательности yk , yk+1 , . . . определяются по явной формуле ym = − (a1 ym−1 + a2 ym−2 + . . . + ak ym−k ) и решением уравнения (9.51) является числовая последовательность {ym }∞ m=0 . Линейные разностные уравнения... Свойства решений линейного разностного уравнения 1 Среди решений уравнения (9.51) есть тривиальное {ym = 0}∞ m=0 ; 2 Любая линейная комбинация решений уравнения (9.51) является его решением; 3 Общее решение уравнения (9.51) представляет собой линейную комбинацию его линейно-независимых решений, образующих фундаментальную систему решений. Для нахождения фундаментальной системы решений уравнения (9.51) предлагается искать его линейно-независимые решения в виде ys = ρs . Подстановка ym = ρm в (9.51) приводит к уравнению ρm + a1 ρm−1 + a2 ρm−2 + . . . + ak ρm−k = 0, или, после сокращения на ρm−k , алгебраическое уравнение Характеристическое уравнение ρk + a1 ρk−1 + a2 ρk−2 + . . . + ak−1 ρ + ak = 0 (9.52) Линейные разностные уравнения... Если ρ — простой корень характеристического уравнения (9.52) (возможно, комплексный), то ему соответствует решение уравнения (9.51) — последовательность y = {1, ρ, ρ2 , . . . , ρm , . . .}, которая остается ограниченной тогда и только тогда, когда ρ ≤ 1. Если же корень ρ имеет кратность l > 1, то ему соответствует l > 1 линейно независимых решений вида y (1) = {1, ρ, ρ2 , . . . , ρm , . . .}, y (2) = {1, 1ρ, 2ρ2 , . . . , mρm , . . .}, ······································· y (l) = {1, 1l−1 ρ, 2l−1 ρ2 , . . . , ml−1 ρm , . . .}, которые ограничены тогда и только тогда, когда |ρ| < 1. Линейное неоднородное разностное уравнение k-го порядка с постоянными коэффициентами: ym + a1 ym−1 + a2 ym−2 + . . . + ak ym−k = b0 , (9.53) где b0 , ai ∈ R (i = 1, 2, . . . , k), b0 6= 0. Общее решение уравнения (9.53) записывается в виде суммы его частного решения и общего решения соответствующего ему однородного уравнения (9.51). Устойчивость линейного разностного уравнения Определение 9.7. Тривиальное решение разностного уравнения (9.51) называется устойчивым, еслиa ∀ε > 0 ∃δ > 0 : ∀{yi }k−1 i=0 : |yi | < δ, i = 0, 1, . . . , k − 1 ⇒ |yj | < ε, j = k, k + 1, . . . aВ (9.54) этом случае говорят также, что разностное уравнение (9.51) устойчиво. Теорема 9.4. Критерий устойчивости Для того чтобы разностное уравнение (9.51) было устойчивым, необходимо и достаточно, чтобы для всех корней характеристического уравнения (9.52) выполнялось условие |ρ| ≤ 1, причем если |ρ| = 1, то такой корень не является кратным. (9.55) 9.11. 0-устойчивость и сходимость k-шаговых разностных методов Определение 9.8. k-шаговый разностный метод (9.41) называется 0-устойчивым, если разностное уравнение ym = k X αi ym−i , m = k, . . . , n − 1, (9.56) i=1 получающееся из формулы (9.41) при h = 0, является устойчивым. ПРИМЕР 1. Явный двушаговый разностный метод  ym = −4ym−1 + 5ym−2 + h 4f m−1 + 2f m−2 , который имеет четвертый порядок точности на одном шаге (третий — на всем промежутке) (см. (9.46)). Разностное уравнение, получающееся из (9.46) при h = 0, имеет вид ym = −4ym−1 + 5ym−2 (см. (9.49)). 0-устойчивость и сходимость k-шаговых разностных методов ... Соответствующее (9.49) характеристическое уравнение ρ2 + 4ρ − 5 = 0 имеет корни ρ1 = 1, ρ2 = −5. Таким образом, условие устойчивости |ρ| ≤ 1 не выполняется. Следовательно, метод (9.46) не является 0-устойчивым. ПРИМЕР 2. Все методы Адамса (9.37), (9.39) являются 0-устойчивыми, так как при h = 0 соответствующее им разностное уравнение имеет вид ym+1 = ym , характеристическое уравнение ρ = 1 имеет единственный корень, удовлетворяющий условию устойчивости (9.55). Теорема 9.5. "Аппроксимация + Устойчивость = Сходимость" Если k-шаговый разностный метод (9.41) имеет невязку порядка p + 1, разгон порядка p и является 0-устойчивым, то он сходится с порядком p. 9.12. Жесткие системы. А-устойчивость. Свойство жесткости системы, задаваемой решением задачи Коши (9.1),(9.2), создает большие проблемы при численном решении этой задачи. Пример жесткой системы y 0 = −αy, x ∈ [0, X], (9.57) y(0) = 1, (9.58) где α  1 Точное решение задачи (9.57), (9.58) y(x) = e−αx > 0 ∀x ∈ [0, X] (9.59) Пример жесткой системы ... Применение явного метода Эйлера (9.8) ym+1 = ym − hαym = (1 − hα) ym , m = 0, 1, . . . , n − 1 (9.60) Выводы 1 2 Если h > α1 , то приближенное решение задачи (9.57), (9.58), полученное явным методом Эйлера (9.60), не сохраняет такое важное свойство ее точного решения (9.59), как положительность. Разностное уравнение (9.60) устойчиво, только если h ≤ α2 . Но малый шаг ведет к накоплению вычислительной погрешности и метод (9.60) как с большими, так и с малыми шагами h может дать очень неточные результаты. В данном примере эту проблему можно решить с помощью переменного шага h, малого на почти вертикальном участке и большого на почти горизонтальном участке, но если решается система уравнений, то переменный шаг h не поможет. Пример жесткой системы ... Применение неявного метода Эйлера ym+1 = ym − hαym+1 или ym+1 = 1 ym , m = 0, 1, . . . , n − 1 1 + hα (9.61) Выводы 1 Приближенное решение задачи (9.57), (9.58), полученное неявным методом Эйлера (9.60), сохраняет свойство положительности ее точного решения (9.59) при любом шаге h > 0. 2 Разностное уравнение (9.61) устойчиво, так как корень 1 его характеристического уравнения удовлетворяет ρ = 1+hα условию 0 < ρ < 1 при любом шаге h > 0. 3 Задачу (9.57), (9.58) можно решать неявным методом Эйлера с любым шагом h > 0. Пример жесткой системы ... На рис. 2 жирной линией показано точное решение задачи Коши (9.57), (9.58) при α = 10, ломаными линиями показаны приближенные решения, полученные явным (кружки) и неявным (квадратики) методом Эйлера при шаге h = 0.2. Рис. 2: Графики точного решения при α = 10, а также приближенного, полученного явным и неявным методом Эйлера при h = 0.2. Определение жесткой системы Не существует единого определения жестких систем, некоторые из них: 1 Жесткие системы — системы с наличием почти вертикальных и почти горизонтальных участков решения. 2 Жесткие системы — системы с большой константой Липшица. 3 Жесткие системы — системы, которые нельзя решать явными методами. Определение жесткой системы ... Система дифференциальных уравнений в нормальной форме y 0 = f (x, y), y ∈ Rn , x ∈ [x0 , x0 + X], (9.62) y(x0 ) = y 0 . (9.63) Пусть y(x) — точное решение задачи Коши (9.62), (9.63). Система первого приближения вдоль этого решения y 0 = A(x)y, x ∈ [x0 , x0 + X]. Пусть λi = λi (x) — собственные числа матрицы A(x). Если для некоторого x ∈ [x0 , x0 + X] выполняются условия: 1) Re(λi (x)) < 0; 2) max Re(λi (x)) min Re(λi (x)) ≥ 1, то система (9.62), (9.63) называется жесткой. А-устойчивость Для решения жестких систем рекомендуется применять методы со специальным свойством А-устойчивости. Пусть к решению тестового уравнения y 0 = λy, x ∈ [0, X], (9.64) где λ — комплексное число, применяется k-шаговый разностный метод (9.41) Pk Pk ym = i=1 αi ym−i + h j=0 βj f m−j , m = k, . . . , n − 1. В результате получается разностное уравнение Pk Pk ym = i=1 αi ym−i + hλ j=0 βj ym−j , (9.65) m = k, . . . , n − 1. А-устойчивость ... Определение 9.9. Областью устойчивости метода (9.41) называется множество параметров hλ на комплексной плоскости, таких, что соответствующее ему разностное уравнение (9.65) устойчиво. Определение 9.10. Метод (9.41) называется А-устойчивым, если область устойчивости содержит всю левую комплексную полуплоскость Re(hλ) < 0. ПРИМЕР. Явный метод Эйлера ym+1 = ym + hf m , m = 0, 1, . . . , n − 1. Результатом его применения к тестовому уравнению (9.64) является разностное уравнение ym+1 = ym + hλym , А-устойчивость ... характеристическое уравнение ρ − (1 + hλ) = 0 которого имеет единственный корень ρ = 1 + hλ. Область устойчивости |1 + hλ| < 1 представляет собой на комплексной плоскости внутренность единичного круга с центром в точке −1 и не содержит всю левую комплексную полуплоскость (рис. 3.а). Метод не является А-устойчивым. ПРИМЕР. Неявный метод Эйлера ym+1 = ym + hf m+1 , m = 0, 1, . . . , n − 1. Результатом его применения к тестовому уравнению (9.64) является разностное уравнение ym+1 = ym + hλym+1 , корнем характеристического уравнения которого является 1 ρ = 1−hλ . Область устойчивости |1 − hλ| > 1 представляет собой на комплексной плоскости внешность единичного круга с центром в точке 1 и содержит всю левую комплексную полуплоскость (рис. 3.б). Метод является А-устойчивым. А-устойчивость ... Рис. 3: Область устойчивости: а — явного метода Эйлера; б — неявного метода Эйлера N22.ТЕМА 10. Численные методы решения краевых задач для дифференциальных уравнений второго порядка 10.1. Метод стрельбы решения краевой задачи. Постановка краевой задачи y 00 = f (x, y, y 0 ), x ∈ [a, b], (10.1) y(a) = α, y(b) = β (10.2) Решение краевой задачи (10.1),(10.2) сводится к решению вспомогательной задачи Коши с параметром и нелинейного уравнения, корень которого определяет искомое значение параметра Однопараметрическое семейство вспомогательных задач Коши y 00 = f (x, y, y 0 ), x ∈ [a, b], (10.3) y(a) = α, y 0 (a) = µ, где µ ∈ R — параметр. (10.4) Метод стрельбы ... Задачу Коши (10.3),(10.4) при фиксированном значении параметра µ можно решать численно 36 . Тогда, если предположить, что решение y(x, µ) задачи Коши (10.3),(10.4) найдено, то нужно подобрать значение µ∗ параметра µ, чтобы выполнялось условие y(b, µ∗ ) = β. Для этого нужно решить нелинейное уравнение ϕ(µ) = y(b, µ) − β = 0, (10.5) что также можно сделать численными методами. Эта методика решения краевых задач называется методом стрельбы (рис. 4). Метод стрельбы представляет собой пару вложенных методов: внешний — для решения нелинейного уравнения (10.5), внутренний — для решения задачи Коши (10.3),(10.4) (например, метод деления отрезка пополам и явный метод Эйлера). 36 При этом следует только учитывать, что дифференциальное уравнение второго порядка нужно предварительно свести к системе дифференциальных уравнений первого порядка. Метод стрельбы ... Рис. 4: Геометрическая интерпретация метода стрельбы. Требуется определить такое значение µ∗ параметра µ, чтобы решение y(x, µ∗ ) задачи Коши (10.3),(10.4) являлось решением краевой задачи (10.1),(10.2). Метод стрельбы ... Особый интерес представляет алгоритм в случае, когда для решения нелинейного уравнения (10.5) применяется метод Ньютона ϕ(µk ) µk+1 = µk − 0 , k = 0, 1, 2, . . . , (10.6) ϕ (µk ) где на каждом шаге необходимо вычислять величину ϕ0 (µk ). Для того чтобы вычислить эту величину, предлагается воспользоваться уравнением в вариациях. В предположении достаточной гладкости функций f (x, y, y 0 ) и y(x, µ) дифференцирование уравнения (10.3) по µ приводит к 0 0 00 y 000 xxµ = f y y µ + f y 0 y xµ , которое в терминах вспомогательной функции z(x, µ) = y 0µ (x, µ) может быть записано в виде z 00 = f 0y (x, y(x, µ), y 0x (x, µ))z + f 0y 0 (x, y(x, µ), y 0x (x, µ))z 0x . Метод стрельбы ... В результате с учетом начальных условий (10.4) вспомогательная функция z является решением следующей задачи Коши z 00 = f 0y z + f 0y 0 z 0x , x ∈ [a, b], (10.7) z(a) = 0, z 0 (a) = 1 (10.8) Тогда требуемая в формуле (10.6) метода Ньютона величина ϕ0 (µk ) = z(b, µk ) Численная реализация метода стрельбы Таким образом, метод стрельбы с применением метода Ньютона (10.6) сводит решение краевой задачи (10.1),(10.2) к последовательному численному решению двух вспомогательных задач Коши (10.3),(10.4) и (10.7),(10.8) на каждом шаге метода Ньютона. 10.2. Метод разностной прогонки решения линейной краевой задачи Постановка краевой задачи y 00 = p(x)y + q(x), p(x) ≥ p̄ > 0 x ∈ [a, b] (10.9) краевые условия первого рода y(a) = α, y(b) = β; (10.10) краевые условия третьего рода y 0 (a) = α0 y(a) + α1 , α0 > 0, (10.11) y 0 (b) = −β0 y(b) + β1 , β0 > 0. (10.12) Приближенное решение задачи (10.9)-(10.12) xi ∈ [a, b] : xi =a+ih, ∀i = 0, 1, . . . , n, h= b−a n yi ≈ y(xi ), ∀i = 0, 1, . . . , n (10.13) Дискретизация краевой задачи Пусть y ∈ C (4) [a, b] y 00 (x) = y (x−h)−2y (x)+y (x+h) h2 − h2 (4) (ξ(x)), 12 y ξ(x) ∈ [x − h, x + h] (10.14) ∀x ∈ [a + h, b − h] Дискретизация дифференциального уравнения (10.9) yi−1 − 2yi + yi+1 = pi yi + q i , i = 1, 2, . . . , n − 1, h2 где pi = p(xi ), q i = q(xi ). (10.15) Дискретизация краевой задачи ... Дискретизация краевых условий (10.10) и(10.11),(10.12): краевых условий первого рода y0 = α, yn = β; (10.16) краевых условий третьего рода y1 − y0 = α0 y0 + α1 , h (10.17) yn − yn−1 = −β0 yn + β1 ; h (10.18) Из (10.15)-(10.18) следует, что приближенное решение {yi }ni=0 краевой задачи может быть построено как решение системы линейных алгебраических уравнений Приближенное решение краевой задачи (10.9)-(10.12) Система линейных алгебраических уравнений для краевых условий первого рода (10.10) y0 = α, yi−1 − (2 + h2 pi )yi + yi+1 = h2 q i , i = 1, 2, . . . , n − 1, yn = β (10.19) Система линейных алгебраических уравнений для краевых условий третьего рода (10.11),(10.12) −(1 + hα0 )y0 + y1 = hα1 , yi−1 − (2 + h2 pi )yi + yi+1 = h2 q i , i = 1, 2, . . . , n − 1, yn−1 − (1 + hβ0 )yn = −hβ1 (10.20) Используя обозначения: Ai = 2 + h2 pi , Bi = h2 q i (i = 1, 2, . . . , n − 1); A0 = 1, B0 = α, An = 1, Bn = β (для краевых условий (10.10)); A0 = 1 + hα0 , B0 = hα1 , An = 1 + hβ0 , Bn = −hβ1 (для краевых условий (10.11),(10.12)), системы (10.19) и (10.20) можно записать в матричной форме: Приближенное решение краевой задачи (10.9)-(10.12) ... для краевых условий первого рода (10.10)  1 1  0 · · ·  0 −A1 1 ··· 1 −A2 ··· 1 ··· ··· ··· ··· ··· ··· ··· ··· 1 ··· −An−1     y0 B0 0   y1   B1      0   y2   B2  · =    · · ·  · · ·   · · ·      1 yn−1 Bn−1  1 yn Bn (10.21) для краевых условий третьего рода (10.11),(10.12)   −A0  1   0  ···   0 1 −A1 1 ··· 1 −A2 ··· 1 ··· ··· ··· ··· ··· ··· ··· ··· 1 ··· −An−1 1    y0 B0 0   y1   B1      0   y2   B2  = ·    · · ·  · · ·   · · ·      1 yn−1 Bn−1  −An yn Bn (10.22) Приближенное решение краевой задачи (10.9)-(10.12) Вопросы 1 Существование и единственность решений систем (10.21) и (10.22); 2 Методы решения систем (10.21) и (10.22); 3 Сходимость приближенных решений y(h) к точному решению y краевой задачи (10.9)-(10.12) при h → 0. Существование и единственность решений систем (10.21) и (10.22) Матрицы систем (10.21) и (10.22) для любого h > 0 обладают свойством строгого диагонального преобладания, поскольку p(x) ≥ p̄ > 0 x ∈ [a, b] и α0 > 0, β0 > 0. Следовательно, эти матрицы при любом h > 0 являются невырожденными и у систем (10.21) и (10.22) существуют соответствующие единственные решения. Диагональное преобладание матрицы является достаточным условие сходимости метода Якоби — итерационного метода приближенного решения систем линейных алгебраических уравнений. Методы решения систем (10.21) и (10.22) Метод разностной прогонки Матрицы систем (10.21) и (10.22) являются трехдиагональными. Это свойство позволяет использовать для точного решения таких систем некоторую модификацию метода Гаусса, которую называют методом разностной прогонки. В основе метода разностной прогонки лежит следующая особенность реализации метода Гаусса решения системы с трехдиагональной матрицей. Метод Гаусса как процедура последовательного исключения переменных, приводящая расширенную матрицу системы к верхнетреугольному виду, применительно к системе к трехдиагональной матрицей позволяет построить равносильную исходной систему линейных алгебраических уравнений, у которой каждое уравнение содержит только две переменные, коэффициенты при которых расположены на главной диагонали матрицы и диагонали, расположенной над ней. Метод разностной прогонки решения системы с трехдиагональной матрицей Пусть i − 1-ое уравнение системы имеет вид yi−1 = λi yi + µi , i ≥ 1. (10.23) Для краевых условий первого рода (10.10) y(a) = α λ1 = 0, µ1 = α; для краевых условий третьего рода (10.11) −A0 y0 + y1 = B0 λ1 = A10 , µ1 = − B A0 . Подстановка правой части равенства (10.23) вместо yi−1 в i-ое уравнение yi−1 − Ai yi + yi+1 = Bi преобразует его к виду λi yi + µi − Ai yi + yi+1 = Bi или yi = 1 µi − Bi yi+1 + . Ai − λ i Ai − λ i (10.24) Метод разностной прогонки ... Таким образом выражение (10.24) определяет рекуррентную связь Прямая прогонка λi+1 = 1 Ai −λi , µi+1 = µi −Bi Ai −λi , (10.25) i = 1, 2, . . . , n, с помощью которой определяются значения прогоночных коэффициентов (λi , µi ) , i = 1, 2, . . . , n + 1 — прямая прогонка. При этом справедливо выражение yn = µn+1 , (10.26) которое очевидно для краевых условий первого рода (10.10) y(b) = β = µn+1 . Метод разностной прогонки ... Для краевых условий третьего рода (10.12) последнее (n + 1-ое) уравнение в системе (10.20) в принятых выше обозначениях имеет вид yn−1 − An yn = Bn , (10.27) а предпоследнее (n-ое) уравнение в результате прямой прогонки записывается в виде yn−1 = λn yn + µn . Последним шагом прямой прогонки является подстановка правой части этого равенства вместо yn−1 в уравнение (10.27). В результате возникает выражение λn yn + µn − An yn = Bn . Откуда с учетом формул (10.25) yn = µn − Bn = µn+1 . An − λ n Метод разностной прогонки ... Заключительным этапом решения системы методом разностной прогонки является обратная прогонка, которая осуществляется по формулам (10.23) Обратная прогонка yi−1 = λi yi + µi , (10.28) i = n, n − 1, . . . , 1. Осуществимость прямой прогонки (10.25) Требуется доказать, что при условии строгого диагонального преобладания матрицы системы (10.19) ((10.20)) Ai − λi 6= 0, ∀i = 1, 2, . . . , n. (10.29) 37 37 Самостоятельно, например методом математической индукции, показать, что λi < 1, ∀i = 1, 2, . . . , n. Тогда Ai − λi > 1, ∀i = 1, 2, . . . , n. Сходимость метода разностной прогонки Требуется доказать, что при h → 0 yi (h) → y(xi ) Для этого достаточно оценить погрешности εi = y(xi ) − yi , i = 0, 1, 2, . . . , n. (10.30) Учитывая, что для внутренних узлов выполняется y 00 (xi ) = y(xi−1 ) − 2y(xi ) + y(xi+1 ) + Ri , i = 1, 2, . . . , n − 1, (10.31) h2 где для погрешности этой формулы численного дифференцирования для второй производной справедлива оценка |Ri | ≤ 1 M4 h2 , 12 M4 = max |y (4) (x)|. x∈[a,b] (10.32) Сходимость метода разностной прогонки ... Подстановка правой части выражения (10.31) в дифференциальное уравнение (10.9) приводит к равенствам y(xi−1 ) − 2y(xi ) + y(xi+1 ) + Ri = pi y(xi ) + q i , i = 1, 2, . . . , n − 1. h2 Вычитание из них соответствующих (по индексу i) равенств (10.15) приводит к выражениям (y (xi−1 )−yi−1 )−2(y (xi )−yi )+(y (xi+1 )−yi+1 ) h2 = pi (y(xi ) − yi ) , + Ri = i = 1, 2, . . . , n − 1 которые в терминах погрешностей εi можно переписать в виде εi−1 − 2εi + εi+1 + Ri = pi εi , i = 1, 2, . . . , n − 1 h2 или εi−1 − (2 + h2 pi )εi + εi+1 = −Ri h2 , i = 1, 2, . . . , n − 1. Сходимость метода разностной прогонки. Случай краевых условий первого рода (10.10). В случае краевых условий первого рода (10.10) (см. систему (10.19)) для погрешностей (10.30) система уравнений имеет вид ε0 = 0, εi−1 − (2 + h2 pi )εi + εi+1 = −Ri h2 , i = 1, 2, . . . , n − 1, εn = 0. Из (10.33) следует, что (2 + h2 pi )εi = εi−1 + εi+1 + Ri h2 , i = 1, 2, . . . , n − 1. Тогда (2 + h2 pi )|εi | ≤ 2|εi∗ | + |Ri |h2 , i = 1, 2, . . . , n − 1, (2 + h2 pi∗ )|εi∗ | ≤ 2|εi∗ | + |Ri∗ |h2 , h2 pi∗ |εi∗ | ≤ |Ri∗ |h2 , где |εi∗ | = maxi=1,2,...,n−1 |εi |. (10.33) Сходимость метода разностной прогонки. Случай краевых условий первого рода (10.10). ... Откуда |εi∗ | ≤ |Ri∗ | . p i∗ В результате с учетом оценки (10.32) и свойств функции p (p(x) ≥ p̄ > 0 x ∈ [a, b]) Случай краевых условий первого рода (10.10) |y(xi ) − yi | ≤ 1 M4 h2 , i = 0, 1, 2, . . . , n. 12p̄ (10.34) Вывод В силу (10.34), для краевых условий первого рода (10.10) метод разностной прогонки (10.19) сходится со вторым порядком.  N23. Сходимость метода разностной прогонки. Случай краевых условий третьего рода (10.11),(10.12). В этом случае для построения оценки погрешности (10.30) метода разностной прогонки (см. систему (10.20)) придется учитывать не только погрешности формулы численного дифференцирования для второй производной во внутренних узлах, но и погрешности формул численного дифференцирования для первой производной на краях: y 0 (a) = y(xn ) − y(xn−1 ) y(x1 ) − y(x0 ) + r0 , y 0 (b) = + rn , h h где для погрешности этих формул численного дифференцирования для первой производной справедливы оценки |r0 | ≤ 1 1 M2 h, |rn | ≤ M2 h, 2 2 M2 = max |y 00 (x)|. x∈[a,b] Тогда в случае краевых условий третьего рода (10.11),(10.12) (см. систему (10.20)) для погрешностей (10.30) система уравнений имеет вид Сходимость метода разностной прогонки. Случай краевых условий третьего рода (10.11),(10.12). ... −(1 + hα0 )ε0 + ε1 = r0 , εi−1 − (2 + h2 pi )εi + εi+1 = −Ri h2 , i = 1, 2, . . . , n − 1, εn−1 − (1 + hβ0 )εn = −rn . (10.35) Аналогично (10.34) нетрудно доказать, что Случай краевых условий третьего рода (10.11),(10.12) |y(xi ) − yi | ≤ max{ 1 1 1 M2 h, M2 h, M4 h2 }, i = 0, 1, 2, . . . , n. 2α0 2β0 12p̄ (10.36) Вывод В силу (10.36), для краевых условий третьего рода (10.11),(10.12) метод разностной прогонки (10.20) сходится с первымa порядком. a Для достижения второго порядка сходимости используются разные способы: формулы дифференцирования для первой производной по трем узлам на край или метод фиктивного узла. 10.3. Более точная аппроксимация краевых условий третьего рода (10.11),(10.12). Аппроксимация первой производной в краевом условии (10.11) y 0 (a) = −3y(x0 ) + 4y(x1 ) − y(x2 ) + O(h2 ). 2h (10.37) Тогда первое уравнение в системе (10.20) записывается следующим образом −3y0 + 4y1 − y2 = α0 y0 + α1 2h или, если привести подобные, − (3 + 2α0 h)y0 + 4y1 − y2 = 2α1 h. (10.38) Свойство трехдиагональности матрицы системы (10.20) утрачено. Однако его можно восстановить, если сложить уравнение (10.39) со вторым уравнением y0 − A1 y1 + y2 = B1 этой системы. В результате первое уравнение принимает вид 10.4. Более точная аппроксимация краевых условий третьего рода (10.11), (10.12). ... −(2 + 2α0 h)y0 + (4 − A1 )y1 = 2α1 h + B1 . Таким образом, матрица системы (10.20) становится трехдиагональной. Более точную аппроксимацию краевых условий третьего рода (10.11),(10.12) можно получить используя фиктивные узлы Аппроксимация второй производной в краевом условии (10.11) с фиктивным узлом x−1 = a − h y 0 (a) = y(a + h) − y(a − h) y(x1 ) − y(x−1 ) + O(h2 ) = + O(h2 ). 2h 2h (10.39) Тогда первое уравнение в системе (10.20) записывается следующим образом Аппроксимация первой производной в краевом условии (10.11) с использованием фиктивного узла y1 − y−1 = α0 y0 + α1 2h или, если привести подобные, − y−1 − 2α0 hy0 + y1 = 2α1 h. (10.40) При этом, если предположить, что функции p и q продолжимы влево по непрерывности, то можно выписать дискретный аналог (10.15) дифференциального уравнения (10.9) в узле x0 : y−1 − 2y0 + y1 = p0 y0 + q 0 , h2 который приводит к еще одному уравнению, содержащему неизвестную величину y−1  y−1 − 2 + p0 h2 y0 + y1 = q 0 h2 . (10.41) Аппроксимация первой производной в краевом условии (10.11) с использованием фиктивного узла ... В результате сложения уравнений (10.40) и (10.41) удается исключить из рассмотрения величину y−1 , тем самым построив первое уравнение системы (10.20)  − 2 + 2α0 h + p0 h2 y0 + 2y1 = 2α1 h + q 0 h2 . (10.42) Таким образом матрица системы (10.20) не только становится трехдиагональной, но и приобретает свойство диагонального преобладания (см. (10.42)). Аналогичным образом можно построить более точную аппроксимацию краевого условия (10.12) (на правом конце). Порядок сходимости метода разностной прогонки Результатом применения описанных выше подходов к аппроксимации краевых условий третьего рода (10.11), (10.12) является второй порядок сходимости метода разностной прогонки. 10.5. Вариационные методы решения краевой задачи Постановка краевой задачи y 00 = f (x, y, y 0 ), x ∈ [a, b], (10.43) y(a) = α, y(b) = β. (10.44) Основная идея вариационных методов решения краевой задачи (10.43), (10.44) заключается в определении ее решения как решения некоторой вспомогательной экстремальной задачи Постановка экстремальной задачи J[y] → min, y ∈Y (10.45) где Z J[y] = b F (x, y, y 0 )dx, (10.46) a Y = {y ∈ C (2) ([a, b]) | y(a) = α, y(b) = β}. (10.47) Уравнение Эйлера в задаче (10.45) Пусть y ∗ ∈ Y — экстремаль в задаче (10.45), то есть функция, доставляющая минимальное значение функционалу (10.46) на функциональном пространстве Y (см. (10.47)). Необходимое условие экстремума в задаче (10.45) ∂ J[y ∗ + εϕ]|ε=0 = 0 ∂ε ∀ϕ ∈ Φ, (10.48) где ε ∈ R; Φ = {ϕ ∈ C (2) ([a, b]) | ϕ(a) = ϕ(b) = 0} J[y ∗ + εϕ] = ∂ ∗ ∂ε J[y Rb a F (x, y ∗ + εϕ, (y ∗ ) + εϕ0 )dx, + εϕ]|ε=0 = Rb = Rb a a [F 0y (x, y ∗ , (y ∗ ) )ϕ + F 0y 0 (x, y ∗ , (y ∗ ) )ϕ0 ]dx = F 0y ϕdx + F 0y 0 ϕ|ba − Rb d a dx   F 0y 0 ϕdx Уравнение Эйлера ... Поскольку ϕ(a) = ϕ(b) = 0, то ∂ ∗ ∂ε J[y + εϕ]|ε=0 = Rb = Rb a a F 0y ϕdx − Rb [F 0y −  d dx d a dx   F 0y 0 ϕdx =  F 0y 0 ]ϕdx Вариационный принцип Z b g(x)ϕ(x)dx = 0 ∀ϕ ⇔ g(x) ≡ 0, x ∈ [a, b] (10.49) a Тогда, в силу (10.49),   Rb 0 d [F − F 0 ]ϕdx = 0 ∀ϕ ⇔ F y − y y dx a d dx   F 0y 0 ≡ 0, x ∈ [a, b] Следовательно, необходимое условие экстремума (10.48) в задаче (10.45) равносильно следующему тождеству Уравнение Эйлера ... Уравнение Эйлера  d  0 F y 0 (x, y ∗ , (y ∗ ) ) − F 0y (x, y ∗ , (y ∗ ) ) ≡ 0, x ∈ [a, b] dx (10.50) Как нетрудно видеть, уравнение Эйлера (10.50) является дифференциальным уравнением второго порядка относительно функции y. Связь между краевой задачей (10.43), (10.44) и экстремальной задачей (10.45) Для того, чтобы экстремаль y ∗ задачи (10.45) являлась и решением краевой задачи (10.43), (10.44) достаточно выбрать функцию F (x, y, y 0 ) так, чтобы дифференциальное уравнение y 00 = f (x, y, y 0 ) (см. (10.43)) и уравнение Эйлера (10.50) были идентичны. Общая схема построения приближенного решения экстремальной задачи (10.45) I. Переход от задачи (10.45) к вспомогательной экстремальной задаче на конечно-мерном подпространстве Yn бесконечно-мерного пространства Y Пусть Yn = { y(x, c1 , c2 , . . . , cn ) ∈ C (2) ([a, b]) | y(a, c1 , c2 , . . . , cn ) = α, y(b, c1 , c2 , . . . , cn ) = β ∀(c1 , c2 , . . . , cn )> ∈ Rn }, (10.51) где Yn ⊂ Y ∀n ∈ N. Вспомогательная экстремальная задача: J[y] → min . y ∈Yn (10.52) Общая схема построения приближенного решения экстремальной задачи (10.45) ... II. Переход от вспомогательной экстремальной задачи (10.52) к задаче минимизации функции нескольких переменных Пусть G(c1 , c2 , . . . , cn ) = J[y n ], (10.53) где y n (x) = y(x, c1 , c2 , . . . , cn ) ∈ Yn . Задача минимизации функции нескольких переменных: G(c1 , c2 , . . . , cn ) → min (c1 ,c2 ,...,cn )> ∈Rn . (10.54) III. Решение системы алгебраических уравнений относительно n неизвестных Необходимое условие в задаче минимизации функции нескольких переменных (10.54): ∂ G(c∗1 , c∗2 , . . . , c∗n ) = 0 ∂ci ∀i = 1, 2, . . . , n. (10.55) Вопросы 1 Существование и единственность решения системы (10.55); 2 Является ли решение системы (10.55) точкой экстремума для функции G (см. (10.53); 3 В предположении, что система (10.55) имеет единственное решение (c∗1 , c∗2 , . . . , c∗n )> ∈ Rn , которое является точкой минимума функции G, пусть y ∗n (x) = y n (x, c∗1 , c∗2 , . . . , c∗n ) ∈ Yn — экстремаль во вспомогательной задаче (10.52). Существует ли предел lim J[y ∗n ] = J[y ∗ ]; n→∞ 4 Существует ли предел lim y ∗n = y ∗ . n→∞ Общий ответ на 3-ий вопрос Определение 10.1. Последовательность подпространств Yn ⊂ Y плотна в пространстве Y , если ∀y ∈ Y ∀ε > 0 ∃n ∈ N ∃y n ∈ Yn : |y(x) − y n (x)| < ε, |y 0 (x) − y 0n (x)| < ε (10.56) ∀x ∈ [a, b]. Теорема 10.1. Пусть последовательность подпространств Yn ⊂ Y плотна в Rb пространстве Y и функция F (x, y, y 0 ) (J[y] = a F (x, y, y 0 )dx) — равномерно Липшицева по аргументам y и y 0 . Тогда J[y ∗n ] → J[y ∗ ] при n → ∞. Доказательство. Доказательство Поскольку ∀n ∈ N Yn ⊂ Y , то miny ∈Yn J[y] ≥ miny ∈Y J[y]. Следовательно, J[y ∗n ] ≥ J[y ∗ ]. Тогда 0 ≤ J[y ∗n ] − J[y ∗ ] ≤ J[y n ] − J[y ∗ ] = (10.57) = Rb a F (x, y n , y 0n ) ∗ 0 ∗  − F (x, y , (y ) ) dx. Здесь Rb a = [F (x, y n , y 0n ) − F (x, y ∗ , (y ∗ ) )]dx = Rb a + ≤ Rb a Rb + [F (x, y n , y 0n ) − F (x, y ∗ , y 0n )]dx+ a [F (x, y ∗ , y 0n ) − F (x, y ∗ , (y ∗ ) )]dx ≤ |F (x, y n , y 0n ) − F (x, y ∗ , y 0n )|dx+ Rb a |F (x, y ∗ , y 0n ) − F (x, y ∗ , (y ∗ ) )|dx. (10.58) Доказательство В силу равномерной липшицевости функции F (x, y, y 0 ) по аргументам y и y 0 , существуют такие две константы L > 0 и K > 0, что |F (x, y n , y 0n )−F (x, y ∗ , y 0n )| ≤ L|y n (x)−y ∗ (x)|, |F (x, y ∗ , y 0n )−F (x, y ∗ , (y ∗ ) )| ≤ K|y 0n (x)−(y ∗ ) (x)| ∀x ∈ [a, b]. (10.59) Таким образом, из (10.57), (10.58) и (10.59) следует, что Z b Z b ∗ ∗ ∗ 0 ≤ J[y n ] − J[y ] ≤ L |y n (x)−y (x)|dx + K |y 0n (x)−(y ∗ ) (x)|dx. a a (10.60) Далее, поскольку последовательность подпространств Yn ⊂ Y плотна в пространстве Y , то ∀ε > 0 ∃n ∈ N ∃y n ∈ Yn : |y n (x)−y ∗ (x)|<ε, |y 0n (x)−(y ∗ ) (x)|<ε ∀x ∈ [a, b]. (10.61) В результате (10.60), (10.61) приводят к неравенствам 0 ≤ J[y ∗n ] − J[y ∗ ] ≤ (b − a)(L + K)ε.  Теорема доказана. (10.62) 10.6. Метод Ритца Постановка линейной краевой задачи где p ∈ C (1) (p(x)y 0 ) − q(x)y = f (x), x ∈ [a, b], (10.63) y(a) = α, y(b) = β, (10.64) ([a, b]), q, f ∈ C([a, b]): p(x) ≥ p0 > 0, q(x) ≥ 0, x ∈ [a, b]. Решение краевой задачи (10.63), (10.64) определяется как решение следующей экстремальной задачи Постановка экстремальной задачи J[y] → min, y ∈Y (10.65) где Z J[y] = b F (x, y, y 0 )dx, (10.66) a F (x, y, y 0 ) = p(x)[y 0 ]2 + q(x)[y]2 + 2f (x)y, x ∈ [a, b], Y = {y ∈ C (2) ([a, b]) | y(a) = α, y(b) = β}. (10.67) (10.68) Метод Ритца ... Нетрудно проверить, что уравнение Эйлера (10.50) d dx   F 0y 0 (x, y, y 0 ) − F 0y (x, y, y 0 ) ≡ 0, x ∈ [a, b] для функции F (x, y, y 0 ), определяемой выражением (10.67), идентично дифференциальному уравнению (10.63). Действительно, здесь F 0y 0 (x, y, y 0 ) = 2p(x)y 0 , F 0y (x, y, y 0 ) = 2q(x)y + 2f (x). Следовательно, уравнение Эйлера (10.50) для функции рассматриваемой F (x, y, y 0 ) имеет вид (2p(x)y 0 ) − 2q(x)y − 2f (x) = 0, x ∈ [a, b], то есть является дифференциальным уравнением (10.63) (p(x)y 0 ) − q(x)y = f (x), x ∈ [a, b]. Метод Ритца. Вспомогательная экстремальная задача на конечно-мерном подпространстве Yn . Yn = { y n ∈ C (2) ([a, b]) | y n (x) = ψ(x) + Pn i=1 ci ϕi (x) ψ, ϕi ∈ C (2) ([a, b])(i = 1, 2, . . . , n) : : (10.69) ψ(a) = α, ψ(b) = β, ϕi (a) = ϕi (b) = 0 (i = 1, 2, . . . , n) } Примеры ψ(x) = α + x−a b−a (β − α); i 1) ϕi (x) = (x −  a) (x −  b) (i = 1, 2, . . . , n), 2) ϕi (x) = sin iπ x−a b−a (i = 1, 2, . . . , n). Условие плотности последовательности подпространств Yn ⊂ Y в пространстве Y выполняется. Метод Ритца. Задача минимизации функции нескольких переменных. Определение функции нескольких переменных J[y n ] = = Rb = Pn p[ψ 0 + a i=1 Pn Pn j=1 i=1 ci ϕi 0 2 ] +q[ψ + Aij ci cj + 2 Pn k=1 Pn i=1 ci ϕi ] 2 +2f [ψ+ Pn  i=1 ci ϕi ] dx= Ak ck + A0 = = G(c1 , c2 , . . . , cn ), (10.70) Aij = Rb Ak = Rb A0 = Rb a a a  pϕ0i ϕ0j + q 0 ϕi ϕj dx,  pψ 0 ϕ0k + q 0 ψϕk + f ϕk dx,  p[ψ 0 ]2 + q 0 ψ 2 + 2f ψ dx. (10.71) Метод Ритца. Задача минимизации функции нескольких переменных... Необходимое условие экстремума функции G(c1 , c2 , . . . , cn ) ∂ G(c∗1 , c∗2 , . . . , c∗n ) = 0 ∀i = 1, 2, . . . , n, ∂ci которое равносильно системе линейных алгебраических уравнений n X Aij c∗j = −Ai , ∀i = 1, 2, . . . , n. (10.72) j=1 Теорема 10.2. Пусть функции ϕ01 , ϕ02 , . . . , ϕ0n — линейно-независимы. Тогда система (10.72) имеет единственное решение (c∗1 , c∗2 , . . . , c∗n )> ∈ Rn , которое доставляет минимальное значение функции G(c1 , c2 , . . . , cn ). Доказательство. Pn Pn Достаточно показать, что квадратичная форма i=1 j=1 Aij ci cj является положительно-определенной. Доказательство ... Действительно, используя (10.71), нетрудно убедиться, что  !2 !2  Z b n X n n n X X X p Aij ci cj = ci ϕ0i +q ci ϕi dx. (10.73) a i=1 j=1 i=1 i=1 С учетом свойств функций p и q (p(x) ≥ p0 > 0, q(x) ≥ 0, x ∈ [a, b]) из (10.73) следует, что для любого вектора (c1 , c2 , . . . , cn )> 6= 0 n X n X Aij ci cj ≥ 0. i=1 j=1 Предположение, что n X n X Aij ci cj = 0, i=1 j=1 с необходимостью приводит к тождеству !2 !2 n n X X ci ϕi (x) + q(x) ci ϕi (x) ≡ 0, x ∈ [a, b]. p(x) i=1 i=1 Доказательство ... Откуда n X ci ϕ0i (x) ≡ 0, x ∈ [a, b], i=1 что, в силу линейной независимости функций ϕ01 , ϕ02 , . . . , ϕ0n , означает, что c1 = c2 = . . . = cn = 0. Возникает противоречие с (c1 , c2 , . . . , cn )> 6= 0.  Теорема доказана. Для метода Ритца теоремы 10.1 и 10.2 дают положительные ответы на поставленные выше первые три вопроса, возникающие при реализации предложенной общей схемы приближенного решения экстремальной задачи (10.63), (10.64). Ответ на четвертый вопрос о существовании предела lim y ∗n = y ∗ n→∞ дает следующая теорема.  N24. Метод Ритца. Сходимость. Теорема 10.3. Пусть 1) p ∈ C (1) ([a, b]) : p(x) ≥ p0 > 0, x ∈ [a, b]; 2) q, f ∈ C([a, b]) : q(x) ≥ 0, x ∈ [a, b]; 3) ∀n ∈ N ∃y n ∈ Yn : J[y n ] → J[y ∗ ] при n → ∞. Тогда при n → ∞ y n (x) ⇒ y ∗ (x) на отрезке [a, b]. Доказательство. Учитывая, что J[y n ] ≥ J[y ∗ ], достаточно показать, что s |y n (x) − y ∗ (x)| ≤ 1 b−a (J[y n ] − J[y ∗ ]) 2 p0 ∀x ∈ [a, b], (10.74) где, как нетрудно убедиться, Z b  ∗ J[y n ] − J[y ] = p[(y 0n )2 −((y ∗ ) )2 ]+q[(y n )2 −(y ∗ )2 ]+f (y n −y ∗ ) dx. a Доказательство ... Действительно, Rдля любого x ∈ [a,b] справедливо выражение x y n (x) − y ∗ (x) = a y 0n (t) − (y ∗ ) (t) dt. Откуда Z x Z b |y n (x)−y ∗ (x)|≤ |y 0n (t)−(y ∗ ) (t)|dt≤ |y 0n (t)−(y ∗ ) (t)|dt. a a (10.75) С учетом известного неравенства Гельдера s s Z b Z Z b 2 f (x)dx f (x)g(x)dx ≤ a a b g 2 (x)dx a и свойств функций p, q (p(x) ≥ p0 > 0, q(x) ≥ 0, x ∈ [a, b]) из (10.75) следует, что qR √ b |y n (x) − y ∗ (x)| ≤ b − a a [y 0n (x) − (y ∗ ) (x)]2 dx ≤ ≤ q ≤D b−a p0 qR qR b a b a p(x)[y 0n (x) − (y ∗ ) (x)]2 dx ≤ qR  b p[y 0n −(y ∗ ) ]2 +q[y n −y ∗ ]2 dx = D R(x)dx, a (10.76) Доказательство ... q ∗ 0 2 ∗ 2 где D = b−a p0 , R(x) = p[y n − (y ) ] + q[y n − y ] , x ∈ [a, b]. Далее, если воспользоваться очевидным равенством (c − d)2 = c2 − d2 − 2d(c − d), то Rb a = R(x)dx = Rb a  p[y 0n − (y ∗ ) ]2 + q[y n − y ∗ ]2 dx =  p[(y 0n )2 − ((y ∗ ) )2 ] + q[(y n )2 − (y ∗ )2 ] dx− a −2 Rb Rb a  p(y ∗ ) [y 0n − (y ∗ ) ] + qy ∗ [y n − y ∗ ] dx, где Rb a p(y ∗ ) [y 0n − (y ∗ ) ]dx = = p(y ∗ ) [y n − y ∗ ]|ba − =− Rb a 0 0 p(y ∗ ) Rb a Rb a p(y ∗ ) d(y n − y ∗ ) = 0 0 p(y ∗ ) [y n − y ∗ ]dx, так как y n (a) = y ∗ (a) и y n (b) = y ∗ (b). [y n − y ∗ ]dx = (10.77) Доказательство ... Следовательно, Rb a  p(y ∗ ) [y 0n − (y ∗ ) ] + qy ∗ [y n − y ∗ ] dx = =− = Rb Rb a a 0 0 p(y ∗ ) [y n − y ∗ ]dx + 0 0 (− p(y ∗ ) Rb a qy ∗ [y n − y ∗ ]dx = (10.78) + qy ∗ )[y n − y ∗ ]dx. Поскольку функция y ∗ как решение экстремальной задачи (10.65) является и решением исходной краевой задачи (10.63), (10.64), то есть удовлетворяет дифференциальному уравнению 0 0 (py 0 ) − qy = f , то − p(y ∗ ) + qy ∗ = −f . В результате равенство (10.78) принимает вид Z b  p(y ∗ ) [y 0n −(y ∗ ) ]+qy ∗ [y n −y ∗ ] dx=− a Тогда из (10.77) и (10.79) следует, что Z a b f [y n −y ∗ ]dx. (10.79) Доказательство ... Rb a R(x)dx = Rb a  p[y 0n − (y ∗ ) ]2 + q[y n − y ∗ ]2 dx = Rb  p[(y 0n )2 − ((y ∗ ) )2 ] + q[(y n )2 − (y ∗ )2 ] + f [y n −y ∗ ] dx. (10.80) Подстановка правой части равенства (10.80) в (10.76) приводит к требуемой оценке (10.74) = a |y n (x)−y ∗ (x)| ≤ ≤D = qR b q a b−a p0  p[(y 0n )2 −((y ∗ ) )2 ]+q[(y n )2 −(y ∗ )2 ]+f [y n −y ∗ ] dx = 1 (J[y n ] − J[y ∗ ]) 2 ∀x ∈ [a, b].  Теорема доказана. 10.7. Вариационные методы приближенного решения краевой задачи для линейного дифференциального уравнения второго порядка в общем виде Постановка краевой задачи L[y] = f (x), x ∈ [a, b], (10.81) y(a) = α, y(b) = β, (10.82) где L — линейный дифференциальный оператор второго порядкаa . a Примеры: 1) L[y] = y 00 ; 2) L[y] = (py 0 )0 − qy. Пусть ϕ ∈ C 2 ([a, b]): ϕ(a) = α, ϕ(b) = β. Тогда введение в рассмотрение вспомогательной функции z(x) = y(x) − ϕ(x), x ∈ [a, b] позволяет сформулировать для краевой задачи (10.81), (10.82) равносильную ей краевую задачу с однородными краевыми условиями: Вариационные методы приближенного решения линейной краевой задачи с однородными краевыми условиями Постановка однородной краевой задачи L[z] = f¯(x), x ∈ [a, b], (10.83) z(a) = 0, z(b) = 0, (10.84) где, в силу линейности оператора L, L[z + ϕ] = f (x), L[z] + L[ϕ] = f (x), L[z] = f (x) − L[ϕ] = f¯(x), x ∈ [a, b]. Без потери общности можно считать, что краевые условия (10.82) в исходной краевой задаче (10.81), (10.82) являются однородными, то есть α = 0, β = 0. Метод Галеркина Пусть Yn — конечномерное подпространство пространства Y , которое образовано линейными комбинациями базисных (линейно-независимых) функций: Pn Yn = { y n ∈ C (2) ([a, b]) | y n (x) = i=1 ci ϕi (x) : ϕi ∈ C (2) ([a, b]), i = 1, 2, . . . , n : ϕi (a) = ϕi (b) = 0 i = 1, 2, . . . , n) } (10.85) Предлагается находить приближенное решение y n краевой задачи(10.81), (10.82) в этом пространстве Yn . Невязкой называют величину µ(x) = L[y n ](x) − f (x), x ∈ [a, b]. (10.86) Так как невязка — функция, то можно предложить разные подходы к уменьшению невязки. Метод Галеркина основал на том, чтобы сделать невязку µ ортогональной некоторой (вообще говоря, другой) системе базисных функций {ψi , i = 1, 2, . . . , n} из пространства Yn : Метод Галеркина ... hL[y n ] − f , ψi i = 0, i = 1, 2, . . . , n. Подстановка вместо функции y n ее разложения по системе базисных функций {ϕi , i = 1, 2, . . . , n} с учетом линейной независимости функций ψj (j = 1, 2, . . . , n) приводит к системе линейных уравнений относительно коэффициентов разложения ck (k = 1, 2, . . . , n): n X hL[ϕk ], ψi ick = hf , ψi i, i = 1, 2, . . . , n. (10.87) k=1 Замечание Метод Ритца является частным случаем метода Галеркина, если, во-первых, уравнение самосопряженное, а, во-вторых, системы базисных функций {ϕi , i = 1, 2, . . . , n} и {ψi , i = 1, 2, . . . , n} совпадают. Метод наименьших квадратов Приближенное решение y n краевой задачи(10.81), (10.82) ищется в пространстве Yn (см. (10.85)). Для определения искомого элемента этого пространства предлагается минимизировать квадрат нормы невязки (10.86), то есть скалярное произведение невязки (10.86) самой на себя G(c1 , c2 , . . . , cn ) = kL[y n ] − f k2 = hL[y n ] − f , L[y n ] − f i = Pn Pn = h k=1 ck L[ϕk ] − f , i=1 ci L[ϕi ] − f i = Pn Pn k=1 i=1 hL[ϕk ], L[ϕi ]ick ci −2 Pn hL[ϕk ], f ick +hf , f i. (10.88) Выражение (10.88) представляет собой линейно-квадратичную форму относительно коэффициентов c1 , c2 , . . . , cn . Необходимое условие экстремума функции G(c1 , c2 , . . . , cn ) = k=1 ∂ G(c1 , c2 , . . . , cn ) = 0 ∀i = 1, 2, . . . , n ∂ci может быть записано в виде системы линейных уравнений Метод наименьших квадратов ... n X aij cj = bi , i = 1, 2, . . . , n, (10.89) j=1 где aij = hL[ϕi ], L[ϕj ]i, bi = hL[ϕi ], f i, i, j = 1, 2, . . . , n. ! a11 При этом матрица A= · · · an1 ··· ··· ··· a1n · · · системы (10.89) является ann положительно-определенной тогда и только тогда, когда L[ϕ1 ], L[ϕ2 ], . . . , L[ϕn ] линейно-независимы. Если это условие выполняется, то метод наименьших квадратов сводится к решению системы (10.89). Замечание Метод наименьших квадратов является частным случаем метода Галеркина, если в качестве системы базисных функций {ψi , i = 1, 2, . . . , n} выбрать {L[ϕi ], i = 1, 2, . . . , n}. Метод коллокации Приближенное решение y n краевой задачи(10.81), (10.82) ищется в пространстве Yn (см. (10.85)). Для определения искомого элемента этого пространства предлагается занулить невязку (10.86) в некоторых узлах xi (i = 1, 2, . . . , n), называемых узлами коллокации. Пусть узлы коллокации a ≤ x1 ≤ x2 ≤ . . . ≤ xn ≤ b. Тогда L[y n ](xi ) = f (xi ), ∀i = 1, 2, . . . , n. (10.90) Равенства (10.90) образуют систему линейных алгебраических уравнений относительно коэффициентов c1 , c2 , . . . , cn n X ck L[ϕk ](xi ) = f (xi ), i = 1, 2, . . . , n. (10.91) k=1 Замечание Основная проблема в методе коллокации состоит в таком выборе узлов, чтобы матрица системы (10.91) была невырожденной, а также в обосновании сходимости метода при данном способе увеличения количества узлов. ТЕМА 11. Интерполяция сплайнами Постановка задачи Пусть заданы набор данных x0 , x1 , x2 , . . . , xn ∈ [a, b] : xi 6= xj ∀i 6= j y0 , y1 , y2 , . . . , yn (11.1) и класс функций Φ. ϕ ∈ Φ : ϕ(xi ) = yi ∀i = 0, 1, 2, . . . , n. (11.2) Задача численной интерполяции (11.2) на классе многочленов степени n может быть решена с помощью интерполяционного многочлена Лагранжа Ln (x), задаваемого с помощью формулы (6.12). Однако такая конструкция обладает рядом существенных недостатков, которые проявляются в приложениях при больших значениях n. 11.1. Интерполяционный кубический сплайн. Сплайнами называют функции, заданные кусочно многочленами на отрезках [xi−1 , xi ], i = 1, 2, . . . , n. Среди всех сплайнов наибольшее распространение получили интерполяционные кубические сплайны. Определение 11.1. Интерполяционным кубическим сплайном S(x) называется дважды непрерывно-дифференцируемая внутри отрезка [a, b] функция, заданная на каждом отрезке [xi−1 , xi ] (i = 1, 2, . . . , n) кубическим многочленом и удовлетворяющая интерполяционным условиям (11.2). Интерполяционный кубический сплайн S(x) определяется на отрезке [a, b] следующими формулами: S(x) = pi (x) = Ai x3 + Bi x2 + Ci x + Di , x ∈ [xi−1 , xi ], i = 1, 2, . . . , n. (11.3) Интерполяционный кубический сплайн ... Таким образом, интерполяционный кубический сплайн S(x) задается на отрезке [a, b] с помощью 4n параметров: (Ai , Bi , Ci , Di ), i = 1, 2, . . . , n. Значения этих параметров определяются следующими условиями: pi (xi−1 ) = yi−1 , pi (xi ) = yi , i = 1, 2, . . . , n; p0i (xi ) = p0i+1 (xi ), p00i (xi ) = p00i+1 (xi ), (11.4) i = 1, 2, . . . , n − 1; (11.5) i = 1, 2, . . . , n − 1. (11.6) В результате, для определения значений 4n параметров имеется всего n + 2(n − 1) = 4n − 2 условий. Следовательно для однозначного определения сплайна S к (11.4), (11.5), (11.6) требуется добавить еще два дополнительных условия. На концах отрезка задают краевые условия38 , например: S 0 (a) = y 00 , S 0 (b) = y 0n (11.7) S 00 (a) = y 000 , S 00 (b) = y 00n . (11.8) или 38 Условия (11.7) называют краевыми условиями первого типа, (11.8) — второго типа. 11.2. Эффективный способ построения интерполяционного кубического сплайна. Так как сплайн на каждом отрезке [xi−1 , xi ] задается кубической функцией, то его вторая производная является линейной функцией. Пусть Mi = S 00 (xi ) и hi = xi − xi−1 , i = 1, 2, . . . , n. Тогда S 00 (x) = Mi−1 x − xi−1 xi − x + Mi , x ∈ [xi−1 , xi ]. hi hi (11.9) Интегрирование обеих частей равенства (11.9) приводит к выражениям 2 2 −x) i−1 ) S 0 (x) = −Mi−1 (xi2h + Mi (x−x + Ai , 2hi i 3 3 −x) i−1 ) S(x) = Mi−1 (xi6h + Mi (x−x + Ai x + Bi , x ∈ [xi−1 , xi ], 6hi i где Ai , Bi — константы интегрирования. Для их определения из интерполяционных условий (11.4) удобно выполнить невырожденную замену констант Эффективный способ построения интерполяционного кубического сплайна ... Ai x + Bi = ai (xi − x) + bi (x − xi−1 ).  −ai + bi = Ai , , где определитель матрицы этой xi ai − xi−1 bi = Bi ,  −1 1 системы равен det = xi−1 − xi = −hi 6= 0. Тогда Здесь xi −xi−1 3 3 −x) i−1 ) S(x) = pi (x) = Mi−1 (xi6h + Mi (x−x + 6hi i +ai (xi − x) + bi (x − xi−1 ), x ∈ [xi−1 , xi ]. Из (11.10) с учетом условий интерполяции (11.4) следует ( h2 pi (xi−1 ) = Mi−1 6i + ai hi = yi−1 , h2 pi (xi ) = Mi 6i + bi hi = yi . (11.10) Эффективный способ построения интерполяционного кубического сплайна ... Откуда ( hi ai = yi−1 hi − Mi−1 6 , bi = hyii − Mi h6i . В результате 3 3 −x) i−1 ) pi (x) = Mi−1 (xi6h + Mi (x−x + 6hi i +  yi−1 hi    − Mi−1 h6i (xi − x) + hyii − Mi h6i (x − xi−1 ), x ∈ [xi−1 , xi ], i = 1, 2, . . . , n. (11.11) Для того чтобы получить уравнения для Mi (i = 0, 1, 2, . . . , n), предлагается воспользоваться условиями (11.5) p0i (xi ) = p0i+1 (xi ), i = 1, 2, . . . , n − 1. Эффективный способ построения интерполяционного кубического сплайна ... Из (11.11) следует, что p0i (xi ) = hi 2 Mi + yi −yi−1 hi p0i+1 (xi ) = − hi+1 2 Mi + − hi 6 Mi yi+1 −yi hi+1 − + hi 6 Mi−1 , hi+1 6 Mi+1 + hi+1 6 Mi . Подстановка правых частей этих равенств в (11.5) после приведения подобных приводит к линейной системе из n − 1-го уравнения относительно n + 1-ой неизвестной hi 6 Mi−1 + hi +hi+1 Mi 3 + hi+1 6 Mi+1 = yi+1 −yi hi+1 − yi −yi−1 , hi i = 1, 2, . . . , n − 1. В результате добавления к (11.12) краевых условий (11.8) S 00 (a) = y 000 , S 00 (b) = y 00n (11.12) Эффективный способ построения интерполяционного кубического сплайна ... возникает система крамеровского типа  M = y 000 ,   0    hi +hi+1 yi+1 −yi yi −yi−1 hi Mi + hi+1 , i=1, 2, . . . , n−1 6 Mi−1 + 3 6 Mi+1 = hi+1 − hi      M0 = y 00n , (11.13) матрица которой обладает свойством строго диагонального преобладания. Единственное решение системы (11.13) для исходных данных (11.1) и краевых условий (11.8) определяет единственный интерполяционный кубический сплайн S(x), x ∈ [a, b], который на отрезке [a, b] задается формулами (11.11). 
«Численные методы» 👇
Готовые курсовые работы и рефераты
Купить от 250 ₽
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Тебе могут подойти лекции

Смотреть все 938 лекций
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot