• Aucun résultat trouvé

Algoritmo Quociente-Diferen¸ ca

Dans le document 1.2 Espa¸ co Vetorial (Page 95-101)

Exerc´ıcios:

3.7 Equa¸ c˜ oes Polinomiais

3.7.3 Algoritmo Quociente-Diferen¸ ca

Os m´etodos de Newton e Newton-Bairstow para determina¸c˜ao de zeros de polinˆomios s˜ao eficientes se conhecemos, respectivamente, uma aproxima¸c˜ao inicial suficientemente pr´oxima da raiz, ou uma apro-ximac˜ao inicial adequada para o fator quadr´atico.

Nessa se¸c˜ao apresentaremos um m´etodo num´erico que determina os zeros de um polinˆomio sem conhe-cer aproxima¸c˜oes iniciais, mesmo que as ra´ızes sejam complexas. Tal m´etodo, conhecido comoAlgoritmo Quociente-Diferen¸ca, ou simplesmenteAlgoritmo Q-D, ´e um esquema devido a Rutishauser, que for-nece simultaneamente aproxima¸c˜oes para todos os zeros de um polinˆomio, sejam eles reais ou complexos.

Maiores detalhes sobre o algoritmo Q-D, podem ser encontrados em [Henrici, 1964] ou em [Albrecht, 1973].

SejaP(x) um polinˆomio da forma (3.15), isto ´e:

P(x) = anxn+an−1xn−1+. . .+a0 .

Vamos considerar queP(x) ´e um polinˆomio de graun≥1, com ak6= 0, k = 0,1, . . . , n.

A partir deP(x) constru´ımos linhas de termosqee, come¸cando a tabela calculando a primeira linha deq0se a segunda linha dee0s, da seguinte maneira:

q0(1) = − an−1 an

; q(k)0 = 0, k= 2, . . . , n , e(k)0 = an−(k+1)

an−k

, k= 1,2, . . . , n−1 ; e(1)0 =e(n)0 = 0 . Assim as duas primeiras linhas da tabela s˜ao:

e(0) q(1) e(1) q(2) e(2) q(3) . . . e(n−1) q(n) e(n)

− an−1

an 0 0 . . . 0

0 an−2

an−1 an−3

an−2 . . . a0

a1 0

As novas linhas deq0sser˜ao calculadas atrav´es da equa¸c˜ao:

novoq(k) = e(k)−e(k−1)+q(k) , k= 1,2, . . . , n , (3.31) usando os termos das linhas eeqacima. Note que nessa equa¸c˜ao o novoq´e igual aoe`a direita menos e`a esquerda mais qacima. As novas linhas dee0ss˜ao calculadas pela equa¸c˜ao:

novoe(k) = q(k+1)

q(k) e(k), k= 1,2, . . . , n , e(0)=e(n)= 0, (3.32) onde o novo e´e igual aoq`a direita sobreq`a esquerda vezeseacima.

Utilizamos sucessivamente as f´ormulas (3.31) e (3.32) at´e que os e0s tendam a zero. Quando isso ocorrer, os valores de q aproximam os valores das ra´ızes, se estas forem reais. Se o polinˆomio tiver um par de ra´ızes complexas conjugadas, um dos e0sn˜ao tender´a a zero masflutuar´aem torno de um valor.

Nesse caso devemos montar um fator quadr´atico da forma: x2−rx−s, do seguinte modo: a soma dos dois valores de q, um de cada lado do valor dee em quest˜ao, aproximar´a o valor de r e o produto do valor de q acima e `a esquerda vezes o valor deq abaixo e `a direita aproximar´a o valor de −s. Fazendo x2−rx−s= 0, determinamos as ra´ızes complexas. Caso semelhante vale para ra´ızes de multiplicidade 2. Daremos a seguir exemplo.

Exemplo 3.16 - Usando o algoritmo Q-D obter todas as ra´ızes do polinˆomio:

P(x) = x4−6x3+ 12x2−19x+ 12.

Solu¸c˜ao: Aplicando o algoritmo Q-D, obtemos a tabela a seguir, onde ap´os calcularmos as duas primeiras linhas indicamos com setas como calcular os novosq0see0s:

× / × /

Observe que na tabela acimaq(1)est´a convergindo para 4 eq(4) est´a convergindo para 1. Assim 4.004 e 1.010 s˜ao aproxima¸c˜oes para duas das ra´ızes deP(x). Agora, desde quee(2) n˜ao est´a convergindo para zero,q(2) eq(3), representam o fator quadr´atico: x2−rx−s, onde:

