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

ChM_V_INZhENERNYKh_RASChYoTAKh_chast_1

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

Рисунок 1.16 – Фрагмент таблицы Exсel для вычисления корня уравнения в интервале [0,5;1,5]

Рисунок 1.17 - Фрагмент таблицы Exсel для вычисления корня уравнения на отрезке [-2 ; -1] методом итераций

Вариант решения этого уравнения методом касательных представлен на рисунке 1.18 в режиме отображения формул, а на рисунке 1.19 в режиме отображения значений. Можно отметить, что методу Ньютона для вычисления корня с точностью 0,001 понадобилось все-

31

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

Рисунок 1.18 - Фрагмент таблицы Exсel для вычисления корня уравнения на отрезке [0,5 ; 1,5] методом касательных

Рисунок 1.19 - Фрагмент таблицы Exсel для вычисления корня уравнения методом Ньютона в интервале [0,5 ; 1,5]

Пример 1.5

Используя встроенную функцию roots пакета MATLAB, найти корни алгебраического уравнения x3-7x+6 = 0. В квадратных скобках задаются коэффициенты многочлена, в порядке убывания степеней х.

f=inline('x^3-7*x+6') figure;

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

x=roots([1 0 -7 6])

Корни уравнения

x = -3.0000

2.0000

1.0000

32

1.5 Задание к расчетно-графической работе №1

Вычислить минимальный положительный корень уравнения f(x)=0 своего варианта, представленного в таблице 1.1. Вычисления выполнить:

­средствами электронной таблицы Excel;

­с использованием макроса на языке VBA;

­средствами пакета MatLab.

Точность вычисления δ= 0.0001. Метод вычисления корня указан в таблице 1.1.

Таблица 1.1 Варианты заданий для РГР №1

Функция

f(x)

Метод вычисления

вар.

уравнения f(x)=0

 

 

 

 

 

 

 

 

1

2

 

3

 

 

 

 

 

 

1.

Ln(x) - e-x – 0,9

 

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

 

 

 

 

 

 

2.

Ln(x) - Sin2(x)

 

Метод простой итерации

 

 

 

 

 

 

3.

Cos(x)-2Cos(3x)

 

Метод Ньютона

 

 

 

 

 

 

4.

xSin(x)-Cos(x-1)

 

Модифицированный метод Ньютона

 

 

 

 

 

 

5.

1 - x + Sin(x) - lg(1+x)

 

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

 

 

 

 

 

 

6.

Sin(x+π/4) - x/3

 

Метод простой итерации

 

 

 

 

 

 

7.

e-x-Sin(x- π/4)

 

Метод Ньютона

 

 

 

 

8.

 

 

 

 

 

Cos(x) +0,5

 

Модифицированный метод Ньютона

 

 

 

 

9.

Lg(x)-e-x-0,5

 

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

 

 

 

 

10.

Sin(x)+5Sin(3x)+0,5

 

Метод простой итерации

 

 

 

 

11.

(1-2/x)e-x

 

Метод Ньютона

 

 

 

 

 

 

33

Продолжение Таблицы 1.1

1

2

 

3

 

 

 

 

 

12.

Ln(1+x)/(ex-1) – 0,3

Модифицированный метод Ньютона

 

 

 

 

 

13.

Cos(x)-Ln(x)

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

 

 

 

 

 

14.

Ln2(x+1)-Cos(x+1)

Метод простой итерации

 

 

 

 

 

15.

ex - e-x -5

Метод Ньютона

 

 

 

 

 

16.

Ln(x) - Sin(x)

Модифицированный метод Ньютона

 

 

 

 

 

17.

3Cos(x)-1/x

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

 

 

 

 

 

18.

Sin(x) - 1/x

Метод простой итерации

 

 

 

 

 

19.

Ln(1+x)/x - 2/ π

Метод Ньютона

 

 

 

 

 

20.

e(1-x)Ln(1+x2)-0,4

Модифицированный метод Ньютона

 

 

 

 

 

21.

Cos(x+π/4)-Ln(2+x)+2

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

 

 

 

 

 

22.

Ln(x) - 1/x

Метод простой итерации

 

 

 

 

 

