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

Численные методы Методические материалы

.pdf
Скачиваний:
17
Добавлен:
22.05.2015
Размер:
2.09 Mб
Скачать

 

 

 

 

Рис. 7

 

 

 

Подсчитаем первую и вторую производные функции f x :

 

 

 

x

x cos x sin x

,

 

sin x 2 x2

.

 

 

 

 

 

 

 

 

x2

 

x

x3

 

 

 

 

 

 

 

 

 

 

x

0 на отрезке / 6,

 

 

 

x 0 моно-

Так как

/ 3 , то производная

тонно возрастает на этом отрезке и принимает максимальное значение на правом конце отрезка, т. е. в точке / 3. Поэтому справедлива оценка:

 

x

 

 

 

 

/ 3

 

0,312.

 

 

 

 

 

 

 

 

Таким образом, условие выполнено, q 0,5 и можно воспользоваться кри-

терием окончания вычислений. В табл. 2 приведены приближения, полученные по расчетной формуле. В качестве начального приближения выбрано значение x0 1.

 

 

 

 

 

 

 

 

 

Таблица 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

0

1

2

 

3

 

4

 

5

 

 

xn

1

0,8415

0,8861

0,8712

0,8774

0,8765

 

Критерий окончания выполняется при

n 5 ,

 

x5 x4

 

0,001. Сходи-

 

 

мость двусторонняя, качественный характер такой сходимости представлен на рис. 4. Приближенное значение корня с требуемой точностью x* 0,8765.

Пример 2. Решить методом простой итерации уравнение f x x2 0,6

на отрезке 0,1 с точностью 0,025. Для решения исходное уравнение приводит-

ся к виду x x x2 0,6 . Для выбора величины используем приведен-

 

 

 

 

= 1/ 2x = 1/2 . Тогда расчетная

ную выше формулу

λ= 1/max

f x

 

 

 

11

 

формула имеет вид x

i 1

0,5x2

x

i

0,3. В качестве начального приближе-

 

 

1

 

 

 

 

 

ния можно выбрать верхнюю границу заданного отрезка x0 1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

0

 

 

1

2

 

 

 

 

xn

 

1

 

 

0,8

0,78

 

 

 

 

 

 

 

 

 

 

 

 

Так как 0,8 0,78 0,02 , то x* 0,78.

1.5. МЕТОД НЬЮТОНА (МЕТОД КАСАТЕЛЬНЫХ)

Метод Ньютона является наиболее эффективным методом решения нелинейных уравнений. Пусть корень x* a, b , т. е. f a f b 0 . Предполагаем,

что функция f x непрерывна на отрезке a, b и дважды непрерывно диффе-

ренцируема на интервале a, b . Положим x0 b . Проведем касательную к графику функции y f (x) в точке B0 x0 ,f x0 (рис. 8).

Рис. 8

Уравнение касательной будет иметь вид: y f (x0 ) f x0 x x0 . Первое пересечение получим, взяв абсциссу точки пересечения этой каса-

тельной с осью OX , т. е. положив y 0, x x1 : x1 x0

 

f(x

0 )

.

f'(x

0 )

Аналогично поступим с точкой B1 x1,f x1 ,

 

 

затем

 

с точкой

B2 x2 ,f x2 и т. д., в результате получим последовательность приближений

x1, x2 ,..., xn , причем

 

 

 

 

 

 

xn 1

xn

 

f(x

0 )

.

(6)

f'(xn )

 

 

 

 

 

Формула (6) является расчетной формулой метода Ньютона.

12

Метод Ньютона можно рассматривать как частный случай метода простых итераций, для которого (x) x f'(x)f(x) .

Сходимость метода. Сходимость метода Ньютона устанавливает следующая теорема.

Теорема. Пусть x* – простой корень уравнения f (x) 0 и в некоторой окрестности этого корня функция f дважды непрерывно дифференцируема. Тогда найдется такая малая – окрестность корня x* , что при произвольном выборе начального приближения x0 из этой окрестности итерационная после-

довательность, определенная по формуле (6) не выходит за пределы этой окрестности и справедлива оценка:

x

n 1

x*

 

