- •Задание:
- •1) Сложение и вычитание допускается только для матриц одинакового размера.
- •3) Возводить в степень можно только квадратные матрицы.
- •7) Умножение матриц некоммутативно: a*b≠b*a.
- •8) Дистрибутивность умножения относительно сложения:
- •9) Свойства операции транспонирования матриц:
- •10) Для квадратных матриц существует единичная матрица (аналог единицы для операции умножения чисел) такая, что умножение любой матрицы на неё не влияет на результат, а именно:
- •Задание:
- •1) Написать функцию реализующую умножение двух матриц по определению
- •2) Написать функцию реализующую метод Крамера для системы произвольной размерности
- •3) Написать функцию реализующую метод Гаусса для системы произвольной размерности
- •4) Написать функцию реализующую вычисление обратной матрицы, используя уже написанную
Из файла Labmatrix.
Задание:
1. Проверить на примерах 10 свойств операций над матрицами
1) Сложение и вычитание допускается только для матриц одинакового размера.
>> a=[1,2,3;4,5,6;7,8,9]
a =
1 2 3
4 5 6
7 8 9
>> b=[1,2,3;4,5,6;7,8,9]
b =
1 2 3
4 5 6
7 8 9
>> c=a+b
c =
2 4 6
8 10 12
14 16 18
2) Существует нулевая матрица 0 такая, что её прибавление к другой матрице A не изменяет , то есть A + 0 =A
Все элементы нулевой матрицы равны нулю.
>> о=[0,0,0;0,0,0;0,0,0]
о =
0 0 0
0 0 0
0 0 0
>> a+o
ans =
1 2 3
4 5 6
7 8 9
3) Возводить в степень можно только квадратные матрицы.
>> c=a^2
c =
30 36 42
66 81 96
102 126 150
>> d=[1,2,3;4,5,6];
>> d^2
??? Error using ==> mpower
Inputs must be a scalar and a square matrix.
To compute elementwise POWER, use POWER (.^) instead.
4) Ассоциативность сложения: A+(B+C)= (A+B)+C.
>> c=a+b
c =
2 4 6
8 10 12
14 16 18
>> a+(b+c)
ans =
4 8 12
16 20 24
28 32 36
>> (a+b)+c
ans =
4 8 12
16 20 24
28 32 36
5) Коммутативность сложения: A+B=B+A.
>> a+b
ans =
2 4 6
8 10 12
14 16 18
>> b+a
ans =
2 4 6
8 10 12
14 16 18
6) Ассоциативность умножения: A*(B*C)=(A*B)*C .
>> c=[1,2,3;4,5,6;7,8,9];
>> (b*c)
ans =
30 36 42
66 81 96
102 126 150
>> a*ans
ans =
468 576 684
1062 1305 1548
1656 2034 2412
>> a*b
ans =
30 36 42
66 81 96
102 126 150
>> ans*c
ans =
468 576 684
1062 1305 1548
1656 2034 2412
7) Умножение матриц некоммутативно: a*b≠b*a.
>> a=[1,1,1;2,2,2;3,3,3]
a =
1 1 1
2 2 2
3 3 3
>> b=[3,3,3;2,2,2;1,1,1]
b =
3 3 3
2 2 2
1 1 1
>> a*b
ans =
6 6 6
12 12 12
18 18 18
>> b*a
ans =
18 18 18
12 12 12
6 6 6
8) Дистрибутивность умножения относительно сложения:
A*(B+C)=A*B+A*C;
(B+C)*A=B*A+C*A;
>> a*(b+c)
ans =
18 21 24
36 42 48
54 63 72
>> a*b+a*c
ans =
18 21 24
36 42 48
54 63 72
>> (b+c)*a
ans =
32 32 32
44 44 44
56 56 56
>> b*a+c*a
ans =
32 32 32
44 44 44
56 56 56
9) Свойства операции транспонирования матриц:
1.(A⊺)⊺=A;
>> transpose(a)
ans =
1 2 3
1 2 3
1 2 3
>> transpose(ans)
ans =
1 1 1
2 2 2
3 3 3
2.(AB)⊺=B⊺A⊺;
>> transpose(a*b)
ans =
6 12 18
6 12 18
6 12 18
>> transpose(b)*transpose(a)
ans =
6 12 18
6 12 18
6 12 18
3.(A-1)⊺=(A⊺)-1 , если обратная матрица A-1 существует;
>> format rational
>> a=[4 2;1 2]
a =
4 2
1 2
>> inv(a)
ans =
1/3 -1/3
-1/6 2/3
>> transpose(ans)
ans =
1/3 -1/6
-1/3 2/3
>> a=[4 2;1 2]
a =
4 2
1 2
>> inv(transpose(a))
ans =
1/3 -1/6
-1/3 2/3
4.(A+B)⊺=A⊺+B⊺;
>> a=[4 2;1 2],b=[3 1;4 2]
a =
4 2
1 2
b =
3 1
4 2
>> transpose(a+b)
ans =
7 5
3 4
>> transpose(a)+transpose(b)
ans =
7 5
3 4
5.detA = detA⊺.
>> det(a)
ans = 6
>> transpose(a)
ans =
4 1
2 2
>> det(ans)
ans =6