ВУЗ:
Составители:
Рубрика:
Прил. 1 Коды Maple-процедур 535
local n,n1,n2,B1,B2,B3,C1,C2,d1,d2,d3,d0;
n1:=RowDimension(G1); n2:=RowDimension(G2);
if n1<>n2 then
ERROR(`Вводимые матрицы должны иметь
равное количество строк!`);
else
n:=n1;
fi;
# Контроль совпадения размерностей по строкам
# для данных матриц G1 и G2.
# Размерность всего пространства: dim(V)=n.
B1:=algorithm_2(G1)[1];d1:=ColumnDimension(B1);
B2:=algorithm_2(G2)[1];d2:=ColumnDimension(B2);
# Процедура algorithm_2 применяется
# к каждой из данных матриц.
# Определены (и записаны в матрицы B1 и B2)
# базисы в W1 и W2;
# вычислены размерности d1 и d2.
B3[1]:=algorithm_2(<<B1|B2>>)[1];
d3:=ColumnDimension(B3[1]);
# Процедура algorithm_2 применяется
# к конкатенации матриц B1 и B2.
# Определен (и записан в матрицу B3[1]),
# базис в сумме W3, продолжающий базис в W1,
# содержащийся в матрице B1.
d0:=d1+d2-d3;
# Размерность пересечения данных подпространств.
B3[2]:=algorithm_2(<<B2|B1>>)[1];
# Процедура algorithm_2 применяется
# к конкатенации матриц B2 и B1
# (в противоположном порядке).
# Определен (и записан в матрицу B3[2]),
# другой базис в сумме W3,
# продолжающий базис в W2,
# содержащийся в матрице B2.
if d1=d3 then
C1:=Matrix(n,0);
# Отработка особого случая: d1=d3
# (и, следовательно, W1=W3; W2<=W1;
# прямое дополнение к W1 в W3 тривиально;
# матрица С1 пуста).
else
Прил. 1 Коды Maple-процедур 535
local n,n1,n2,B1,B2,B3,C1,C2,d1,d2,d3,d0;
n1:=RowDimension(G1); n2:=RowDimension(G2);
if n1<>n2 then
ERROR(`Вводимые матрицы должны иметь
равное количество строк!`);
else
n:=n1;
fi;
# Контроль совпадения размерностей по строкам
# для данных матриц G1 и G2.
# Размерность всего пространства: dim(V)=n.
B1:=algorithm_2(G1)[1];d1:=ColumnDimension(B1);
B2:=algorithm_2(G2)[1];d2:=ColumnDimension(B2);
# Процедура algorithm_2 применяется
# к каждой из данных матриц.
# Определены (и записаны в матрицы B1 и B2)
# базисы в W1 и W2;
# вычислены размерности d1 и d2.
B3[1]:=algorithm_2(<>)[1];
d3:=ColumnDimension(B3[1]);
# Процедура algorithm_2 применяется
# к конкатенации матриц B1 и B2.
# Определен (и записан в матрицу B3[1]),
# базис в сумме W3, продолжающий базис в W1,
# содержащийся в матрице B1.
d0:=d1+d2-d3;
# Размерность пересечения данных подпространств.
B3[2]:=algorithm_2(<>)[1];
# Процедура algorithm_2 применяется
# к конкатенации матриц B2 и B1
# (в противоположном порядке).
# Определен (и записан в матрицу B3[2]),
# другой базис в сумме W3,
# продолжающий базис в W2,
# содержащийся в матрице B2.
if d1=d3 then
C1:=Matrix(n,0);
# Отработка особого случая: d1=d3
# (и, следовательно, W1=W3; W2<=W1;
# прямое дополнение к W1 в W3 тривиально;
# матрица С1 пуста).
else
Страницы
- « первая
- ‹ предыдущая
- …
- 533
- 534
- 535
- 536
- 537
- …
- следующая ›
- последняя »