C

 

x

n

x*

 

2

,

n 0,

(7)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где C 1.

Сходимость метода Ньютона зависит от того, насколько близко к корню выбрано начальное приближение.

Выбор начального приближения. Пусть a, b – отрезок, содержащий корень. Если в качестве начального приближения x0 выбрать тот из концов отрезка, для которого f (x0 )f (x) 0 , то итерации (6) сходятся, причем монотонно. Рис. 8 соответствует случаю, когда в качестве начального приближения был

выбран правый конец отрезка: x0 b

 

 

 

 

 

 

(Здесь f (x) 0).

 

Погрешность метода. Оценка (7) неудобна для практического использо-

вания. На практике пользуются следующие оценки погрешности:

 

 

xn x*

 

 

 

xn xn 1

 

.

(8)

 

 

 

 

 

 

 

 

 

 

 

 

 

Критерий окончания. Оценка (8) позволяет сформулировать следующий критерий окончания итераций метода Ньютона. При заданной точности 0 вычисления нужно вести до тех пор, пока не будет выполнено неравенство

xn xn 1 .

Пример. Вычислить методом Ньютона отрицательный корень уравнения f (x) x4 3x2 75x 10000 0 с точностью до 0,0001. Проведя отделение корня, можно убедиться, что корень локализован на интервале 11, 10 :

f ( 11) 3435, f 10 1050. В этом интервале f (x) 0 и f (x) 0 . Так

как f ( 11) 0 и f ( 11) 0, то за начальное приближение можно принять x0 11.

13

xn

f (xn )

 

 

f (xn )

hn f (xn ) / f (xn )

-11

3453

-5183

0,6662

-10,3336

307,3

4276,8

0,0718

-10,2618

3,496

4185,9

0,0008

-10,261

0,1477

-

-

x3 x2 10, 261 10, 2618 0,0008 0,001. Поэтому x* 10, 261.

1.6. ВИДОИЗМЕНЁННЫЙ МЕТОД НЬЮТОНА

Если производная f (x) мало изменяется на отрезке a, b , то в расчетной формуле метода можно положить: f xn f x0 . Отсюда для корня x* уравнения f (x) 0 получаем последовательные приближения

x

x

 

 

f xn

,

n 0,1, 2,... .

 

 

n 1

 

n

 

f x

0

 

 

 

 

 

 

 

 

Геометрически этот способ означает, что касательные заменяются прямыми, параллельными касательной к кривой y f (x) , в ее фиксированной точке

x0 . Этот способ избавляет от необходимости вычислять каждый раз значения производной, поэтому эта формула полезна, если y f (x) сложна.

1.7. МЕТОД ХОРД

Рассмотрим еще одну модификацию метода Ньютона. Пусть известно, что

простой корень x*

уравнения f x

= 0 находится на отрезке a,b , то есть

f a f b <0. И предположим, что

f x >0 при x a,b (если это не так,

то будем рассматривать уравнение

f x = 0). Заменим кривую y =f x

хордой AB:

x a

=

y f a

 

 

 

.

 

b a

f b f a

 

у

А

х2

х1

b = x0

а х*

 

x

Рис. 9

В

 

14

B

y

а = х0

х1 х2

b

 

х*

x

А

Рис. 10

Возможны два случая: 1) f a >0 (рис. 9); 2) f a <0 (рис. 10). В первом

случае конец a неподвижен и последовательные приближения: x0 = b

 

xn+1 = xn

 

f xn

 

xn

a ,

n = 0,1,2....

(9)

f xn f

a

 

 

 

 

 

 

образуют ограниченную монотонно убывающую последовательность, причем a < x* <...< xn+1 < xn <...< x1 < x0 .

Во втором случае неподвижен конец b , а последовательные приближения: x0 = a

xn+1 = xn

f xn

b xn

n = 0,1,2....

(10)

 

f b f xn

 

 

 

 

образуют ограниченную монотонно убывающую последовательность, причем

x0 < x1 < x2 <...< xn+1 <...x* < b. Итак, в результате получаем следующее

Выбор начального условия:

1.Рассматриваем только случай f x >0 (иначе f x =0 ).