r = 1.456 + (−0.466) = 0.990, s = (−6.426)×(−0.466) = −2.995. Portanto igualando o fator quadr´atico a zero, isto ´e, fazendo:

x2−rx−s=x2−0.990x+ 2.995 = 0,

obtemos que: 0.495±1.6568i s˜ao aproxima¸c˜oes para as outras duas ra´ızes de P(x). Podemos ent˜ao escrever que:

P(x)'(x−4.004)(x−1.010)(x−(0.495 + 1.6568i))(x−(0.495−1.6568i)).

E claro, como j´´ a dissemos, que os valores encontrados s˜ao aproxima¸c˜oes para as ra´ızes deP(x). Se desejarmos o resultado com mais casas decimais corretas, podemos aplicar o Algoritmo Q-D vers˜ao Newton: aplica-se o algoritmo Q-D para obter aproxima¸c˜oes para as ra´ızes, e usando o m´etodo de New-ton ou NewNew-ton-Bairstow refina-se a solu¸c˜ao at´e obtˆe-la com a precis˜ao desejada. Esta vers˜ao de Newton faz com que o algoritmo seja praticamente livre de erros de arredondamento.

Observa¸c˜oes: O algoritmo Q-D n˜ao se aplica se:

a) durante o processo ocorrer algum q= 0, (divis˜ao por zero).

b) o polinˆomio dado tiver ra´ızes nulas, ( ´e exigido que todos os coeficientes sejam diferentes de zero).

c) se existir algum coeficiente igual a zero.

Para entender a observa¸c˜ao do item a) resolva o primeiro exerc´ıcio proposto a seguir. Em rela¸c˜ao ao item b) o processo pode ser aplicado desde que elimenemos do polinˆomio as ra´ızes nulas antes de aplic´a-lo. Em rela¸c˜ao ao itemc), isto ´e, se existir algum coeficiente igual a zero basta fazer uma mudan¸ca de vari´avel: z=x−a, ondea´e uma constante real arbitr´aria. Com a mudan¸ca de vari´avel obtemos um polinˆomio que possui todos os coeficientes diferentes de zero. Aplicamos a esse polinˆomio o algoritmo Q-D. Determinadas as ra´ızes usamos a mudan¸ca de vari´avel para obter os zeros do polinˆomio dado, isto

´

e: x=z+a. Assim:

Exemplo 3.17 - Dado P(x) = 81x4−108x3+ 24x+ 20, determinar um polinˆomio que possua todos os coeficientes diferentes de zero.

Solu¸c˜ao: Temos emP(x) que o coeficientea2= 0. Fazemos ent˜ao a mudan¸ca de vari´avel: z=x−a.

Com essa mudan¸ca de vari´avel obteremos um polinˆomioP(z). Observe que tal polinˆomio ´e facilmente obtido se desenvolvermosP(x) em s´erie de Taylor em torno do pontoa. De fato, para o polinˆomio dado, obtemos que:

P(x) = P(a) + (x−a)P0(a) +(x−a)2 2! P00(a) + (x−a)3

3! P000(a) +(x−a)4

4! P(iv)(a). Fazendox−a=z, obtemos:

P(z) = P(a) +zP0(a) +z2P00(a)

2! +z3P000(a)

3! +z4P(iv)(a) 4! .

Os coeficientes do polinˆomioP(z) s˜ao obtidos aplicando-se o algoritmo de Briot-Ruffini-Horner, (ver se¸c˜ao 3.7.1). Como o valor de a´e arbitr´ario, em geral, consideramos a= 1 → z =x−1. Portanto, para o polinˆomio dado, devemos calcular o valor do polinˆomioP(x) e de suas derivadas no pontoa= 1.

Assim:

81 −108 0 24 20

1 81 −27 −27 −3

81 −27 −27 −3 17

1 81 54 27

81 54 27 24

1 81 135

81 135 162

1 81

81 216

1 81

Logo:

P(z) = 81z4+ 216z3+ 162z2+ 24z+ 17.

Usamos a algoritmo Q-D para calcular as ra´ızes de P(z) e a seguir fazendox=z+ 1, obtemos as ra´ızes deP(x).

Exerc´ıcios

3.27 - Verifique que n˜ao ´e poss´ıvel determinar as ra´ızes deP(x) = x2−2x+ 2, usando o algoritmo Q-D.

3.28 - Usando o algoritmo Q-D determinar todas as ra´ızes de:

a) P(x) = 81x4−108x3+ 24x+ 20,

b) P(x) = 128x4−256x3+ 160x2−32x+ 1.

com duas casas decimais corretas.

