36852

Численные методы решения задач линейной алгебры

Лабораторная работа

Математика и математический анализ

Численные методы решения задач линейной алгебры specM вычисляет собственные значения и собственные векторы квадратной матрицы M. specM Собственные числа матрицы ns = 1. Х собственные векторы соответствующие собственным значениям из матрицы Y. Использование функции inv Пример вычисления обратной матрицы.

Русский

2013-09-23

44.5 KB

6 чел.

Лабораторная работа 4а.

Численные методы решения задач линейной алгебры

spec(M) - вычисляет собственные значения и собственные векторы  квадратной матрицы M.

Листинг 3.34. Использование функции spec

-->M=[3 -2;-4 1]

M =

3. - 2.

- 4. 1.

-->spec(M) //Собственные числа матрицы

ans =

- 1.

5.

//Х - собственные векторы,

-->соответствующие собственным значениям из матрицы Y.

-->[X,Y]=spec(M)

Y =

! - 1. 0 !

! 0 5. !

X =

! 0.4472136 - 0.7071068 !

! 0.8944272 0.7071068 !

inv(A) - вычисляет матрицу, обратную к A;

Листинг 3.35. Использование функции inv

-->//Пример вычисления обратной матрицы.

-->A=[1 2 3 5;0 1 3 2;4 2 1 1;2 3 0 1];

-->inv(A)

ans =

! 0.0285714 - 0.1428571 0.3428571 - 0.2 !

! - 0.1428571 0.2142857 - 0.2142857 0.5 !

! - 0.2 0.5 0.1 - 0.1 !

! 0.3714286 - 0.3571429 - 0.0428571 - 0.1 !

-->//При умножении обратной матрицы на исходную,

-->//получилась матрица, близкая к единичной.

-->inv(A)*A

ans =

1. - 1.110D-16 0. 0.

0. 1. - 5.551D-17 5.551D-17

0. 0. 1. 1.388D-17

0. 0. 6.939D-17 1.

-->//При попытке обратить вырожденную матрицу

-->//(определитель равен или близок к нулю)

-->//пользователь получит сообщение об ошибке.

-->B=[1 2 3;1 4 5;1 6 7];

-->inv(B)

!--error 19

Problem is singular

pinv(A[,tol]) - вычисляет псевдообратную матрицу для матрицы A с точностью tol (необязательный параметр);

Листинг 3.36. Использование функции pinv

-->pinv(A)

ans =

0.0285714 - 0.1428571 0.3428571 - 0.2

- 0.1428571 0.2142857 - 0.2142857 0.5

- 0.2 0.5 0.1 - 0.1

0.3714286 - 0.3571429 - 0.0428571 - 0.1

linsolve(A,b) - решает систему линейных алгебраических уравнений вида

.

Листинг 3.37. Пример использования функции linsolve

-->//Решение системы линейных уравнений

-->//{x1+2x2-7=0; x1+x2-6=0}.

-->//Свободные коэффициенты вводятся как вектор-столбец

-->//и с учетом знаков.

-->A=[1 2;1 1];b=[-7;-6];

-->x=linsolve(A,b)

x =

5.

1.

-->//Результатом операции A*x+b является вектор, достаточно

-->//близкий к нулю, это значит, что система решена верно.

-->A*x+b

ans =

1.0D-14 *

- 0.6217249

0.0888178

-->//Решение системы {x1+x2-1=0; x1+x2-3=0}

-->A=[1 1;1 1]; b=[-1;-3];

-->//Система не имеет решений:

-->linsolve(A,b)

WARNING:Conflicting linear constraints!

ans =

[]

-->//Решение системы {3x1-x2-1=0; 6x1-2x2-2=0}.

-->//В случае, когда система имеет бесконечное

-->//множество решений, SCILAB выдаст одно из них.

-->A=[3 -1;6 -2];

-->b=[-1;-2];

-->x=linsolve(A,b)

x =

0.3

- 0.1

-->//Проверка неверна

-->A*x+b

ans =

1.0D-15 *

- 0.1110223

- 0.2220446

rref(A) - осуществляет приведение матрицы A к треугольной форме, используя метод исключения Гаусса;

Листинг 3.38. Пример использования функции rref

--> A=[3 -2 1 5;6 -4 2 7;9 -6 3 12]

A =

3 -2 1 5

6 -4 2 7

9 -6 3 12

--> rref(A)

ans =

1.0000 -0.6667 0.3333 0

0 0 0 1.0000

0 0 0 0

lu(М) - выполняет треугольное разложение матрицы M;

M = C · L · U, где L и U - соответственно нижняя и верхняя треугольные матрицы, все четыре матрицы квадратные и одного порядка. Такие вычисления называют LU-разложением.

Листинг 3.39. Использование функции lu

-->A=[2 -1 5;3 2 -5;1 1 -2]

A =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

-->[L,U]=lu(A)

U =

3. 2. - 5.

0. - 2.3333333 8.3333333 !

0. 0. 0.8571429 !

L =

0.6666667 1. 0.

1. 0. 0.

0.3333333 - 0.1428571 1.

-->LU=L*U

LU =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

qr(М) - выполняет разложение матрицы М на ортогональную и верхнюю треугольную матрицы;