2.Начальное приближение x0 выбираем из условия f x0 f (x) <0 f x0 <0 .

Неподвижен тот конец, для которого знак функции совпадает со знаком ее второй производной.

Критерий окончания. Критерий окончания итераций метода хорд такой же, как и для метода Ньютона. При заданной точности 0 вычисления нужно

вести до тех пор, пока не будет выполнено неравенство xn xn 1 .

15

Пример. Найти положительный корень уравнения с точностью 0,001

f (x) x3

0, 2x2

0, 2x 1, 2 0. Отделим корень.

Так как f (1) 0,6 0 ,

f (2) 5,6 0, то x* 1, 2 . Разделим интервал пополам: f (1,5) 1, 425,

тогда

x* 1; 1,5 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

0, 4x 0, 2 ,

 

 

 

Найдѐм производные: f (x) 3x

 

f (x) 6x 0,4 0 . Ис-

ходя из

того,

что

f (1) 0 , то

x0 1 и пользуемся

формулой

(10):

x1 1

 

0,6

 

 

1,5 1 1,15, f (x1 ) 0,173.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1, 425 0,6

 

 

 

 

 

 

 

 

 

 

x2 1,15

 

 

0,173

 

 

1,5 1,5 1,190 , x3 1,198,

x4 1,199.

 

 

 

 

 

 

 

 

 

 

 

0,073

 

 

 

 

 

1, 425

 

 

 

 

 

 

Так как

 

1,199 1,198

 

0,001 , то x* 1,199 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.8. КОМБИНИРОВАННЫЙ МЕТОД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пусть f (a) f (b) 0, а f (x) и f

(x) сохраняют постоянные знаки на от-

резке a, b . Соединяя методы хорд и касательных, получаем метод на каждом этапе, которого находим значения по недостатку и значения по избытку точно-

го корня x*

уравнения f (x) 0. Пусть x

n

– последовательные приближения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

метода хорд,

xn – последовательные приближения метода касательных. Поша-

говая иллюстрация представлена на рис. 11.

 

 

 

 

Возможны 4 случая:

1)

 

 

 

2)

 

 

f (x) 0; f

(x) 0 ,

f (x) 0; f

(x) 0,

 

 

 

 

3)

 

 

 

4)

 

 

 

 

 

 

f (x) 0; f

(x) 0,

f (x) 0; f

(x) 0,

которые можно свести к первому случаю. y

x0

х1

х2

x

2

x

0

b

 

 

 

 

 

 

 

 

x*

 

x

1

 

х

 

 

 

 

 

 

 

Рис. 11

16

x0 a; x0 b .

 

 

 

f xn

 

 

 

 

xn 1 xn

 

 

xn xn .

 

 

 

 

xn

f (xn )

 

 

 

 

 

 

 

 

 

 

 

и 0 x*

Очевидно, что x

n

x* x

n

 

 

 

 

 

 

 

 

 

 

f xn xn 1 xn f xn .

xn xn xn .

По окончании процесса за значение корня x* лучше всего взять среднее арифметическое полученных значений: x* 12 xn xn .

 

 

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

f (x) x5 x 0, 2 0 . Так как f (1) 0;

 

f (1,1) 0 , то x* 1; 1,1 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

1,

 

 

 

 

 

 

 

 

 

 

3

0 на 1; 1,1 , поэтому x0 1; x0 1,1.

f (x) 5x

 

f (x) 20x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x0 ) f (1) 0, 2;

 

 

 

 

 

f (x0 ) f (1,1) 0,3105 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x0 ) f

(1,1) 6,3205 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0,1 0, 2

 

1,039;

 

 

 

 

1,1

0,31051

1,051.

x

1

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

0,51051

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

6,3205

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Так как

 

 

x1 x1

 

0,012 0 , то

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,089

0,012 0,0282

1,04469 ;

 

 

 

1,051

0,0313

1,04487 .

x

2

x

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,0595

 

 

 

 

 

 

5,1005

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,00018 , то x*

1

1,04469 1,04487 1,04478.

 

 

Так как

 

 

x

2

x

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ

2.1. ПОСТАНОВКА ЗАДАЧИ

