Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kozlov (1).doc
Скачиваний:
748
Добавлен:
18.03.2016
Размер:
15.9 Mб
Скачать

Метод касательных (Метод Ньютона)

Пусть корень уравнения f(x) = 0 локализован на отрезке [a;b]. Функцияf(x) на отрезке [a;b] должна быть дважды дифференцируема. Требуется найти значение корня с точностью ε.

Для метода касательных в качестве начального приближения достаточно одной точки x0.Обычно выбирают тот конец отрезка [a, b], для которого выполняется условие f(x0)f(x0).

Графическая интерпретация метода

Строим исходную функцию y= f(x). Выберем в качестве начального приближения точкуМ1(a, f((a)). Проведем касательную к графика функции в точке М1, находим точку пересечения этой касательной с осьюOXэто и есть приближенный корень x1. Далее находим точку M21, f(x1)),строим следующую касательную в этой точке, находим второй приближенный кореньx2и так далее.

Алгоритм метода

  1. Ввод исходных данных: a, b, ε.

  2. Расчет значений функции f(a), f(b) на концах отрезка и значения второй производной от функции f'' (a) и f'' (b).

  3. Проверяем условие f(a)·f''(a)>0. Если условие выполняется, то c=a, x=b, иначе проверяем условие f(b)·f''(b)>0 c= b, x=a. Если условие «быстрой» сходимости не выполняется, то принимаем c=a, x=b.

  4. x0=x.

  5. Рассчитываем абсциссу точки пересечения хорды с осью ОХ по формуле

  1. Проверка условия |x-x0|<= ε. Если условие выполняется, то переход к пункту 7, иначе переход к пункту 4.

  2. Расчет закончен. Корень х*=x.

Реализация метода в MS Excel

Постановка задачи. Дано ecos2(x)-3·sin(0,8·x)+0,5=0, корень локализован на отрезке [0,5;1,5] с точностью ε=0,0001.

1 Формирование заголовка таблицы и расчеты по пунктам 1, 2, 3 и 4 алгоритма. Выбор начальной точки.

Адрес клетки

Содержание

Тип

А1

a

Текст

В1

b

Текст

C1

f(a)

Текст

D1

f(b)

Текст

E1

f'' (a)

Текст

F1

f'' (b)

Текст

А2

0,5

Число

В2

1,5

Число

С2

=EXP(COS(A2)^2)-3*SIN(0,8*A2)+0,5

Формула

D2

=EXP(COS(B2)^2)-3*SIN(0,8*B2)+0,5

Формула

Е2

=EXP(COS(A2)^2)*(SIN(2*A2)^2-2*COS(2*A2))+ 1,92*SIN(0,8*A2)

Формула

F2

=EXP(COS(B2)^2)*(SIN(2*B2)^2-2*COS(2*B2)) +1,92*SIN(0,8*B2)

Формула

А3

х0

Текст

А4

=ЕСЛИ(D2*F2>0;B2;A2)

Формула

Вид листа MS Excel:

2 Заполнение клеток для подготовки к первой итерации:

Адрес клетки

Содержание

Тип

В3

х

Текст

C3

f(x0)

Текст

D3

f´(x0)

Текст

E3

|x-x0|

Текст

В4

Формула

C4

=EXP(COS(A4)^2)-3*SIN(0,8*A4)+0,5

Формула

D4

=-EXP(COS(A2)^2)*SIN(2*A4)-2,4*COS(0,8*A2)

Формула

Вид листа MS Excel:

3 Выполнение пункта 5 алгоритма.

Адрес клетки

Содержание

Тип

А5

=B4

Формула

В5

=A5-C4/D4

Формула

C5

=EXP(COS(B5)^2)-3*SIN(0,8*B5)+0,5

Формула

D5

=-EXP(COS(B5)^2)*SIN(2*B5)-2,4*COS(0,8*B5)

Формула

E5

=ABS(B5-A5)

Формула

Вид листа MS Excel:

Первая итерация завершена.

4 Для выполнения второй и последующих итераций выделим диапазон клеток A5:E5. Установим указатель мыши на маркер заполнения, нажмем левую кнопку и переместим мышь на десятую строку.

Вид листа MS Excel после выполнения этих действий:

Требуемая точность достигнута в восьмой строке, так как именно начиная с этой строки, соблюдается условие |x-x0|<= ε.

5 Выполняем пункт 7 алгоритма, рассчитаем искомый корень х* и значение f(x*).

Адрес клетки

Содержание

Тип

В12

х*

Текст

В13

=B10

Формула

C12

f(x*)

Текст

С13

=EXP(COS(C17)^2)-3*SIN(0,8*C17)+0,5

Формула

Вид листа MS Excel:

Решение получено за четыре итерации. Окончательно имеем х*=0,8980, f(x*)=0,0000 и n=4.

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