
- •Основы работы в matlab. Векторы и матрицы.
- •Введение
- •Среда matlab
- •1.1. Основный окна Matlab и выполнение элементарных вычислений
- •1.2. Редактирование и отладка м-файлов
- •Переменные в matlab
- •3. Массивы в matlab
- •4. Задачи линейной алгебры (векторы и матрицы)
- •1. Функции операций над векторами:
- •Функции определения матриц и операций над ними:
- •Функции, реализующие численные алгоритмы решения задач линейной алгебры:
- •Решение некоторых задач линейной алгебры
- •4. Решение некоторых задач алгебры матриц
- •5. Решение систем линейных уравнений
- •6. Собственные значения и собственные векторы
- •7. Норма и число обусловленности матрицы
- •8. Задания для самостоятельного решения
Решение некоторых задач линейной алгебры
4. Решение некоторых задач алгебры матриц
Напомним основные определения алгебры матриц. Если т*п выражений расставлены в прямоугольной таблице из т строк и п столбцов, то говорят о матрице размера т * п. Выражения аij, называют элементами матрицы. Элементы аij (i=1,…n), стоящие в таблице на линии, проходящей из левого верхнего в правый нижний угол квадрата п* п, образуют главную диагональ матрицы. Матрица размером т*п(т≠ п) называется прямоугольной. Если т=п, то матрицу называет квадратной порядка п. В частности, матрица типа 1 * п - это вектор-строка, а матрица размером т*1 является вектором-столбцом. Число (скаляр) можно рассматривать как матрицу типа 1*1.
Квадратная матрица А = {aij} размером п * п называется:
■ нулевой, если все ее элементы равны нулю А = {аij = 0};
■ верхней треугольной, если все элементы, расположенные ниже главной диагонали, равны нулю А = {аij = 0, для всех i>j};
■ нижней треугольной, если все элементы, расположенные выше главной диагонали, равны нулю А = {аij = 0, для всех i >j);
■ диагональной, если все элементы, кроме элементов главной диагонали, равны нулю А = {аij =0, для всех i≠j};
■ единичной, если элементы главной диагонали равны единице, а все остальные - нулю А = {aij = 0, для всех i≠j и aij=1 для всех i=j,
■ c квадратной матрицей связано понятие определителя, или детерминанта. Определителем матрицы А является число det A или D, вычисляемое по правилу:
где сумма распределена
на всевозможные перестановки (i1,
i2,…
in)
элементов
1, 2, ... п и,
следовательно, содержит п
слагаемых,
причем
= 0, если перестановка четная, и
= 1, если она нечетная. Квадратная матрица
называется невырожденной, если ее
определитель отличен от нуля. В противном
случае она называется вырожденной,
или сингулярной.
С матрицами можно проводить операции
сравнения, сложения и умножения. Две
матрицы А = {аij}
и В = {bij.)
считаются равными, если они одного
типа, то есть имеют одинаковое число
строк и столбцов и соответствующие
элементы их равны {аij}
= {bij}.
Суммой двух матриц А = {аij}
и В = {bij}
одинакового типа является матрица
С= {сij} того
же типа, элементы которой равны сумме
соответствующих элементов матриц А
= {аij}
иB=
{bij},
то есть {сij}
= {аij+bij}.
Разность матриц определяется
аналогично. Произведением числа
на матрицу А = {аij}
(или произведением матрицы на число)
называется матрица, элементы которой
получены умножением всех элементов
матрицы А на число
,
то есть А = A
= А{
*аij}.
Произведением матриц А = {аij)
размерностью m*n
и B= {bij}
размерностью р*s
является матрица С размерностью т
х s, каждый
элемент которой можно представить
формулой {сij}
= {ai1b1j+
ai2b2j+
... + ainbin,
i= 1, ...m,
j=1,..,s}.
Таким образом, произведение матриц
АВ имеет смысл только тогда, когда
количество строк матрицы А совпадает
с количеством столбцов В. Кроме
того, произведение двух матриц не
подчиняется переместительному закону,
то есть АВ≠
ВА. В тех случаях, когда АВ
= ВА, матрицы А и В называются
перестановочными.
Если в матрице А = {аij} размерностью т*n «заменить строки соответствующими столбцами, то получится транспонированная матрица АT = [аij]. В частности, для вектора-строки транспонированной матрицей является вектор-столбец.
Обратной матрицей по отношению к данной А = {аij) размерностью n*n, называется матрица А-1 = {Аij} того же типа, которая, будучи умноженной как справа, так и слева на данную, в результате дает единичную матрицу Е = {dij} :A*A-1=А-1*А=Е. Нахождение обратной матрицы для данной называется обращением данной матрицы. Всякая неособенная матрица имеет обратную.
Приведем определения некоторых специальных матриц. Квадратная матрица называется:
■ симметрической, если АТ = А;
■ кососимметрической, если АT = -А;
■ ортогональной, если | А| = det A ≠ 0 и АТ = А-1;
■ идемпотентной, если А2 = А;
■ инволютивной, если А2 = Е, где Е - единичная матрица.
Перейдем к конкретным задачам.
Задача 1.
Для матриц А, В и С проверить выполнение следующих тождеств:
а) (А- В)С=А(В-С);
б) (АТ+В)С=АТ* С+В* С.
В листинге 69 видно, что матрицы, получившиеся в результате вычисления левой и правой частей первого тождества равны, следовательно, предположение а) истинно.
Листинг 69
>> А=[2 3 -2;1 2 5]
А =
2 3 -2
1 2 5
>> В=[2 -1;3 1;1 0]
В =
2 -1
3 1 1 0
>> С=[3 -2;1 4]
С =
3 -2
1 4
>> (А*В)*С
ans =
3 -18
40 -22
>> А*(В*С)
ans =
34 -18
40 -22
Листинг 69 содержит исследование второго тождества. Здесь из левой части равенства вычитаем правую и получаем нулевую матрицу, что также приводит к выводу об истинности предположения б).
Листинг 69.
>> (А'+В)*С-(А'*С+В*С)
ans =
0 0
0 0
0 0
Задача 2.
Проверить, является ли матрица симметрической.
По определению, для симметрической матрицы А должно выполняться равенство А = AT. Решение, приведенное в листинге 70, показало, что в результате вычитания из матрицы А транспонированной матрицы AT получена нулевая матрица, то есть тождество А = AT =>А- AT=0 выполнено и заданная матрица симметрическая.
Листинг 70.
>> А=[2 -1 3; -1 0 5; 3 5 -4] А =
2 -1 3
-1 0 5
3 5 -4
>> А-А'
ans =
0 0 0
0 0 0
0 0 0
Задача 3.
Проверить, является ли матрица кососимметрической.
Если матрица А кососимметрическая, то для нее должно выполняться свойство -А= АTили АT+А = 0. Проверив это равенство для заданной матрицы (листинг 71), мы убеждаемся в его истинности.
Листинг 71
>> А=[0 -1 3;1 0 -5;-3 5 0]
А =
0 -1 3
1 0 -5
-3 5 0
>> А'+А
ans =
0 0 0
0 0 0
0 0 0
Задача 4.
Проверить, является ли матрица ортогональной.
По определению, ортогональная матрица А обладает следующими свойствами:
• определитель матрицы А отличен от нуля det A ≠ 0;
• транспонированная матрица А равна обратной к А матрице, то есть АT= А-1.
Таким образом, для решения поставленной задачи необходимо вычислить определитель заданной матрицы, и убедиться в том, что он не равен нулю. Затем транспонировать исходную матрицу и найти обратную ей. Если визуально сложно убедиться в том, что транспонированная матрица равна обратной, можно вычислить их разность. В результате должна получиться нулевая матрица (листинг 72).
Листинг 72
>> А=[1/3 0 -2/3 -2/3/0 1 0 0;-2/3 0 1/3 -2/3/-2/3 0 -2/3 1/3]
А =
0.3333 0 -0.6667 -0.6667 0 1.0000 0 0
-0.6667 0 0.3333 -0.6667
-0.6667 0 -0.6667 0.3333
>> det(А)%Определитель матрицы А отличен от нуля
ans = -1
>> A'-inv(A)
>> %В результате вычитания из транспонированной матрицы А
>> %обратной ей матрицы получаем нулевую матрицу.
>> %Это значит что А – ортогональная.
ans =
1.0е-015 *
0 0 0.1110 0
0 0 0 0
0 0 -0.1110 0.1110
0 0 0 0
Задача 5.
Проверить, является ли матрица А идемпотентной. Показать, что матрица В = 2А - Е, где Е - единичная матрица, инволютивна.
Для того чтобы выяснить, является ли матрица А идемпотентной, ее необходимо возвести в квадрат и сравнить с исходной, так как, по определению, для идемпотентной матрицы истинно тождество А = А2. Определить, является ли матрица В инволютивной, можно, сравнив ее с единичной матрицей. Подробно решение задачи приведено в листинге 73.
Листинг 73
>> А=[6 -15;2 -5]
А =
6 -15
2 -5
>> %Матрица А идемпотентна, так как А=А2
>> А^2
ans =
6 -15
2 -5
>> %Формирование матрицы В по формуле, eye(2) - единичная матрица 2x2
>> В=2*А-еуе(2) В =
11 -30
4 -11
>> %Матрица В инволютивна, так как В2=еуе(2)
>> В^2-еуе(2)
ans =
0 0
0 0
Задача 6.
Решить матричные уравнения А*Х=ВиХ*А = В и выполнить проверку.
Матричное уравнение - это уравнение вида А * Х= В или Х* А = В, где Х- это неизвестная матрица. Если умножить матричное уравнение на матрицу, обратную А, то оно примет вид: А-1АХ= А-1В или ХАА-1 = ВА-1. Так как А-1А = АA-1 = Е, а ЕХ = ХЕ=X, то неизвестную матрицу X можно вычислить так: X = А-1В или Х= ВА-1. Понятно, что матричное уравнение имеет единственное решение, если А и В - квадратные матрицы n-го порядка и определитель матрицы А не равен нулю. Как решить матричное уравнение в MATLAB, показано в листинге 6.71.
Листинг 74.
>> А=[3 2;4 3]
А =
2
3
>> В=[-1 7;3 5]
В =
-1 7
3 5
>> %Решение матричного уравнения А*Х=В
>> %Первый способ >> Х=А\В
X =
-9 11
13 -13
>> %Второй способ
>> X=inv(A)*B
X =
-9 11
13 -13
>> %Проверка А*Х-В-0
>> А*Х-В
ans =
О О
>> %Решение матричного уравнения Х*А=В
>> %Первый способ
>> Х=В/А
X =
-31.0000 23.0000
-11.0000 9.0000
>> %Второй способ
>> x=B*inv(A)
Х =
-31 23
-11 9
>> %Проверка Х*А-В=0
>> Х*А-В
ans = 0 0
0 0