M = Q · R, где Q - ортогональная матрица, а R - верхняя треугольная матрица. Этот

процесс называют QR-разложением.

Листинг 3.40. Использование функции qr

-->[Q,R]=qr(A)

R =

- 3.7416574 - 1.3363062 1.8708287

0. - 2.0528726 7.0632734

0. 0. 0.7811335

Q =

- 0.5345225 0.8350668 0.1301889

- 0.8017837 - 0.4523279 - 0.3905667

0.2672612 - 0.3131501 0.9113224

-->Q*R

ans =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

svd(М) - выполняет сингулярное разложение размером n×m; результатом работы функции может быть либо сингулярное разложение, либо вектор, содержащий сингулярные значения матрицы.

M = U · S · VT, где U и V-ортогональные матрицы размером m × m и n × n соответственно, а S-диагональная матрица, на диагонали которой расположены сингулярные числа матрицы M

Листинг 3.41. Использование функции svd

-->[U,S,V]=svd(A)

V =

- 0.1725618 0.9641403 - 0.2016333

- 0.3059444 0.1421160 0.9413825

0.9362801 0.2241352 0.2704496

S =

7.8003308 0. 0.

0. 3.6207331 0.

0. 0. 0.2124427

U =

0.5951314 0.8028320 0.0357682

- 0.7449652 0.5678344 - 0.3501300

- 0.3014060 0.1817273 0.9360180

-->U*S*V’

ans =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

-->s=svd(A)

s =

7.8003308

3.6207331

0.2124427

kernel(М[,tol[,fl]]) - определение ядра матрицы М, параметры tol и fl являются необязательными. Первый задает точность вычислений, второйиспользуемый при вычислении алгоритм и принимает значения ’qr’ или ’svd’.

Ядро матрицы - это множество векторов X. Поиск ядра матрицы сводится к решению однородной системы линейных уравнений AX = 0. Если при вызове функции X=kernel(A) матрица X окажется непустой, то действительно AX = 0.

Листинг 3.42. Использование функции kernel

-->A=[4 1 -3 -1;2 3 1 -5;1 -2 -2 3]

A =

4. 1. - 3. - 1.

2. 3. 1. - 5.

1. - 2. - 2. 3.

-->X=kernel(A)

X =

0.3464102

0.5773503

0.4618802

0.5773503


 

А также другие работы, которые могут Вас заинтересовать

7740. Трансактный анализ Э. Берна 56.5 KB
  Трансактный анализ Э. Берна Э. Берн создал популярную концепцию, корни которой уходят в психоанализ. Однако концепция Берна вобрала в себя идеи и понятия как психодинамического, так и бихевиористского подхода, сделав акцент на определении...
7741. Гештальттерапия Ф. Перлза 64.5 KB
  Гештальттерапия Ф. Перлза Метод, созданный американским психологом Ф. Перлзом под влиянием идей гештальтпсихологии, экзистенциализма, психоанализа, получил большую практическую популярность. Ф. Перлз перенес закономерности образования фигуры...
7742. Методы практической коррекции 171.5 KB
  Методы практической коррекции § 1. ОБЩАЯ ХАРАКТЕРИСТИКА МЕТОДА Игровая терапия - метод психотерапевтического воздействия на детей и взрослых с использованием игры. В основе различных методик, описываемых этим понятием, лежит признание того, что...
7743. Арттерапия как психокоррекционный метод 220 KB
  Арттерапия как психокоррекционный метод. ОБЩАЯ ХАРАКТЕРИСТИКА МЕТОДА Арттерапия возникла в 30-е годы нашего века. Первый урок применения арттерапии относится к попыткам коррекции эмоционально-личностных проблем детей, эмигрировавших в США из...
7744. Методы поведенческой коррекции 157 KB
  Методы поведенческой коррекции. Метод систематической десенсибилизации и сенсибилизации В 1958 г. вышла книга австрийского психотерапевта Д. Вольпе Психотерапия реципрокным торможением. В теории реципрокного торможения Вольпе речь идет о тормо...
7745. Психодрама как психокоррекционный метод 128.5 KB
  Психодрама как психокоррекционный метод. Описание метода Психодрама - это метод групповой работы, представляющий ролевую игру, в ходе которой используется драматическая импровизация как способ изучения внутреннего мира участников группы, и...
7746. Индивидуальная психокоррекция 107.5 KB
  Индивидуальная психокоррекция. Показания к индивидуальной психокоррекции Психокоррекция на практике применяется в двух формах: индивидуальной и групповой. В случае индивидуальной психокоррекционной работы психолог работает с клиентом один на один...
7747. Групповая психокоррекция 244.5 KB
  Групповая психокоррекция. Специфика групповой формы психокоррекции Специфика групповой психокоррекции заключается в Целенаправленном использовании групповой динамики, т.е. всей совокупности взаимоотношений и взаимодействий, возникающих между участ...
7748. Виды коррекционных групп 439 KB
  Виды коррекционных групп. Тренинговые группы и социально-психологический тренинг Работа тренинговых групп История создания тренинговых групп (Т-групп) тесно связана с именем К. Левина. Работая сначала в лаборатории, затем в полевых условиях, К. Л...