Формулы Кристофеля – Шварца

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

В общем случае квадратурная формула содержит всего 2n параметров; столько же содержит полином степени 2n – 1. Значит, параметры (узлы и веса) можно подобрать таким образом, чтобы квадратурная формула

Формулы Кристофеля – Шварца - student2.ru (2.19)

была точна для любого многочлена степени не выше 2n – 1. Именно к такому типу формул и относится формула Гаусса – Кристоффеля. Она имеет тот же вид (2.19), но весовая функция сk определяется по специальной формуле

Формулы Кристофеля – Шварца - student2.ru (2.20)

Из изложенного следует, что узлами Гаусса – Кристоффеля являются нули соответствующих ортогональных полиномов Рn(x).. Для наиболее употребительных весовых функций r(х) узлы и веса формул Гаусса – Кристоффеля приведены в следующем пункте.

Рассмотрим некоторые частные случаи.

а) Собственно формуле Гаусса соответствует случай r(х) = 1. Линейным преобразованием аргумента можно перейти к отрезку а = - 1, b = 1. На нём ортогональны с единичным весом многочлены Лежандра. Если обозначить их узлы и соответствующие веса через xk, gk, то обратным линейным преобразованием можно получить узлы и веса для произвольного отрезка

xk = ½ (a + b) + ½ (b – a)xk,

(2.20,a)

ck = ½ (b – a)gk, 1 £ k £ n.

б) Формула Эрмита позволяет интегрировать на отрезке [ - 1, + 1] с весом r(х) = 1/(1 – х2)1/2. При этих условиях ортогональны многочлены Чебышева первого рода Тn(x). Соответствующие узлы и веса интегрирования равны

xk = cos[p(k – ½ )/n], gk = p/n, 1 £ k £ n. (2.20,б)

в) По формулам Гаусса – Кристоффеля возможно вычисление несобственных интегралов на полупрямой 0 £ х < ¥; если весовая функция равна r(х) = хaе-х, то ортогональными будут полиномы Лагерра Формулы Кристофеля – Шварца - student2.ru То же относится к интегралам на всей прямой - ¥ < х < + ¥ при весе Формулы Кристофеля – Шварца - student2.ru только ортогональными будут полиномы Эрмита. Соответствующие примеры приведены в параграфе 2.2. Формулы Кристофеля – Шварца - student2.ru

Ортогональные многочлены

Многочлены Pn(x) называют ортогональными с весом r(х) на отрезке [a, b], если они удовлетворяют соотношениям:

Формулы Кристофеля – Шварца - student2.ru (2.21)

По традиции наиболее употребительные полиномы не нормируют на единицу. Все корни ортогональных многочленов вещественные, простые и расположены на интервале (a, b). Между каждой парой соседних корней многочлена Pn(x) расположен один и только один корень многочлена Pn-1(x).

Почти все классические ортогональные полиномы являются частными случаями полиномов Якоби, Лагерра и Эрмита. Они удовлетворяют дифференциальному уравнению

Формулы Кристофеля – Шварца - student2.ru (2.22)

Их удобно вычислять либо по обобщённой формуле Родрига

Формулы Кристофеля – Шварца - student2.ru (2.23)

либо, зная два первых полинома, при помощи рекуррентных соотношений

Формулы Кристофеля – Шварца - student2.ru (2.24)

Конкретный вид всех встречающихся в этих формулах функций и значения констант приведены в табл. 2.1.

Приведём типичные ортогональные полиномы с небольшими индексами n, их корни Формулы Кристофеля – Шварца - student2.ru и соответствующие им веса Формулы Кристофеля – Шварца - student2.ru формулы Гаусса – Кристоффеля.

Многочлены Лежандра. L0(x) = 1; L1(x) = 1; L2(x) = ½ (3x2 – 1); L3(x) = = ½ (5x3 –3x); L4(x) = (1/8)(35x4 – 30x2 + 3); L5(x) = (1/8)(63x5 – 70x3 + 15x).

n = 1; x1 = 0; g1 = 2.

n = 2; - x1 = x2 = (1/3)1/2; g1 = g2 = 1.

n = 3; - x1 = x3 = (3/5)1/2; x2 = 0; g1 = g3 = 5/9; g2 = 8/9.

n = 4; Формулы Кристофеля – Шварца - student2.ru

n = 5; Формулы Кристофеля – Шварца - student2.ru

Полиномы Лагерра (a=0). Формулы Кристофеля – Шварца - student2.ru

Формулы Кристофеля – Шварца - student2.ru

n = 1; x1 = 1; g1 = 1.

n = 2; x1 = 2 – (2)1/2, x2 = 2 + (2)1/2; g1 = [2 + (2)1/2]/4; g2 = [2 – (2)1/2]/4.

n = 3; x1 = 0,415775, x2 = 2,294280, x3 = 6,289945;

