Математическая модель метода главных компонент
out(v);
{---------находим матрицу факторного отображения a----------}
for i:=1 to m do
for j:=1 to m do
begin
s:=0;
for k:=1 to m do
s:=s+v[i,k]*sqrt(l[k,j]);
a[i,j]:=s
end;
{--------выводим матрицу факторного отображения---------}
writeln('Матрица факторного отображения A:');
out(a);
{===находим матрицу, обратную a, методом m-кратного пересчета===}
for k:=1 to m do
{-----цикл пересчета-----}
begin
for i:=1 to m do
for j:=1 to m do
if (i=k) or (j=k)
then
if i=j
then
a_1[i,j]:=-1/a[i,j]
else
a_1[i,j]:=-a[i,j]/a[k,k]
else
a_1[i,j]:=a[i,j]-a[i,k]*a[k,j]/a[k,k];
for i:=1 to m do
for j:=1 to m do
a[i,j]:=a_1[i,j]
end;
for i:=1 to m do
for j:=1 to m do
a_1[i,j]:=-a[i,j];
{------===находим матрицу значений главных компонент F===-------}
for i:=1 to m do
for j:=1 to n do
begin
s:=0;
for k:=1 to m do
s:=s+a_1[i,k]*z[j,k];
f[i,j]:=s
end;
{-------выводим матрицу F на экран в транспонированном виде-------}
writeln('Матрица значений главных компонент F:');
for i:=1 to n do
begin
for j:=1 to m do
write(' ',f[j,i]:3:3,' ');
writeln
end;
writeln;
readln;
End.