Лабы Антонова. Тема Решение задач вычислительными методами. Основные понятия
Скачать 1.35 Mb.
|
СОДЕРЖАНИЕ Введение Тема 1. Решение задач вычислительными методами. Основные понятия 1.1. Погрешность 1.2. Корректность 1.3. Вычислительные методы Тема 2. Решение нелинейных уравнений 2.1. Постановка задачи 2.2. Основные этапы отыскания решения 2.3. Метод деления отрезка пополам (метод дихотомии, метод бисекции) 2.4. Метод простых итераций 2.5. Метод Ньютона (метод касательных) 2.6. Метод секущих (метод хорд) 2.7. Метод ложного положения Тема 3. Решение систем линейных алгебраических уравнений 3.1. Постановка задачи 3.2. Метод исключения Гаусса. Схема единственного деления 3.3. Метод исключения Гаусса с выбором главного элемента по столбцу 3.4. Вычисление определителя методом исключения Гаусса 3.5. Вычисление обратной матрицы методом исключения Гаусса 3.6. Метод простой итерации Якоби 3.7. Метод Зейделя Тема 4. Приближение функций 4.1. Постановка задачи 4.2. Приближение функции многочленами Тейлора 4.3. Интерполяция функции многочленами Лагранжа 4.4. Аппроксимация функций. Метод наименьших квадратов Тема 5. Численное интегрирование функций одной переменной 5.1. Постановка задачи численного интегрирования 5.2. Метод средних прямоугольников 5.3. Метод трапеций 5.4. Метод Симпсона (метод парабол) 5.5. Правило Рунге практической оценки погрешности Тема 6. Численное решение дифференциальных уравнений 6.1. Постановка задачи Коши 6.2. Метод Эйлера 6.3. Модифицированные методы Эйлера 6.4. Метод Рунге – Кутты Контрольные задания по курсу “Вычислительные методы” ………..………. Указания к выполнению лабораторных работ ………………………………… Указания к выполнению курсовых работ Краткие сведения о математиках Список литературы ……………………………………………………………… Введение Исследование различных явлений или процессов математическими методами осуществля- ется с помощью математической модели. Математическая модель представляет собой формализо- ванное описание на языке математики исследуемого объекта. Таким формализованным описанием может быть система линейных, нелинейных или дифференциальных уравнений, система нера- венств, определенный интеграл, многочлен с неизвестными коэффициентами и т. д. Математиче- ская модель должна охватывать важнейшие характеристики исследуемого объекта и отражать свя- зи между ними. После того, как математическая модель составлена, переходят к постановке вычислитель- ной задачи. При этом устанавливают, какие характеристики математической модели являются ис- ходными (входными) данными, какие – параметрами модели, а какие – выходными данными. Про- водится анализ полученной задачи с точки зрения существования и единственности решения. На следующем этапе выбирается метод решения задачи. Во многих конкретных случаях найти решение задачи в явном виде не представляется возможным, так как оно не выражается через элементарные функции. Такие задачи можно решить лишь приближенно. Под вычислительными (численными) методами подразумеваются приближенные процедуры, позволяющие получать ре- шение в виде конкретных числовых значений. Вычислительные методы как правило реализуются на ЭВМ. Для решения одной и той же задачи могут быть использованы различные вычислительные методы, поэтому нужно уметь оценивать качество различных методов и эффективность их приме- нения для данной задачи. Затем для реализации выбранного вычислительного метода составляется алгоритм и про- грамма для ЭВМ. Современному инженеру важно уметь преобразовать задачу к виду, удобному для реализации на ЭВМ и построить алгоритм решения такой задачи. В настоящее время на рынке программного обеспечения широко представлены как пакеты, реализующие наиболее общие методы решения широкого круга задач (например Maple, Mathcad, MatLAB), так и пакеты, реализующие методы решения специальных задач (например, задач газо- вой динамики). Результаты расчета анализируются и интерпретируются. При необходимости корректиру- ются параметры метода, а иногда математическая модель, и начинается новый цикл решения зада- чи. Тема 1. Решение задач вычислительными методами. Основные понятия 1.1. Погрешность Существуют четыре источника погрешностей, возникающих в результате численного реше- ния задачи. 1. Математическая модель. Погрешность математической модели связана с ее приближен- ным описанием реального объекта. Например, если при моделировании экономической системы не учитывать инфляции, а считать цены постоянными, трудно рассчитывать на достоверность резуль- татов. Погрешность математической модели называется неустранимой. Будем в дальнейшем пред- полагать, что математическая модель фиксирована и ее погрешность учитывать не будем. 2. Исходные данные. Исходные данные как правило содержат погрешности, так как они ли- бо неточно измерены, либо являются результатом решения некоторых вспомогательных задач. Например, масса снаряда, производительность оборудования, предполагаемая цена товара и др. Во многих физических и технических задачах погрешность измерений составляет 1 – 10%. Погреш- ность исходных данных так же, как и погрешность математической модели, считается неустрани- мой и в дальнейшем учитываться не будет. 3. Метод вычислений. Применяемые для решения задачи методы как правило являются приближенными. Например, заменяют интеграл суммой, функцию – многочленом, производную – разностью и т. д. Погрешность метода необходимо определять для конкретного метода. Обычно ее можно оценить и проконтролировать. Следует выбирать погрешность метода так, чтобы она была не более, чем на порядок меньше неустранимой погрешности. Большая погрешность снижает точ- ность решения, а меньшая требует значительного увеличения объема вычислений. 4. Округление в вычислениях. Погрешность округления возникает из-за того, что вычисления производятся с конечным числом значащих цифр (для ЭВМ это 10 – 12 знаков). Округление произ- водят по следующему правилу: если в старшем из отбрасываемых разрядов стоит цифра меньше пяти, то содержимое сохраняемых разрядов не изменяется; в противном случае в младший сохра- няемый разряд добавляется единица с тем же знаком, что и у самого числа. При решении больших задач производятся миллиарды вычислений, но так как погрешности имеют разные знаки, то они частично взаимокомпенсируются. Различают абсолютную и относительную погрешности. Пусть а – точное, вообще говоря неизвестное числовое значение некоторой величины, а а * - известное приближенное значение этой величины, тогда величину (а * ) = | а – а * | называют абсолютной погрешностью числа а * , а величину (а * ) = а а | ) ( – его относительной погрешностью. При сложении и вычитании складываются абсолютные погрешности, а при делении и умножении – относительные погрешности. 1.2. Корректность Определим вначале понятие устойчивости решения. Решение задачи y * называется устойчивым по исходным данным x * , если оно зависит от ис- ходных данных непрерывным образом. Это означает, что малому изменению исходных данных со- ответствует малое изменение решения. Строго говоря, для любого > 0 существует = ( ) > 0 та- кое, что всякому исходному данному x * , удовлетворяющему условию |x - x * | < , соответствует приближенное решение y * , для которого |y – y * | < . Говорят, что задача поставлена корректно, если выполнены следующие три условия: 1. Решение существует при любых допустимых исходных данных. 2. Это решение единственно. 3. Это решение устойчиво по отношению к малым изменениям исходных данных. Если хотя бы одно из этих условий не выполнено, задача называется некорректной. Пример 1.1. Покажем, что задача вычисления определенного интеграла I = b a dx x f ) ( корректна. Пусть f * (x) – приближенно заданная функция и I * = b a dx x f ) ( * . Очевидно, приближенное решение I * существует и единственно. Определим абсолютную погрешность f * с помощью равенства (f * ) = b a, max |f(x) – f * (x)|. Так как (I) = |I – I * | = | b a dx x f x f )) ( * ) ( ( | (b – a)(f * ), то для любого > 0 неравенство (I) < будет выполнено, если будет выполнено условие (f * ) < , где = /(b – a). Таким образом, решение I * устойчиво. Все три условия корректности задачи выполнены. Пример 1.2. Покажем, что задача вычисления производной u(x) = f '(x) приближенно заданной функции некорректна. Пусть f * (x) – приближенно заданная на отрезке [a, b] непрерывно дифференцируемая функ- ция и u * (x) = (f*(x)) ' . Определим абсолютные погрешности следующим образом: (f * ) = b a, max |f(x) – f * (x)|, (u * ) = b a, max |u(x) – u * (x)|. Возьмем, например, f * (x) = f(x) + sin(x/ 2 ), где 0 < < 1. Тогда, u * (x) = u(x) + -1 cos(x/ 2 ), (u * ) = -1 , т. е. погрешность задания функции равна , а погрешность производной равна -1 . Та- ким образом, сколь угодно малой погрешности задания функции f может отвечать сколь угодно большая погрешность производной f '. 1.3. Вычислительные методы Под вычислительными методами будем понимать методы, которые используются в вычис- лительной математике для преобразования задач к виду, удобному для реализации на ЭВМ. По- дробнее с различными классами вычислительных методов можно познакомиться, например, в [1]. Мы же рассмотрим два класса методов, используемых в нашем курсе. 1. Прямые методы. Метод решения задачи называется прямым, если он позволяет полу- чить решение после выполнения конечного числа элементарных операций. Наименование элемен- тарной операции здесь условно. Это может быть, например, вычисление интеграла, решение систе- мы уравнений, вычисление значений функции и т. д. Важно то, что ее сложность существенно меньше, чем сложность основной задачи. Иногда прямые методы называют точными, имея в виду, что при отсутствии ошибок в исходных данных и при выполнении элементарных операций резуль- тат будет точным. Однако, при реализации метода на ЭВМ неизбежны ошибки округления и, как следствие, наличие вычислительной погрешности. 2. Итерационные методы. Суть итерационных методов состоит в построении последова- тельных приближений к решению задачи. Вначале выбирают одно или несколько начальных при- ближений, а затем последовательно, используя найденные ранее приближения и однотипную про- цедуру расчета, строят новые приближения. В результате такого итерационного процесса можно теоретически построить бесконечную последовательность приближений к решению. Если эта по- следовательность сходится (что бывает не всегда), то говорят, что итерационный метод сходится. Отдельный шаг итерационного процесса называется итерацией. Практически вычисления не могут продолжаться бесконечно долго. Поэтому необходимо выбрать критерий окончания итерационного процесса. Критерий окончания связан с требуемой точностью вычислений, а именно: вычисления заканчиваются, когда погрешность приближения не превышает заданной величины. Оценки погрешности приближения, полученные до вычислений, называют априорными оценками (от лат. a'priori – "до опыта"), а соответствующие оценки, полученные в ходе вычислений называют апостериорными оценками (от лат. a'posteriori – "после опыта"). Важной характеристикой итерационных методов является скорость сходимости метода. Говорят, что метод имеет p-ый порядок сходимости если |x n+1 - x * | = C|x n - x * | p , где x n и x n+1 – последовательные приближения, полученные в ходе итерационного процесса вычис- лений, x * – точное решение, C – константа, не зависящая от n. Говорят, что метод сходится со скоро- стью геометрической прогрессии со знаменателем q < 1, если для всех n справедлива оценка: |x n - x * | Cq n Итерационный процесс называется одношаговым, если для вычисления очередного при- ближения x n+1 используется только одно предыдущее приближение x n и k –шаговым, если для вы- числения x n+1 используются k предыдущих приближений x n-k+1 , x n-k+2 , …, x n Тема 2. Решение нелинейных уравнений 2.1. Постановка задачи Пусть дана некоторая функция f(x) и требуется найти все или некоторые значения x, для ко- торых f(x) = 0. (2.1) Значение x * , при котором f(x * ) = 0, называется корнем (или решением) уравнения (2.1). Относительно функции f(x) часто предполагается, что f(x) дважды непрерывно дифференци- руема в окрестности корня. Корень x * уравнения (2.1) называется простым, если первая производная функции f(x) в точке x * не равна нулю, т. е. f '(x * ) 0. Если же f '(x * ) = 0, то корень x * называется кратным корнем. Геометрически корень уравнения (2.1) есть точка пересечения графика функции y = f(x) с осью абсцисс. На рис. 2.1 изображен график функции y = f(x), имеющей четыре корня: два простых (x * 1 и x * 3 ) и два кратных (x * 2 и x * 4 ). Рис. 2.1. Большинство методов решения уравнения (2.1) ориентировано на отыскание простых кор- ней уравнения (2.1). 2.2. Основные этапы отыскания решения В процессе приближенного отыскания корней уравнения (2.1) обычно выделяют два этапа: локализация (или отделение) корня и уточнение корня. Локализация корня заключается в определении отрезка [a, b], содержащего один и только один корень. Не существует универсального алгоритма локализации корня. В некоторых случаях отрезок локализации может быть найден из физических соображений. Иногда удобно бывает лока- лизовать корень с помощью построения графика или таблицы значений функции y = f(x). На нали- чие корня на отрезке [a, b] указывает различие знаков функции на концах отрезка. Основанием для этого служит следующая теорема математического анализа. Теорема 2.1. Если функция f непрерывна на отрезке [a, b] и принимает на его концах значе- ния разных знаков, так, что f(a)f(b) < 0, то отрезок [a, b] содержит по крайней мере один корень уравнения f(x) = 0. Однако, корень четной кратности таким образом локализовать нельзя, так как в окрестности такого корня функция f(x) имеет постоянный знак. На этапе уточнения корня вычисляют приближенное значение корня с заданной точностью > 0. Приближенное значение корня уточняют с помощью различных итерационных методов. Суть этих методов состоит в последовательном вычислении значений x 0 , x 1 , …, x n , …, которые являют- ся приближениями к корню x * 2.3. Метод деления отрезка пополам (метод дихотомии, метод бисекции) Метод деления отрезка пополам является самым простым и надежным способом решения нелинейного уравнения. Пусть из предварительного анализа известно, что корень уравнения (2.1) находится на от- резке [a 0 , b 0 ], т. е. x * [a 0 , b 0 ], так, что f(x * ) = 0. Пусть функция f(x) непрерывна на отрезке [a 0 , b 0 ] и принимает на концах отрезка значения разных знаков, т.е. f(a 0 )f(b 0 ) < 0. (2.2) Разделим отрезок [a 0 , b 0 ] пополам. Получим точку x 0 = 2 0 0 b a . Вычислим значение функ- ции в этой точке: f(x 0 ). Если f(x 0 ) = 0, то x 0 – искомый корень, и задача решена. Если f(x 0 ) 0, то f(x 0 ) – число определенного знака: f(x 0 ) > 0, либо f(x 0 ) < 0. Тогда либо на концах отрезка [a 0 , x 0 ], ли- бо на концах отрезка [x 0 , b 0 ] значения функции f(x) имеют разные знаки. Обозначим такой отрезок [a 1 , b 1 ]. Очевидно, что x * [a 1 , b 1 ], и длина отрезка [a 1 , b 1 ] в два раза меньше, чем длина отрезка [a 0 , b 0 ]. Поступим аналогично с отрезком [a 1 , b 1 ]. В результате получим либо корень x * , либо новый от- резок [a 2 , b 2 ], и т.д. (рис. 2.2). Рис. 2.2 Середина n-го отрезка x n = 2 n n b a . Очевидно, что длина отрезка [a n , b n ] будет равна n a b 2 0 0 , а т. к. x * [a n , b n ], то | x n – x * | 2 n n a b 1 0 0 2 n a b . (2.3) Погрешность метода. Оценка (2.3) характеризует погрешность метода деления отрезка пополам и указывает на скорость сходимости: метод сходится со скоростью геометрической про- грессии, знаменатель которой q = 1/2. Заметим, что оценка (2.3) является априорной. Критерий окончания. Из соотношения (2.3) следует, что при заданной точности прибли- жения вычисления заканчиваются, когда будет выполнено неравенство b n – a n < 2 или неравен- ство n > log 2 ((b 0 – a 0 )/ ) – 1. Таким образом, количество итераций можно определить заранее. За приближенное значение корня берется величина x n Пример 2.1. Найдем приближенно x = 5 2 с точностью = 0.01. Эта задача эквивалентна решению уравнения x 5 – 2 = 0, или нахождению нуля функции f(x) = x 5 – 2. В качестве начального отрезка [a 0 , b 0 ] возьмем отрезок [1, 2]. На концах этого отрезка функция принимает значения с разными знака- ми: f(1) < 0, f(2) > 0. Найдем число n делений отрезка [1, 2], необходимых для достижения требуемой точности. Имеем: | x n – x * | 1 2 1 2 n = 1 2 1 n 10 -2 , n 6. Следовательно, не позднее 6-го деления найдем 5 2 с требуемой точностью, 5 2 1.1484. Результаты вычислений представлены в таблице 2.1. Таблица 2.1 n 0 1 2 3 4 5 6 a n 1.0000 1.0000 1.0000 1.1250 1.1250 1.1406 1.1406 b n 2.0000 1.5000 1.2500 1.2500 1.1875 1.1875 1.1562 x n 1.5000 1.2500 1.1250 1.1875 1.1406 1.1562 1.1484 Знак f(a n ) - - - - - - - Знак f(b n ) + + + + + + + f(x n ) 5.5938 0.7585 -0.2959 0.1812 -0.0691 0.0532 -0.0078 b n – a n 1.0000 0.5000 0. 2500 0.1250 0.0625 0.0312 0.0156 2.4. Метод простых итераций Пусть уравнение (2.1) можно заменить эквивалентным ему уравнением x = (x). (2.4) Например, уравнение x x sin – 0.5 = 0 можно заменить эквивалентным ему уравнением x = 0.5sinx. Выберем каким-либо образом начальное приближение x 0 . Вычислим значение функции (x) при x = x 0 и найдем уточненное значение x 1 = (x 0 ). Подставим теперь x 1 в уравнение (2.4) и полу- чим новое приближение x 2 = (x 1 ) и т. д. Продолжая этот процесс неограниченно, получим после- довательность приближений к корню: x n+1 = (x n ). (2.5) Формула (2.5) является расчетной формулой метода простых итераций. Если последовательность {x n } сходится при n , т. е. существует x * = n lim x n , (2.6) и функция (x) непрерывна, то, переходя к пределу в (2.5) и учитывая (2.6), получим: x * = n lim x n = n lim (x n -1 ) = ( n lim x n -1 ) = (x * ). Таким образом, x * = (x * ), следовательно, x * – корень уравнения (2.4). Сходимость метода. Сходимость метода простых итераций устанавливает следующая тео- рема. Теорема 2.2. Если в интервале, содержащем корень x * уравнения (2.4), а также его последо- вательные приближения x 0 , x 1 , …, x n , …, вычисляемые по формуле (2.5), выполнено условие: | '(x)| q < 1, (2.7) то x * = n lim x n . т. е. итерационный процесс сходится и справедлива следующая оценка погрешности: |x n – x * | q n |x 0 – x * | (2.8) Оценка (2.8) является априорной. Она показывает, что метод простой итерации сходится со скоростью геометрической прогрессии с знаменателем q. Чем меньше q, тем выше скорость сходи- мости. Как следует из теоремы 2.2, условие (2.7) является достаточным для сходимости метода простых итераций. Его выполнение гарантирует сходимость процесса (2.5), но невыполнение усло- вия (2.7), вообще говоря, не означает, что итерационный процесс будет расходиться. На рис. 2.3 – 2.6 показаны четыре случая взаимного расположения линий y = x и y = (x) и соответствующие итерационные процессы. Рис. 2.3 и 2.4 соответствуют случаю | '(x)| < 1, и итерационный процесс сходится. При этом, если '(x) > 0 (рис. 2.3), сходимость носит односторонний характер, а если '(x)< 0 (рис. 2.4), схо- димость носит двусторонний, колебательный характер. Рис. 2.5 и 2.6 соответствуют случаю | '(x)| > 1 – итерационный процесс расходится. При этом может быть односторонняя (рис. 2.5) и двусто- ронняя (рис 2.6) расходимость. Рис. 2.3 Рис. 2.4 Рис. 2.5 Рис. 2.6 Погрешность метода. Если известна величина q в условии (2.7), то применима следующая апостериорная оценка погрешности: |x n – x * | q q 1 |x n – x n – 1 |, n > 1. (2.9) Критерий окончания. Из оценки (2.9) вытекает следующий критерий окончания итераци- онного процесса. Вычисления следует продолжать до выполнения неравенства |x n – x n – 1 | < q q 1 . Если это условие выполнено, то можно считать, что x n является приближением к x * с точно- стью . Если q 0.5, то можно пользоваться более простым критерием окончания: |x n – x n – 1 | < . (2.10) Пример 2.2. Используем метод простой итерации для решения уравнения f(x) = sin x – x 2 = 0с точностью = 0.001. Преобразуем уравнение к виду (2.4): x = x x sin , т. е. (x)= x x sin . Нетрудно убедиться, что корень уравнения находится на отрезке [ /6, /3]. Например, вы- числив значения f(x)на концах отрезка, получим: f( /6)> 0, а f( /3)< 0, т. е. функция на концах от- резка имеет разные знаки, что в соответствии с теоремой 2.1 указывает на то, что внутри отрезка есть корень. Расположение корня наглядно иллюстрирует рис.2.7. Рис. 2.7 Подсчитаем, первую и вторую производные функции (x): '(x) = 2 sin cos x x x x , "(x) = 3 2 ) 2 ( sin x x x . Так как "(x) > 0 на отрезке [ /6, /3], то производная '(x) монотонно возрастает на этом отрезке и принимает максимальное значение на правом конце отрезка, т. е. в точке /3. Поэтому, справедлива оценка: | '(x)| | '( /3)| 0.312. Таким образом, условие (2.7) выполнено, q < 0.5, и можно воспользоваться критерием окончания вычислений в виде (2.10). В табл. 2.2 приведены приближения, полученные по расчет- ной формуле (2.5). В качестве начального приближения выбрано значение x 0 = 1. Таблица 2.2 n x n 0 1 2 3 4 5 1 0.8415 0.8861 0.8742 0.8774 0.8765 Критерий окончания выполняется при n = 5, |x 5 – x 4 | < 0.001. Сходимость двусторонняя, ка- чественный характер такой сходимости представлен на рис. 2.4. Приближенное значение корня с требуемой точностью x * 0.8765. 2.5. Метод Ньютона (метод касательных) Метод Ньютона является наиболее эффективным методом решения нелинейных уравнений. Пусть корень x * [a, b], так, что f(a)f(b) < 0. Предполагаем, что функция f(x) непрерывна на отрезке [a, b] и дважды непрерывно дифференцируема на интервале (a, b). Положим x 0 = b. Прове- дем касательную к графику функции y = f(x) в точке B 0 = (x 0 , f(x 0 )) (рис. 2.8). Рис. 2.8 Уравнение касательной будет иметь вид: y – f(x 0 ) = f '(x 0 )(x – x 0 ). (2.11) Первое пересечение получим, взяв абсциссу точки пересечения этой касательной с осью OX, т. е. положив в (2.11) y = 0, x = x 1 : x 1 = x 0 – ) ( ' ) ( 0 0 x f x f . (2.12) Аналогично поступим с точкой B 1 (x 1 , f(x 1 )), затем с точкой B 2 (x 2 , f(x 2 )), и т. д. в результате получим последовательность приближений x 1 , x 2 , …, x n , …,причем x n +1 = x n – ) ( ' ) ( n n x f x f . (2.13) Формула (2.13) является расчетной формулой метода Ньютона. Метод Ньютона можно рассматривать как частный случай метода простых итераций, для которого (x) = x - ) ( ' ) ( x f x f . (2.14) Сходимость метода. Сходимость метода Ньютона устанавливает следующая теорема. Теорема 2.3. Пусть x * – простой корень уравнения f(x) = 0, и в некоторой окрестности это- го корня функция f дважды непрерывно дифференцируема. Тогда найдется такая малая - окрестность корня x * , что при произвольном выборе начального приближения x 0 из этой окрестно- сти итерационная последовательность, определенная по формуле (2.13) не выходит за пределы этой окрестности и справедлива оценка: |x n + 1 – x * | C |x n – x * | 2 , n 0, (2.15) где С = -1 . Оценка (2.15) означает, что метод сходится с квадратичной скоростью. Сходимость метода Ньютона зависит от того, насколько близко к корню выбрано начальное приближение. Неудачный выбор начального приближения может дать расходящуюся последова- тельность. Полезно иметь в виду следующее достаточное условие сходимости метода. Пусть [a, b] – отрезок, содержащий корень. Если в качестве начального приближения x 0 выбрать тот из кон- цов отрезка, для которого f(x)f"(x) 0, (2.16) то итерации (2.13) сходятся, причем монотонно. Рис. 2.8 соответствует случаю, когда в качестве начального приближения был выбран правый конец отрезка: x 0 = b. Погрешность метода. Оценка (2.15) является априорной и неудобна для практического использования. На практике удобно пользоваться следующей апостериорной оценкой погрешно- сти: |x n – x * | |x n – x n – 1 |. (2.17) Критерий окончания. Оценка (2.17) позволяет сформулировать следующий критерий окончания итераций метода Ньютона. При заданной точности > 0 вычисления нужно вести до тех пор, пока не будет выполнено неравенство |x n – x n – 1 | < . (2.18) Пример 2.3. Применим метод Ньютона для вычисления p a . где a > 0, p – натуральное число. Вычисле- ние p a эквивалентно решению уравнения x p = a. Таким образом, нужно найти корень уравнения f(x) = 0, f(x) = x p – a, f '(x) = px p – 1 . Итерационная формула метода (2.13) примет вид: x n +1 = x n – 1 ) ( ) ( p n p n x p a x = p p 1 x n + 1 ) ( p n x p a . (2.19) Используя формулу (2.19), найдем 3 7 с точностью = 10 -3 x n +1 = 3 2 x n + 2 ) ( 3 7 n x Простой корень уравнения x 3 – 7 = 0 расположен на отрезке [1, 2]. Действительно, на концах отрезка [1, 2] функция f(x) = x 3 – 7 принимает разные знаки, f (1) < 0, f (2) > 0. Кроме того, при x = 2 выполнено достаточное условие сходимости (2.16): f (2)f" (2) 0. Поэтому в качестве начального приближения можно взять x 0 = 2. Результаты приведены в табл. 2.3. Таблица 2.3 n x n 0 1 2 3 4 5 2 0.8415 0.8861 0.8742 0.8774 0.8765 2.6. Метод секущих (метод хорд) В этом и следующем разделе рассмотрим модификации метода Ньютона. Как видно из формулы (2.13), метод Ньютона требует для своей реализации вычисления производной, что ограничивает его применение. Метод секущих лишен этого недостатка. Если производную заменить ее приближением: f '(x n ) 1 1 ) ( ) ( n n n n x x x f x f , то вместо формулы (2.13) получим x n +1 = x n –. ) ( ) ( ) ( ) ( 1 1 n n n n n x f x f x f x x . (2.20) Это означает, что касательные заменены секущими. Метод секущих является двухшаговым методом, для вычисления приближения x n +1 необходимо вычислить два предыдущих приближения x n и x n – 1 , и, в частности, на первой итерации надо знать два начальных значения x 0 и x 1 Формула (2.20) является расчетной формулой метода секущих. На рис. 2.9 приведена гео- метрическая иллюстрация метода секущих. Рис. 2.9 Очередное приближение x n +1 получается как точка пересечения с осью OX секущей, соеди- няющей точки графика функции f(x) с координатами (x n -1 , f(x n - 1 )) и (x n , f(x n )). Сходимость метода. Сходимость метода секущих устанавливает следующая теорема. Теорема 2.4. Пусть x * – простой корень уравнения f(x) = 0, и в некоторой окрестности это- го корня функция f дважды непрерывно дифференцируема, причем f"(x) 0. Тогда найдется такая малая -окрестность корня x * , что при произвольном выборе начальных приближений x 0 и x 1 из этой окрестности итерационная последовательность, определенная по формуле (2.20) сходится и справедлива оценка: |x n + 1 – x * | C |x n – x * | p , n 0, p = 2 1 5 1.618. (2.21) Сравнение оценок (2.15) и (2.21) показывает, что p < 2, и метод секущих сходится медлен- нее, чем метод Ньютона. Но в методе Ньютона на каждой итерации надо вычислять и функцию, и производную, а в методе секущих – только функцию. Поэтому при одинаковом объеме вычислений в методе секущих можно сделать примерно вдвое больше итераций и получить более высокую точ- ность. Так же, как и метод Ньютона, при неудачном выборе начальных приближений (вдали от корня) метод секущих может расходиться. Кроме того применение метода секущих осложняется из-за того, что в знаменатель расчетной формулы метода (2.20) входит разность значений функции. Вблизи корня эта разность мала, и метод теряет устойчивость. Критерий окончания. Критерий окончания итераций метода секущих такой же, как и для метода Ньютона. При заданной точности > 0 вычисления нужно вести до тех пор, пока не будет выполнено неравенство |x n – x n – 1 | < . (2.22) Пример 2.4. Применим метод секущих для вычисления положительного корня уравнения 4(1 – x 2 ) – e x = 0 с точностью = 10 -3 Корень этого уравнения находится на отрезке [0, 1], так как f (0) = 3 > 0, а f (1) = –e < 0. Подсчитаем вторую производную функции: f "(x) = –8 – e x . Условие f(x)f " (x) 0 выполняется для точки b = 1. В качестве начального приближения возьмем x 0 = b = 1. В качестве второго начального значения возьмем x 1 = 0.5. Проведем вычисления по расчетной формуле (2.20). Результаты приве- дены в табл. 2.4. Таблица 2.4 n x n 0 1 2 3 4 5 1.0000 0.5000 0.6660 0.7093 0.7033 0.7034 2.7. Метод ложного положения Рассмотрим еще одну модификацию метода Ньютона. Пусть известно, что простой корень x * уравнения f(x) = 0 находится на отрезке [a, b] и на одном из концов отрезка выполняется условие f(x)f"(x) 0. Возьмем эту точку в качестве началь- ного приближения. Пусть для определенности это будет b. Положим x 0 = a. Будем проводить из точки B = (b, f(b)) прямые через расположенные на графике функции точки B n с координатами (x n , f(x n ), n = 0, 1, … . Абсцисса точки пересечения такой прямой с осью OX есть очередное приближе- ние x n+1 Геометрическая иллюстрация метода приведена на рис. 2.10. Рис. 2.10 Прямые на этом рисунке заменяют касательные в методе Ньютона (рис. 2.8). Эта замена ос- нована на приближенном равенстве f '(x n ) n n x b x f b f ) ( ) ( . (2.23) Заменим в расчетной формуле Ньютона (2.13) производную f '(x n ) правой частью прибли- женного равенства (2.23). В результате получим расчетную формулу метода ложного положения: x n +1 = x n –. ) ( ) ( ) ( ) ( n n n x f x f b f x b . (2.24) Метод ложного положения обладает только линейной сходимостью. Сходимость тем выше, чем меньше отрезок [a, b]. Критерий окончания. Критерий окончания итераций метода ложного положения такой же, как и для метода Ньютона. При заданной точности > 0 вычисления нужно вести до тех пор, пока не будет выполнено неравенство |x n – x n – 1 | < . (2.25) Пример 2.5. Применим метод ложного положения для вычисления корня уравнения x 3 + 2x – 11 = 0 с точностью = 10 -3 Корень этого уравнения находится на отрезке [1, 2], так как f (1) = –8 < 0, а f (2) = 1 > 0. Для ускорения сходимости возьмем более узкий отрезок [1.9, 2], поскольку f (1.9) < 0, а f (2) > 0. Вторая производная функции f (x) = x 3 + 2x – 11 равна 6x. Условие f(x)f"(x) 0 выполняется для точки b = 2. В качестве начального приближения возьмем x 0 = a = 1.9. По формуле (2.24) имеем x 1 = x 0 –. ) ( ) ( ) ( ) ( 0 0 0 x f x f b f x b = 1.9 + 341 0 ) 341 0 ( 1 ) 9 1 2 ( 1.9254. Продолжая итерационный процесс, получим результаты, приведенные в табл. 2.5. Таблица 2.5 n x n 0 1 2 3 1.9 1.9254 1.9263 1.9263 |