Линейная алгебра. Теоремы и алгоритмы. Яцкин Н.И. - 87 стр.

UptoLike

Составители: 

§
§
§ 7 Замена базиса. Матрица перехода 87
(При этом матрицы вводятся не по строкам, а по столбцам. Но
можно сделать и наоборот: вводить матрицы по строкам, поменяв
ролями вертикальную черту | и запятую.)
В отличие от пакета linalg, арифметика модуля LinearAlgebra до-
пускает прямое выполнение сложения A + B, вычитания A B и
умножения A . B матриц. Обратите внимание на то, что для обозна-
чения матричного умножения используется обычная (синтаксиче-
ская) точка. Отпадает потребность в использовании ключевой для
linalg команды evalm (вычислить матрицу). Напомним, что в ста-
ром пакете, чтобы перемножить две матрицы, требовалось набрать
evalm(A&B).
В LinearAlgebra имеется особая команда для задания единичной
матрицы:
> E := IdentityMatrix ( 4 ) :
С помощью shortcuts легко выражается конкатенация матриц:
> BE := << B | E >> ;
BE :=
1 1 1 1 1 0 0 0
1 2 1 3 0 1 0 0
1 1 2 2 0 0 1 0
1 1 1 3 0 0 0 1
А вот команда gaussjord из linalg, приводящая матрицу к виду
Жордана Гаусса, в пакете LinearAlgebra заменяется на длинное
выражение из четырех слов (приведенная строчно эшелонированная
форма; такое словосочетание вполне привычно для англоязычного
пользователя):
> BG := ReducedRowEchelonForm ( BE ) ;
BG :=
1 0 0 0 2 1 1 1
0 1 0 0 0 1 0 1
0 0 1 0
1
2
0 1
1
2
0 0 0 1
1
2
0 0
1
2
Из правой "полуматрицы" матрицы BG можно помощью ко-
манды SubMatrix) "добыть" матрицу B
1
, но можно и непосред-
ственно, одной командой найти матрицу перехода:
§7                  Замена базиса. Матрица перехода                       87

   (При этом матрицы вводятся не по строкам, а по столбцам. Но
можно сделать и наоборот: вводить матрицы по строкам, поменяв
ролями вертикальную черту | и запятую.)
   В отличие от пакета linalg, арифметика модуля LinearAlgebra до-
пускает прямое выполнение сложения A + B, вычитания A − B и
умножения A . B матриц. Обратите внимание на то, что для обозна-
чения матричного умножения используется обычная (синтаксиче-
ская) точка. Отпадает потребность в использовании ключевой для
linalg команды evalm (вычислить матрицу). Напомним, что в ста-
ром пакете, чтобы перемножить две матрицы, требовалось набрать
evalm(A&∗B).
   В LinearAlgebra имеется особая команда для задания единичной
матрицы:

     > E := IdentityMatrix ( 4 ) :

     С помощью shortcuts легко выражается конкатенация матриц:

     > BE := << B | E >> ;
                                                                   
                            1        1   1   1      1    0   0    0
                          1         2   1   3      0    1   0    0
                    BE :=                                          
                            1        1   2   2      0    0   1    0
                            1        1   1   3      0    0   0    1

  А вот команда gaussjord из linalg, приводящая матрицу к виду
Жордана — Гаусса, в пакете LinearAlgebra заменяется на длинное
выражение из четырех слов (приведенная строчно эшелонированная
форма; такое словосочетание вполне привычно для англоязычного
пользователя):

     > BG := ReducedRowEchelonForm ( BE ) ;
                                                                     
                        1     0      0   0    2         −1   −1     1
                      0      1      0   0    0         1     0    −1 
                BG := 
                      0
                                                                      
                              0      1   0   − 21        0   1     −1 
                                                                     2
                        0     0      0   1   − 21        0   0      1
                                                                    2

   Из правой "полуматрицы" матрицы BG можно (с помощью ко-
манды SubMatrix) "добыть" матрицу B −1 , но можно и непосред-
ственно, одной командой найти матрицу перехода: