ВУЗ:
Составители:
Рубрика:
580 Коды Maple-процедур Прил. 1
U:=Matrix(n,E);
# Заготовка для матрицы преобразования,
# реализующего первый прием Лагранжа;
# далее она заполняется.
for j from k+1 to n do
U[k,j]:=-B[k,j]/B[k,k];
od;
if not Equal(U,E) then
# Если преобразование не тождественное,
# то применяем его к матрице квадратичной формы,
# производим "накопление"
# в результирующей матрице перехода
# и выдаем промежуточные результаты на печать.
print(`U=`,U);
T:=T.U;
# Накопление элементарных преобразований
# в матрице перехода.
B:=Transpose(U).B.U;
# Пересчет матрицы квадратичной формы.
print(`B=`,B);
fi;
fi;
od;
RETURN(B,T);
# Возвращаются: диагональная матрица,
# задающая диагональный вид данной квадратичной формы,
# и матрица перехода к диагональному виду.
end proc;
> Quadro[Jacob]:=proc(A::'Matrix'(symmetric))
local B,n,i,j,k,Delta,mu,T,AT,sys,sol;
# Процедура Jacob приведения
# к конгруэнтному диагональному виду
# симметрической квадратной матрицы
# (отвечающей квадратичной форме),
# в предположении выполнения условия Якоби.
n:=RowDimension(A);
# Размер матрицы.
Delta[0]:=1;
# Угловой минор нулевого порядка.
580 Коды Maple-процедур Прил. 1
U:=Matrix(n,E);
# Заготовка для матрицы преобразования,
# реализующего первый прием Лагранжа;
# далее она заполняется.
for j from k+1 to n do
U[k,j]:=-B[k,j]/B[k,k];
od;
if not Equal(U,E) then
# Если преобразование не тождественное,
# то применяем его к матрице квадратичной формы,
# производим "накопление"
# в результирующей матрице перехода
# и выдаем промежуточные результаты на печать.
print(`U=`,U);
T:=T.U;
# Накопление элементарных преобразований
# в матрице перехода.
B:=Transpose(U).B.U;
# Пересчет матрицы квадратичной формы.
print(`B=`,B);
fi;
fi;
od;
RETURN(B,T);
# Возвращаются: диагональная матрица,
# задающая диагональный вид данной квадратичной формы,
# и матрица перехода к диагональному виду.
end proc;
> Quadro[Jacob]:=proc(A::'Matrix'(symmetric))
local B,n,i,j,k,Delta,mu,T,AT,sys,sol;
# Процедура Jacob приведения
# к конгруэнтному диагональному виду
# симметрической квадратной матрицы
# (отвечающей квадратичной форме),
# в предположении выполнения условия Якоби.
n:=RowDimension(A);
# Размер матрицы.
Delta[0]:=1;
# Угловой минор нулевого порядка.
Страницы
- « первая
- ‹ предыдущая
- …
- 578
- 579
- 580
- 581
- 582
- …
- следующая ›
- последняя »