Требуется найти решение системы линейных уравнений:

a11x1

 

a12 x2

 

21x1

 

a22 x2

a

 

31x1

 

a32 x2

a

 

 

 

 

 

 

 

 

 

... ...

 

...

 

a

n1

x

1

 

a

n2

x

2

 

 

 

 

 

a13x3

a23x3

a33x3

... ...

an3x3

 

...

 

a1n xn

 

...

 

a2n xn

 

...

 

a3n xn

... ... ... ...

 

...

 

ann xn

b1

b2

b3

... ...

bn

17

или в матричной форме: Ax = b , где

a

11

a

12

a

13

...

a

1n

 

 

x

 

 

 

b

 

 

 

 

 

 

 

 

 

1

 

 

 

1

 

a21

a22

a23

...

a2n

 

 

x2

 

 

b2

 

A= a

31

a32

a33

...

a3n

 

,

x = x

3

 

,

b b3

 

 

 

...

...

...

...

 

 

 

 

 

 

 

 

 

...

 

 

...

 

 

 

...

 

 

an2

an3

...

 

 

 

 

 

 

 

 

 

 

 

an1

ann

 

xn

 

 

bn

 

По правилу Крамера система n линейных уравнений имеет единственное

решение, если определитель системы отличен от нуля det A 0

и значение

каждого

из

неизвестных

определяется

следующим

образом:

det A

x j det Aj , j=1,...,n , где det A j – определитель матрицы, получаемой заме-

ной j -го столбца матрицы A столбцом правых частей b .

Непосредственный расчет определителей для больших n является очень трудоемким.

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

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

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

Норма матрицы является некоторой обобщенной оценкой значений элементов матрицы. Для еѐ вычисления можно использовать следующие выражения:

 

 

 

 

 

 

 

 

 

n

n

 

 

 

 

 

 

 

 

 

 

 

 

A

 

 

a2

,

 

 

 

 

 

 

 

 

 

 

 

 

 

i=1

j=1

ij

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A

 

max

aij

, i=1,2...,n ,

 

 

 

A

 

max

aij

, j=1,2...,n .

 

 

i j=1

 

 

 

 

 

 

 

 

 

 

 

 

j i=1

 

 

2.2. МЕТОД ПРОСТОЙ ИТЕРАЦИИ

Для того чтобы применить метод простой итерации, необходимо систему уравнений

Ax = b

(1)

18

с квадратной невырожденной матрицей A привести к виду

 

x = Bx +c ,

(2)

где B – квадратная невырожденная матрица с элементами bij , i,

j=1,2,...,n ,

x – вектор-столбец неизвестных xi , c – вектор-столбец с элементами ci , i 1, 2,..., n . Существуют различные способы приведения системы (1) к виду

(2). Рассмотрим самый простой.

Представим систему в развернутом виде:

a11x1

 

a12 x2

 

21x1

 

a22 x2

a

 

31x1

 

a32 x2

a

 

 

 

 

 

 

 

 

 

... ...

 

...

 

a

n1

x

1

 

a

n2

x

2

 

 

 

 

 

a13x3

a23x3

a33x3

... ...

an3x3

 

...

 

a1n xn

 

...

 

a2n xn

 

...

 

a3n xn

... ... ... ...

 

...

 

ann xn

b1

b2

b3 (3)

... ...

bn

Из первого уравнения системы (3) выразим неизвестную x1 :

x a-1 b

a

12

x

2

a

13

x

3

 

... a

1n

x

n

,

из

второго уравнения

неизвест-

1

 

11

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ную x2 :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

2

a-1

b

2

a

21

x

 

a

23

x

3

... a

2n

x

n

,

и т. д. В результате получим систе-

 

 

22

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

му:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

=

b

 

 

x

 

 

 

 

+

 

b

 

 

x

 

 

...

 

 

 

 

b

 

x

 

+

 

b

x

 

 

+

c

 

 

1

 

 

12

 

 

2

 

 

 

 

 

 

 

13

 

 

3

 

 

 

 

 

 

 

 

 

 

1,n-1

 

n-1

 

 

1n

 

 