23.

Lnx)xe-x

Метод Ньютона

 

 

 

 

 

24.

1+Ln(x) - π/x

Модифицированный метод Ньютона

 

 

 

 

 

25.

x3-3x-5

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

 

 

 

 

 

26.

Ln(x) - 1/x2

Метод простой итерации

 

 

 

 

Cos(x-3 π/4)/

 

 

Метод Ньютона

27.

 

 

 

 

 

28.

Lg(x)-πCos(x)2

Модифицированный метод Ньютона

 

 

 

29.

e2-x - x2

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

30.

Cos(x+π/4) - Ln(2+x)+2

Метод простой итерации

 

 

 

 

 

34

2 РАСЧЕТНО-ГРАФИЧЕСКАЯ РАБОТА №2 Решение систем линейных алгебраических уравнений

методом (прямые методы)

2.1 Краткие теоретические сведения

2.1.1 Формулировка задачи

Во многих инженерных и научных расчетах приходится решать системы линейных алгебраических уравнений (СЛАУ)

a11x1 a12x2

... a1n xn

b1

 

 

 

a22x2

... a2n xn

b2

 

a21x1

 

 

 

 

 

 

 

,

(2.1)

 

 

 

 

 

 

 

 

 

 

 

 

a

x a

n 2

x

... a

nn

x

b

 

 

n1 1

 

2

 

n

n

 

когда число неизвестных

x1 , x2 , , xn равно числу n уравнений.

В матричной форме эта задача записывается следующим образом:

 

 

 

 

 

 

 

?

(2.2)

 

 

 

Ax

b,

x

где A - (n n) - матрица коэффициентов,

b - n-компонентный вектор правых частей уравнений (столбец свободных членов),

x - искомый n-компонентный вектор неизвестных, выражающиеся через свои компоненты:

a

a

...

a

 

 

b

 

11

12

 

1n

 

 

1

 

a21

a22

...

a2n

b2

 

A ... ...

...

...

;

b ...

;

 

 

 

 

 

 

 

 

 

an2

...

 

 

 

 

 

an1

ann

 

bn

 

 

x

 

 

 

 

1

 

 

 

 

x2

 

?

 

x

 

 

(2.3)

 

 

 

...

 

 

 

 

 

 

 

 

 

xn

 

 

 

Из курса линейной алгебры известно, что система (2.1) имеет единственное решение (единственный набор значений x1, x2 , , xn , обращающий уравнения в тождества), если определительdet(A) матрицы A не равен нулю. Этот случай иллюстрируется рисунком 2.1 для системы двух линейных уравнений (i)-(ii).

35

a11x1 a12 x2

b1

(i)

 

a22 x2

b2

(ii)

a21x1

Рисунок 2.1 – Случай единственного решения.

Рисунок 2.2 – Случай

 

Рисунок 2.3 – Случай

отсутствия решения.

 

бесконечного числа решений.

Точке пересечения прямых, соответствующих уравнениям, отве-

чает единственное решение ,

 

системы.

1

2

 

Если определитель det(A) матрицы A равен нулю, то система уравнений вырожденная, и она, либо не имеет решения, либо имеет бесконечно много решений (в зависимости от значений правых частей). Вырожденные случаи для системы для системы (i)-(ii) показаны на рисунках 2.2 и 2.3.

Сразу же отметим, что при численном решении задачи (2.2) не применяется (при n > 4) традиционный в линейной алгебре способ решения систем по формулам Крамера (через определители, вычисляемые как произведения коэффициентов матрицы А) из-за большого объема вычислений уже при сравнительно малых n .

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

36

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

2.1.2 Метод Гаусса (метод исключения неизвестных)

Метод Гаусса является прямым методом решения систем линейных уравнений. Его идея состоит в том, что исходную систему (2.1) с помощью равносильных преобразований приводят к другой, более простой системе (с верхней треугольной матрицей), для которой несложно вычислить неизвестные. И поскольку преобразования равносильные, то вычисленные неизвестные являются также решением исходной системы. Вырожденность системы обнаруживается (при точных вычислениях) в процессе решения.

