Самуйлов Александр Захарович ВЫЧИСЛИТЕЛЬНАЯ МАТЕМАТИКА 1 (Учебно–методический комплекс для студентов, объём курса 60 часов) Выбор варианта. В условие задачи включена величина N , где N – две последние цифры номера зачётной книжки. Это и есть индивидуальный вариант задачи. Оформление решения. При решении можно использовать любую вычислительную технику, в том числе и системы компьютерной математики (MATLAB, MathCAD и другие), однако целью курса является не ответ, а изучение алгоритма вычислений, поэтому необходимо представить последовательность операций и все промежуточные результаты. 1. Предмет и методы вычислительной математики. Вычислительная математика разрабатывает методы доведения до числового результата решений основных задач математического анализа, алгебры и геометрии. Численный метод решения задачи – это определённая последовательность операций над числами (вычислительный алгоритм). Языком численного метода являются числа и арифметические действия. Такая примитивность языка позволяет реализовать численные методы на компьютере, что делает эти методы мощным и универсальным инструментом исследования. Однако задачи, подлежащие решению, формулируются обычно на математическом языке (языке уравнений, функций, производных, интегралов и т. п.). Поэтому разработка численного метода необходимо предполагает замену исходной задачи другой, близкой к ней, и сформулированной в терминах чисел и арифметических операций. Несмотря на всё разнообразие способов такой замены, некоторые общие свойства присущи всем вычислительным алгоритмам. Эти свойства демонстрирует следующий простейший пример. Пример. Найти положительный корень уравнения x 2 2 0 , т.е. извлечь квадратный корень из 2 . Можно написать ответ x 2 , но символ не решает задачи, так как не даёт способа вычисления величины x . Поступим следующим образом. Возьмём какое – либо начальное приближение x0 (например, x0 1 ) и будем последовательно вычислять значения x1 , x 2 , x3 , . . . с помощью формулы 1 k 2 k 1 x ( x k ) , 2 x получим: x 1.5; x 1.416667; x 1.414216; x 1.414216; x 1.414216; . . . 1 2 3 4 5 1 Начиная с x3 , шесть цифр в дробной части не меняются, поэтому 2 1.414216 с точностью 106 . Сформулируем теперь принципы, общие для всех численных методов: 1) Исходная задача заменяется другой задачей – вычислительным алгоритмом; 2) Вычислительный алгоритм содержит параметр k , которого нет в исходной задаче; 3) Выбором параметра k можно добиться любой близости решения второй задачи к решению первой; 4) Неточная реализация алгоритма, вызванная округлениями, не меняет существенно свойств алгоритма. Задача 1. Выбрать начальное приближение x0 и вычислить N 2 по алгоритму 1 k 2 k 1 x ( x k ) . 2 x Если из числа N 2 корень извлекается точно, значение N 2 увеличить на 1. 2. Погрешности результатов численного решения задач. Вычисления всегда выполняются с округлёнными числами и по формулам, приближённо заменяющим исходную задачу, поэтому и ответ будет приближённым числом. Задача заключается в том, чтобы следовать правилам, обеспечивающим минимальную погрешность результата. Принцип минимальности разности между числом d и его округлённым значением d̂ приводит к следующему правилу округления: если старший отбрасываемый разряд меньше 5, то предшествующая ему цифра в числе не меняется; если старший отбрасываемый разряд больше 5, то предшествующая ему цифра в числе увеличивается на 1; если старший отбрасываемый разряд равен 5, то предшествующая ему чётная цифра в числе не меняется, а нечётная увеличивается на 1. Значащими цифрами числа называются все цифры в его записи, начиная с первой ненулевой слева. Значащие цифры подразделяют на верные и сомнительные, исходя из понятия абсолютной и относительной погрешности числа. Погрешностью приближённого числа d̂ называется разность d̂ d между ним и точным значением d . Так как точное значение неизвестно, то и погрешность обычно неизвестна и можно найти только оценку погрешности. Обозначим оценку погрешности приближённого числа d̂ символом d̂ , тогда d̂ определяется из неравенства 2 dˆ d dˆ . Число d̂ называется абсолютной погрешностью приближённого числа d̂ . Обычно выбирается возможно меньшее значение d̂ . Абсолютные погрешности записывают не более чем с двумя – тремя значащими цифрами и в приближённом числе d̂ не следует сохранять те разряды, которые округляются в его абсолютной погрешности. Округляются абсолютные погрешности по своим правилам: только в большую сторону. Количество верных значащих цифр числа отсчитывается от первой значащей цифры до первой значащей цифры его абсолютной погрешности; остальные цифры числа называют сомнительными. В окончательных результатах вычислений обычно оставляют верные цифры и одну сомнительную. Пример. Длина и ширина комнаты, измеренные с точностью до 0.01 м , равны a 5.52 м и b 3.14 м . Определить погрешность величины площади комнаты S ab 17.3328 м2 и записать площадь с верными и одной сомнительной цифрами. Решение. По условию a 0.01 м и b 0.01 м . Максимальная и минимальная возможные значения площади равны Smax (a a )(b b ) 17.4195 ; Smin (a a )(b b ) 17.2463 . Вычисляем S Sm i n 0 . 0 8 6,5 S Smax 0.0867 , следовательно, можно 2 взять S 0.0867 м . Таким образом, величина площади имеет три верных цифры и сохраняя одну сомнительную, получим S 17.33 м2 . Во многих приложениях принято характеризовать точность приближённых чисел их относительной погрешностью. Обозначим относительную погрешность приближённого числа d̂ символом d̂ , тогда по определению dˆ dˆ . Относительная погрешность обычно выражается dˆ в процентах и её принято записывать не более чем с двумя – тремя значащими цифрами. Относительная погрешность – это безразмерная и нормированная величина, поэтому её удобно использовать для сравнения точности различных приближённых величин. Пример. Найти относительную погрешность площади комнаты. Решение. dˆ dˆ S 0.0867 м 2 0.005 0.5% S 17.3328 м 2 dˆ Задача 2. 2.1. Округлить число 3.141592653589 a ) до трёх значащих цифр; b ) до четырёх значащих цифр; c ) до пяти значащих цифр; d ) до восьми значащих цифр; e ) до десяти значащих цифр. 2.2. Округлить число d 0.0015281 : a ) до одной значащей цифры; b ) до четырёх значащих цифр; c ) до трёх значащих цифр. 3 2.3. Определить количество верных значащих цифр числа x , если известна его абсолютная погрешность x : a ) x 0.3941, x 0.25 102 ; b ) x 0.1132, x 0.1103 ; c ) x 14.00231, x 0.1 103 ; d ) x 32.285, x 0.2 102 ; e ) x 0.00381, x 0.1104 . 2.4. Длина, ширина и высота аквариума измерены с точностью до 0.01 м и равны a 1.N м , b 0.73 м , c 0.57 м . Найти объём аквариума с верными и одной сомнительной цифрами и относительную погрешность величины объёма. 3. Решение алгебраических уравнений. Найти точное решение уравнение f x 0 не всегда просто, поэтому рассмотрим его приближённое решение методом Ньютона. Для начала вычислений требуется начальное приближённое значение корня x0 . Построим алгоритм уточнения корня. Пусть имеется приближение x k . Необходимо получить формулу вычисления следующего приближения k 1 разложим в ряд Тейлора в f x 0 x . Левую часть уравнения k x : hf x будем вместо f x h f x окрестности точки вычислении приближения k x k 1 k k h2 k f x . . . При 2! уравнения f x 0 использовать уравнение f x k hf x k 0 , в котором взяты только два первых члена разложения f x . Так как h x k 1 k x , то получим уравнение f x k x k 1 x k f x k 0 , из которого находим x k 1 x k . f x f x k k Этот алгоритм называется методом Ньютона решения алгебраических уравнений. Имеются и другие алгоритмы, однако метод Ньютона используется чаще всего. Один шаг вычислений называют итерацией. Итерации продолжают до тех пор, пока не буде получено x k 1 x k , где – заданная точность. Начальное приближение можно определить по графику левой части уравнения. Пример. Найти с точностью 103 корень 3 уравнения x 1 0.5e x 0 . Решение. Построим график левой части График показывает, что можно взять x0 0.25 . Приближения к корню вычисляем по формуле 4 x 1 0.5e x x x f x 3 x 1 0.5e x 1 0.5e x x 0.156 3 x 1 0.5e k 1 k f x k k 2 k k x : 0 x 3 0 1 k x 3 k k 0 0 x 2 0 x 1 0.5e 3 x 1 0.5e 1 x 2 x 1 1 x 1 0.5e 3 x 1 0.5e 2 x 3 x 2 2 3 3 2 1 x 1 x 0.162 , 2 x 2 2 x 0.162 Так как x x 3 2 0.000 103 , то корень x* 0.414 вычислен с заданной точностью 103 . 3 Проверка: 0.162 1 0.5e0.162 5.504 104 . Задача 3. Вычислить с точностью 103 меньший корень уравнения 5 x3 Nx 2 15 x 6 0 по алгоритму x k 1 x k . f x f x k k Проверить корень. Начальное приближение x0 можно определить либо по графику левой части уравнения, либо по свойству: если можно найти два значения a и b таких, что f a и f b имеют противоположные знаки, то на промежутке a, b имеется корень (возможно, не один). 4. Матрицы и системы линейных алгебраических уравнений. а). Определение матрицы. Матрицей размера m × n называется прямоугольная таблица чисел, имеющая m строк и n столбцов: a11 a12 a a22 A 21 am1 am 2 a1n a2 n amn Числа aij i 1, 2, m; j 1, 2, n называются элементами матрицы A . Первый индекс i указывает номер строки, второй индекс j – номер столбца, на пересечении которых расположен элемент aij . Если m n , то матрица называется прямоугольной; если m n , то матрица называется квадратной порядка n . 5 Матрица, полученная из матрицы A путём замены строк столбцами с сохранением их номеров, называется транспонированной по отношению к матрице A и обозначается A (или AT ). Для матрицы–строки транспонированной будет матрица–столбец и наоборот. 1 2 1 3 5 Пример 1. Транспонировать матрицу A 3 4 . Решение. A . 2 4 6 5 6 Прямоугольная матрица A размера 1× n называется матрицей–строкой и её элементы отмечаются одним индексом: A [a1 a2 . . . an ] . Прямоугольная матрица B размера m × 1 называется матрицей– столбцом: Матрицу–столбец обычно записывают как строку с b1 b использованием операции транспонирования в виде 2 B . . . bm B [b1 b2 ... bm ]T Матрицу–строку и матрицу–столбец называют также векторами. Квадратные матрицы n – го порядка вида называют соответственно 0 0 d1 0 1 0 единичной и 0 d 0 1 0 0 2 диагональной матрицами. и D E 0 0 1 0 0 d n б). Операции над матрицами. Операции суммирования, вычитания, умножения и деления матрицы на число, а также сравнение матриц выполняются поэлементно. Умножать и делить матрицы можно также поэлементно, но обычно используется специальная операция умножения, выполняемая по следующему правилу: элемент матрицы C AB cij равен сумме произведений элементов i –й строки матрицы A на соответствующие элементы j –го столбца матрицы B . Из этого правила следует, что умножение матрицы A на матрицу B возможно только при условии, что число столбцов матрицы A равно числу строк матрицы B . Из определения умножения матриц следует, что в общем случае AB BA . Более того, произведение AB может существовать, а BA – нет. Произведение матрицы–столбца на матрицу–строку всегда имеет смысл, а умножение матрицы–строки на матрицу–столбец можно выполнить только при условии, что они содержат одинаковое количество элементов. Так как две любые квадратные матрицы одного и того же порядка можно перемножить, то можно найти матрицу AA . Эта матрица называется квадратом матрицы A и обозначается A2 . Aналогично определяется матрица 6 An . Нулевой степенью матрицы A называется единичная матрица E : A0 E . 1 2 7 8 9 Пример 2. Даны матрицы A 3 4 и B . Найти AB . 10 11 12 5 6 Решение. 1 2 1 7 2 10 1 8 2 11 1 9 2 12 27 30 33 7 8 9 AB 3 4 3 7 4 10 3 8 4 11 3 9 4 12 61 68 75 . 10 11 12 5 6 5 7 6 10 5 8 6 11 5 9 6 12 95 106 117 5 6 1 2 Пример 3. Даны матрицы A и B 7 8 . Найти AB . 3 4 Решение. Так как сомножители одинаковой размерности, то можно найти произведение двумя способами: поэлементным умножением и матричным. 1 2 5 6 1 5 2 6 5 12 Поэлементное умножение: AB . 3 4 7 8 3 7 4 8 21 32 1 2 5 6 1 5 2 7 1 6 2 8 19 22 Матричное умножение: AB . 3 4 7 8 3 5 4 7 3 6 4 8 43 50 В системе компьютерной математики MATLAB реализовано как матричное, так и поэлементное умножение. в). Определитель квадратной матрицы. Одной из важнейших характеристик квадратной матрицы A является её определитель (или детерминант), который обозначается A или detA и составляется из тех же элементов (расположенных в том же порядке), что и матрица: A det A a11 a12 a1n a21 a22 a2 n an1 an 2 ann Определитель матрицы – это число, которое определяется с использованием миноров и алгебраических дополнений данного определителя. Минором M ij элемента aij определителя A называется определитель n 1 -го порядка, полученный из A вычёркиванием i –й строки и j –го столбца, на пересечении которых находится данный элемент aij . Алгебраическим дополнением элемента aij называется число Aij 1 i j M ij . 7 4 1,5 0, 2 Пример 4. Дана матрица A 3, 2 5, 6 1, 4 . Найти минор и 0, 7 2,3 1 алгебраическое дополнение элемента a23 . 1,5 Решение. det A 3, 2 0, 7 0, 2 1, 5 M 23 0, 7 A23 1 2, 3 23 M 23 1 0, 2 4 5, 6 2,3 1, 4 ; 1 1, 5 0.7 0, 2 ; 2, 3 1, 5 0, 2 0.7 2, 3 1, 5 0, 2 0.7 2, 3 Определитель матрицы A равен сумме произведений всех элементов какой-либо его строки на их алгебраические дополнения: det A ai1 Ai1 ai 2 Ai 2 . . . ain Ain , где i -номер любой строки. 2 2 1 Пример 5. Дана матрица A 3 5 4 . Найти её определитель. 7 2 1 Решение. det A ai1 Ai1 ai 2 Ai 2 . . . ain Ain . Возьмём i 1 , тогда 4 3 4 11 5 1 2 det A a11 A11 a12 A12 a13 A13 2 1 2 1 2 1 7 1 5 13 3 1 1 2 5 8 2 3 28 1 6 35 15 . 7 2 Если для вычисления определителя взять вторую строку, то получим ту же величину определителя: det A a21 A21 a22 A22 a23 A23 3 1 4 1 23 2 2 7 2 2 1 2 1 2 1 5 1 22 2 1 7 1 3 2 2 5 2 7 4 4 14 15 . г). Обратная матрица. 1 Матрицу, обратную квадратной матрице A , обозначают A и определяют из условия: AA1 A1 A E . Для того, чтобы матрица A имела обратную, необходимо и достаточно, чтобы det A 0 . Обратная матрица определяется равенством: 8 A1 A11 1 A12 det A A1n A21 A22 A2 n An1 An 2 . Ann Чтобы найти обратную матрицу A1 , надо построить вспомогательную матрицу, составленную из алгебраических дополнений элементов aij матрицы A , транспонировать её и умножить на число 1 . det A 2 2 1 Пример 6. Дана матрица A 3 5 4 . Найти обратную матрицу. 7 2 1 Решение. В примере 5 найдено det A 15 . Составляем вспомогательную матрицу V из алгебраических дополнений элементов матрицы A : A11 V A21 A31 A12 A22 A32 3 31 41 0 5 10 . 3 11 16 4 11 5 1 2 1 A13 1 2 1 2 A23 1 2 1 A33 131 2 1 5 4 1 1 2 1 1 3 7 4 1 1 2 1 23 7 1 1 1 3 3 2 2 3 2 2 3 1 4 1 3 5 2 2 2 7 2 2 2 3 5 3 7 T 3 31 41 3 0 3 T V 0 5 10 31 5 11 3 11 16 41 10 16 0 3 15 3 0 3 15 1 31 5 1 A1 V T 31 5 11 15 det A 15 15 41 10 16 41 10 15 15 0 0, 2000 0, 2000 2, 0667 0,3333 0, 7333 . 2, 7333 0, 6667 1, 0667 2 1 0, 2000 2 1 Проверка: AA 3 5 4 2, 0667 7 2 1 2, 7333 0 0, 3333 0, 6667 3 15 11 15 16 15 0, 2000 0, 7333 1, 0667 9 1 0 0 0 1 0 E ; 0 0 1 0, 2000 1 A A 2, 0667 2, 7333 0 0, 3333 0, 6667 0, 2000 2 0, 7333 3 1, 0667 7 2 5 2 1 1 0 0 4 0 1 0 E 0 0 1 1 д). Решение системы линейных уравнений матричным методом. Разработано много методов решения систем линейных уравнений. Рассмотрим один из них – матричный. Этот метод очень просто использовать в системах компьютерной математики (MATLAB, MathCAD и других). Системой из m линейных уравнений с n неизвестными называются соотношения вида a11 x1 a12 x2 a x a x 21 1 22 2 am1 x1 am 2 x2 a1n xn b1 , a2 n xn b2 , amn xn bm , В этой системе xi – неизвестные, подлежащие определению; aij – числа, называемые коэффициентами при неизвестных; bi – числа, называемые свободными членами (или правыми частями). Решением системы уравнений называется совокупность таких чисел x1 1 , x2 2 , , xn n , которая обращает все уравнения системы в тождества. Если система линейных уравнений имеет хотя бы одно решение, то она называется совместной, иначе – несовместной. Совместная система, имеющая единственное решение, называется определённой, а система, имеющая более одного решения, – неопределённой. Система линейных уравнений имеет очень компактную форму записи в матричном виде. Составим из коэффициентов системы матрицу: a11 a12 a a22 A 21 am1 am 2 a1n a2 n amn Эту матрицу называют матрицей системы. Определим еще две матрицы: x1 x X 2 , xn b1 b B 2, bm 10 тогда систему можно кратко записать в виде матричного уравнения AX B . Рассмотрим важнейший частный случай системы, когда число уравнений равно числу неизвестных ( m n ), тогда матрица A квадратная. Если detA 0 , то система имеет единственное решение. Действительно, в этом случае матрица A имеет обратную матрицу A1 , умножим обе части равенства AX B слева на A1 , получим A1 AX A1B . Но A1 A E , а EX X , следовательно, X A1B . Это и есть формула матричного решения системы линейных уравнений. Выполнив матричные операции в правой части, получим численное решение системы. Отметим, что B – это матрица–столбец, и если B записана как строка, то при решении по формуле X A1B матрицу B необходимо транспонировать, и формула матричного решения будет иметь вид X A1BT . Пример 7. Проверить определённость системы. Если она определённая, решить систему: 2 x1 3x2 5 x3 1, x1 x2 x3 6, 3x x 2 x 1 1 2 3 Выполнить проверку решения. 2 3 5 Решение. Составляем матрицу системы: A 1 1 и вычисляем 1 1 2 3 2 3 5 определитель: det A 1 1 1 31 . Так как detA 0 , то система 3 1 2 определённая, имеет единственное решение. Решение находим по формуле 1 X A B . Составляем матрицу-столбец B 6 , вычисляем 1 0, 0968 0, 0323 0, 2581 0, 0968 0, 0323 0, 2581 1 1 1 A 0,1613 0, 6129 0, 0968 , X A B 0,1613 0, 6129 0, 0968 6 0, 0645 0,3548 0,1613 0, 0645 0,3548 0,1613 1 1 0,1613 3,9355 . Таким образом, x1 0,1613; x2 3,9355; x3 2, 2258 . 2, 2258 11 2 0,1613 3 3,9355 5 2, 2258 1; 0,1613 3,9355 2, 2258 6; 3 0,1613 3,9355 2 2, 2258 1; Проверка: Задача 4. Проверить определённость системы: 2 x1 3 x2 N 6 x3 1, x1 x2 x3 6, 3 x1 x2 2 x3 1 Если система определённая, найти решение матричным методом по формуле X A1B . Выполнить проверку решения. 5. Решение систем нелинейных алгебраических уравнений. Системы нелинейных уравнений f1 x1 , x2 , . . . , xn 0, ............ f x , x , ..., x 0 n n 1 2 или, в векторной форме, f x 0 , решают практически только итерационными методами: пусть известно некоторое приближение x k к корню x̂ , тогда следующее приближение находят по формуле k 1 k k x x x , где x k – решение системы линейных уравнений n i 1 x f f j x xi k k i x , k j j 1, 2, . . . , n Данный метод решения системы нелинейных уравнений называется методом Ньютона. Итерации методом Ньютона продолжают до тех пор, пока не будет получено x k 1 x k , где – заданная точность решения. Нулевое приближение x0 в случае двух переменных можно найти графически: построить на плоскости кривые f1 x1, x2 0 и f2 x1 , x2 0 и найти точки их пересечения. Для трёх и более переменных удовлетворительных способов подбора нулевых приближений нет. Пример. Решить методом Ньютона с точностью 103 систему x3 y 2 1 0, 3 xy y 4 0 12 Решение. Графически находим начальное приближение x0 1.5 , y 0 1.5 . Метод Ньютона запишем в координатной форме: k 1 k k x x x , y k 1 y y . k k f1 x, y x3 y 2 1, f 2 x, y xy3 y 4 . Система для определения x k и y имеет вид k 3 x , x f x , y 2 y , f1 x , y k k f1 x k , y k f1 x , y k k k k x y f1 x , y , x y k k k k f 2 x , y f 2 x , y k k k k x y f 2 x , y x y k k k k 1 2 k k y f 2 x , y k k x f 2 x , y k y k y , 3 k 3x k y k 2 1 Окончательный (рабочий) вид системы: x x x 1.5 0.002 1.502 , 1 0 0 0 0 0 0 2 0 3 x x 2 y y f1 x , y , 3 2 y 0 x 0 (3x 0 y 0 1)y 0 f 2 x 0 , y 0 Теперь можно начинать итерации. Для первой итерации требуются значения x0 и 0 y . Их находим, решая систему: k k k k k k 3 x x 2 y y f1 x , y , 3 2 y k x k (3x k y k 1)y k f 2 x k , y k 2 6.75x 0 3y 0 0.125, 0 0 3.375x 9.125y 0.4375 x 0.002397 , 0 y 0.047 , 0 y y y 1.5 0.047 1.547 0 1 0 0 Строим систему и вычисляем x1 и y 1 для второй итерации: 1 1 1 1 2 1 3 x x 2 y y f1 x , y1 , 3 2 y 1 x1 (3x1 y 1 1)y 1 f 2 x 1 , y 1 x x x 1.5024 5.042 104 1.502 , 2 1 1 4.507x1 3.094y 1 1.983 103 , 1 1 3.702x 9.787y 0.015 x 5.042 104 , 1 y 1.375 103 , 1 y y y 1.546 . 2 1 1 13 Неравенство x k 1 x k выполняется: x 2 x1 0 , y 2 y 1 0.001 , поэтому итерации прекращаем. Ответ: x 1.502 , y 1.546 . Задача 5 . Решить методом Ньютона с точностью 103 систему N 3 ) x y 2 1 0, (1 10 xy 3 y 4 0 Выполнить проверку решения. 6. Интерполирование функций. Пусть задана функция y f x и нужно вычислить её значение при x x0 . Часто оказывается, что нахождение значения f x0 очень трудоёмко, а если f x задана таблицей и в таблице нет значения x0 , то и невозможно. Тогда функцию f x заменяют приближённой формулой x , которая просто вычисляется. Такую замену называют аппроксимацией функции f x , а функция x называется аппроксимирующей. Затем при всех значениях аргумента из некоторого промежутка полагают f x x . Подобрать функцию x , которая достаточно точно аппроксимирует функцию f x на промежутке a, b , не просто. Часто в качестве x используют многочлен Pn x , который строится методом интерполирования. Рассмотрим этот метод. Пусть функция y f x задана таблицей x0 Задача интерполирования ставится в следующей форме: y0 f x0 найти многочлен Pn x степени не выше n , значения x1 y1 f x1 которого в точках xi равны значениям данной функции ... . . . Pn xi yi . Многочлен Pn x называется интерполяционным, xn yn f xn а точки xi называются узлами интерполяции. Узлы интерполяции называются равноотстоящими, если xi 1 xi xi h const . Конечными разностями функции y f x называются разности yi yi 1 yi – конечные разности первого порядка, 2 yi yi 1 yi – конечные разности второго порядка, . . . . . . . . . . . . . . . . . . . . . . k yi k 1 yi 1 k 1 yi – конечные разности k – го порядка. Конечные разности записывают в таблицу. Таблица при n 5 имеет вид: 14 x x0 x1 x2 x3 x4 x5 y y 2 y 3 y 4 y 5 y y0 y0 2 y0 3 y0 y0 y0 y1 y2 y3 y4 y5 y1 y2 y3 y4 2 y1 2 y2 2 y3 3 y1 3 y2 4 y1 4 5 Конечные разности вычисляют и записывают, начиная с низа соответствующего столбца. Верхняя (подчёркнутая) строка таблицы конечных разностей используется при составлении формулы многочлена Pn x . Обозначим x x0 q , тогда h интерполяционная формула (формула Ньютона) записывается в форме: q q 1 ... q n 1 q q 1 ... n y0 . 2! n! Степень n следует выбирать так, чтобы разности в столбце n y были Pn x y0 y0 q 2 y0 практически постоянными. При замене функции f x многочленом Pn x возникает погрешность n 1 y0 q q 1 . . . q n . аппроксимации Rn x n 1! При n 1 получим частный случай – линейную интерполяцию P1 x y0 y0 q , а при n 2 – квадратичную интерполяцию P2 x y0 y0 q 2 y0 q q 1 . 2! Пример. Функция f x задана таблицей: Найти f 2.718 . f x x Решение. Функцию f x аппроксимируем многочленом 2.70 2.72 2.74 2.76 2.78 0.3704 0.3676 0.3650 0.3623 0.3597 q q 1 ... q n 1 q q 1 ... n y0 2! n! f 2.718 Pn 2.718 . Для построения Pn x Pn x y0 y0 q 2 y0 и положим вначале определим степень n , для этого составим таблицу конечных разностей x f x y 2.70 2.72 2.74 2.76 2.78 0.3704 0.3676 0.3650 0.3623 0.3597 0.0028 0.0026 0.0027 0.0026 2 y 3 y 4 y 0.0002 0.0001 0.0001 0.0003 0.0002 0.0005 В столбце y разности практически постоянны, поэтому можно взять n 1 , т. е. использовать линейную интерполяцию P1 x y0 y0 q . 15 В этой формуле y0 0.3704 , y0 0.0028 , q x x0 x 2.70 , поэтому h x 2.70 0.7484 0.14 x , тогда 0.02 f 2.718 P1 2.718 0.7484 0.14 2.718 0.36788 . 0.02 P1 x y0 y0 q 0.3704 0.0028 Оценим Rn x погрешность n 1 y0 q q 1 . . . q n ; n 1! результата R1 2.718 по формуле 11 y0 q q 1 7.38 106 . 1 1! Таким образом, погрешность может повлиять только на шестой десятичный знак. f x x 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 0.5652 0.6375 0.7147 0.7973 0.8861 0.9817 1.0848 1.1964 1.3172 1.4482 1.5906 Задача 6. Функция f x задана таблицей Найти значение f x для x 1.03N методом аппроксимации функции интерполяционным многочленом. Оценить погрешность результата. 7. Численное интегрирование. b Пусть требуется найти определённый интеграл F f x dx . Выразить a интеграл через элементарные функции удаётся редко, а компактный и удобный для доведения до числа ответ получается еще реже. Поэтому обычно заменяют f x такой аппроксимирующей функцией, чтобы интеграл от неё легко вычислялся. Возьмём простейшую аппроксимирующую функцию–многочлен нулевой степени, т. е. константу. Эту константу определим как значение подинтегральной функции в середине промежутка b b a a F f x dx b ab ab ab f dx f dx b a f . 2 2 a 2 b ab 2 f x dx b a f a интегрирования ab f , 2 тогда Формула называется формулой средних. Геометрический смысл формулы средних состоит в том, что площадь криволинейной трапеции заменяется площадью прямоугольника. 16 Длина отрезка b a не мала, поэтому погрешность формулы средних может быть большой. Для повышения точности на промежутке a, b выбирается множество точек a x0 x1 x2 ... xn b . Совокупность этих точек называется сеткой, каждую из точек xi называют узлом сетки. Сетка называется равномерной, если xi 1 xi h ba . Величина h называется шагом сетки. n С учётом этой терминологии формулировка звучит так: для повышения точности вводят достаточно густую сетку a x0 x1 x2 ... xn b . Интеграл разбивают на сумму интегралов по шагам сетки и на каждом шаге применяют формулу средних, получается обобщённая формула n x x F xi xi 1 f i i 1 . На равномерной сетке формула 2 i 1 n x x упрощается: F h f i i 1 , h xi xi 1 . Для оценки погрешности 2 i 1 средних приближённого значения интеграла можно сгустить сетку (например, увеличить количество узлов в два раза) и повторно вычислить интеграл, тогда оценкой погрешности будет величина Fn F2n . Пример. Вычислить 1 e x2 dx , определить точность полученного 0 результата. Решение. Интеграл не берущийся, поэтому получить его значение можно только численными методами. b a 1 0 0.2 . n 5 Разобьём промежуток 0, 1 на 5 шагов, тогда h Используем обобщённую формулу средних: 1 5 0 i 1 2 0.1 i 1 h x2 0.748 , e dx h e 10 2 0.05 i 10.1 0.747 . F5 0.748 . Находим F10 0.1 e i 1 1 Fn F2n 0.748 0.747 0.001. e x dx 0.747 с точностью 0.001 . 2 0 Задача 7. По формуле средних вычислить интеграл 1 F 0 1 dx с N x2 точностью 10 . 3 8. Численное решение дифференциальных уравнений. Классы дифференциальных уравнений, для которых разработаны методы получения точных решений, охватывают только малую часть возникающих на практике задач. Численные же методы применимы к очень широким классам уравнений и всем типам задач для них. 17 Рассмотрим простейший численный метод – метод ломаных (метод Эйлера). Пусть требуется решить задачу Коши: y f x, y , a x b, y a y0 . На промежутке a, b введём сетку a x0 x1 x2 ... xn b . В методе Эйлера приближённые значения yi искомой функции y x вычисляются последовательно по формуле где yi 1 yi hi f xi , yi , i 0,1, ... , n 1 , hi xi 1 xi . Геометрический смысл метода Эйлера состоит в том, что искомая интегральная кривая y x , проходящая через точку x0 , y0 , заменяется ломаной с вершинами в точках xi , yi . Для оценки погрешности приближённых значений y xi yi пользуются двойным пересчётом: расчёт на промежутке xi , xi 1 повторяют с шагом hi 2 и погрешность более точного решения yi 1 (при шаге hi 2 ) оценивают по формуле yi 1 y xi 1 yi 1 yi 1 . Пример. Найти на промежутке 1, 1.5 решение дифференциального уравнения y y 1 x y 2 с начальным условием y 1 1 , выбрав шаг h 0.1 Решение. f ( x, y) y 1 x y 2 , x0 1 . y0 1 . Вычисляем: y1 y0 h( y0 1 x0 y02 ) 1 0.1(1 (1 1)(1)2 ) 0.9 ; x1 1.1 ; y2 y1 h( y1 1 x1 y12 ) 0.8199 ; x2 1.2 ; y3 y2 h( y2 1 x2 y22 ) 0.753998 ; x3 1.3 ; y4 y3 h( y3 1 x3 y32 ) 0.69864 ; x4 1.4 ; y5 y4 h( y4 1 x4 y42 ) 0.651361 ; x5 1.5 ; Задача 8. Применяя метод Эйлера, численно решить на промежутке x Ny с начальным условием yx y 0 1 . Решение провести с шагом h 0.2 и с шагом h 0.1 для оценки 0, 1 дифференциальное уравнение y погрешности. Литература. 1. Калиткин Н. Н. Численные методы / Н. Н. Калиткин – М.: Наука, 1978 2. Бахвалов Н. С., Жидков Н. П., Кобельков Г. М. Численные методы / Н. С. Бахвалов, Н. П. Жидков, Г. М. Кобельков – М: Наука, 1987 3. Копчёнова Н. В., Марон И. А. Вычислительная математика в примерах и задачах / Н. В. Копчёнова, И. А. Марон – М.: Наука, 1972 4. Крылов В. И., Бобков В. В., Монастырный П. И. Вычислительные методы / В. И. Крылов, В. В. Бобков, П. И. Монастырный– М.: Наука, 1976, т. 1 5. Крылов В. И., Бобков В. В., Монастырный П. И. Вычислительные методы / В. И. Крылов, В. В. Бобков, П. И. Монастырный– М.: Наука, 1977, т. 2 18