3.8 Exerc´ıcios Complementares

3.29 - Mostre que as seguintes equa¸c˜oes possuem exatamente uma raiz e que em cada caso a raiz est´a no intervalo [0.5,1].

a) x2+ ln x= 0, b) x ex−1 = 0.

Determine essas ra´ızes, com duas casas decimais corretas, usando o m´etodo da bissec¸c˜ao.

3.30 -Aplique o m´etodo da bisse¸c˜ao e Regula Falsi para calcular a raiz positiva de x2−7 = 0 com <10−2, partindo do intervalo inicial[2.0,3.0].

3.31 -Aplique o m´etodo da bissec¸c˜ao para resolver:

a) ex−x−3x= 0, b) x3+cos x= 0,

obtendo em cada casoa eb (iniciais) graficamente.

3.32 - O problema: resolva f(x) =x+ln x= 0 pode ser transformado num problema equivalente da forma x=ψ(x). Para o processo iterativo definido por xk+1=ψ(x); analisar a convergˆencia quando:

a) ψ(x) =−ln x, b) ψ(x) =e−x, no intervalo [0.5,0.6].

3.33 - A equa¸c˜aox2+ 5x−1 = 0tem uma raiz em(0,0.5). Verifique quais dos processos abaixo podem ser usados, com sucesso, para obtˆe-la:

a) xk+1 = 1−x2k 5 , b) xk+1 = 1−5 xk

xk , c) xk+1 = √

1−5 xk.

3.34 - A equa¸c˜ao f(x) =ex−3 x2= 0 tem trˆes ra´ızes. Um m´etodo iterativo pode ser definido usando a prepara¸c˜ao ´obvia da equa¸c˜ao:

x=± rex

3 .

i) Verificar que come¸cando com x0 = 0 haver´a convergˆencia para a raiz pr´oxima de −0.5, se o valor negativo for usado e que haver´a convergˆencia para a raiz pr´oxima de 1.0, se o valor positivo for usado.

ii) Mostrar que a forma acima n˜ao converge para a terceira raiz pr´oxima de 4.0, qualquer que seja a aproxima¸c˜ao inicial pr´oxima da raiz.

3.35 - A f´ormulaxn+1 = 2xn−a x2n ´e candidata para se determinar o inverso de um n´umero a; 1 a. Mostre que se a f´ormula converge, ent˜ao converge para 1

a e determine os limites da estimativa inicialx0

para convergir. Teste suas conclus˜oes nos casos:

a) a= 9 e x0= 0.1.

b) a= 9 e x0= 1.0.

3.36 - Mostre quex3−2x−17 = 0tem apenas uma raiz real e determine seu valor correto at´e 2 casas decimais usando o m´etodo de Newton.

3.37 - A equa¸c˜ao x3−2x−1 = 0possui apenas uma raiz positiva.

a) De acordo com o princ´ıpio da bissec¸c˜ao, esta raiz positiva deve estar em qual dos intervalos:

(0,1),(1,2),(2,3)? Por que?

b) Se desej´assemos tamb´em pesquisar as ra´ızes negativas usando intervalos de amplitude 1

2, at´e o ponto

−2, em que intervalos seriam encontradas tais ra´ızes?

c) Obtenha a menor raiz negativa (em m´odulo), usando o m´etodo das Secantes. Trabalhe com arredon-damento para 3 casas decimais.

3.38 - Usando o m´etodo de Newton determine t (real), com erro relativo inferior a 10−2, tal que a matriz:

A =

0.5 0.2 t 0.4 t 0.5

t 0.5 0.2

 , seja singular.

3.39 - Usando o m´etodo de Newton determine, sem efetuar a divis˜ao, o valor num´erico dex= 13 com 3 casas decimais corretas, iniciando comx0= 0.3.

3.40 - A solu¸c˜ao da equa¸c˜ao diferencial:

an

dnu(t)

dtn + an−1 dn−1u(t)

dtn−1 + . . . + a1

du(t) dt = 0,

´ e:

u(t) =

m

X

k=1

qk(t)eλkt ,

onde osλk s˜ao as ra´ızes distintas do polinˆomio:

P(λ) = an λn + an−1 λn−1 + . . . + a1 λ + a0 ,

