0 оценок0% нашли этот документ полезным (0 голосов)
66 просмотров5 страниц
El Método de Bairstow es un algoritmo eficiente para encontrar las raíces de un polinomio de grado arbitrario. El método ajusta los coeficientes u y v de un polinomio cuadrático x^2 + ux + v hasta que sus raíces también son raíces del polinomio original. Luego se determinan las raíces de la ecuación cuadrática y se divide al polinomio original para eliminar esas raíces, repitiendo el proceso hasta resolver el polinomio.
El Método de Bairstow es un algoritmo eficiente para encontrar las raíces de un polinomio de grado arbitrario. El método ajusta los coeficientes u y v de un polinomio cuadrático x^2 + ux + v hasta que sus raíces también son raíces del polinomio original. Luego se determinan las raíces de la ecuación cuadrática y se divide al polinomio original para eliminar esas raíces, repitiendo el proceso hasta resolver el polinomio.
El Método de Bairstow es un algoritmo eficiente para encontrar las raíces de un polinomio de grado arbitrario. El método ajusta los coeficientes u y v de un polinomio cuadrático x^2 + ux + v hasta que sus raíces también son raíces del polinomio original. Luego se determinan las raíces de la ecuación cuadrática y se divide al polinomio original para eliminar esas raíces, repitiendo el proceso hasta resolver el polinomio.
En anlisis numrico, Mtodo de Bairstow es un eficiente algoritmo para
encontrar races de un verdadero polinmico del grado arbitrario. El algoritmo primero apareci en el apndice de los 1920 que el libro aplic la aerodinmica! cerca "eonard #airsto$. El algoritmo encuentra las races adentro con%ugacin del comple%o pares usando solamente aritmtica verdadera. &ea algoritmo de la b'squeda del radical para otros algoritmos. Descripcin del mtodo El acercamiento de #airsto$ es utili(ar )todo del neutonio para a%ustar los coeficientes u * v en cuadrtico x 2 + ux + v ,asta que sus races son tambin races del polinmico que son solucionadas. "as races de la ecuacin cuadrtica pueden entonces ser determinadas, * el polinomio se puede dividir por la ecuacin cuadrtica para eliminar esas races. Este proceso entonces se itera ,asta que el polinomio llega a ser cuadrtico o linear, * se ,an determinado todas las races. -ivisin larga de un polinomio por x 2 + ux + v rinde un cociente * un resto cx + d tales que "as variables c, d, * .b i / son las funciones de u * v. 0ueden ser encontrados recurrentemente como sigue. "a ecuacin cuadrtica divide uniformemente el polinomio cuando &alores de u * v para cul ocurre el puede ser descubierto escogiendo valores que comien(an e iterando el mtodo del neutonio en dos dimensiones ,asta convergencia ocurre. Funcionamiento El algoritmo de #airsto$ ,ereda la convergencia cuadrtica del mtodo del neutonio, e1cepto en el caso de factores cuadrticos de la multiplicidad ms arriba de 1, cuando la convergencia puede ser algo lenta. E%emplo en )23"2# % METODO DE BAIRSTOW % JUAN CARLOS ALDAZ ROSAS (CREDITOS) % UNIVERSIDAD DE GUADALAJARA clear clc z=i!"# ($TECLEE LOS COE%ICIENTES DEL &OLINOMIO ENTRE CORC'ETES()$)* %z=+, -./0 1/20 1/,10 -./320 ,/104* =le5#6(z)*%7e 8e9ie la l:5i#"8 8e la ec"aci; i#=<*%7e iicia el c:#a8:r 8e i#eraci:e7 li=i#>i#=,<<<*%7e 8e9ie el li=i#e e el "=er: 8e i#eraci:e7 #:l=/<<<,*%7e 8e9ie la #:leracia 8e la e7#i=aci; raiz(,(-,)=<* ri=<* r=1*%7e 7"!:e el ?al:r 8e r @"e e7 el c:e9icie#e 8e !ri=er 5ra8: 7=1*%7e 7"!:e el ?al:r 8e 7 @"e e7 el #er=i: i8e!e8ie#e err=,*%7e iicializa el ?al:r 8el err:r e r i5"al a , er7=,*%7e iicializa el ?al:r 8el err:r e 7 i5"al a , i9 z(,)==< 9!ri#9($EL &RIMER COE%ICIENTE NO DEBE SER CERO())$) AreaB e8 C6ile ,%cicl: @"e :7 !er=i#ira ir e?al"a8: la7 raDce7 8el !:li:=i: i9 (-,E=.)*el7e AreaBFe8%c:8ici: 7i el 5ra8: 8e la raiz e7 =aG:r a . #=+, r 74*%e7#a e7 el !:li:=i: c"a8ra#ic: 8e iici: i#=i#H,*%7e icre=e#a e , la i#eraci: +IFG4=8ec:?(zF#)*%7e 8i?i8e la ec"aci: e#re el !:li:=i: 8e iici: le5#6(I)*%7e 8e9ie la l:5i#"8 8el !:li:=i: re7"l#a#e le5#6(G)*%7e 8e9ie la l:5i#"8 8el re7i8": re7"l#a#e I=+IF<F<4*%7e aJ"7#a la ?ariaAle I !ara !:8er 7"=arla al re7i8": I=+IHG4*%7"=a 8el c:cie#e =a7 re7i8": c(,)=z(,)*%?al:r 8e l:7 c:e9icie#e7 8e la 9"ci: a c(1)=z(1)H(-rKc(,))*%e?al"arF e ?ir#"8 8e @"e el c:e9icie#e 8e =aG:r 9:r i=.(%5ra8: 7era e@"i?ale#e al c:e9icie#e 8e =e:r 5ra8: ==-i*%G e e7#e cicl: 7e realiza la i?er7i: 8e ell:7 c(-=)=z(i)H(-rKI(-=-,))H(-7KI(-=-1))*%al5:ri#=: 8e i?er7i: e8 8(,)=c(,)*%?al:r 8e l:7 c:e9icie#e7 8e la7 8eri?a8a7 !arciale7 8(1)=c(1)H(-rK8(,))*%?al:r 8e l:7 c:e9icie#e7 8e la7 8eri?a8a7 !arciale7 9:r i=.((-,)*%7e realiza l:7 calc"l:7 8e l:7 c:e9icie#e7 ==-i*%6a7#a el 5ra8: =aIi=: 8el !:li:=i: 8(-=)=c(i)H(-rK8(-=-,))H(-7K8(-=-1))*%al5:ri#=: 8e calc"l: e8 e=+8(-1)F8(-.)*8(-,)F8(-1)4)+-c(-,)*-c()4*%calc"l: 8el 8>r=e(,)*%"e?: ?al:r 8el c:e9icie#e7 8e !ri=er 5ra8: 8>7=e(1)*%"e?: ?al:r 8el #er=i: i8e!e8ie#e i9 r==< el7e err=8>rLr*%calc"l: 8el err:r !ara c:e9icie#e 8e !ri=er 5ra8: e8 i9 7==< el7e er7=8>7L7*%calc"l: 8el err:r !ara #er=i: i8e!e8ie#e e8 r=r-8>r*%?al:r 8el c:e9icie#e 8e !ri=er 5ra8: 7=7-8>7*%?al:r 8el #er=i: i8e!e8ie#e i9 ((aA7 (err))M(aA7(er7))N=#:l)%7i 7e c"=!le la c:8ici: 8e ri=riH,* I,=(-rH7@r#(rO1-PK7))L1*%#:leracia e#:ce7 7e calc"la el ?al:r 8el raiz(ri)=I,* ri=riH,* I1=(-r-7@r#(rO1-PK7))L1*%!:li:=i: c"a8ra#ic:/ raiz(ri)=I1* II=+I,FI14$*%?al:r 8el !:li:=i: @"e 8i?i8e eIac#a=e#e a la ec"aci: ##=!:lG(II)*%ca=Ai: 8e ?ariaAle !ara e9ec#"ar "e?a=e#e la 8i?i7i: +I.FG4=8ec:?(zF##)*%7e e9ec#"a la 8i?i7i: z=I.*%7e 6ace ca=Ai: 8e ?ariaAle =le5#6(I.-,)*%7e 8e#er=ia el 5ra8: 8el !:li:=i: r=##(,)* 7=##(1)* e8 i9 (i#Eli=i#>i#)%c:8ici: 8e i#eraci:e7 9!ri#9 ($EIce7: e el li=i#e 8e i#eraci:e7/ )$)*AreaB e8%7i 6aG eIce7: e el "=er: 8e i#eraci:e7 7e #er=ia el !r:5ra=a e8 i9 (-,)==1%7i la ec"aci: @"e 7e i#r:8"ce e7 8e 7e5"8: 5ra8: ri=riH,* I,=(-z(1)H7@r#(z(1)/O1-PKz(,)Kz(.)))L(1Kz(,))*%7e calc"la :r=al=e#e !:r raiz(ri)=I,* I1=(-z(1)-7@r#(z(1)/O1-PKz(,)Kz(.)))L(1Kz(,))*%=e8i: 8e la 9:r="la #ra8ici:al ri=riH,* raiz(ri)=I1* e8 i9 (-,)==,%7i el ?al:r 8e la ec"aci: @"e 7e i#r:8"ce e7 8e !ri=er i9 (aA7(z(1))E=#:l) ri=riH,* I,=-z(1)Lz(,)*%5ra8: 7:la=e#e 7e 6ace la 7"7#i#"ci:/ el7e I,=<* e8 raiz(ri)=I,* I,* e8 i9 (-,)==<%7i el ?al:r 8e la ec"aci: @"e 7e i#r:8"ce e7 "a c:7#a#e 9!ri#9($El ?al:r @"e i#r:8"ci7#e e7 "a c:7#a#e i5"al a())$) c:7#a#e=z e8 raice7=raiz$* 7:r# raice7* raice7