g1 = 0,711093, g2 = 0,278518, g3 = 0,010389.

Многочлены Эрмита. H0(x) = 1; H1(x) = 2x; H2(x) = 4x2 – 2; H3(x) = 8x3 – 12x; H4(x) = 16x4 – 48x2 + 12; H5(x) = 32x5 – 160x3 +120x.

n = 1; x1 = 0; g1 = (p)1/2.

n = 2; - x1 = x2 = 1/(2)1/2; g1 = g2 = (p)1/2/2.

n = 3; - x1 = x3 = (3/2)1/2, x2 = 0; g1 = g3 = (p)1/2/6, g2 = 2(p)1/2/3.

Формулы Кристофеля – Шварца - student2.ru

Таблица 2.1. Ортогональные многочлены

Полином Якоби Лежандра Чебышева первого рода Чебышева второго рода Лагерра Эрмита
Обозначение Формулы Кристофеля – Шварца - student2.ru Ln(x) Tn(x) Un(x) Формулы Кристофеля – Шварца - student2.ru Hn(x)
a, b - 1, + 1 - 1, + 1 - 1, + 1 - 1, + 1 0, + ¥ - ¥, + ¥
r(x) (1 – x)a(1 + x)b, a, b > - 1 (1 – x2)-1/2 (1 – x2)1/2 xae-x, a > - 1 Формулы Кристофеля – Шварца - student2.ru
s(x) 1 – x2 1 – x2 1 – x2 1 – x2 x
Nn 2a+b+1G(a + n + 1)G(b + n + 1)/[n!(a + b + 2n + 1)G(a + b + n + 1)] 2/(2n + 1) p/2 при n ¹ 0, p при n = 0   n! ´ ´G(a + n + 1) (p)1/22nn!
An n(n +a + b + 1) n(n + 1) n2 n(n + 2) n 2n
Bn (- 1)n/(2n×n!) (- 1)n/(2n´ ´n!)     (- 1)n (- 1)n
an 2(n + 1)(n + a + b + 1)(2n + a + b) n + 1
bn (2n + a + b)(2n + a + b + 1)(2n + a + b + 2) 2n + 1
cn (b2 - a2)(2n + a + b + 1) 2n + a + 1
dn 2(n + a)(n + b)(2n + a + b + 2) n n(n + a) 2n

Формулы Кристофеля – Шварца - student2.ru

n = 5; Формулы Кристофеля – Шварца - student2.ru

Формулы Кристофеля – Шварца - student2.ru

Полиномы Чебышева первого рода. T0(x) = 1; T1(x) = x; T2(x) = 2x2 – 1;

T3(x) = 4x3 – 3x; T4(x) = 8x4 – 8x2 + 1; T5(x) = 16x5 – 20x3 + 5x;

T6(x) = 32x6 – 48x4 + 18x2 – 1; T7(x) = 64x7 – 11x5 + 56x3 – 7x.

Формулы Кристофеля – Шварца - student2.ru

Полиномы Чебышева второго рода. U0(x) = 1; U1(x) = 2x; U2(x) = 4x2 – 1;

U3(x) = 8x3 – 4x; U4(x) = 16x4 – 12x2 + 1; U5(x) = 32x5 – 32x3 + 6x.

Формулы Кристофеля – Шварца - student2.ru

Формулы Кристофеля – Шварца - student2.ru

Многочлены на системе точек. Многочлены Pn(x) называют ортонормированными на системе точек xi с весами ri (1 £ x £ N), если они удовлетворяют соотношениям

Формулы Кристофеля – Шварца - student2.ru

Систему таких многочленов можно построить, используя рекуррентное соотношение

lnPn+1(x) = (x – an)Pn(x) + bnPn-1(x),

где

Формулы Кристофеля – Шварца - student2.ru

а ln определяется из условия нормировки. Для начала расчёта по этим формулам нужно положить

Формулы Кристофеля – Шварца - student2.ru

Формулы Кристофеля – Шварца - student2.ru 2.2. Нестандартные формулы

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

Разрывные функции. Пусть функция и её производные кусочно-непрерывны; в точке разрыва подразумевается существование односторонних производных всех требуемых порядков. В этом случае обеспечить требуемую точность интегрирования можно следующим образом.

Разобьём отрезок [a, b] на более мелкие отрезки так, чтобы на этих отрезках функция и некоторое число p её низших производных были непрерывны; на концах этих отрезков в качестве значений функции и производных возьмём соответствующие односторонние пределы.

Представим интеграл в виде суммы интегралов по отрезкам непрерывности. Применим к каждому отрезку квадратурную формулу порядка точности q, q £ p. Если одновременно и одинаково сгущать сетки на всех отрезках непрерывности, то порядок точности ответа будет q, как и для непрерывных достаточно гладких функций. В этом случае методом Рунге можно повысить порядок точности до р.

