Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЭВМ_Семестр3_МетодПособие

.pdf
Скачиваний:
13
Добавлен:
05.06.2015
Размер:
2.99 Mб
Скачать

 

y

 

 

 

 

 

 

 

 

 

( 0 )

 

 

 

 

 

2

( 0

)

 

 

 

 

1

 

 

 

 

 

 

 

<

< 1

 

0

0

 

 

0

x

1

 

 

 

2

 

Рисунок 1.5 – При 0<φ’ x)<1 метод итераций сходится

 

y

 

 

 

 

 

 

( 0

)

 

 

 

 

2

 

 

 

 

 

 

(

0 )

 

 

 

 

1

 

 

 

 

φ'(x)>1

 

 

 

0

0

 

 

 

 

2

 

 

 

 

1

 

 

 

 

 

x

 

 

 

 

 

 

Рисунок 1.6 – При φ’ x)>1 метод итераций расходится

y

− <

 

 

 

 

< 0

 

( 0

)

 

 

 

1

 

 

 

 

10

x

 

 

Рисунок 1.7 - При -1<φ’ x)<0 метод итераций сходится

21

y

 

 

φ'(x)<-1

0

 

1

x

Рисунок 1.8 - При φ’ x)<-1 метод итераций расходится

Из приведенных рисунков видно, что процесс итераций сходится к искомому корню, если на участке, внутри которого имеется единственный корень, выполняется условие: 1 (x) 1.

При использовании преобразования исходного уравнения (1.1) к виду (1.3), с помощью введенного множителя можно обеспечить сходимость, выбрав его так, чтобы при всех x внутри интервала локализации данного корня модуль производной функции (x) был меньше единицы, т.е.

 

 

 

 

 

 

 

 

 

1

(1.6)

 

 

 

 

 

 

 

(x)

 

 

1 f (x)

 

Таким образом, −1 < 1 +

< 1

или −2 <

< 0 для

случая, когда

> 0 и 0 <

< 2 в случае < 0.

 

Метод простых итераций имеет линейную скорость сходимости, правильный выбор начального приближения позволяет уменьшить количество итераций для достижения заданной точности вычисления корня.

В практических инженерных расчетах часто, в качестве критерия окончания итерационного процесса, применяют сравнение аргумен-

тов на текущей и предыдущей итерациях:

 

( ) ( −1)

(1.7)

22

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

Метод Ньютона является одним из наиболее эффективных численных методов решения самых разных нелинейных уравнений. Метод был впервые предложен английским физиком, математиком и астрономом Исааком Ньютоном (1643—1727). Поиск решения осуществляется путѐм построения последовательных приближений и осно-

ван на принципах метода простых итераций. Метод Ньютона называют также методом касательных, т.к. новое приближение x(k+1) явля-