Разберѐм метод на примере решения представленной далее системы уравнений (I),(II),(III) с действительными коэффициентами; слева даѐтся запись системы в общем виде.

Прямой ход метода Гаусса

 

a11x1 a12 x2

a13x3

b1

 

 

 

 

(a11 0)

 

 

2x1

1x2

1x3

 

1

(I)

 

a 21x1

a 22 x2

a 23x3

b2

 

l21 a 21

a11 4

2 2

 

4x1

3x2

 

0x3

 

2

(II)

 

 

 

 

 

 

a

31

x

a

32

x

2

a

33

x

3

b

l

31

a

31

a

11

2

2 1

2x

2x

2

3x

3

9 (III)

 

 

1

 

 

 

 

3

 

 

 

 

 

 

1

 

 

 

 

Решение системы начинается с прямого хода, который выполняется по шагам.

На 1-ом (k=1) шаге прямого хода перепишем 1-ое (k-ое) уравнение без изменений. С помощью этого уравнения исключим неизвестное

xk x1 из последующих уравнений. Для этого предварительно вычислим множители li,k l21 и li,k l31 - второй индекс «k» соответствует k-му шагу, а первый индекс «i» указывает на уравнение, к которому относится вычисленный множитель. Затем преобразуем (II)-oe уравнение по схеме: (II) l2,1 (I) = (IIʹ), т.е. вычтем из (II)-го уравнения