Пример 2.2. Рассмотрим

Формулы Кристофеля – Шварца - student2.ru

Здесь подынтегральная функция непрерывная и гладкая, но вторая производная имеет разрыв при х = 0. Если для этой функции выделить отрезки непрерывности (- 1 £ х £ 0 и 0 £ х £ 2), то формула Симпсона даёт точный ответ.

Нелинейные формулы. В случае интегрирования быстропеременных функций стараются найти выравнивающие переменные, в которых уже два свободных параметра обеспечивали бы удовлетворительную аппроксимацию. На отрезке [a, b] строят сетку и на каждом интервале сетки функцию заменяют нелинейной интерполяционной функцией, в которой параметры выражены через табличные значения функции. Например, если функция близка к экспоненте, то

Формулы Кристофеля – Шварца - student2.ru

Если на каждом интервале проинтегрировать это выражение вместо исходной функции, то получим обобщённую квадратурную формулу

Формулы Кристофеля – Шварца - student2.ru (2.25)

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

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

Формулы Кристофеля – Шварца - student2.ru

В принципе, при каждом значении х его можно рассматривать как интеграл с постоянными пределами и вычислить одним из приведённых выше способов. Однако если нужно определить интеграл для очень многих значений х, то это невыгодно. Целесообразнее выбрать сетку и численным интегрированием высокой точности составить таблицу значений интеграла на этой сетке Fn = F(xn). Тогда

Формулы Кристофеля – Шварца - student2.ru

Несобственные интегралы. Для интегралов с бесконечными пределами имеется несколько приёмов вычисления.

Приём 1 – введение такой замены переменных, чтобы превратить пределы интегрирования в конечные. Например, для интеграла

Формулы Кристофеля – Шварца - student2.ru

замена x = a/(1 – t) превращает полупрямую [a, ¥) в отрезок [0, 1]. Если после преобразования подынтегральная функция с некоторым числом производных остаётся ограниченной, то можно находить интегралы стандартными численными методами.

Как правило, возможные преобразования "напрашиваются" самим видом подынтегрального выражения. Например, при вычислении интеграла

Формулы Кристофеля – Шварца - student2.ru

при взгляде на функцию арктангенса сразу приходит на ум соотношение

Формулы Кристофеля – Шварца - student2.ru

Поэтому приведённый выше интеграл естественным образом заменяется на следующий

Формулы Кристофеля – Шварца - student2.ru

который отыскивается численно элементарным образом.

Приём 2 – обрезание верхнего предела (или обоих пределов). Выберем такое значение b, чтобы

Формулы Кристофеля – Шварца - student2.ru

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

Формулы Кристофеля – Шварца - student2.ru

вычислить по квадратурной формуле. Для правильного выбора величины b полезно строить график подынтегральной функции. Например, построение графика подынтегральной функции при вычислении интеграла

Формулы Кристофеля – Шварца - student2.ru

показывает (см. рис. 2.1), что фактически эта функция за пределами – 4 £ х £ 5 равна нулю. Поэтому данный интеграл несобственный только формально. Об этом свидетельствует и почти полное совпадение значений интегралов, вычисленных при разных пределах.

Формулы Кристофеля – Шварца - student2.ru Формулы Кристофеля – Шварца - student2.ru

Рис. 2.1. К вычислению несобственного

Интеграла

Приём 3 – использование формул Гаусса – Кристоффеля. Из подынтегральной функции нужно выделить положительный множитель, который можно рассматривать как вес для данных пределов интегрирования. Например, дадим способ вычисления интегральной экспоненты

Формулы Кристофеля – Шварца - student2.ru