n

 

 

1

x

2

=

b21x1

 

 

+

 

b23x3

+ ...

 

 

 

+

b2,n-1xn-1

b2n xn

+

c2

 

 

 

 

b31x1

 

 

 

 

 

b32 x2

 

 

 

 

 

 

 

 

 

b3,n-1xn-1

 

b3n xn

 

c3 (4)

x3

=

 

 

+

 

+ ...

 

 

 

+

+

+

... ... ... ... ... ... ... ...

 

...

 

...

 

...

 

 

... ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

n

=

b

n1

x

1

 

 

+

 

b

n2

x

2

n3

x

3

 

+

 

...

 

+

b

n,b-1

x

n-1

+

c

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Матричная запись системы (4) имеет вид (2). На главной диагонали матрицы B находятся нулевые элементы, а остальные элементы вычисляются по формулам:

b

 

=

aij

, c

=

b

i

, i, j=1,2,...,n, i j.

(5)

ij

 

 

 

 

 

aii

i

 

aii

 

 

 

 

 

 

 

Очевидно, что диагональные элементы матрицы A должны быть отличны от нуля. Выберем произвольно начальное приближение. Обычно в качестве

первого приближения берут xi0 = ci или xi0 = 0. Подставим начальное прибли-

19

жение

в правую часть (4). Вычисляя левые

части, получим значения

x1

, x1

, ..., x1

. Продолжая этот процесс дальше,

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

1

2

n

 

 

приближений, причем k+1 приближение строится следующим образом:

x1k+1

=

b12 xk2

 

k+1

=

 

 

k

x

2

b21x1

 

 

 

b31x1k

x3k+1

=

 

 

 

 

 

 

... ...

 

...

xk+1

=

b

n1

xk

 

n

 

 

1

+b13x3k

+b23x3k

+b32 xk2

... ...

+ bn2 x2k

 

 

...

 

b

 

xk

 

 

 

 

 

1,n-1

n-1

+

 

...

+

b

2,n-1

xk

 

 

 

 

 

 

n-1

+

 

...

+

b

3,n-1

xk

 

 

 

 

 

 

n-1

... ... ...

 

...

 

b

n3

xk

+

 

...

 

 

3

 

 

 

 

+b1n xkn

b2n xkn

+b3n xkn

... ...

+bn,b-1xnk-1

+c1

+c2

+c3

... ...

+cn

Последняя система представляет собой расчетные формулы метода про-

стой итерации.

Сходимость метода простой итерации. Известно следующее достаточ-

ное условие сходимости метода простой итерации.

Если элементы матрицы A удовлетворяют условию:

 

 

 

 

n

 

 

 

 

aii

 

 

 

aij

, i =1,2,...,n ,

(6)

 

 

 

 

 

 

j=1, j i

 

 

 

то итерационная последовательность xk сходится к точному решению x* .

 

Условие (7) называют условием преобладания диагональных элементов матрицы A , так как оно означает, что модуль диагонального элемента i -ой строки больше суммы модулей остальных элементов этой строки, i = 1,2,...,n .

Необходимо помнить, что условие сходимости (6) является лишь достаточным. Его выполнение гарантирует сходимость метода простых итераций, но его невыполнение, вообще говоря, не означает, что метод расходится.

Справедлива следующая оценка погрешности:

 

 

 

 

β

max

 

xk+1

xk

 

 

max

x* xk

 

, i=1,2,...,n ,

(7)

 

 

 

 

i

i

 

1-β

 

i

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где β max

bij

i,

j = 1,2,...,n .

 

 

 

 

 

Правую часть оценки (7) легко вычислить после нахождения очередного приближения.

Иначе достаточное условие (6) для матрицы B может быть переформулирована так: если B 1, то итерационный процесс (6) сходится к точному ре-

шению системы.

Критерий окончания. Если требуется найти решение с точностью , то в силу (7) итерационный процесс следует закончить, как только на k+1 -ом ша-

 

β

 

 

xk

 

ге выполнится неравенство:

 

max

xk+1

< ε, i = 1, 2,...,n .

 

 

 

1

β

 

i

i

 

 

 

 

 

 

20