(I)-ое, предварительно умноженное (почленно) на множитель l2,1 . После этого в преобразованном уравнении (II'), коэффициент при x1 оказывается равным нулю, т.к.

a 21x1 l21a11x1 a 21 l21a11 x1 a 21 a 21 a11 a11 x1 0 x1 0 ,

37

Для других коэффициентов и правой части имеем:

 

 

a

x l a x

a

22

l a x a

, x

;

 

 

 

 

 

 

 

 

 

 

 

22

2

 

 

21

12

2

 

 

21

12

2

22

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a23x3 l21a13x3 a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23 l21a13 x3 a

23 x3 ;

b2 l21b1 b2.

Действуя аналогично по схеме (III)

l31

(I) = (IIIʹ)

 

исключаем x1 из

третьего уравнения. Результат действий после 1-го шага таков:

 

a11x1 a12 x2

 

a13x3

b1

 

 

 

 

 

 

 

2x1 1x2 1x3

1

(I)

 

a

x

 

 

a

x

 

b

 

 

 

(a 0)

 

 

1 x

 

2x

 

0

(II ) (II) - 2 (I)

 

2

3

 

 

 

 

 

2

3

22

 

 

23

 

 

2

 

 

 

 

22

 

 

 

 

 

 

 

 

 

 

a

x

2

a

x

3

b

l

32

a

a

3 1 3

 

3x

2

4x

3

10

(III ) (III) 1 (I)

 

32

 

 

33

 

 

3

 

 

32

22

 

 

 

 

 

 

 

 

 

 

На 2-ом (k=2) шаге с помощью второго уравнения (IIʹ) производится

исключение xk

x2 из последующего (IIIʹ)-гo уравнения; коэффици-

ент l32 для

исключения указан слева от уравнения (IIIʹ)

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

a

11x1

a12 x2

a13 x3

b1

 

2x1 1x2

1x3

 

1

(I)

 

 

a

x

 

a

x

 

b

 

1 x

 

2x

 

 

0

(II )

 

 

2

3

 

2

3

 

22

 

23

 

2

 

 

 

 

 

 

 

 

 

a

x

3

b

 

 

 

10x

3

10

(III ) (III ) 3 (II )

 

 

 

 

 

33

 

3

 

 

 

 

 

 

 

Обратный ход метод Гаусса (обратная подстановка)

Из уравнения (IIIʹʹ):

x b a

a

0

;

x 10 10 1

.

3 3 33 ;

33

 

3

 

Из уравнения (IIʹ):

 

 

 

 

 

 

0 ;

x2 0 ( 2) 1 1 2 .

x2 b2

a23x3

a22

; a22

Из уравнения (I):

 

x1 b1

a12x2

a13x3 a11 ;

x1 1 1 2 1 1 1 1.

Т.е. обратный ход метода Гаусса заключается в том, что найденное из последнего уравнения (IIIʹʹ) неизвестное x3 , подставляется в предыдущее уравнение (IIʹ), что позволяет вычислить x2 . А подстановка найденных значений в (I)-ое уравнение позволяет определить и x1 .

Отметим, что произведение нижней треугольной матрицы L, дополненной единицами по главной диагонали, на полученную верхнюю треугольную матрицу U даѐт исходную матрицу A:

1

 

 

2

1

1

2

1

1

 

LU

2

1

 

 

1

2

 

4

3

0

A

 

 

 

 

 

 

 

 

 

 

 

 

 

1 3

1

 

 

10

 

2

2

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

38

ak( k, k)

То есть при решении для матрицы A фактически выполнено LU-разложение, которое является основой важных алгоритмов решения СЛАУ.

Главные элементы и вырожденность системы При вычислениях отмечалось, что диагональные элементы мат-

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

0z1 3z2 4z3 2;

 

 

 

 

1z2 2z3 1;

z1 ? z2

? z3 ? ,

 

1z1

(2.4)

 

2z2 2z3 9;

 

 

 

3z1

 

 

 

то рассмотренный алгоритм не сработает, так как l21 a21a11 10 .

Но можно заметить, что

(2.4) – это всѐ та же, ранее рассмотренная и

решѐнная система,

для

которой здесь выполнена замена z1 x3 ,

z3 x1 (в матрице

смена обозначений проявилась перестановкой

1-го и 3-го столбцов). Кроме того, в исходной системе (I)-(III) были переставлены 1-ое и 2-ое уравнения (строки в расширенной матрице, включающей столбец правых частей), в результате чего нулевой элемент оказался главным элементом.

Поэтому сам напрашивается способ решения задачи (2.4) – так переставить уравнения (или строки в расширенной матрице), чтобы главные элементы были не нулевыми. Однако деление на не нулевые, но достаточно малые по абсолютной величине главные элементы, вызовет большое увеличение используемых при исключении множителей li,k перед вычитаемым уравнениями. В результате чего коэффициенты в вычитаемом уравнении могут на много порядков превысить (по абсолютной величине) коэффициенты в уменьшаемом (уравнении). Это может привести к резкой потере точности при численном решении. Из этих соображений перед выполнением исключения на k-ом шаге прямого хода выбирают для перестановки из уравнений (с k-го по n-ое) уравнение с наибольшим по абсолютной величине эле-

39

ментом в k-ом столбце. Дополненный такой процедурой алгоритм решения системы линейных уравнений называют:

метод Гаусса с выбором главного элемента по столбцу.

Важные замечания

1. Если в результате выбора главного элемента по столбцу он всѐ же оказался нулевым, то это означает, что система вырожденная. Раскрыв определитель (абсолютная величина которого при преобразованиях метода Гаусса не меняется) по 1-му столбцу, например, у матрицы следующей системы

a11x1

0

Шаг k=2

0

a12 x2 a13x3 0 x2 a 23x3 0 x2 a33x3

b1

b ,

2

b

3

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

по оценкам безразмерного числа обусловленности cond (A) AA 1

матрицы системы, где A норма матрицы (см. в следующей разделе).

2. Если прямой ход метода Гаусса доведѐн до конца и матрица системы приведена к верхней треугольной, то произведение еѐ диагональных элементов даѐт значение определителя, причѐм, если было произведено нечѐтное число p перестановок строк, то произведение берѐтся с противоположным знаком. Например, для системы (I)-(III):

 

 

 

 

2

1

1

 

 

det(A) a

a

a

( 1) p

0

1

2

2 1 10 1 p 20;

p 0.

11

22

n,n

 

 

 

 

 

 

 

 

 

 

0

0

10

 

 

 

 

 

 

 

 

 

 

 

3. В результате длительных поисков математики всѐ же нашли примеры матриц, для которых машинные решения СЛАУ с выбором главного элемента не по всей матрице, а по ведущему столбцу приводят к неустойчивости решения, однако в вычислительной практике мало используют более трудоѐмкий выбор главных элементов по всей матрице.

40

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