Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции и задания.doc
Скачиваний:
24
Добавлен:
29.03.2015
Размер:
2.16 Mб
Скачать

Метод хорд

НА первом этапе уже определен промежуток локализации корня [a,b], такой, что на этом промежутке есть только один корень уравненияY(x)=0.

Шаг 1.Проводим прямую (хорду) между точками с координатами (a,Y(a)) и (b,Y(b)). Выведем уравнение этой прямойg=k∙x+m:

g(b) =k∙b+m(1)

g(a) = k∙a + m (2)

Тогда

(3)

Подставим полученное для kвыражение в (1) и выведем формулу дляm.

Теперь, определив коэффициенты уравнения прямой kmможно вычислить точку пересечения хорды с осью абсциссx0, в которойg(x0)=0:

См. рис. 7 и рис. 8.

Рис. 7

Рис. 8

Шаг 2.Затем сравним знаки функцииY(x) в точках а иx0Y(а) иY(x0).

Если знаки функции одинаковы Y(а)∙Y(x0) > 0, то на промежутке от а доx0корня нет, дальше будем рассматривать промежуток [x0,b] и следующую хорду нужно провести между точками с координатами (x0,Y(x0)) и (b,Y(b)). Точкуапереносим вx0. См. рис.7.

Если же, как на рис.8, Y(а) иY(x0) имеют разные знаки, то естьY(а)∙Y(x0) < 0, то дальше следует рассматривать промежуток [a,x0]. Следующую хорду надо провести между точками (a,Y(a)) и (x0,Y(x0)). Точкуbпереносим вx0.

Выбор точки а или b, из которой следует строить следующую хорду, можно также осуществить с помощью знака второй производнойY”(x). Если знакY(b) иY’’(b) совпадают (Y(b)∙Y’’(b) > 0, то хорды следует строить из точкиb(рис 8. случайII), в противном случае из точки а (рис.7, случайI).

Эти действия можно представить в виде блок-схемы, показанной на рис. 9

Рис. 9

Шаг 3.Следующее приближение к корнюY(x)x1вычислим по формуле, аналогичной (5)

и сократим длину промежутка [a,b] как на 2-ом шаге (рис.9).

Шаг 4.Продолжать вычислениеx2,x3,….xi до тех пор, пока не выполнится условие

│xi–xi-1│≤(6)

Как только условие (6) выполнится, будем считать, что xiэто корень функцииY(x), найденный с точностью.

Численный пример.

Рассмотрим функцию x3-5∙x+ 3 = 0. Один из промежутков локализации -[1.5, 2], точность=0.01

Вычисления приведены в таблице 2.

Шаг 1. Вычислим значения Y(a),Y(b), затемx0по формуле (5) иY(x0).

Шаг 2. Поскольку Y(a) иY(x0) имеют одинаковый знак, то согласно блок-схеме на рис. 9,a=x0,b=b.

Шаг 3. Вычислим значения Y(a),Y(b), затемx1по формуле (5) иY(x1). Отметим, что │Y(x1)│ < │Y(x0)│.

Шаг 4. Проверим выполнение условия (6) : x1–x0=0.0581 >, поэтому продолжаем вычисления дляx2,x3.

Разность между x3иx2 (│x3 -x2│= 0.009) становится меньше заданной точности= 0,01, следовательно корень найден и равен 1.8332.

Таблица 2

i

a

b

xi

Y(a)

Y(b)

Y(xi)

│xi–xi-1

0

1.5

2

(1*1.5-1.125*2)/(1+1.125) =1.7647

-1.125

1

-0.328

1

1.7647

2

(1*1.7647-0.328*2)/(1+0.328)

=1.8228

-0.328

1

-0.0575

0.2647

2

1.8228

2

(1*1.8228-0.0575*2)/(1+0.0575)

=1.8324

-0.0575

1

-0.00913

0.058

3

1.8324

2

1.8332

-0.00913

1

-0.00143

0.009

В таблице 3 представлено решение вExcelс точностью 0.0005

В колонке Aуказывается номер итерацииI, в ячейкахAB78иD78 - границы промежутка локализации корня [a,b], в колонкахE,F,G– значения функцииYв точкахa,b,xiсоответственно, в ячейкахB80,C80 и ниже в этих колонках записывается условный оператор , соответствующий блок-схеме на рис.9. В колонкеHвычисляется длина отрезка [Xi-Xi-1] на каждом шаге.

Таблица 3

A

B

C

D

E

F

G

H

=ЕСЛИ(E78*G78>0;C78;D78)

=(F78*B78-E78*C78)/(F78-E78)

=ЕСЛИ(E78*G78>0;D78;B78)

78

i

a

b

Xi

Y(a)

Y(b)

Y(Xi)

Xi-Xi-1

79

0

1.5

2

1.76471

-1.125

1

-0.32791

 

80

1

1.76471

2

1.82281

-0.32791

1

-0.05752

0.26471

81

2

1.82281

2

1.83245

-0.05752

1

-0.00913

0.05810

82

3

1.83245

2

1.83396

-0.00913

1

-0.00143

0.00964

83

4

1.83396

2

1.83420

-0.00143

1

-0.00022

0.00152

84

5

1.83420

2

1.83424

-0.00022

1

-3.5E-05

0.00024

Так как в строке 84 длина отрезка [Xi-Xi-1] оказалась равной 0.00024 что меньше точности=0.0005, то полученное в ячейке В84 значениеX=1.83420 является корнем уравнения, вычисленным с точностью=0.0005.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]