viernes, 5 de abril de 2019

Paso a paso Reices polinomios Matriz Compañera Método QR - eigenvalues, Шаг за шагом полиномы Рейса Матрица Компаньера QR-метод - собственные значения

A continuación se muestra un ejemplo paso a paso para encontrar las raices de un polinomio por medio de la matriz compañera y el método QR

Шаг за шагом полиномы Рейса Матрица Компаньера QR-метод - собственные значения

(El código se presenta despues del ejemplo)

------------------------------------ --Algoritmo QR y Matriz compañera--- ------------------------------------ la matriz compañera del polinomio p(t)=6 - 5 t - 2 t^2 + t^3, es:A0 =
   0   1   0   0   0   1  -6   5   2
Q =
   0  -1   0  -0   0  -1   1   0   0
R =
  -6   5   2   0  -1   0   0   0  -1
A1 =
   2   6  -5   0   0   1  -1   0   0
Q =
  -0.89443  -0.44721   0.00000  -0.00000   0.00000  -1.00000   0.44721  -0.89443   0.00000
R =
  -2.23607  -5.36656   4.47214   0.00000  -2.68328   2.23607   0.00000   0.00000  -1.00000
A2 =
   4.00000  -3.00000   5.36656   1.00000  -2.00000   2.68328  -0.44721   0.89443   0.00000
A =
   0   1   0   0   0   1  -6   5   2
En la iteración 13 de A(i+1)=Ri * Qi
ans =
   3.0131e+00  -5.0143e+00   5.0825e+00   1.3120e-02  -2.0127e+00   1.3770e+00  -5.7742e-06   8.8578e-04   9.9959e-01
las raices de p(t) son t={3.0131 -2.0127 0.9996}
 ------------------------------------ ------------------------------------ ------------------------------------La matriz compañera del polinomio p(t)=6 - 5 t - 2 t^2 + t^3, es:A =
   0   1   0   0   0   1  -6   5   2
En la iteración 27 de A(i+1)=Ri * Qi
ans =
   3.0000e+00  -5.0288e+00   5.0846e+00   4.4712e-05  -2.0000e+00   1.3628e+00  -1.2042e-12   5.3867e-08   1.0000e+00
las raices de p(t) son t={3 -2 1}







El código se presenta a continuación: polynomials_Root_QR.m


% ---------------------------%polynomials_Root_QR.m 
disp("Polynomial Roots via the QR-Method");
%Muestra como obtener las raices por el algoritmo QR con matriz compañera.
%Muestra el pasoa a paso y la programación sencilla con matrices.
% se utiliza el comando qr de octave
%Autor: Alexander Arias
%http://www.math.utah.edu/~gustafso/s2019/2270/labs/lab7-polyroot-qrmethod.pdf
%p(t)=6 - 5 t - 2 t^2 + t^3
clear all;
clc;

disp(' ------------------------------------');
disp(' --Algoritmo QR y Matriz compañera---');
disp(' ------------------------------------');
%Paso a paso con 13 iteraciones
disp(' la matriz compañera del polinomio p(t)=6 - 5 t - 2 t^2 + t^3, es:');
A0=[0 1 0; 0 0 1; -6 5 2]
[Q, R] = qr(A0)
A1=R*Q

[Q, R] = qr(A1)
A2=R*Q

A=[0 1 0; 0 0 1; -6 5 2]
%[Q, R] = qr(A)
for i=2:13    [Q, R] = qr(A(:,:,i-1));
    A(:,:,i)=R*Q;
end
disp('En la iteración 13 de A(i+1)=Ri * Qi');
A(:,:,13)


disp('las raices de p(t) son t={3 .0131 -2.0127 0.9996}');

disp(' ------------------------------------');
disp(' ------------------------------------');
disp(' ------------------------------------');
%Algoritmo con 27 iteraciones
disp('La matriz compañera del polinomio p(t)=6 - 5 t - 2 t^2 + t^3, es:');
A=[0 1 0; 0 0 1; -6 5 2]
%[Q, R] = qr(A)
for i=2:27    [Q, R] = qr(A(:,:,i-1));
    A(:,:,i)=R*Q;
end
disp('En la iteración 27 de A(i+1)=Ri * Qi');
A(:,:,27)
disp('las raices de p(t) son t={3 -2 1}');

No hay comentarios:

Publicar un comentario