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

UptoLike

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

Прил. 1 Коды Maple-процедур 551
# (т. е. содержащую базис в C[i][k]).
G[i][k]:=<B[i][1].G[i][k+1]|H[i][k]>;
# Выдаем на печать полученные результаты.
print(evaln(H[i][k])=H[i][k],evaln(G[i][k])=G[i][k]);
print(str);
fi;
else;
# Определение векторов первого этажа
# столбчатой диаграммы.
if q[i][k]=0 then
# Отработка случая, когда на первом уровне
# отсутствует ступенька.
# В этом случае матрица H[i][1],
# отвечающая ступеньке, - пуста,
# а матрица G[i][1], отвечающая всему первому уровню,
# находится умножением слева на матрицу B[i]
# матрицы G[i][2], отвечаюшей
# второму уровню.
G[i][k]:=B[i][1].G[i][k+1];
# Выводим на печать полученные результаты.
print(evaln(H[i][k])=[],evaln(G[i][k])=G[i][k]);
print(str);
else
# Случай, когда на первом уровне есть ступенька.
# Формирование матрицы-конкатенации M[i][1]:
# в левой зоне - матрица, содержащая
# образ B[i].G[i][2] базиса
# в подпространстве C[i][2]
# при отображении, заданном матрицей B[i],
# в правой зоне - матрица, содержащая
# (необработанный) базис в первом ядре N[i][1].
M[i][k]:=<B[i][1].G[i][k+1]|F[i][k]>;
# Приведение к ступенчатому виду матрицы M[i][1]
# и печать полученных результатов.
MG[i][k]:=GaussianElimination(M[i][k]);
print(evaln(M[i][k])=M[i][k],
evaln(MG[i][k])=MG[i][k]);
# Формирование списка blist
# номеров добавочных базисных векторов,
# из второй (правой) зоны матрицы M[i][1],
# дополняющих до базиса в первом ядре N[i][1]
# базис в образе B[i](C[i][2]).
Прил. 1                      Коды Maple-процедур                 551

             # (т. е. содержащую базис в C[i][k]).
             G[i][k]:=;

             # Выдаем на печать полученные результаты.
             print(evaln(H[i][k])=H[i][k],evaln(G[i][k])=G[i][k]);
             print(str);

           fi;

          else;
            # Определение векторов первого этажа
            # столбчатой диаграммы.

           if q[i][k]=0 then
             # Отработка случая, когда на первом уровне
             # отсутствует ступенька.

             # В этом случае матрица H[i][1],
             # отвечающая ступеньке, - пуста,
             # а матрица G[i][1], отвечающая всему первому уровню,
             # находится умножением слева на матрицу B[i]
             # матрицы G[i][2], отвечаюшей
             # второму уровню.
             G[i][k]:=B[i][1].G[i][k+1];

             # Выводим на печать полученные результаты.
             print(evaln(H[i][k])=[],evaln(G[i][k])=G[i][k]);
             print(str);

           else
             # Случай, когда на первом уровне есть ступенька.

             # Формирование матрицы-конкатенации M[i][1]:
             # в левой зоне - матрица, содержащая
             # образ B[i].G[i][2] базиса
             # в подпространстве C[i][2]
             # при отображении, заданном матрицей B[i],
             # в правой зоне - матрица, содержащая
             # (необработанный) базис в первом ядре N[i][1].
             M[i][k]:=;

             # Приведение к ступенчатому виду матрицы M[i][1]
             # и печать полученных результатов.
             MG[i][k]:=GaussianElimination(M[i][k]);
             print(evaln(M[i][k])=M[i][k],
                                 evaln(MG[i][k])=MG[i][k]);

             #   Формирование списка blist
             #   номеров добавочных базисных векторов,
             #   из второй (правой) зоны матрицы M[i][1],
             #   дополняющих до базиса в первом ядре N[i][1]
             #   базис в образе B[i](C[i][2]).