ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 02.05.2019

Просмотров: 1240

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

 

3. Теоретические сведения и примеры решения задач 

 

Решение нелинейных уравнений 
 
Метод деления отрезка пополам (метод бисекции) 

 

Допустим, что на отрезке [а,b], расположено искомое значение корня  х=с, т. 
е. с ϵ [а,b]. В качестве начального приближения корня с0 принимаем середину 
этого  отрезка: 

с =

a + b

2

 

Далее  исследуем  значения  функции  F(x)  на  концах  отрезков  [а,  со]  и  [со,b], 
т.е.  в  точках  а,  со,  b.  Тот  из  отрезков,  на  концах  которого  F(x)  принимает 
значения  разных  знаков,  содержит  искомый  корень;  Допустим,  что  нам 
удалось найти отрезок [а,b], на котором расположено искомое значение корня 
поэтому его принимаем в качестве нового отрезка [a1,b1]. Вторую половину 
отрезка  [а,b],  на  которой  знак  F(x)  не  меняется,  отбрасываем.  В  качестве 
первого приближения корня принимаем середину нового отрезка  

с

1

=

a

1

+ b

1

2

 

и т. д.  
 
Таким образом, k-е приближение вычисляется как 

с

k

=

a

k

+ b

k

2

 

 
После  каждой  итерации  отрезок,  на  котором  расположен  корень, 
уменьшается вдвое, а после k - итераций он сокращается в 2к раз: 
 

b

k

− a

k

  =

b − a

2

k

 

Иллюстрация данного метода приведена на рисунке 1. 
Процесс  вычислений  завершается,  когда  длина  текущего  интервала 
становится меньше заданной величины точности -

 нахождения корня. 


background image

 

 

Рисунок 1.1 Графическая интерпретация нахождения корней 

 

Пример  

 

Методом половинного деления уточнить корень уравнения лежащий на 
отрезке 

 0,4; 1



с точностью до 0,001. 

 

???? ????  = ????

4

+ 2????

3

− ???? − 1 = 0 

 

Рисунок 3 Зависимость ???? ????  

 

Последовательно имеем: 

x

0

 =0.4;  f(0) = - 1.246; 

x

1

 =1;   f(1) = 1; 

 


background image

 

 

????

2

=

????

0

+ ????

1

2

=

0.4 + 1

2

= 0,7 

f(0,7) =  - 0.774; 

 

????

3

=

????

1

+ ????

2

2

=

1 + 0,7

2

= 0,85 

f(0,85) =  - 0,1; 

 

????

4

=

????

1

+ ????

3

2

=

1 + 0,85

2

= 0,925 

f(0,925) =   + 0,39; 

 

Таблица 1.1 
Шаг  х 

f(x) 

Ошибка ɛ 

0.4 

- 1.246 

 

-0.6 

0.7 

- 0.774 

-0,3 

0.85 

- 0.1 

0,075 

0.925 

0.39 

0,0375 

0.8875 

0.131 

-0,0188 

0.8687 

0.012 

0,009325 

0.859375 

- 0.044615 

0,004625 

0.8640 

-0.017 

-0,0023 

10 

0.8663 

-0.0023 

0,00088375 

 
x = 0.8663 

 

 Метод секущих (хорд) 

 

В  этом  методе  кривая  f(x)  заменяется  прямой  линией  –  хордой, 

стягивающей  точки  (a,  f(a))  и  (b,  f(b)).  В  зависимости  от  знака  выражения 
f(a)*f 

//

(a) метод хорд имеет два варианта, изображенных на рис. 1.2 а, б. 

 


background image

 

 

а)                                                             б) 

Рисунок  1.2    Графическая  интерпретация  метода  хорд:  а)  F(a)

//

(a)>0  б) 

F(a)

//

(a)<0  

 
Пусть f(a)*f

//

(a)>0 (рис.2а). Тогда x

0

=b, точка a будет оставаться неподвижной. 

Следующее  приближение  x

1

  находим  как  точку  пересечения  хорды, 

соединяющей точки (a, f(a)) и (x

0

, f(x

0

)) с осью x.  

 
В  аналитической  геометрии  выводится  формула,  задающая  уравнение 
прямой, проходящей через две точки с координатами (х1; у1) и (х2; у2):  

???? = ???? ????

1

  +

???? ????

2

  − ???? ????

1

 

????

2

− ????

1

(???? − ????

1

Таким образом, для f(a)*f

//

(a)>0   точка пересечения хорды с осью x: 

????

1

= ???? −

???? ????  ∗ (????

0

− ????)

???? ????

0

  − ???? ???? 

 

На следующей итерации в качестве x

0

 надо взять вычисленное значение x

1

????

????+1

= ???? −

???? ????  ∗ (????

????

− ????)

???? ????

????

  − ???? ???? 

 

 
Пусть теперь f(a)f 

//

(a)<0 (рис.2б). Тогда x

0

=a, точка b неподвижна. Проведем 

хорду, соединяющую точки (b, f(b)) и (x

0

, f(x

0

)): 

???? = ???? ????

0

  +

???? ????  − ???? ????

0

 

???? − ????

0

(???? − ????

0

Вычисляем точку пересечения хорды с осью x: . 

????

1

= ????

0

???? ????

0

  ∗ (???? − ????

0

)

???? ????  − ???? ????

0

 

 

 
На следующей итерации в качестве x

0

 надо взять вычисленное значение x

????

????+1

= ????

????

???? ????

????

  ∗ (???? − ????

????

)

???? ????  −  ???? ????

????

 

 

 

Повторять  операцию  следует  до  тех  пор,  пока  xi-xi-1<

  не  станет  меньше 


background image

 

10 

или равно заданному значению погрешности. 
 

Пример  

 

Методом секущих (хорд) уточнить корень уравнения лежащий на отрезке 

0,1



с точностью до 0,001. 

???? ????  = ????

4

+ 2????

3

− ???? − 1 = 0 

 
Решение: 
 

???? 0  = −1; ???? 1  = 1;   ????

/

= 4????

3

+ 6????

2

− 1 > 0  при ???? ∈  0,1    

следовательно,  на отрезке   0.4,1   расположен один корень. 

 

Воспользуемся формулой  
 

???? = ???? −

???? − ????

???? ????  − ???? ???? 

∗  ???? ????  

 

 

????

1

= ???? −

???? − ????

???? ????  − ???? ???? 

∗  ???? ????  = 0.4 −

1 − 0.4

1 − (−1.246)

= 0.733 

 

???? ????

1

  = ???? 0.733  = −0.657 

 

????

2

= ????

1

???? − ????

1

???? ????  − ???? ????

1

 

∗  ???? ????

1

  = 0.839 

 

???? ????

2

  = −0.16232 

 

????

3

= ????

2

???? − ????

2

???? ????  − ???? ????

2

 

∗  ???? ????

2

  = 0.86148 

 

???? ????

3

  = −0.03201