Сдвигая нижний предел (фактически, вводя новую переменную t ' = t – x), приведём этот интеграл к форме

Формулы Кристофеля – Шварца - student2.ru

Рассматривая et ' как весовую функцию, из анализа данных табл. 2.1 находим, что этому случаю соответствуют полиномы Лагерра при a = 0, т.е. Формулы Кристофеля – Шварца - student2.ru Тогда для искомого интеграла получаем

Формулы Кристофеля – Шварца - student2.ru (2.26)

Это выражение можно использовать как аппроксимирующую формулу. Например, одному, двум и трём узлам интегрирования соответствуют

Формулы Кристофеля – Шварца - student2.ru

Если первая из этих формул пригодна лишь при больших аргументах, то вторая даёт удовлетворительную точность ~ 5 % уже при х =1, а при больших аргументах точность ещё лучше. Третья формула обеспечивает погрешность ~ 5 % уже при х ³ 0,5, а при х > 1 ошибка вычисления интеграла не превышает 1 %.

Если пределы интегрирования конечны, функция f(x) может иметь особые точки в каких-то точках отрезка [a, b] (т.е. точки, в которых она принимает бесконечные значения). Доля вычисления таких интегралов также имеются специальные приёмы.

Приём 1 – аддитивное выделение особенности. Постараемся разбить подынтегральную функцию на сумму f(x) = j(x) + y(x), где j(x) – ограниченная функция, а y(x) интегрируется аналитическими методами. Тогда Формулы Кристофеля – Шварца - student2.ru вычисляем точно, а Формулы Кристофеля – Шварца - student2.ru находим обычными численными методами. Заметим, что обычно разбиение на сумму делается выделением особенности в наиболее простом виде. Например, если Формулы Кристофеля – Шварца - student2.ru то полученная функция будет ограничена, что и требуется.

Приём 2 –мультипликативное выделение особенности. Представим подынтегральную функцию в виде f(x) = j(x)r(x), где j(x) ограничена, а r(x) положительна и интегрируема на отрезке. Тогда можно рассматривать r(x) как весовую функцию и применить квадратурные формулы Гаусса – Кристоффеля. Если на обоих концах отрезка функция имеет особенности степенного вида, то узлами интегрирования будут нули многочленов Якоби. Например,

Формулы Кристофеля – Шварца - student2.ru (2.27)

Здесь использовались полиномы Чебышева первого рода (см. табл. 2.1).

Приём 3 – построение нестандартных квадратурных формул, явно учитывающих характер особенности. Так, для приведённого выше интеграла (2.27) на отдельном интервале сетки (xi-1, xi) можно аппроксимировать подынтегральную функцию выражением exp(xi-1/2 )/(1 – x2)1/2, поскольку числитель – медленно изменяющаяся функция и основная особенность связана со знаменателем. Эта аппроксимация легко интегрируется и приводит к квадратурной формуле

Формулы Кристофеля – Шварца - student2.ru (2.28)

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

Формулы Кристофеля – Шварца - student2.ru

Учитывая, что

Формулы Кристофеля – Шварца - student2.ru

перепишем заданный интеграл в виде

Формулы Кристофеля – Шварца - student2.ru

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

Формулы Кристофеля – Шварца - student2.ru

На этом интервале интеграл легко вычисляется

Формулы Кристофеля – Шварца - student2.ru

Во второй особой точке в окрестности x2 = p или x = p1/2 sin(x2) » 0. Отметим также, что при x2 > p подынтегральная функция изменяет знак. Здесь можно поступить двумя способами. Во-первых, можно просто исключить ближайшую окрестность точки x = p1/2 из области интегрирования, так как интегралы слева и справа от этой точки компенсируют друг друга. Тогда

Формулы Кристофеля – Шварца - student2.ru

Во-вторых, можно подробно исследовать окрестность точки x = p1/2. Используя тригонометрические соотношения sin(x2) = sin(p - x2) = -sin(x2 - p) и разложение функций в ряды, получим

Формулы Кристофеля – Шварца - student2.ru В соответствии с требуемой точностью должно быть

Формулы Кристофеля – Шварца - student2.ru

т.е. окрестность точки x = p1/2 составляет 1.748499467£ x £ 1.796089062. Следовательно, имеем

Формулы Кристофеля – Шварца - student2.ru Формулы Кристофеля – Шварца - student2.ru

Формулы Кристофеля – Шварца - student2.ru

Формулы Кристофеля – Шварца - student2.ru

и

Формулы Кристофеля – Шварца - student2.ru

Задание № 4

Вычислить таблицу функции f(y) для ряда равноотстоящих (с шагом h) значений аргумента y, принадлежащих отрезку [a, b].

Точность, с которой требуется получить результат, указана для каждой функции.

Отчёт по заданию должен содержать: 1) обоснование избранного способа вычисления интеграла, 2) вычисления, 3) ответ [таблица функции f(y)], 4) контроль полученной таблицы с помощью разделённых разностей или путём вычисления интеграла с использованием упомянутых выше математических пакетов.

Вариант А

Вариант Интеграл k a b h Точность
Формулы Кристофеля – Шварца - student2.ru 1,0 0,5 1,0 0,05 10-5
- " - 1,2 0,5 1,0 0,05 10-5
- " - 1,4 0,5 1,0 0,05 10-5
- " - 1,6 0,5 1,0 0,05 10-5
- " - 1,0 1,0 1,5 0,05 10-5
- " - 1,2 1,0 1,5 0,05 10-5
- " - 1,4 1,0 1,5 0,05 10-5
- " - 1,6 1,0 1,5 0,05 10-5
- " - 1,0 1,5 2,0 0,05 10-5
- " - 1,2 1,5 2,0 0,05 10-5
- " - 1,4 1,5 2,0 0,05 10-5
- " - 1,6 1,5 2,0 0,05 10-5
Формулы Кристофеля – Шварца - student2.ru 0,8 0.1 10-6
-"- 0,9 0.1 10-6
-"- 1,0 0.1 10-6
-"- 1,1 0.1 10-6
-"- 0,8 0.1 10-6
-"- 0,9 0.1 10-6
-"- 1,0 0.1 10-6
-"- 1,1 0.1 10-6
-"- 0,8 0.1 10-6
-"- 0,9 0.1 10-6
-"- 1,0 0.1 10-6
-"- 1,1 0.1 10-6

