Олемской И.В. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫЧИСЛИТЕЛЬНОМУ ПРАКТИКУМУ. (ВЫЧИСЛЕНИЕ ОПРЕДЕЛЕННОГО ИНТЕГРАЛА) 1 Постановка задачи. Рассматривается задача о вычислении однократного интеграла Z b J(F ) = F (x) dx. (1) a с использованием конечного числа значений интегрируемой функции. Интервал интегрирования [a, b] – любой конечный (или бесконечный) отрезок числовой оси. Подынтегральная функция F (x) - любая интегрируемая в смысле Римана функция. Такой интеграл является пределом суммы вида: Z b n X J(F ) = F (x) dx = lim F (ξi ) 4 xi = lim Sn , (2) rn →0 a i=1 rn →0 Pn где rn = maxi=1,...,n 4xi , 4xi = xi − xi−1 , Sn = i=1 F (ξi ) 4 xi ; a = x0 < x1 < x2 < . . . < xn = b. Взяв достаточно малые частичные отрезки [xi−1 , xi ] и вычислив достаточно много значений F (ξi ), ξi ∈ [xi−1 , xi ], можно найти значение интеграла с любой заданной точностью. Каждая интегральная сумма определяется способом деления [a, b] на части 4xi и выбором в каждой из них промежуточных точек ξi . При построении правила вычисления (1), одинакового для всех функций F (x), можно взять все a 4xi одинаковыми, положив 4xi = b − n = h и за ξi ∈ 4xi выбирать середины частичных отрезков 1 a + (i − 2 )h . Полученное правило интегрирования: Z b n n X X 1 J(F ) = F (x) dx ≈ (3) F (ξi ) 4 xi = h F (a + (i − )h) 2 a i=1 i=1 позволяет вычислять интеграл (1) сколь угодно точно при всякой функции F (x), но оно является медленно сходящимся даже для случая аналитической функции F (x) и требует для достижения хорошей точности вычисления интеграла большого числа значений F (x). Правило (3) становится неприменимым, если интеграл является несобственным. Правила численного интегрирования, рассчитанные на более узкие классы функций, могут иметь лучшую точность, если заранее принять во внимание свойства функций этих классов и использовать их при конструировании. Каждое правило основано на замене интегрируемой функции на какую-либо элементарную функцию: алгебраический многочлен, рациональную функцию, тригонометрический многочлен и др.. Такая замена дает хорошую точность, если заменяемая функция F (x) обладет высоким порядком гладкости. При наличии у F (x) каких-нибудь особенностей, мы заинтересованы в выделении их. Выделение делается обычно при помощи разложения F (x) на два сомножителя F (x) = p(x) · f (x), причем p(x) имеет особенности того же типа, что и F (x), и называется весовой функцией. Важно, чтобы функция p(x) имела аналитически вычисляемые k -ые моменты весовой функции p(x) : Z b µk = p(x)xk dx, k = 0, 1, . . . . (4) a Второй сомножитель – f (x) - гладкая функция. Такое разложение приводит (1) к виду: Z b J(F ) = p(x)f (x) dx. (5) a Считая вес p(x) фиксированным, а f (x) – любой гладкой функцией, строим правила интегрирования следующего вида: Z b n X Ak f (xk ) = Sn , xk ∈ [a, b], (6) J(F ) = p(x)f (x) dx ≈ a k=1 расчитанные на функции, имеющие одинаковые, заранее известные особенности. Здесь f (x) ∈ Φ(a, b) – некоторый класс функций f (x) , определенных на [a, b] ; p(x) – весовая функция: некоторая фиксированная неотрицательная на [a, b] функция, для которой Z b p(x) dx > 0, (7) a 2 и для ∀f (x) ∈ R существует Z b p(x)|f (x)| dx. (8) a Определение 1 Формулу (6) называют формулой механических квадратур или просто квадраPn турной формулой, а Sn = k=1 Ak f (xk ) - квадратурной суммой ; Ak – квадратурными коэффициентами формулы (6); xk – узлами квадратурной формулы (6) . Узлы квадратурной формулы (6) (кратности единица) упорядочены по возрастанию a = x0 < x1 < . . . < xn = b . Определение 2 Величина Z Rn (f ) = b p(x)f (x) dx − a n X Ak f (xk ) = J(f ) − Sn (f ) (9) k=1 называется методической погрешностью (остаточным членом) квадратурной формулы (6). Определение 3 Квадратурная формула (6) имеет алгебраическую степень точности m , если она верна для любых многочленов степени m и не верна для многочленов степени m + 1 . Это равносильно тому, что равенство Z b p(x)xi dx = a n X Ak xik , (10) k=1 выполняется для i = 0, 1, . . . , m и не выполняется для i = m + 1. Или что то же самое, Rn (xi ) = 0, i = 0, 1, . . . , m; Rn (xm+1 ) 6= 0. n, xk , Ak , k = 1, . . . , n; – являются параметрами квадратурной формулы (6), и их следует выбирать так, чтобы квадратурная формула имела максимально возможную алгебраическую степень точности. Необходимо отметить, что в некоторых задачах не все параметры являются произвольными. Например, если F (x) задана таблично, то мы ограничены в выборе узлов xk . Иногда для упрощения счета можно потребовать равенства A1 = A2 = . . . = An = A = const , в этом случае в нашем распоряжении n + 1 параметр : A и xk , k = 1, . . . , n. Rn (f ) зависит от свойств функции f и от выбора квадратурной формулы, т. е. от узлов и коэффициентов. При исследовании погрешности основными являются две задачи: оценка погрешности для функций с известными (распространенными) свойствами и выяснение условий сходимости – условий, при которых Rn (f ) → 0 при n → ∞ . Таким образом, для построения квадратурной формулы при фиксированном, но произвольном n необходимо указать способ выбора узлов xk , k = 1, . . . , n, и коэффициентов Ak , k = 1, . . . , n, квадратурной формулы и указать способ оценивания методической погрешности Rn (f ) для данной функции f (·) или некоторого множества Φ(a, b) функции f (·). Замечание 1. При вычислении f (xk ) приходится почти всегда иметь дело с приближенными значениями функции f¯(xk ) , верными на некоторое число значащих цифр: |f (xk ) − f¯(xk )| < ε, k = 1, . . . , n. Квадратурная сумма будет вычислена с погрешностью |sn − s̄n | < ε n X |Ak |, (11) k=1 Pn Если сумма k=1 |Ak | велика, то это естественно вызывает большую погрешность в приближенном значении интеграла. Именно поэтому при построении квадратурных формул стремятся к тому , чтобы Pn |A | имела бы возможно меньшее значение. k k=1 3 Z b a Если p(x) ≥ 0, x ∈ [a, b] и квадратурная формула верна для f ≡ 1 ,что равносильно равенству n X Pn p(x) dx = Ak , то k=1 |Ak | будет иметь наименьшее значение , когда Ak > 0. Именно это обстоk=1 ятельство придает квадратурным формулам с положительными коэффициентами особое значение. Определение 4 Последовательность квадратурных формул — квадратурный процесс. Такая последовательность определяется двумя треугольными матрицами. Матрицей узлов: ¯ ¯ ¯ ¯ ¯ x(1) ¯ A(1) ¯ 1 ¯ ¯ 1 ¯ ¯ (2) ¯ (2) (2) (2) ¯ x1 ¯ ¯ A1 x2 A2 ¯ ¯ ¯ X = ¯ ··· ¯ и коэффициентов: A = ¯ · · · ··· ··· ··· ¯ (n) ¯ (n) (n) (n) ¯¯ (n) ¯ x ¯ x · · · x A A n 2 2 ¯ ¯ 1 ¯ 1 ¯ ··· ¯ ··· ··· ··· ··· ¯ ··· ··· ··· ··· Квадратурная формула соответствующая n -ой строке этих матриц, имеет вид: Z b n X (n) (n) p(x)f (x) dx = Ak f (xk ) + Rn (f ) = Sn (f ) + Rn (f ). a ¯ ¯ ¯ ¯ ¯ ¯ ¯ (n) ¯ An ¯¯ ··· ¯ (12) (13) k=1 Определение 5 Будем говорить, что квадратурный процесс, определенный матрицами X и A , сходится для функции f , если lim Sn (f ) = lim n→∞ 2 n→∞ n X Z (n) (n) Ak f (xk ) k=1 = b p(x)f (x) dx. (14) a Интерполяционные квадратурные формулы Определение 6 Квадратурная формула Z b p(x)f (x) dx ≈ a n X Ak f (xk ) (15) k=1 называется интерполяционной, если ее коэффициенты удовлетворяют равенству Z Ak = b p(x) a ω(x) dx, (x − xk )ω 0 (xk ) ω(x) = (x − x1 )(x − x2 ) · . . . · (x − xn ). (16) Методическая погрешность интерполяционного правила (15), (16), если f (x) имеет непрерывную производную порядка n на (a, b), имеет вид: Z 1 b Rn (f ) = p(x)ω(x)f (n) (ξ) dx, ξ ∈ (a, b). n! a Для функции f (x), имеющей непрерывные f (x) ∈ C (n) (a, b) и ограниченные по модулю |f (n) (x)| ≤ Mn производные порядка n, верна оценка Z Mn b |p(x)ω(x)| dx. (17) |Rn (f )| ≤ n! a Всякое квадратурное правило (15), алгебраическая степень точности которого не меньше n − 1, является интерполяционным. 4 Интерполяционные квадратурные формулы характеризуются тем, что при всяком расположении узлов xi алгебраическая степень точности их не меньше n − 1. Алгоритм построения интерполяционных квадратурных формул 1. Задать узлы квадратурной формулы (6) xi , i = 1, 2, . . . , n. 2. Вычислить моменты весовой функции p(x) : Z b µi = p(x)xi dx; i = 0, 1, . . . , n − 1; (18) a 3. pешить систему линейных алгебpаических систем: n X Ai xsi = µs ; s = 0, 1, . . . , n − 1. (19) i=1 Пpимеp построения интерполяционной квадратурной формулы. Постpоить двухточечную ( n = 2 ) интерполяционную квадpатуpную фоpмулу для вычисления интегpала: Z b n X f (x) √ dx ≈ Ai f (xi ), b > a. (20) x−a a i=1 1 . Делаx−a ем замену переменной t = x−a и сводим исходную задачу к построению интерполяционной квадратурной формулы для вычисления интеграла Z b−a n X f (t) √ dt ≈ Ai f (ti ). (21) t 0 i=1 Z b−a i Z b−a t 1 √ dt; i = 0, 1, 2. µ0 = √ dt = Далее вычисляем моменты весовой функции µi = t t 0 Z b−a Z b−a 20 1 3 5 t 2 t 2 √ dt = (b − a) 2 ; µ2 = √ dt = (b − a) 2 . = 2(b − a) 2 ; µ1 = 3 5 t t 0 0 При заданных узлах ( t1 , t2 ∈ [0, b − a] ) двухточечная интерполяционная квадратурная формула имеет алгебраическую степень точности не меньше единицы. А это значит,что должны выполняться равенства Z b−a 1 √ dt − (A1 + A2 ) = 0; → A1 + A2 = µ0 ; R2 (1) = t 0 Z b−a t √ dt − (A1 t1 + A2 t2 ) = 0; → A1 t1 + A2 t2 = µ1 . (22) R2 (t) = t 0 В качестве весовой функции при условии достаточно гладкой функции f (x) возьмем p(x) = √ Разрешая линейную систему (22) относительно A1 , A2 , получим значение коэффициентов интерполяционной квадратурной формулы: µ0 t2 − µ1 µ1 − µ0 t1 A1 = ; A2 = . (23) t2 − t1 t2 − t1 Проверим, является ли единица алгебраической степенью точности для построенной квадратурной формулы Z b−a µ1 − µ0 t1 f (t) µ t − µ1 √ dt = 0 2 f (t1 ) + f (t2 ) + R2 (f ). (24) t − t t2 − t1 t 2 1 0 Для этого вычислим Z b−a t2 µ t − µ1 2 µ1 − µ0 t1 2 √ dt − 0 2 t − t = t2 − t1 1 t2 − t1 2 t 0 = µ2 − µ1 (t1 + t2 ) + µ0 t1 t2 . R2 (t2 ) = Если R2 (t2 ) 6= 0, для выбранных t1 и t2 , то это и доказывает тот факт, что алгебраическая степень точности квадратурной формулы (24) не больше единицы. Особое место в теории интерполяционных квадратурных формул занимают интерполяционные квадратурные формулы с равноотстоящими узлами - квадратурные формулы типа Ньютона-Котеса. 5 3 Квадратурные формулы типа Гаусса. Следующий тип квадратурных формул (6) характеризуется тем, что коэффициенты Ak и узлы xk выбираются таким образом, чтобы квадратурная формула (6) была точна для всех алгебраических многочленов степени 2n − 1 (точна для степеней x от нулевой до 2n − 1 ): Z b n X Ak xm m = 0, 1, . . . , 2n − 1. (25) p(x)xm dx = k , a k=1 Определение 7 Функции f (x), ϕ(x) - ортогональны на [a, b] с весом p(x), если Z b p(x)f (x)ϕ(x) dx = 0. (26) a Ниже приведем основное утверждение, позволяющее конструктивно решить задачу о построении квадратурных формул (6) наивысшей алгебраической степени точности(формул типа Гаусса). Теорема Для того, чтобы квадратурная формула (6) была точной для алгебраических многочленов степени 2n − 1, необходимо и достаточно выполнение условий: • формула (6) должна быть интерполяционной; • узлы xi формулы (6) должны быть такими, чтобы узловой многочлен ω() = (x − x1 )(x − x2 ) . . . (x − xn ) = xn + an−1 xn−1 + an−2 xn−2 + . . . + a0 был ортогонален с весом p(x) ко всякому многочлену Q(x) степени меньше n. При этом • корни многочлена ω(x) все лежат внутри [a, b] и различны между собой; • коэффициенты квадратурной формулы Ak > 0, k = 1, n, • квадратурная формула типа Гаусса не может быть верной для всех многочленов степени 2n; • если f (x) ∈ C (2n) (a, b) , то существует точка η ∈ (a, b) такая, что для методической погрешности квадратурной формулы наивысшей алгебраической степени точности верно равенство: Z b 1 Rn (f ) = p(x)ω 2 (x)f (2n) (η) dx. (2n)! a Для функции f (x) ∈ C (2n) (a, b) и имеющей ограниченные по модулю |f (2n) (x)| ≤ M2n производные порядка 2n, верна оценка Z M2n b |Rn (f )| ≤ |p(x)ω 2 (x)| dx. (27) (2n)! a Алгоpитм постpоения квадpатуpных фоpмул типа Гаусса. 1. Вычислить моменты весовой функции p(x) : Z b µi = p(x)xi dx; i = 0, 1, . . . , 2n − 1; (28) a 2. pешить систему линейных алгебpаических уравнений: n−1 X ai µi+s = −µn+s ; s = 0, 1, . . . , n − 1; i=0 6 (29) 3. найти коpни xi , i = 1, 2, . . . , n узлового многочлена ω(x) = xn + an−1 xn−1 + an−2 xn−2 + · · · + a1 x + a0 = 0, (30) являющиеся узлами квадpатуpной фоpмулы (6); 4. вычислить коэффициенты Ai , i = 1, 2, . . . , n, квадpатуpной фоpмулы (6), найдя pешение системы алгебpаических уpавнений: n−1 X Ai xsi = µs ; s = 0, 1, . . . , n − 1. (31) i=0 Пpимеp реализации алгоритма построения квадратурных формул типа Гаусса. Постpоить двухточечную (n=2) квадpатуpную фоpмулу метода Гаусса вычисления интегpала вида: Z 0 d 1 X f (x) √ dx ≈ Ai f (xi ). x i=0 1 В качестве весовой функции возьмем p(x) = √ и вычислим ее моменты µi = x 1 2 3 2 5 2 7 2 2 2 2 µ0 = 2d ; µ1 = d ; µ2 = d ; µ3 = d . 3 5 7 Затем формируем систему линейных алгебраических уравнений (32) Z 0 d xi √ dx; x i = 0, 1, 2, 3. a0 µ0 + a1 µ1 = −µ2 , a0 µ1 + a1 µ2 = −µ3 , для определения коэффициентов a1 , a0 узлового многочлена ω(x) = x2 + a1 x + a0 = (x − x0 )(x − x1 ). µ0 µ3 − µ1 µ2 µ22 − µ1 µ3 Находим ее решение: a1 = , a = . 0 µ21 − µ0 µ2 µ21 − µ0 µ2 Далее, разрешая уравнение ω(x) = 0, находим корни x0 , x1 узлового многочлена, являющиеся узлами квадратурной формулы. Коэффициенты же квадратурной формулы являются решением системы алгебраических уравнений A0 + A1 = µ0 , A0 x0 + A1 x1 = µ1 . 4 Составные квадратурные формулы Основная идея метода заключается в том, что для повышения точности интегрирования отрезок [a, b] делят на несколько частей, применяют избранную квадратурную формулу к каждой отдельной части и результаты складывают. Для большинства квадратурных формул методическая погрешность Rn (f ) зависит от величины отрезка интегрирования и может быть представлена в виде: Rn (f ) = (b − a)s C(a, b), (33) где C(a, b) есть медленно меняющаяся функция от a, b и s. Эта зависимость показывает, что если уменьшить отрезок интегрирования в k раз, то Rn (f ) уменьшится в k s раз. Для вычисления интеграла по отрезку [a, b] разделим его на k равных частей и вычислим при помощи выбранной квадратурной формулы интегралы по всем частичным отрезкам. На каждом частичном отрезке методическая погрешность будет в k s раз меньше, чем при применении квадратурной формулы непосредственно ко всему интервалу [a, b]. При сложении всех таких интегралов получится результат, погрешность которого будет в k s−1 раз меньше, чем погрешность (33), когда квадратурная формула применяется для вычисления интеграла по всему отрезку [a, b]. Разобъем исходный интервал интегрирования на частичные отрезки: [a, b] : a = z0 < z1 < z2 < . . . < zk = b. 7 В самом общем случае zi+1 − zi = Hi > 0 и Hi предполагаются различными. Теперь применим на каждом из частичных отрезков [zi , zi+1 ] квадратурное правило ( в общем случае свое ) для вычисления интеграла: Z zi+1 ni X (34) J (i) (f ) = p(x)f (x) dx = Aij f (xij ) + Rni (f ) = Sni i (f ) + Rni (f ), i = 0, k − 1. zi j=1 Просуммируем по i левые и правые части (34) : Z b J(f ) = p(x)f (x) dx = a ≈ ni k−1 XX k−1 X J (i) = i=0 Aij f (xij ) = i=0 j=1 k−1 X Z zi+1 i=0 k−1 X p(x)f (x) dx ≈ zi Sni i (f ) = SN (f ), N= i=0 RN = J(f ) − SN (f ) = k−1 X Rni (f ), k−1 X ni ; (35) i=0 Rni (f ) = J i (f ) − Sni i (f ). (36) i=0 В качестве квадратурных формул (34) могут быть использованы квадратурные формулы всех рассмотренных типов (интерполяционные, типа Ньютона-Котеса, типа Гаусса и др.). В смешанном составе в составной квадратурной формуле используется несколько типов, в однородном - только квадратурные формулы одного типа. То же самое можно сказать и о числе узлов квадратурной формулы, используемом на каждом из частичных отрезков. Оно может зависеть от номера отрезка. Пример построения составной квадратурной формулы «вариант Ньютона-Котеса» . Разобъем интервал интегрирования [a, b] на k = 2m частичных отрезков, zi = a + iH, i = 0, k, b−a H= и будем применять квадратурное правило на сдвоенном частичном отрезке [a + (2j − 2)H, a + k (2j)H], j = 1, m. В качестве квадратурного правила, реализуемого на каждом из сдвоенных частичных отрезков, будем использовать малую интерполяционную трехточечную квадратурную формулу с равноотстоящими узлами: Z z2j f (x) (j) J (f ) = dx ≈ Aj1 f (z2j−2 ) + Aj2 f (z2j−1 ) + Aj3 f (z2j ), j = 1, m. (37) α z2j−2 (x − a) Причем на каждом из сдвоенных частичных отрезках пересчитываем моменты весовой функции Z z2j xs j µs = dx, α < 1, s = 0, 2. α z2j−2 (x − a) Z z2j Z z2j−2 z2j Z z2j−2 z2j µj0 = µj1 = µj2 = z2j−2 £ ¤ 1 1 dx = (z2j − a)1−α − (z2j−2 − a)1−α , α (x − a) (1 − α) £ ¤ x 1 dx = (z2j − a)2−α − (z2j−2 − a)2−α + aµj0 , α (x − a) (2 − α) £ ¤ x2 1 dx = (z2j − a)3−α − (z2j−2 − a)3−α + 2aµj1 − a2 µj0 (x − a)α (3 − α) и определяем коэффициенты квадратурной формулы Aj1 , Aj2 , Aj3 : Aj1 = µj2 − µj1 (z2j−1 + z2j ) + µj0 z2j−1 z2j , (z2j−1 − z2j−2 )(z2j − z2j−2 ) Aj2 = −µj2 + µj1 (z2j−2 + z2j ) − µj0 z2j−2 z2j , (z2j−1 − z2j−2 )(z2j − z2j−1 ) Aj3 = µj2 − µj1 (z2j−2 + z2j−1 ) + µj0 z2j−21 z2j−1 . (z2j − z2j−1 )(z2j − z2j−2 ) 8 Просуммировав по всем сдвоенным частичным отрезкам [a, a + 2H], составную квадратурную формулу (вариант Ньютона-Котеса) Z b a [a + 2H, a + 4H], . . . , выпишем f (x) dx ≈ A11 f (z0 ) + A12 f (z1 ) + A13 f (z2 ) + A21 f (z2 ) + A22 f (z3 ) + A23 f (z4 ) + . . . (x − a)α m m . . . + Am−1 f (z2m−4 ) + Am−1 f (z2m−3 ) + Am−1 f (z2m−2 ) + Am 1 f (z2m−2 ) + A2 f (z2m−1 ) + A3 f (z2m ) = 1 2 3 = A11 f (z0 ) + Am 3 f (zk ) + m X Aj2 f (z2j−1 ) + m−1 X j=1 5 (Aj3 + Aj+1 1 )f (z2j ). (38) j=1 Практические способы оценки погрешности составных квадратурных формул Для представления погрешности составной квадратурной формулы (36) (в частности (38)) для широкого класса функций f (·) можно написать: Rk (f ) = Cm H m + o(H m ). (39) где m - натуральное число, Cm = Cm (f ) - некоторая константа, зависящая лишь от f (·) и типа фор4 ) мулы, но не зависящая от H, o(H H 4 → 0, H → 0. Формула (39) дает асимптотическое представление (разложение) погрешности (36) по параметру H - шагу равномерного разбиения интервала интегрирования. Она справедлива, в частности, когда малые квадратурные формулы (34) имеют алгебраическую степень точности m − 1, а функция f (·) - непрерывную (интегрируемую) на [a, b] производную f m (·). Практическая оценка константы Cm проводится следующим образом. Фиксируем два значения шага разбиения – H1 = H и H2 = H/L, L > 1, и проводим расчеты на двух равномерных сетках с шагом H1 и H2 соответственно по исследуемой квадратурной формуле. Предполагаем, что для ее методической погрешности верно аcимптотическое разложение (39), т.е. (H1 ) Rk (H1 ) (f ) = J(f ) − Sk = Cm H1m + O(H1m ) = Cm H m + o(H m ) (40) и µ (H ) Rk 2 (f ) = J(f ) − (H ) Sk 2 = Cm H2m + o(H2m ) = Cm H L ¶m µ +o Исключая из (40), (41) неизвестное значение интеграла J, найдем µ µ ¶m ¶ H (H ) (H ) + o(H m ) Sk 2 − Sk 1 = Cm H m − L H L ¶m . (41) (42) а отсюда (H ) Cm = (H ) Sk 2 − Sk 1 o(H m ) + . H m (1 − L−m ) Hm (43) Подставляя это выражение для Cm в равенства (40), (41) и отбрасывая бесконечно малые o(H m ), (H ) (H ) найдем приближенные представления погрешностей Rk 1 , Rk 2 составной квадратурной формулы на двух равномерных сетках : (H1 ) Rk (H2 ) Rk (H2 ) (H1 ) ≈ Sk (H2 ) ≈ Sk (f ) = J(f ) − Sk (f ) = J(f ) − Sk (H1 ) − Sk 1 − L−m (H2 ) (44) (H1 ) − Sk m L −1 . (45) Этот способ оценивания методической погрешности называется правилом Рунге. Так при L = 2, т.е. (H ) шаг дробления уменьшается в два раза, погрешность составной квадратурной формулы Rk 2 (f ) с шагом (H ) H2 меньше погрешности Rk 1 (f ) составной квадратурной формулы с шагом H1 почти в 2m раз. 9 Используя правило Рунге, можно решить вопрос о нахождении оптимального шага разбиения Ho интервала интегрирования, обеспечивающего (в первом приближении) вычисление интеграла с заданной точностью ε. ¯ ¯ ¯ (H2 ) (H ) ¯ Sk − Sk 1 ¯ ¯ (H ) ε = |Rk o (f )| ≈ |Cm Hom | = H m, (46) H m (1 − L−m ) o а отсюда и получаем порядок оптимального шага разбиения −m m1 ε(1 − L ) ¯ Ho ≈ H ¯¯ (H ) (H ) ¯ ¯S k 2 − S k 1 ¯ . (47) Можно повысить точность оценки погрешности, если рассматривать асимптотическое представление ее в виде Rk (f ) = J − SkH (f ) = Cm H m + Cm+1 H m+1 + . . . + Cm+r H m+r + o(H m+r ) = r X = Cm+i H m+i + o(H m+r ). (48) i=0 Полагая в (48) H = H1 , H2 , . . . , Hr+2 получим систему линейных алгебраических уравнений относительно J, Cm , . . . , Cm+r . Решив ее, получим оценку (48) более точную, чем (39). Этот подход к оценке методичеcкой погрешности называется методом Ричардсона. Метод расчета на нескольких сетках применяется для повышения порядка точности даже в том случае, когда неизвестен порядок главного члена погрешности. Процесс Эйткена. Проводим вычисления на трех сетках: H1 , H2 = H1 /l, H3 = H2 /l = H1 /l2 , 0 < l < 1. Тогда коэффициент при главном члене погрешности может быть вычислен (H1 ) Cm = Sk (H ) Sk 2 (H2 ) − Sk − (H ) Sk 3 ≈ H1m − H2m = lm , H2m − H3m (49) а отсюда m≈ ln Cm . ln l (50) Необходимо помнить, что все это справедливо лишь при достаточно малом H и при соответствующей гладкости f (·). Цель задания Убедиться в необходимости использования квадратурных формул для вычисления «неберущихся» определенных интегралов. (решить поставленную задачу с использованием (3)). Ознакомиться с двумя наиболее распространенными классами квадратурных формул (вариант «НьютонаКотеса», вариант «Гаусса» ) и с вычислением интегралов от разрывных функций. Научиться управлять численным процессом с целью обеспечения заданной точности. Содержание задания Убедитесь в необходимости использования квадратурных формул для вычисления «неберущихся» определенных интегралов (решить поставленную задачу с использованием (3)). Для заданного набора значений параметров вычислить интеграл с заданной точностью по построенным квадратурным формулам Z a b n−1 X f (x) dx ≈ Ai f (xi ). α β (x − a) (b − x) i=0 (51) a+b , x3 = b интерпо2 −α −β ляционную квадратурную формулу с весовой функцией p(x) = (x − a) (b − x) и конечными пределами a и b максимально возможной алгебраической степени точности. Оценить методическую погрешность (17). На базе построенной интерполяционной квадратурной формулы (малой) построить составную и, увеличивая число разбиенний на частичные отрезки k и оценивая ее остаточный член по Ричардсону, добиться заданной точности ( ² = 10−6 ). Вариант «Ньютона-Котеса». Построить (малую) трехточечную x1 = a, x2 = 10 Вариант «Гаусса». Построить (малую) трехточечную квадратурную формулу типа Гаусса с весовой функцией p(x) = (x − a)−α (b − x)−β и конечными пределами a и b. Оценить методическую погрешность (27). На базе построенной квадратурной формулы типа Гаусса (малой) построить составную и, увеличивая число разбиенний на частичные отрезки k и оценивая ее остаточный член по Ричардсону, добится заданной точности ( ² = 10−6 ). Варианты задания 1 ; β = 0; f (x) = 2 cos (2.5x)ex/3 + 4 sin (3.5x)e−3x + x; 3 1 2)a = 1.7; b = 3.2; α = 0; β = ; f (x) = 3 cos (0.5x)ex/4 + 5 sin (2.5x)e−x/3 + 2x; 4 1 3)a = 0.1; b = 2.3; α = ; β = 0; f (x) = 2.5 cos (2x)e(2x)/3 + 4 sin (3.5x)e−3x + 3x; 5 1 4)a = 1; b = 3; α = 0; β = ; f (x) = 3 cos (3.5x)e(4x)/3 + 2 sin (3.5x)e−(2x)/3 + 4x; 6 2 5)a = 2.5; b = 4.3; α = ; β = 0; f (x) = cos (1.5x)e(2x)/3 + 3 sin (5.5x)e−2x + 2; 7 5 6)a = 1.3; b = 2.2; α = 0; β = ; f (x) = 4 cos (0.5x)e−(5x)/4 + 2 sin (4.5x)ex/8 + 2; 6 2 7)a = 2.1; b = 3.3; α = ; β = 0; f (x) = 4.5 cos (7x)e−(2x)/3 + 1.4 sin (1.5x)e−x/3 + 3; 5 3 8)a = 1.8; b = 2.3; α = 0; β = ; f (x) = 3.7 cos (1.5x)e−(4x)/3 + 2.4 sin (4.5x)e(2x)/3 + 4; 5 2 9)a = 2.5; b = 3.3; α = ; β = 0; f (x) = 3 cos (1.5x)ex/4 + 4 sin (3.5x)e−3x + 4x; 3 1 10)a = 0.7; b = 3.2; α = 0; β = ; f (x) = 1.3 cos (3.5x)e(2x)/3 + 6 sin (4.5x)e−x/8 + 5x; 4 2 11)a = 1.1; b = 2.5; α = ; β = 0; f (x) = 0.5 cos (2x)e(2x)/5 + 2.4 sin (1.5x)e−6x + 6x; 5 4 12)a = 1.8; b = 2.9; α = 0; β = ; f (x) = 4 cos (2.5x)e(4x)/7 + 2.5 sin (5.5x)e−(3x)/5 + 4.3x; 7 1 13)a = 1.5; b = 2.3; α = ; β = 0; f (x) = 2 cos (3.5x)e(5x)/3 + 3 sin (1.5x)e−4x + 3; 5 2 14)a = 2.3; b = 2.9; α = 0; β = ; f (x) = 3 cos (2.5x)e(7x)/4 + 5 sin (0.5x)e(3x)/8 + 4; 5 4 15)a = 1.1; b = 2.3; α = ; β = 0; f (x) = 3.5 cos (0.7x)e−(5x)/3 + 2.4 sin (5.5x)e−(3x)/4 + 5; 5 3 16)a = 2.8; b = 4.3; α = 0; β = ; f (x) = 2.7 cos (3.5x)e−(7x)/3 + 4.4 sin (2.5x)e(5x)/3 + 2; 7 2 17)a = 3.5; b = 3.7; α = ; β = 0; f (x) = 6 cos (1.5x)e(5x)/3 + 2 sin (0.5x)e−1.3x + 5.4x; 3 3 18)a = 2.7; b = 3.2; α = 0; β = ; f (x) = 4 cos (2.5x)e(5x)/4 + 2.5 sin (1.5x)e−(2x)/7 + 5x; 4 2 19)a = 1.1; b = 2.3; α = ; β = 0; f (x) = 0.5 cos (3x)e(2x)/5 + 4 sin (3.5x)e−3x + 3x; 5 5 20)a = 1.5; b = 3; α = 0; β = ; f (x) = 1.5 cos (3.7x)e(4x)/7 + 3 sin (2.5x)e(3x)/4 + 3x; 6 2 21)a = 2.5; b = 4.3; α = ; β = 0; f (x) = 3 cos (2.5x)e(4x)/3 + 4 sin (5.5x)e−3.5x + 3; 7 3 22)a = 0.5; b = 2.2; α = 0; β = ; f (x) = 5 cos (0.3x)e−(7x)/4 + 7 sin (0.5x)e(2x)/3 + 4; 5 3 23)a = 0.2; b = 3.1; α = ; β = 0; f (x) = 2.5 cos (5.7x)e−(4x)/3 + 2.4 sin (2.5x)e−(3x)/3 + 7; 5 4 24)a = 0.8; b = 1.3; α = 0; β = ; f (x) = 5.7 cos (2.5x)e−(4x)/7 + 4.4 sin (4.3x)e(2x)/7 + 5. 7 1)a = 1.5; b = 3.3; α = 11