Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Численные методы.doc
Скачиваний:
44
Добавлен:
03.11.2018
Размер:
1.64 Mб
Скачать

Тема 3: Решение нелинейных уравнений

Задача нахождения корней нелинейного уравнения возникает достаточно часто F(x)=ax + b, F(x)=0. Нелинейные уравнения делятся на алгебраические и трансцендентные. Для алгебраического уравнения f(x) – полином некоторой степени больше 1. Хотя алгебраические и трансцендентные уравнения часто решаются одинаковыми методами, на существуют численные методы, использующие свойства алгебраических уравнений, методы решения делятся на прямые и итерационные. Прямые методы позволяют найти решения уравнений непосредственно с помощью формул. В итерационных методах задается процедура решения в виде многократного применения. Некоторые процедуры в этом случае нахождение корня уравнения состоит из двух этапов:

  1. отыскание приближенного значения корня или содержащего его отрезка;

  2. уточнение значения корня до некоторой заданной точности.

Приближенное значение корня может быть найдено различными способами:

  1. из физических соображений;

  2. из решения аналогичной задачи;

  3. графическим методом.

Если удалось найти две точки образующие отрезок [a,b] на концах которого F(x) имеет различные знаки, то в качестве начального приближения можно взять середину этого отрезка. Итерационный процесс состоит в последовательном уточнении начального приближения, каждый такой шаг называется итерацией. В результате получается последовательность приближенных значений корня. Если эта последовательность с ростом n приближается к истинному значению корня, то итерационный процесс сходится. К сожалению, часто бывает, что итерационный процесс не сходится.

Простроим график функции y = F(x)

y

y

a b

0 x

Если разный знак, то это гарантирует что будет один корень.

Метод №10

Метод половинного деления

Этот метод является одним из простейших методов решения нелинейных уравнений.

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

y y=F(x)

a c b

0 x

В качестве начального приближения берем точку середине отрезка[a,b]. Получаем два отрезка [a,x0] и [x0,b], затем проверяем, на концах какого из этих двух отрезков функция F(x) имеет разный знак. Если знак у F(x) разный на [a,x0], то мы полагаем b=x0 и получаем новый отрезок [a,b], если знак разный на [x0,b], то полагаем что a=x0. Полученный сокращенный отрезок [a,b] делим пополам и получаем х1.

If F(a)*F(xi)<0 then

b:=x[i]

else a:=x[i];

x[i+1]:=(a+b)/2

ε=|x[i+1]-x[i]|

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

Метод №11

Метод простых итераций

Представим нелинейное уравнение F(x)=0 в виде x=f(x) это преобразование можно сделать различными способами:

Например

x=F(x)+x=f(x)

Пусть х0 является нулевым приближением корня этого уравнения. Тогда в качестве первого приближения берем x1=f(x0), а второго x2=f(x1).

Допустим, мы нашли приближенное значение: xi+1=f(xi).

Проиллюстрируем этот метод графически

у

у=х

у=f(x)

0 х2 х1 х0 х

Итерационный процесс сходится.

у у=f(x)

y=x

0 с х0 х1 х2 х

Итерационный процесс расходится.

Для сходимости итерационного процесса достаточно чтобы выполнялось условие |f/(x)|<1, при всех значениях хi, в противоположном случае итерационный процесс может расходиться.

Сходимость метода может зависеть от удачного преобразования от F(x) = 0, и - это

Метод №12