Вариант Б

Вариант Интеграл k a b h Точность
Формулы Кристофеля – Шварца - student2.ru 0,8 0,1 10-6
-"- 0,85 0,1 10-6
-"- 0,9 0,1 10-6
-"- 0,95 0,1 10-6
-"- 0,8 0,1 10-6
-"- 0,85 0,1 10-6
-"- 0,9 0,1 10-6
-"- 0,95 0,1 10-6
-"- 0,8 0,1 10-6
-"- 0,85 0,1 10-6
-"- 0,9 0,1 10-6
-"- 0,95 0,1 10-6
Формулы Кристофеля – Шварца - student2.ru 0,6 1,0 1,3 0,03 10-6
-"- 0,7 1,0 1,3 0,03 10-6
-"- 0,8 1,0 1,3 0,03 10-6
-"- 0,8 1,0 1,3 0,03 10-6
-"- 0,6 1,3 1,6 0,03 10-6
-"- 0,7 1,3 1,6 0,03 10-6
-"- 0,8 1,3 1,6 0,03 10-6
-"- 0,8 1,3 1,6 0,03 10-6
-"- 0,6 1,6 1,9 0,03 10-6
-"- 0,7 1,6 1,9 0,03 10-6
-"- 0,8 1,6 1,9 0,03 10-6
-"- 0,8 1,6 1,9 0,03 10-6

Вариант В

Вариант Интеграл k a b h Точность
Формулы Кристофеля – Шварца - student2.ru 0,4 2,5 0,05 10-6
-"- 0,45 2,5 0,05 10-6
-"- 0,5 2,5 0,05 10-6
-"- 0,55 2,5 0,05 10-6
-"- 0,4 3,0 3,5 0,05 10-6
-"- 0,45 3,0 3,5 0,05 10-6
-"- 0,5 3,0 3,5 0,05 10-6
-"- 0,55 3,0 3,5 0,05 10-6
-"- 0,4 3,5 4,0 0,05 10-6
-"- 0,45 3,5 4,0 0,05 10-6
-"- 0,5 3,5 4,0 0,05 10-6
-"- 0,55 3,5 4,0 0,05 10-6
Формулы Кристофеля – Шварца - student2.ru 0,7 0,1 0,4 0,03 10-5
-"- 0,9 0,1 0,4 0,03 10-5
-"- 1,1 0,1 0,4 0,03 10-5
-"- 1,3 0,1 0,4 0,03 10-5
-"- 0,7 0,4 0,7 0,03 10-5
-"- 0,9 0,4 0,7 0,03 10-5
-"- 1,1 0,4 0,7 0,03 10-5
-"- 1,3 0,4 0,7 0,03 10-5
-"- 0,7 0,7 1,0 0,03 10-5
-"- 0,9 0,7 1,0 0,03 10-5
-"- 1,1 0,7 1,0 0,03 10-5
-"- 1,3 0,7 1,0 0,03 10-5

Вариант Г

Вариант Интеграл k a b h Точность
Формулы Кристофеля – Шварца - student2.ru 1,1 4,2 4,4 0,02 10-6
-"- 1,2 4,2 4,4 0,02 10-6
-"- 1,3 4,2 4,4 0,02 10-6
-"- 1,4 4,2 4,4 0,02 10-6
-"- 1,1 4,4 4,6 0,02 10-6
-"- 1,2 4,4 4,6 0,02 10-6
-"- 1,3 4,4 4,6 0,02 10-6
-"- 1,4 4,4 4,6 0,02 10-6
-"- 1,1 4,6 4,8 0,02 10-6
-"- 1,2 4,6 4,8 0,02 10-6
-"- 1,3 4,6 4,8 0,02 10-6
-"- 1,4 4,6 4,8 0,02 10-6
Формулы Кристофеля – Шварца - student2.ru 0,2 2,6 2,8 0,02 10-6
-"- 0,25 2,6 2,8 0,02 10-6
-"- 0,3 2,6 2,8 0,02 10-6
-"- 0,35 2,6 2,8 0,02 10-6
-"- 0,2 2,8 3,0 0,02 10-6
-"- 0,25 2,8 3,0 0,02 10-6
-"- 0,3 2,8 3,0 0,02 10-6
-"- 0,35 2,8 3,0 0,02 10-6
-"- 0,2 3,0 3,2 0,02 10-6
-"- 0,25 3,0 3,2 0,02 10-6
-"- 0,3 3,0 3,2 0,02 10-6
-"- 0,35 3,0 3,2 0,02 10-6

