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

UptoLike

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

Прил. 1 Коды Maple-процедур 547
JS:=JordanBlockMatrix(jlist);
print(evaln(JS)=JS);
print(str);print(str);
# Задание рабочих массивов H,G,M.
# Каждый элемент каждого из этих массивов
# сам является индексированной переменной,
# причем при каждом значении индекса k
# эта переменная является матрицей.
# Заготовка для массива матриц H[i][k], содержащих
# базисы в подпространствах D[i][k],
# отвечающих ступенькам столбчатой диаграммы.
H:=array(1..s);
# Заготовка для массива матриц G[i][k], содержащих
# базисы в подпространствах C[i][k],
# отвечающих строкам столбчатой диаграммы.
G:=array(1..s);
# Заготовка для массива вспомогательных
# матриц-конкатенаций M[i][k].
M:=array(1..s);
# Те же матрицы, приведенные к ступенчатому виду.
MG:=array(1..s);
# Цикл по номеру собственного значения.
for i from 1 to s do
if l[i]=1 then
# Отработка случая, когда
# показатель стабилизации l[i]=1
# (т. е. столбчатая диаграмма является "одноэтажной"
# и, следовательно, соответствующее
# корневое подпространство
# совпадает с
собственным).
# Здесь обработка базиса, содержащегося
# в фундаментальной матрице F[i][1], не требуется.
H[i][1]:=F[i][1];
G[i][1]:=H[i][1];
print(evaln(H[i][1])=H[i][l[i]],evaln(G[i][1])=G[i][l[i]]);
print(str);
else
# Случай, когда число этажей l[i]>1.
for k from l[i] to 1 by -1 do
# Спуск по этажам столбчатой диаграммы.
Прил. 1                   Коды Maple-процедур                  547

JS:=JordanBlockMatrix(jlist);
print(evaln(JS)=JS);
print(str);print(str);

#   Задание рабочих массивов H,G,M.
#   Каждый элемент каждого из этих массивов
#   сам является индексированной переменной,
#   причем при каждом значении индекса k
#   эта переменная является матрицей.

# Заготовка для массива матриц H[i][k], содержащих
# базисы в подпространствах D[i][k],
# отвечающих ступенькам столбчатой диаграммы.
H:=array(1..s);

# Заготовка для массива матриц G[i][k], содержащих
# базисы в подпространствах C[i][k],
# отвечающих строкам столбчатой диаграммы.
G:=array(1..s);

# Заготовка для массива вспомогательных
# матриц-конкатенаций M[i][k].
M:=array(1..s);

# Те же матрицы, приведенные к ступенчатому виду.
MG:=array(1..s);

# Цикл по номеру собственного значения.
for i from 1 to s do

    if l[i]=1 then
      # Отработка случая, когда
      # показатель стабилизации l[i]=1
      # (т. е. столбчатая диаграмма является "одноэтажной"
      # и, следовательно, соответствующее
      # корневое подпространство
      # совпадает с собственным).

     # Здесь обработка базиса, содержащегося
     # в фундаментальной матрице F[i][1], не требуется.
     H[i][1]:=F[i][1];
     G[i][1]:=H[i][1];

     print(evaln(H[i][1])=H[i][l[i]],evaln(G[i][1])=G[i][l[i]]);
     print(str);

    else
      # Случай, когда число этажей l[i]>1.

     for k from l[i] to 1 by -1 do
     # Спуск по этажам столбчатой диаграммы.