SymPy - линейная алгебра
Определение матрицы
Матрица
m
строк на
n
столбцов - это набор чисел a
11, a
12,.., a
mn
a11 | a12 | ... | a1n |
... | ... | ... | ... |
am1 | am2 | ... | amn |
или, когда первый номер 0 (а не 1), то
a0 0 | a0 1 | ... | a0 n-1 |
... | ... | ... | ... |
am 0 | am 1 | ... | am-1 n-1 |
Зададим матрицу
2 | -3 | -8 | 7 |
-2 | -1 | 2 | -7 |
1 | 0 | -3 | 6 |
и сохраним ее в выражение А
>>> A = Matrix( [[ 2,-3,-8, 7],
[-2,-1, 2,-7],
[ 1, 0,-3, 6]] )
Значение элемента A[0,1]
Что лежит в строке 0 столбце 1? a
0 1.
>>> A[0,1] # row 0, col 1of A
-3
Часть матрицы
Подматрица задается через срезы.
Найдем подматрицу из 2 первых строк и 3 первых столбцов
>>> A[0:2,0:3] # top-left 2x3 submatrix of A
[ 2, -3, -8]
[-2, -1, 2]
Единичная матрица и матрица из 0
>>> eye(2) # 2x2 identity matrix
Matrix([
[1, 0],
[0, 1]])
>>> zeros(2, 3)
Matrix([
[0, 0, 0],
[0, 0, 0]])
Операции над матрицами
C = A+B | cij = aij + bij |
C = A-B | cij = aij - bij |
C = A*B | cij = aij * bij |
C = A**3 | C = A*A*A |
Транспонированная матрица AT
B = A
T получается из матрицы А заменой строк на столбцы.
A
Tij = A
ji
>>> B = A.transpose() # the same as A.T
>>> B
Matrix([
[ 2, -2, 1],
[-3, -1, 0],
[-8, 2, -3],
[ 7, -7, 6]])
>>> A.T
Matrix([
[ 2, -2, 1],
[-3, -1, 0],
[-8, 2, -3],
[ 7, -7, 6]])
Reduced row echelon form
%TODO%
Детерминант (определитель)
>>> M = Matrix( [[1, 2, 3],
[2,-2, 4],
[2, 2, 5]] )
>>> M.det()
2
Обратная матрица A-1
A
-1 - это такая матрица, которая при умножении на А дает единичную матрицу E.
A*A
-1 = A
-1*A = E
>>> A = Matrix( [[1,2],[3,9]] )
>>> A.inv()
Matrix([
[ 3, -2/3],
[-1, 1/3]])
>>> A.inv()*A
Matrix([
[1, 0],
[0, 1]])
>>> A*A.inv()
Matrix([
[1, 0],
[0, 1]])
A
-1 играет роль деления на А.
Ранг матрицы rank
>>> A = Matrix( [[ 2,-3,-8, 7],
[-2,-1, 2,-7],
[ 1, 0,-3, 6]] )
>>> A.rank()
3
>>> A = Matrix([[2,1],[2,1]])
>>> A.rank()
1
Решение систем уравнений
Уравнение АХ = С, где А, Х и С - матрицы, может быть записано в виде системы линейных уравнений.
Система линейных уравнений может быть записана в виде уравнения матриц.
Найдем матрицу Х из уравнения АХ=С, где А=C=Matrix([[2,1],[2,1]]).
Задание
- Задачник
- В классе - страница 11, номера 5,8,9
- Дома - С. 21, номера 14,17,19
--
TatyanaDerbysheva - 14 Mar 2016