chamado polinˆomio caracter´ıstico da equa¸c˜ao diferencial e os qk s˜ao polinˆomios de grau uma unidade inferior `a multiplicidade deλk, mas a n˜ao ser por isso, arbitr´arios.

Deseja-se determinar a solu¸c˜ao geral da equa¸c˜ao diferencial:

d3u(t)

dt3 − 6 d2u(t)

dt2 + 6 du(t)

dt + 7u(t) = 0 .

Determine a ´unica raiz negativa do polinˆomio caracter´ıstico pelo m´etodo de Newton e o algoritmo de Briot-Ruffini-Horner, com erro inferior a 10−3, e as demais ra´ızes atrav´es da equa¸c˜ao do2o grau.

3.41 - Seja x¯ uma raiz da equa¸c˜ao f(x) = 0. Supomos que f(x), f0(x) e f”(x)sejam cont´ınuas e limitadas num intervalo fechado I contendox= ¯xe que f0(¯x) = 0 e f”(¯x)6= 0. (Observe que nestas condi¸c˜oesx¯ ´e um zero de multiplicidade 2 def(x) = 0).

a) Mostre que o m´etodo iterativo definido por:

xk+1 = xk − 2 f(xk)

f0(xk), k= 0,1,2, . . . converge para a raizx¯ se xk ∈I.

b) O m´etodo definido ema)estende-se para uma raiz de multiplicidademda seguinte maneira:

xk+1 = xk − m f(xk)

f0(xk), k= 0,1,2, . . . Calcular a raizx¯ pr´oxima de1, da equa¸c˜ao:

f(x) = x4−3.1 x3+ 2.52x2+ 0.432 x−0.864 = 0,

com erro relativo inferior a 10−3, usando o m´etodo descrito acima e sabendo que f(¯x) = f0(¯x) = f”(¯x) = 0 e f000(¯x)6= 0.

3.42 -Dado o sistema n˜ao linear:

x3−3x y2+ 1 = 0 3 x2 y−y3= 0

Determine uma solu¸c˜ao com 2 d´ıgitos significativos corretos, iniciando com (x0, y0) = (0.51,0.85), e usando:

a) m´etodo iterativo linear b) m´etodo de Newton.

3.43 - Mostre que o sistema n˜ao linear:

3x2+y2+ 9 x−y−12 = 0 x2+ 36y2−36 = 0

possui exatamente 4 ra´ızes. Determine essas ra´ızes usando o m´etodo de Newton, com 2 d´ıgitos significa-tivos corretos, iniciando com (1,1),(1,−1),(−4,1)e (−4,−1).

3.44 - SejamC= (1,0)eD= (0,1). Usando o m´etodo de Newton para sistemas n˜ao lineares determine o valor de um ponto P = (x, y), com precis˜ao de 10−3, que diste 2 unidades deC e de D, obtendo os valores iniciais necess´arios atrav´es de gr´afico.

3.45 - Considere o seguinte problema: ”dado um polinˆomio de grau n com coeficientes reais, P(z), onde z ´e uma vari´avel complexa, determinar uma raiz complexa de P(z), se existir, ou seja resolver a equa¸c˜aoP(z) = 0”. Comoz=x+i y, o polinˆomio P(z)pode ser escrito na forma:

P(z) = u(x, y) +i v(x, y)

Ent˜ao resolver a equa¸c˜aoP(z) = 0 ´e equivalente a resolver o seguinte sistemas de equa¸c˜oes:

u(x, y) = 0 v(x, y) = 0

Dada uma aproxima¸c˜ao inicial (x0, y0) conveniente, podemos resolver este sistema pela extens˜ao do m´etodo de Newton (para sistemas n˜ao lineares).

Aplique o processo descrito acima para determinar uma aproxima¸c˜ao da raiz complexa de P(z) = z2−2 z+ 3, tomando como valor inicial (x0, y0) = (1,1).

3.46 - Dado que: x2−3.9 x+ 4.8 ´e um fator aproximado de x4−4 x3+ 4 x2+ 4 x−5 = 0, use o m´etodo de Newton-Bairstow para melhorar a aproxima¸c˜ao.

3.47 - Considere a matriz:

A =

1 −2 0 0 t2 8 0 0

0 0 t 2

0 0 2 t

 .

Sabendo que o determinante deA´e o polinˆomioP(t) = 2t4−32, determine todos os valores det, com erro inferior a 10−3, que tornem a matriz singular. Utilize o m´etodo de Newton-Bairstow e use como fator quadr´atico inicialx2−0.0001 x−3.999. Trabalhe com arredondamento para 4 casas decimais.

3.48 - Usando o algoritmo Q-D vers˜ao Newton (para a raiz real) e Newton-Bairstow (para as ra´ızes complexas), determine todos os zeros de P(x) =x3−x2+ 2x−2, com 4 casas decimais corretas.

Dans le document 1.2 Espa¸ co Vetorial (Page 95-101)