Пример 2.4. Вычислить интеграл

Формулы Кристофеля – Шварца - student2.ru

с четырьмя верными знаками после запятой для значений y Î [2.6, 3] с шагом h = 0.04.

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

Формулы Кристофеля – Шварца - student2.ru

и вычисляется по квадратурной формуле наивысшей алгебраической степени точности с весом (1 – x)-1/2

Формулы Кристофеля – Шварца - student2.ru

где Формулы Кристофеля – Шварца - student2.ru Если n чётное, то, используя чётность подынтегральной функции, можно записать

Формулы Кристофеля – Шварца - student2.ru

Для того чтобы выбрать число узлов в квадратурной формуле, вычислим f(3) при n = 10, 12 и 14 (следует ожидать, что значение параметра y =3 является самым плохим). Вычисления ведём с одним запасным знаком и заносим в таблицу (см. следующую стр.). Значения интеграла при соответствующем числе узлов получается как сумма произведений чисел, стоящих в четвёртом столбце [cos(3xk)] на числа, стоящие в последнем столбце.

Поскольку значения интеграла при n = 12 и n = 14 совпали с требуемой точностью, все остальные значения f(y) вычисляем с 12 узлами. При этом для всех следующих интегралов достаточно вычислить лишь xky и cos(xky). Значения Формулы Кристофеля – Шварца - student2.ru уже вычислены.

n k xk cos(3xk) xk2 xk2 + 0.3 Формулы Кристофеля – Шварца - student2.ru
0.98769 - 0.98410 0.97553 1.27553 0.24630
0.89100 - 0.89220 0.79388 1.09388 0.28720
0.70711 - 0.52314 0.50000 0.80000 0.39270
0.45399 0.20731 0.20611 0.50611 0.62073
0.15643 0.89189 0.02447 0.32447 0.96822
  f10(3) = 0.28818
0.99144 - 0.98604 0.98295 1.28295 0.20406
0.92388 - 0.93234 0.85355 1.15355 0.22695
0.79336 - 0.72380 0.62942 0.92942 0.28168
0.60876 - 0.25271 0.37059 0.67059 0.39040
0.38268 0.41027 0.14644 0.44644 0.58641
0.13052 0.92432 0.01704 0.31704 0.82576
  f12(3) = 0.28851
0.99371 - 0.98715 0.98746 1.28746 0.17430
0.94388 - 0.95235 0.89091 1.19091 0.18843
0.84672 - 0.82453 0.71693 1.01693 0.22066
0.70711 - 0.52314 0.50000 0.80000 0.28050
0.53203 - 0.02529 0.28306 0.58306 0.38486
0.33028 0.54798 0.10908 0.40908 0.54854
0.11196 0.94412 0.01254 0.31254 0.71798
  f14(3) = 0.28854

Приведём в качестве примера два результата вычислений

y xky cos(xky) y xky cos(xky)
2.60 2.57774 - 0.84520 2.64 2.61740 - 0.86573
2.40209 - 0.73880 2.43904 - 0.76320
2.06274 - 0.47234 2.09447 - 0.50006
1.58278 - 0.01198 1.60713 - 0.03633
0.99497 0.54453 1.01028 0.53162
0.33935 0.94297 0.34457 0.94122
f(2.6) = 0.62012 f(2.64) = 0.58406

И т.д. Полученные результаты полезно проверить таблицей разделённых разностей.

yi f(yi) f(yi,yi+1) f(yi,yi+1,yi+2)
2.6 0.6201    
    -0.9  
2.64 0.5841   0.15625
    -0.8875  
2.68 0.5486   0.1875
    -0.8725  
2.72 0.5137   0.21875
    -0.855  
2.76 0.4795   0.1875
    -0.84  
2.8 0.4459   0.1875
    -0.825  
2.84 0.4129   0.25
    -0.805  
2.88 0.3807   0.21875
    -0.7875  
2.92 0.3492   0.25
    -0.7675  
2.96 0.3185   0.21875
    -0.75  
0.2885    

3. СИСТЕМЫ УРАВНЕНИЙ

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

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

Линейные системы

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

Задачи линейной алгебры

Выделяют четыре основных задачи линейной алгебры:

· решение системы линейных уравнений Ax= b, где A – квадратичная матрица иx, b – векторы;

· отыскание (вычисление) обратной матрицы А-1;

· вычисление определителя det|A|;

· определение собственных значений и собственных векторов матрицы.

Прежде чем решать любую систему уравнений, необходимо выяснить два вопроса: имеет ли вообще данная система решение и, если имеет, то какова точность этого решения?

Ответы на оба эти вопроса связаны с понятием обусловленности матрицы. Чтобы выяснить смысл этого понятия, рассмотрим следующие положения, не вникая в математическую сторону вопроса.