ется абсциссой точки пересечения касательной, проведенной в точке (x(k) , f(x(k)) к графику функции f(x), с осью Ox (см. рисунок 1.9).

Постановка задачи. Пусть уравнение f(x) имеет один корень на отрезке [a,b], причем первая и вторая производные ( ) и ′′ ( ) на этом отрезке существуют, непрерывны и сохраняют на отрезке постоянные знаки. Требуется определить этот корень с заданной точностью .

y

 

 

 

f (x0)

 

 

 

y=f(x)

 

 

 

 

 

f '(x0)

 

a

 

 

b=x0

0

 

x2

x1

x

Рисунок 1.9 – Метод Ньютона (касательных)

Внутри отрезка локализации корня [a,b] назначаем (смотри рисунок 1.9) начальное приближение корня x0 . В точке x0 , f (x0 ) рассчитываем касательную к кривой y f (x). Уравнение этой касательной имеет вид:

y f (x0 ) f (x0 ) x x0

23

Абсциссу точки пересечения касательной с осью Ox принимаем за следующее приближение корня, т.е.

x1

x0

 

f (x0 )

f (x0 )

 

 

 

Повторяем процесс: проводим касательную к кривой y f (x) в точке x1 , f (x1 ) , абсциссу точки пересечения касательной с осью Ox принимаем за следующее приближение корня:

x2

x1

 

f (x1)

f (x1)

 

 

 

В общем виде формула метода касательных имеет вид:

xn 1

xn

f (xn )

(1.8)

f (xn )

 

 

 

Процесс повторяется до тех пор, пока не будет выполнено условие нахождения корня с заданной точностью. В инженерной практике, берут один из следующих критериев останова:

1. f(x(n))< - значение функции на данной итерации стало меньше заданного .

2. ( ) ( −1) изменение x(n) в текущей итерации стало меньше заданного .

Чаще всего используют критерий 2. Условие сходимости метода Ньютона:

1.функция f(x) на отрезке локализации корня [a,b] непрерывна;

2.первая и вторая производные ( f´(x) и f"(x) ) непрерывны на интервале [a,b] и могут быть вычислены в любой точке интервала, причем первая производная не обращается в ноль;

3.вторая производная на интервале [a,b] постоянна по знаку;

4.начальное приближение х0 выбирается так, чтобы выполнялось условие

( 0) ∙ "( 0) > 0

24

Метод Ньютона обладает только локальной сходимостью, т.е. областью его сходимостью является некоторая малая σ-окрестности корня и для гарантии сходимости необходимо вбирать хорошее начальное приближение, попадающее в эту σ-окрестность. Неудачный выбор начального приближения может дать расходящуюся последовательность итераций, например, представленную на рисунке

1.10.

y

 

 

 

 

 

y=f(x)

 

f(x1)

 

 

 

 

 

x0=a

b

 

 

 

f

f '(x0)

x1

x2

x

 

 

Рисунок 1.10 – Метод Ньютона расходится при неправильном выборе x0

Если вычисление первой производной функции на каждом шаге требует больших вычислительных затрат, можно использовать модифицированный метод Ньютона. Суть его заключается в том, что значение производной вычисляется один раз в начальной точке x(0) и это фиксированное значение подставляется в формулу (1.9):

xn 1

xn

 

f (xn )

(1.9)

f

 

 

 

 

(x0 )

 

Геометрическая интерпретация модифицированного метода Ньютона представлена на рисунке 1.11. В отличие от обычного метода касательных, в модифицированном методе предъявляется меньше требований к выбору начального приближения, а так же гарантировано отсутствие деления на ноль, если . Однако, модифицированный метод имеет один существенный недостаток – резкое падение скорости сходимости.

25

y

 

f(x0)

 

 

 

f '(x0)

f '(x0)

 

 

0

 

 

 

x1

x

Рисунок 1.11 – Модифицированный метод Ньютона

Формула (1.9) совпадает с формулой метода простых итераций, если определить

= − ()) = − ( ),

где μ – значение абсциссы в некоторой точке отрезка локализации корня с максимальным значением первой производной функции f(x) на отрезке локализации корня.

Как уже показано, этот процесс сходится, если (x) 1 в интервале, в котором находится один корень уравнения f (x) 0, т.е.

´ =

1 − < 1

Значение λ следует принимать:

=

(

 

)

(1.10)

max (

 

)

где ( ) – знак первой производной f(x) на интервале локализации корня [a,b];

max ( ) – максимальное значение первой производной f(x) на интервале локализации корня [a,b].

1.1.4 Метод деления отрезка пополам

Метод обеспечивает нахождение единственного корня в интервале локализации х[a,b] с заданной точностью >0. Наличие корня

26

уравнения на интервале [a,b] (или нечетного числа корней) предполагает, что на границах интервала функция f(x) имеет разные знаки, т.е. f(a)·f(b)<0. Метод уточняет (сужает) границы интервала, где распо-

ложен корень. В дальнейшем интервал [a,b] будет обозначаться с указанием номера итерации - [a(0),b(0)].

В методе деления интервала пополам (методе бисекций) отрезок

локализации корня делится пополам (0) = (0)+ (0). Перемещая одну

2

из границ в точку x(0) уменьшаем отрезок локализации в два раза, т. е. заменяем начальный отрезок [a(0),b(0)] отрезком [a(1),b(1)] меньшей

длины. В методе бисекций в качестве [a(1),b(1)] берут тот из отрезков [a(0),x(0)] и [x(0),b(0)] на концах которого выполняется условие

f(a(1))·f(b(1))≤0. Этот отрезок содержит искомый корень. Если данное произведение равно нулю, то корнем уравнения является одна из гра-

ниц. Неограниченное продолжение итерационного процесса дает последовательность отрезков [a(0),b(0)], [a(1),b(1)], … , [a(n),b(n)], содержа-

щих искомый корень. Каждый из них, за исключением начального, получен делением пополам предыдущего отрезка.

При повторении процедуры деления, длина отрезка становится настолько малой (меньше заданной допустимой погрешности в определении корня), что можно приближенно за значение корня принять абсциссу любой точки отрезка [a(n),b(n)]. Считая, что (b a) является

абсолютной погрешностью, а (b a) / a - относительной погрешно-

стью вычислений корня уравнений, мы получаем возможность гарантированно выбирать значение корня с недостатком (принимая x a ) или с избытком (принимая x b). Обычно за корень уравнения принимают значение x(n).

27

y

 

 

 

 

 

шаг 1

 

 

 

 

 

 

x(1)

 

 

 

 

a(0)

 

 

b

(0)

x

 

 

 

 

 

 

 

y

 

x(2)

шаг 2

 

 

 

 

 

a(1)

 

 

b(1)=b(0)

x

 

 

 

y

x(3)

 

шаг 3

 

a(2)=a(1)

 

b(2)

 

 

x

 

 

 

 

Рисунок 1.12 – Метод деления отрезка пополам

 

Пример 1.1

Используя графический способ отделения корней определить ин-

тервалы локализации корней уравнения sin x cos x 3x 0.

Данную задачу можно решить, используя электронную таблицу Excel и пакет Matlab. На рисунке 1.13 показан фрагмент электронной таблицы Excel (в режиме отображения функций) с графиком функции.

Для получения графика данной функции в пакете MATLAB, показанного на рисунке 1.14, необходимо выполнить следующую цепочку команд:

f=inline('sin(x)-cos(x)-x/3') figure;

fplot(f,[-3 3]); grid;

28

Рисунок 1.13 – Вид таблицы Excel с графиком функции sin x cos x 3x 0

Рисунок 1.14 – График функции sin x cos x 3x 0 построенный в пакете Matlab

29

Анализ графиков показывает три отрезка локализации корней:

[-2;-1], [0,5;1,5], [3;3,5].

Пример 1.2

Используя встроенную функцию fzero пакета MATLAB, найти корни уравнения f(x)=0. В квадратных скобках задаются левая и правая границы интервала, на котором расположен корень. Протокол работы в пакете Matlab представлен ниже.

»[x]=fzero(f,[-3 1]) x =

-1.8936

»[x]=fzero(f,[1 2]) x =

1.0308

Пример 1.3

Используя

процедуру на VBA, найти два корня уравнения

sin x cos x

x

0 с точностью =0.0001.

 

3

 

Примечание. Вычисление третьего корня уравнения читателю предлагается выполнить самостоятельно.

Для реализации метода простых итераций необходимо преобразовать исходное уравнение к виду x (x) . Очевидно, что простейшее преобразование уравнения x=3·(sin(x)-cos(x)) (производная =

3 ·

 

 

+

) не отвечает условию сходимости метода ите-

раций.

Поэтому,

 

используем преобразование x x f (x), откуда

(x) x f (x) .

 

 

 

 

 

 

 

 

 

 

 

Значение

λ

выбираем

из

условия

сходимости

 

 

 

 

 

 

 

1,

т.е.

 

 

 

 

 

1

 

решая нера-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(x)

 

 

1 f (x)

 

(x)

 

 

|1+ (cosx+sinx-3)|<1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

венство получим

30