ВУЗ:
Составители:
Рубрика:
Прил. 1 Коды Maple-процедур 531
RETURN(FA,n-rA,JA,sys,fr);
# Возвращаются:
# 1) базис подпространства W, заключенный в
# фундаментальной матрице FA
# для однородной с.л.у. Ax=0;
# 2) размерность dim(W)=n-rA,
# где rA - ранг данной матрицы;
# 3) вид Жордана-Гаусса JA для A
# (с удаленными нулевыми строками);
# 4) однородная с.л.у. sys, соответствующая JA
# ("экономно" задающая W);
# 5) список fr номеров свободных неизвестных.
end proc;
> BiS[algorithm_2]:=proc(G::Matrix)
# Построение базиса в линейном подпространстве W,
# заданном вторым способом
# (как линейная оболочка
# столбцов матрицы G).
local n,s,i,j,k,GG,rG,pr,ZG,BG;
n:=RowDimension(G);s:=ColumnDimension(G);
# Размеры данной матрицы; n=dim(V).
ZG:=ZeroMatrix(n,s);
# Нулевая матрица.
if Equal(G,ZG) then
# Особый случай: G=O и, следовательно, W=O.
# Выдается пустой базис.
BG:=Matrix(n,0);GG:=ZG;rG:=0;pr:=[];
else
GG:=GaussianElimination(G);rG:=Rank(GG);
# Ступенчатый вид и ранг для матрицы G.
pr:=[seq(0,k=1..rG)];
# Заготовка для списка номеров главных столбцов.
for i from 1 to rG do
j:=1;
while GG[i,j]=0 do
j:=j+1;
od;
pr[i]:=j;
od;
# Сформирован список номеров главных столбцов.
Прил. 1 Коды Maple-процедур 531
RETURN(FA,n-rA,JA,sys,fr);
# Возвращаются:
# 1) базис подпространства W, заключенный в
# фундаментальной матрице FA
# для однородной с.л.у. Ax=0;
# 2) размерность dim(W)=n-rA,
# где rA - ранг данной матрицы;
# 3) вид Жордана-Гаусса JA для A
# (с удаленными нулевыми строками);
# 4) однородная с.л.у. sys, соответствующая JA
# ("экономно" задающая W);
# 5) список fr номеров свободных неизвестных.
end proc;
> BiS[algorithm_2]:=proc(G::Matrix)
# Построение базиса в линейном подпространстве W,
# заданном вторым способом
# (как линейная оболочка
# столбцов матрицы G).
local n,s,i,j,k,GG,rG,pr,ZG,BG;
n:=RowDimension(G);s:=ColumnDimension(G);
# Размеры данной матрицы; n=dim(V).
ZG:=ZeroMatrix(n,s);
# Нулевая матрица.
if Equal(G,ZG) then
# Особый случай: G=O и, следовательно, W=O.
# Выдается пустой базис.
BG:=Matrix(n,0);GG:=ZG;rG:=0;pr:=[];
else
GG:=GaussianElimination(G);rG:=Rank(GG);
# Ступенчатый вид и ранг для матрицы G.
pr:=[seq(0,k=1..rG)];
# Заготовка для списка номеров главных столбцов.
for i from 1 to rG do
j:=1;
while GG[i,j]=0 do
j:=j+1;
od;
pr[i]:=j;
od;
# Сформирован список номеров главных столбцов.
Страницы
- « первая
- ‹ предыдущая
- …
- 529
- 530
- 531
- 532
- 533
- …
- следующая ›
- последняя »