Формулы Кристофеля – Шварца - student2.ru Во-первых, как показывает геометрическая интерпретация процедуры решения двух уравнений (см. рис. 3.1), не всякая система имеет решение. Каждому уравнению соответствует прямая в плоскости х, у, а точка пересечения этих прямых и есть решение системы (для n уравнений решение есть точка пересечения всех n гиперплоскостей в n-мерном пространстве). Если detA = 0, то наклоны прямых равны, и они либо параллельны, либо совпадают. В противном случае прямые имеют единственную точку пересечения.

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

Пусть detA » 0. Запишем формальное решение системы Ax = b в виде x = A-1b. Варьируя последнее равенство и определяя вариацию обратной матрицы из соотношения dE = d(AA-1) = AdA-1 + dAA-1=0, получим

dx = A-1(db - dA×x).

Формально устойчивость есть, так как при detA ¹ 0 обратная матрица существует. Но если матрица А-1 имеет большие элементы, то можно указать такой вид погрешности исходных данных (dbили dА), который сильно изменит решение. В этом случае систему называют плохо обусловленной. Очевидно, у плохо обусловленной системы detA » 0 (рис. 3.1), однако заметим, что этот признак плохой обусловленности является необходимым, но не достаточным.

В теоретических исследованиях обусловленность часто характеризуют числом c = ||A||×||A-1||. Это число зависит от того, какая норма матрицы выбрана, но при любой норме c ³ 1. Чем больше это число, тем хуже обусловленность матрицы: обычно c ~ 103 – 104 уже означает плохую обусловленность.

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

В рамках пакета MATLAB обусловленность матрицы устанавливается с помощью следующих функций:

k = cond(A) k = condest(A) k = cond(A, p) [k, v] = condest(A)

Функция k = cond(A) возвращает число обусловленности матрицы А по отношению к операции обращения, равное отношению максимального сингулярного числа к минимальному: k = smax/smin.

Функция k = cond(A, p) возвращает число обусловленность матрицы А относительно р-нормы k º c = norm(A, p)×norm(inv(A), p), где p = 1, 2, inf, 'fro'.

Функция k = condest(A) возвращает оценку нижней границы числа обусловленности матрицы по 1-норме.

Функция [k, v] = condest(A) возвращает помимо оценки нижней границы числа обусловленности также и вектор, такой, что справедливо соотношение norm(Av, 1) = norm(A, 1)×norm(v, 1)/k. Таким образом, вектор v может служить аппроксимацией нуль-вектора матрицы А, если k велико.

Более наглядным является результат выполнения функции k_1 = = rcond(A), которая возвращает величину, обратную значению числа обусловленности матрицы А по 1-норме. Если матрица А хорошо обусловлена, то значение k_1 близко к единице; если матрица А плохо обусловлена, то значение k_1 близко к нулю.

Пример 3.1. Выясним обусловленность матриц коэффициентов следующих двух систем уравнений:

Формулы Кристофеля – Шварца - student2.ru Сформируем матрицы систем (а) и (b):

>> A = [7.9 5.6 5.7 -7.2; 8.5 -4.8 0.8 3.5; 4.3 4.2 -3.2 9.3; 3.2 -1.4 -8.9 3.3]

A =

7.900000 5.600000 5.700000 -7.200000

8.500000 - 4.800000 0.800000 3.500000

4.300000 4.200000 - 3.200000 9.300000

3.200000 - 1.400000 - 8.900000 3.300000

>> B = [5 7 6 5; 7 10 8 7; 6 8 10 9; 5 7 9 10]

B =

5 7 6 5

7 10 8 7

6 8 10 9

5 7 9 10

Теперь вычислим параметры матриц:

>> k = cond(A) k_1 = rcond(A) k1 = condest(A)

k = k_1 = k1 =

2.547891 0.417639 5.118441

>> k2 = cond(B) k2_1 = rcond(B) k20 = condest(B)

k2 = k2_1 = k20 =

2.9841e3 Формулы Кристофеля – Шварца - student2.ru 3.0882e- 4 4.4480e3

Таким образом, можно сделать вывод, что матрица А хорошо обусловлена, а матрица В – плохо обусловлена.

В рамках пакета Mathcad вычисляется четыре числа обусловленности:

cond1(A)– возвращает число обусловленности матрицы, вычисленное в 1-норме;

cond2(A)– возвращает число обусловленности матрицы, вычисленное в норме L2;

conde(A)– возвращает число обусловленности матрицы, вычисленное в норме евклидова пространства;

condi(A)– возвращает число обусловленности матрицы, основанное на равномерной норме.

В данном случае формирование матрицы осуществляется предельно просто – необходимо использовать опции Insert/Matrix, указать число строк и столбцов и ввести соответствующие элементы

Формулы Кристофеля – Шварца - student2.ru

Далее вычисляем характеристики матриц:

cond1(A) = 5.118441, cond2(A) = 2.547891, conde(A) = 5.190408, condi(A) = 5.660286

cond1(B) = 4488, cond2(B) = 2984.092702, conde(B) = 3009,578708, condi(B) = 4488

Сопоставляя результаты оценки обусловленности матриц в MATLAB и Mathcad, можно видеть эквивалентность команд (функций) cond(A)и cond2(A), condest(A)и cond1(A).

В рамках пакета Maple V любого релиза имеется лишь одна функция определения числа обусловленности матрицы cond(A, namenorm), но она охватывает все четыре команды Mathcad, так как опция namenorm может иметь четыре значения: 1, 2, infinity и 'frobenius'. При этом справедлива следующая эквивалентность:

cond1(A) ® cond(A, 1); cond2(A) ® cond(A, 2); condi(A) ® cond(A, infinity);

conde(A) ® cond(A, 'frobenius')

Формирование матриц в Maple осуществляется командой

> A := matrix(4, 4, [[7.9,5.6,5.7,-7.2],[8.5,-4.8,0.8,3.5],[4.3,4.2,-3.2,9.3],[3.2,-1.4,8.9,

3.3]]);

При этом в версиях пакета до Maple V Release 5 на рабочей странице выпечатывается матрица

Формулы Кристофеля – Шварца - student2.ru

В версии пакета Maple 6 матрица не выпечатывается, а повторяется команда ввода.

Методы решения линейных систем уравнений делятся на прямые и итерационные. Прямые методы дают решение за конечное число действий, просты и наиболее универсальны. Для систем небольшого порядка n £ 200 применяются практически только прямые методы. Итерационные методы выгодны для систем специального вида со слабо заполненной (разрежённой) матрицей очень большого порядка n » 103 ¸ 105. Сравнительно недавно для решения плохо обусловленных систем стали применять методы регуляризации.

Метод исключения Гаусса

Пусть имеется система уравнений

Формулы Кристофеля – Шварца - student2.ru (3.1)

или в индексных обозначениях

Формулы Кристофеля – Шварца - student2.ru (3.1,а)

Метод Гаусса для произвольной системы основан на приведении матрицы системы к треугольному виду. Вычтем из второго уравнения системы (3.1) первое, умноженное на такое число, чтобы уничтожился коэффициент при х1. Затем таким же образом вычтем первое уравнение из третьего, четвёртого и т.д. Тогда исключатся все коэффициенты первого столбца, лежащие ниже главной диагонали.

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

Запишем общие формулы процесса. Пусть проведено исключение коэффициентов из (k – 1)-го столбца. Тогда остались такие уравнения с ненулевыми элементами ниже главной диагонали:

Формулы Кристофеля – Шварца - student2.ru (3.2)

Умножим k-тую строку на число

Формулы Кристофеля – Шварца - student2.ru (3.3)

и вычтем из m-ной строки. Первый ненулевой элемент этой строки обратится в нуль, а остальные изменятся по формулам

Формулы Кристофеля – Шварца - student2.ru (3.4)

Производя вычисления по этим формулам при всех указанных индексах, исключим элементы k-того столбца. Будем называть такое исключение циклом процесса. Выполнение всех циклов называется прямым ходом исключения.

Запишем треугольную систему, получающуюся после выполнения прямого хода. При приведении системы к треугольному виду освободятся клетки в нижней половине матрицы системы (3.1). На освободившиеся места матрицы поставим множители cmk; их следует запомнить, так как они потребуются при обращении матрицы или уточнении решения. Получим

Формулы Кристофеля – Шварца - student2.ru (3.5)

Треугольная система (3.5) легко решается обратным ходом исключения. Из последнего уравнения системы сразу находим: Формулы Кристофеля – Шварца - student2.ru Затем последовательно снизу вверх находим все остальные неизвестные по формуле

Формулы Кристофеля – Шварца - student2.ru (3.6)

Замечания. Исключение по формулам (3.2) – (3.4) нельзя проводить, если в ходе расчёта оказался нулевой элемент Формулы Кристофеля – Шварца - student2.ru Но в первом столбце промежуточной системы (3.2) все элементы не могут быть нулями: это означало бы, что detA = 0. Перестановкой строк можно переместить ненулевой элемент на главную диагональ и продолжить расчёт.

Если элемент на главной диагонали Формулы Кристофеля – Шварца - student2.ru мал, то эта строка умножается на большое число cmk, что приводит к большим ошибкам округления при вычислениях. Чтобы избежать этого, каждый цикл исключения всегда начинают с перестановки строк. Среди элементов столбца Формулы Кристофеля – Шварца - student2.ru находят главный, т.е. наибольший по модулю в k-том столбце, и перестановкой строк переводят его на главную диагональ, после чего производят исключения. Такая процедура называется методом Гаусса с выбором главного элемента.

Для контроля процесса полезно найти невязки:

Наши рекомендации