Académique Documents
Professionnel Documents
Culture Documents
3.1 Reviso de conceitos fundamentais Este captulo tratar do problema da determinao de um nmero para o qual uma funo f(x) seja zero, ou seja, ( ) = 0 . Estes valores especiais = so chamados de razes da equao ( ) = 0 ou zeros da funo ( ) = 0, como podem ser vistos na Figura 3.1.
A necessidade de encontrar valores de = que satisfaam equao ( ) = 0 aparece frequentemente em uma ampla variedade de problemas provenientes das Cincias e das Engenharias. Para equaes algbricas de grau at quatro, suas razes podem ser calculadas por meio de uma expresso, tal como 1,2 ( 2 4) = 2 para determinar as duas razes de
( ) = 2 + + = 0. No entanto, para equaes algbricas de grau superior a quatro e para a grande maioria das equaes transcendentes, as razes no podem ser calculadas analiticamente. Nesses casos, tm que ser usados mtodos que encontrem uma soluo aproximada para essas razes. Em geral, o problema s pode ser resolvido por mtodos que aproxima as solues. Embora estes mtodos no forneam razes exatas, elas podem ser calculadas com a exatido que o problema requeira, desde que certas condies sobre f sejam satisfeitas.
185
Para se calcular uma raiz duas etapas devem ser seguidas: a) Isolar a raiz, ou seja, achar um intervalo [a , b], o menor possvel, que contenha uma e somente uma raiz da equao f(x) = 0. b) Refinamento da raiz. A partir de um valor inicial 0 , , - , gerar uma sequncia *0 , 1 , 2 , , , + que convirja para uma raiz exata de ( ) = 0.
Existem alguns mtodos para clculo das razes de equaes polinomiais que no requerem que haja um prvio isolamento de cada raiz. No entanto, a maioria dos mtodos para clculo de razes necessita que a mesma esteja confinada em um dado intervalo sendo nica nesse intervalo. Devido existncia de alguns teoremas da lgebra que fornecem importantes informaes sobre as equaes polinomiais, o isolamento de razes das equaes algbricas e das transcendentes ser visto separadamente.
186
- Equaes algbricas. Seja uma equao algbrica de grau n, 1, escrita na forma de potncias, ( ) = + 1 1 + 2 2 + + 2 2 + 1 + 0 = 0 com os coeficientes sendo reais e 0. Antes de serem abordados mtodos para determinar o nmero e os limites das razes reais de uma equao polinomial, sero vistos modos de avaliar um polinmio e algumas propriedades importantes desse tipo de funo.
- Avaliao de polinmio Para obter o valor de um polinmio () = + 1 1 + 2 2 + + 2 2 + 1 + 0 em um ponto x = a, usualmente, se faz: () = + 1 1 + 2 2 + + 2 2 + 1 + 0 Dessa maneira, para avaliar P(x) de grau n, em x = a, so necessrias n(n+1)/2 multiplicaes e n adies.
187
Exemplo 1 Avaliar ( ) = 3 5 2 4 + 5 3 + 7 2 3 + 1 em x = 2. Soluo (2) = 3 25 2 24 + 5 23 + 7 22 3 2 + 1 = 127 Sendo necessrias 15 multiplicaes e 5 adies. Uma maneira mais eficiente de avaliar um polinmio o mtodo de Horner, que consiste em reescrever o polinmio de forma a evitar potncias. Deste modo, ( ) = + 1 1 + 2 2 + + 2 2 + 1 + 0 ( ) = ( 1 + 1 2 + 2 3 + + 2 + 1 ) + 0 ( ) = (( 1 + 1 2 + 2 3 + + 2 ) + 1 ) + 0 ( ) =
1
( ) = ( ( ( + 1 ) + 2 ) + + 2 ) + 1 ) + 0 O processo de Horner requer apenas n multiplicaes e n adies para avaliar um polinmio de grau n.
188
Exemplo 2 Avaliar ( ) = 3 5 2 4 + 5 3 + 7 2 3 + 1 em x = 2 usando o processo de Horner. Soluo ( ) = (.((3 2) + 5) + 7/ 3) + 1 (2) = (.((3 2 2) 2 + 5) 2 + 7/ 2 3) 2 + 1 = 127
189
O algoritmo de Horner para avaliar um polinmio de grau n no ponto x = a est mostrado abaixo. Os parmetros de entrada so o grau n do polinmio, o vetor c contendo os coeficientes, sendo ( ) = (1) + (2) 1 + + () + ( + 1) e o ponto a onde P(x) deve ser avaliado. O parmetro de sada a ordenada y = P(a). Algoritmo Horner { Objetivo: Avaliar um polinmio de grau n no ponto a } parmetros de entrada n , c , a { grau , coeficientes e ponto a ser avaliado, onde c tal que } { ( ) = (1) + (2) 1 + + () + ( + 1) } parmetros de sada y { ordenada P(a) } { Declarar variveis } {} { Entrada de dados } {}
190
{ Iniciar variveis } Y C(1) { Clculo necessrios } para I 2 at N + 1 faa Y Y * A + C(I) fim para { Sada de dados } {} Fim algoritmo
191
Exemplo 3 Implementar o algoritmo de Horner e avaliar ( ) = 3 5 2 4 + 5 3 + 7 2 3 + 1 em x = 2. Soluo % Os parmetros de entrada n=5 = 3 2 5 7 3 a=2 % produzem o resultado y = 127 1
192
- Propriedades gerais Uma equao algbrica de grau n tem exatamente n razes, reais ou complexas, contando cada raiz de acordo com a sua multiplicidade. Uma raiz multiplicidade m se: ( ) = ( ) = ( ) = = 1 ( ) = 0 e ( ) 0 sendo
() ( ) = | =
de ( ) = + 1 1 + 2 2 + + 2 2 + 1 + 0 = 0 tem
, = 1 , 2 , , .
193
Assim, = 1 uma raiz de multiplicidade = 3. Considerando tambm que (5) = 0, o polinmio de grau 4 acima pode ser escrito na forma fatorada ( ) = ( 1)3 ( + 5).
194
Se os coeficientes de uma equao algbrica forem reais, ento suas razes complexas sero complexos conjugados em pares, ou seja, se 1 = + for uma raiz de multiplicidade m, ento 2 = tambm ser uma raiz e com a mesma multiplicidade. Exemplo 5 As razes de ( ) = 2 4 + 13 = 0 so: 4 (4)2 4 1 13 = { 1 2 2 = 2 + 3 = 2 3
Uma equao algbrica de grau mpar com coeficientes reais tem, no mnimo, uma raiz real.
Exemplo 6 As razes da equao ( ) = 3 9 2 + 33 65 so 1 = 5 , 2 = 2 + 3 e 3 = 2 3 . Portanto, esta equao de grau 3 tem uma raiz real.
195
- Relao entre razes e coeficientes Se , = 1 , 2 , , forem as razes de ( ) = 0 , ento o polinmio pode ser escrito na forma fatorada: ( ) = ( 1 )( 2 ) ( ) = 0 Multiplicando os fatores, ( ) = (1 + 2 + + ) 1 + (1 2 + 1 3 + + 1 + 2 3 + + 2 + + 1 ) 2 (1 2 3 + 1 2 4 + + 1 2 + 1 3 4 + + 2 1 ) 3 + (1) (1 2 3 ) = 0
196
Comparando a expresso acima com ( ) = 0 escrita na forma de potncias e aplicando a condio de igualdade das equaes algbricas, tem-se que: 1 (1 + 2 + + ) = , 2 (1 2 + 1 3 + + 1 + 2 3 + + 2 + + 1 ) = , 3 (1 2 3 + 1 2 4 + + 1 2 + 1 3 4 + + 2 1 ) = , (1 2 3 ) = (1) 0
As expresses acima relacionando os coeficientes de uma equao algbrica com as suas razes so conhecidas como relaes de Girard. Essas relaes so vlidas tambm para as razes complexas.
197
- Limites das razes reais Uma equao algbrica na forma () = + 1 1 + 2 2 + + 2 2 + 1 + 0 = 0 pode ter suas razes reais delimitadas usando o Teorema de Lagrange. Teorema de Lagrange Dada a equao () = + 1 1 + 2 2 + + 2 2 + 1 + 0 = 0 se > 0 e (0 1) for o maior ndice de coeficiente escolhido dentre os coeficientes negativos, ento o limite superior das razes positivas de ( ) = 0 pode ser dado por: = 1 +
onde B o valor absoluto do maior coeficiente negativo em mdulo. Desse modo, se for a maior das razes positivas de ( ) = 0 , ento .
198
14 4,74 1
O Teorema de Lagrange garante que ( ) = 0 no tem nenhuma raiz maior que 4,74. Se > 0 ( = 0 , 1 , 2 , , ) , ento ( ) = 0 no tem razes positivas, pois
( ) = > 0
=0
199
Para determinar os limites superiores e inferiores das razes positivas e negativas, so necessrias trs equaes auxiliares: 1 ( ) = (1 ) = 0 2 ( ) = ( ) = 0 e 3 ( ) = ( 1 ) = 0.
Sendo , = 1 , 2 , , , as razes de ( ) = 0 , ento ( ) na forma fatorada : ( ) = ( 1 )( 2 ) ( ) = 0 Desse modo, 1 ( ) = . 1 / . 2 / . / , 1 ( ) = (1 1 )(1 2 ) (1 ) , cujas razes so , , ,
1 2
200
201
Exemplo 8 Seja ( ) = 4 6 3 5 2 + 42 + 40 = 0 , com razes 1 = 2 , 2 = 1 , 3 = 4 e 4 = 5 , ento as equaes auxiliares e suas respectivas razes so: 1 ( ) = 1 4 ./ = 40 4 + 42 3 5 2 6 + 1 1 = 0,5 , 2 = 1 , 3 = 0,25 e 4 = 0,2 , 2 ( ) = ( ) = 4 + 6 3 5 2 42 + 40 1 = 2 , 2 = 1 , 3 = 4 e 4 = 5 , 3 ( ) = 4 ./ = 40 4 42 3 5 2 + 6 + 1 1 = 0,5 , 2 = 1 , 3 = 0,25 e 4 = 0,2 ,
1 1
202
for a maior das razes positivas de 1 ( ) = 0, ento ser a menor das razes positivas de
( ) = 0 (ver Exemplo 8). Sendo 1 o limite superior das razes positivas de 1 ( ) = 0, calculado pelo Teorema de Lagrange, tem-se que:
1
1 11 ,
1
203
b)
Se for a maior das razes positivas de 2 ( ) = 0, ento ser a menor das razes negativas Sendo 2 o limite superior das razes positivas de 2 ( ) = 0 , dado pelo Teorema de Lagrange 2 2
c)
Se 1 for a maior das razes positivas de 3 ( ) = 0, ento ser a menor das razes negativas de Sendo 3 o limite superior das razes positivas de 3 ( ) = 0, calculado pelo Teorema de Lagrange,
204
A Figura 3.2 mostra os limites das razes reais de uma equao algbrica. importante notar que esses limites no garantem a existncia das razes reais, mas to somente informam onde as razes reais estaro caso existam.
205
Exemplo 9 Calcular os limites das razes reais de ( ) = 4 + 2 3 13 2 14 + 24 = 0 do Exemplo 7. Soluo - Conforme visto no Exemplo 7 = 1 +
42
14 4,74 1
+ 24/ = 0
1 ( ) = 24 4 14 3 13 2 + 2 + 1 = 0 1 = 1 +
43
14 1 = 0,63 24 1
2 ( ) = ( ) = ( )4 + 2 ( )3 13 ( )2 14 ( ) + 24 = 0 2 ( ) = ( )4 2 ( )3 13 ( )2 + 14 ( ) + 24 = 0
206
2 = 1 +
43
13 1
2 = 14
13
14
13 1 = 0,58 24 3
Razes Negativas 2 1 3
0,63 + 4,74
14 0,58
207
Pode ser construdo um dispositivo prtico para facilitar a determinao dos limites das razes reais. O dispositivo constitudo de dois blocos. No primeiro bloco, so definidos os coeficientes de ( ) = 0 e de suas trs equaes auxiliares 1 ( ) = 0 , 2 ( ) = 0 e 3 ( ) = 0 . Para tal, 1. colocar os coeficientes de ( ) = 0 na coluna P(x) , com cn no topo, 2. inverter a ordem dos coeficientes da coluna P(x) e coloca-los em 1 ( ) = 0 , 3. trocar o sinal dos coeficientes de P(x), cujos ndices sejam mpares e atribu-los a 2 ( ) = 0 , 4. inverter a ordem dos coeficientes da coluna 2 ( ) e coloca-los em 3 ( ) e 5. se algum < 0 , ento trocar o sinal de todos os coeficientes da coluna para garantir que > 0, conforme exige o Teorema de Lagrange.
208
No segundo bloco, so atribudos os parmetros necessrios para aplicar o Teorema de Lagrange a cada uma das quatro equaes. Assim, K o ndice do primeiro coeficiente negativo, N o grau do polinmio, B o valor absoluto do maior coeficiente negativo em mdulo, Li o limite superior das razes positivas de ( ) = 0 dado pelo Teorema de Lagrange e so os limites superiores e inferiores das razes positivas e negativas de ( ) = 0, sendo que () = , (1 ) = 11 , (2 ) = 2 e (3 ) = 13
209
Exemplo 10 Calcular os limites das razes de ( ) = 4 + 2 3 13 2 14 + 24 = 0 do Exemplo 9 usando o dispositivo prtico. Soluo = 4
4 3 2 1 0 k n-k B
( )
1 2 -13 -14 24 2 2 |14| 4,74 4,74
1 ( )
24 -14 -13 2 1 3 1 |14| 1,58 0,63
2 ( )
1 -2 -13 14 24 3 1 |13| 14 -14
3 ( )
24 14 -13 -2 1 2 2 |13| 1,74 -0,58
210
O algoritmo Limites Razes. Esse algoritmo, mostrado a seguir, baseado no dispositivo prtico, determina os limites das razes reais de uma equao polinomial a partir dos seus coeficientes. Os parmetros de entrada so o grau n do polinmio, o vetor c contendo os coeficientes, sendo ( ) = (1) + (2) 1 + + () + ( + 1) . O parmetro de sada o vetor L contendo os limites das razes reais, de forma que (1) = 11 (2) = , L(3)= 2 e (4) = 13
211
Algoritmo Limites Raizes { Objetivo: Achar os limites das razes reais de uma equao polinomial } parmetros de entrada n , c { grau e coeficientes , onde c tal que } { ( ) = (1) + (2) 1 + + () + ( + 1) } parmetros de sada L { limites inferior e superior das razes positivas e negativas, respectivamente } { Declarar variveis } {} { Entrada de dados } {} se C(1) = 0 ento escreva Coeficiente c(1) nulo abandone fim se
212
{ Iniciar variveis } TN+1 C(T + 1) 0 enquanto C(T) = 0 faa T T 1 fim enquanto { Clculo necessrios } para I 1 at 4 faa se (I = 2) ou (I = 4) ento Aux C(J) C(J) C(T-J+1) C(T-J+1) Aux fim para seno
213
se I = 3 ento
para J 1 at (T/2) faa Aux C(J) C(J) C(T-J+1) C(T-J+1) Aux fim para para J T - 1 at 1 passo -2 faa C(J) - C(J) fim para fim se fim se { se C(1) for negativo, ento trocado o sinal de todos os coeficientes } se C(1) < 0 ento para J 1 at T faa C(J) - C(J)
214
enquanto (C(K) > 0) e (K < T) faa KK+1 fim enquanto { clculo de B, o maior coeficiente negativo em mdulo } se ento B0 para J 2 at T faa se (C(J) < 0) e (ABS(C(J)) > B) ento B ABS(C(J)) fim se fim para { limite das razes positivas de ( ) = 0 e das equaes auxiliares }
215
L(I) 1 + seno
/(1)
L(I) 10100 fim se fim para { Sada de dados } { limites das razes positivas e negativas de ( ) = 0 } Aux L(1) L(1) 1/L(2) L(2) Aux L(3) - L(3) L(4) - 1/L(4) {} Fim algoritmo
216
Exemplo 11 Calcular os limites das razes reais da equao polinomial ( ) = 4 + 2 3 13 2 14 + 24 = 0 do Exemplo 10 usando o algoritmo Limites Raizes. Soluo % Os parmetros de entrada n=4 = 1 2 13 14 24
217
Pelo grfico mostra na Figura 3.3(a), observa-se que o intervalo original pode ser reduzido a [-5 , 4]. A Figura 3.3(b) revela claramente as quatro razes isoladas nos intervalos [-5 , -3], [-3 , -1], [0 , 2] e [2 , 4].
218
- Determinando o Nmero de Razes Reais A Regra de sinais de Descartes uma maneira simples para determinar o nmero de razes reais de uma equao algbrica. Sabendo-se os limites e o nmero das razes reais, a tarefa de isolar essas razes ficar grandemente facilitada. Teorema Regra de Sinais de Descartes O nmero de razes reais positivas + de ( ) = 0 igual ao nmero de variaes de sinais na sequncia dos coeficientes ou menor que este nmero por um inteiro par. As razes so contadas de acordo com a sua multiplicidade e no so considerados os coeficientes nulos. Corolrio Se ( ) = 0 no possuir coeficientes nulos, ento o nmero de razes reais negativas (contando multiplicidades) igual ao nmero de permanncias de sinais na sequncia dos coeficientes ou menor que este nmero por um inteiro par. A Regra de sinais de Descartes consegue discernir entre as razes positivas e negativas; no entanto, no consegue separar as razes reais das complexas, as quais aparecem em pares conjugados. Por exemplo, se o nmero de variaes de sinais for 5, ento + = 5 3 1.
219
Exemplo 12
Calcular os limites e o nmero de razes reais de ( ) = 3 3 2 6 + 8 = 0 Soluo Para aplicar o Teorema de Lagrange e obter os Lis, o coeficiente = 3 deve ser positivo em cada um dos quatro polinmios. Como isso no verdadeiro para 2 (), ento todos os coeficientes desse polinmio devem ter os seus sinais trocados. Os zeros do novo polinmio sero iguais aos do polinmio original e, por conseguinte, os dois polinmios tero os mesmo 2 . = 3 3 2 1 0 k n-k B ( ) 1 -3 -6 8 1 ( ) 8 -6 -3 1 2 ( ) -1 -3 6 8 3 ( ) 8 6 -3 -1 = 3 3 2 1 0 k n-k B ( ) 1 -3 -6 8 2 1 |6| 7 7 1 ( ) 8 -6 -3 1 2 1 |6| 1,75 0,57 2 ( ) 1 3 -6 -8 1 2 |8| 3,83 -3,83 3 ( ) 8 6 -3 -1 1 2 |3| 1,61 -0,62
2 ()
Os limites das razes so 0,57 + 7 e 3,83 0,62 e o nmero de razes reais so + = 2 0 e = 1 , significando que existe uma raiz real negativa e as outras duas sero positivas ou complexas.
220
Exemplo 13
Achar os limites e o nmero de razes reais de ( ) = 6 5 5 + 7 4 + 19 3 98 2 104 . Soluo Como 0 = 0 , tem-se, pelas relaes de Girard, que existe pelo menos uma raiz nula. Para obter as equaes auxiliares, () deve ser deflacionado pela diviso por (x 0), resultando em ( ) = 5 5 4 + 7 3 + 19 2 98 104 = 0. Este novo () ter todas as razes do antigo, com exceo da raiz nula. Neste exemplo, como 5 < 0 para ( ) , = 1, 2, 3 , os sinais de todos os coeficientes de 1 ( ) , 2 ( ) 3 ( ) devem ser trocados.
= 3 5 4 3 2 1 0 k n-k B () 1 -5 7 19 -98 -104 1 () -104 -98 19 7 -5 1 2 () -1 -5 -7 19 98 -104 3 () -104 98 19 -7 -5 -1 = 3 () 1 -5 7 19 -98 -104 4 1 |104| 105 105 1 () 104 98 -19 -7 5 -1 3 2 |19| 1,43 0,70 2 () 1 5 7 -19 -98 104 2 3 |98| 5,61 -5,61 3 () 104 -98 -19 7 5 1 4 1 |98| 1,94 -0,51
1 (),2 (),3 ()
3 2 1 0 k n-k B
Assim, os limites das razes so 0,70 + 105 e 5,61 0,51 e o nmero de razes reais so + = 3 1 e = 2 0 , garantindo pelo menos uma raiz real positiva.
221
- Equaes Transcendentes Infelizmente, as equaes transcendentes no dispem de teoremas, como visto para as algbricas, que forneam informaes sobre os limites e o nmero de razes reais. Se as algbricas tm um nmero finito de razes, o mesmo, s vezes, no ocorre com uma transcendente que pode ter um nmero infinito de razes, como, por exemplo, ( ) = ( ) = 0 ou mesmo no ter razes como ( ) = ( ) 2 = 0. O mtodo grfico a maneira mais simples para achar um intervalo que contenha uma nica raiz. Ele consiste em fazer um esboo da funo no intervalo de interesse. No entanto, a maior dificuldade com as equaes transcendentes consiste, justamente, em determinar este intervalo, j que no existe um Teorema de Lagrange para elas. O que se faz na prtica usar a intuio, o conhecimento a respeito da funo e, como ocorre na maioria das vezes, o mtodo da tentativa e erro, ou seja, a partir de um intervalo inicial, tenta-se outro que isole a raiz observando-se a forma da curva.
222
O algoritmo Troca Sinal. Esse algoritmo, mostrado a seguir, fornece um intervalo [a , b], no qual uma funo f(x) troca de sinal, ou seja, ()() < 0. Esse intervalo expandido a partir de um dado valor z. Apesar da raiz no estar necessariamente isolada, pois pode haver um nmero mpar de razes no intervalo, o algoritmo fornecer um intervalo de partida para o isolamento de uma raiz. O parmetro de entra o ponto z a partir do qual o intervalo ser gerado. Os parmetros de sada so o limite inferior a e o superior b do intervalo procurado e a condio de erro CondErro. Se CondErro = 0 significa que ()() < 0 , ou seja, existe um nmero mpar de razes no intervalo [a , b]. Mas, se Se CondErro = 1 , ento ()() > 0 , significando que no intervalo [a , b] no tem razes ou tem um nmero par de razes.
223
Algoritmo Troca Sinal { Objetivo: Achar um intervalo [a , b] onde uma funo troca de sinal } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada z { ponto a partir do qual o intervalo ser gerado } parmetros de sada a , b , CondErro { limites inferior e superior do intervalo e condio de erro, sendo } { CondErro = 0 se ()() < 0 e CondErro = 1 se () () > 0 } { Declarar variveis } {} { Entrada de dados } {} se Z = 0 ento A -0,05 B 0,05 seno A 0,95 x Z B 1,05 x Z fim se { Iniciar variveis }
224
Iter 0 Aureo 2 (5 1) { Avaliar a funo desejada nos pontos a e b } Fa f(a) Fb f(b) escreva Iter, a, b, Fa, Fb { Clculo necessrios } enquanto ( ()() > 0) e ( < 20 ) faa Iter Iter + 1 se ABS(Fa) < ABS(Fb) ento A A Aureo x (B A) { Avaliar a funo no novo ponto a } Fa f(a) seno B B + Aureo x (B A) { Avaliar a funo no novo ponto b } Fb f(b) fim se
225
escreva Iter, a, b, Fa, Fb fim enquanto { Sada de dados } se ()() 0 ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
226
Exemplo 14 Achar um intervalo, a partir de z = 5, onde ( ) = 2 3 cos( + 1) 3 troca de sinal, utilizando o algoritmo Troca Sinal. Soluo % O parmetro de entrada Z=5 % produz os resultados Determinacao de intervalo onde ocorre troca de sinal Iter a b Fa Fb 0 4.7500 5.2500 210.4826 285.4068 1 3.9410 5.2500 119.1909 285.4068 2 1.8229 5.2500 10.0655 285.4068 3 -3.7221 5.2500 -105.2218 285.4068 a = -3.7221 b = 5.2500 CondErro = 0
227
De fato, a funo muda de sinal no intervalo [-3,7221 , 5,2500] , pois (3,7221) = 105,2218 e (5,2500) = 285,4068. Pelo grfico mostrado na Figura 3.4, percebe-se que o intervalo [-1 , 2] contm uma nica raiz. A curva pode ser esboada neste intervalo menor, Figura 3.4(b), para examinar o grfico com uma melhor definio.
(b) 1 2
Como j se percebe, um estudo analtico do comportamento de equaes transcendentes , em geral, muito complexo. O mtodo mais simples de se achar um intervalo que contenha s uma raiz, ou seja, isolar uma raiz, o mtodo grfico.
Mtodo Grfico Uma raiz real de uma equao ( ) = 0 um ponto onde a funo ( ) toca o eixo dos x. Para determinar uma raiz, basta fazer um esboo da funo ( )e verificar em que ponto do eixo dos x a funo se anula.
229
Figura 3.5 Esboo da funo ( ) = ( ) 2. Analisando o esboo do grfico, a funo tem uma raiz em torno de 1,05 .
230
Outra maneira de abordar a soluo do problema substituir ( ) = 0 por uma equao ( ) = ( ) ( ) = 0 equivalente, ou seja, uma equao que tem as mesmas razes de ( ) = 0. Considerando 1 = () e 2 = ( ) e construindo o esboo de seus grficos pode ocorrer uma interceptao entre as duas curvas. Um ponto de cruzamento est esboado na Figura 3.6. Chamando a abscissa do ponto de interceptao de 0 , temos que (0 ) = (0 ) e, portanto, (0 ) = (0 ) (0 ) = 0 Por isto, pode-se concluir que = 0 .
Figura 3.7 Esboo do grfico da funo ( ) = ( ) ( ) = 0 . Pelo grfico, observa-se que a raiz aproximada f(x) 1,05 .
232
Exemplo 17 Isolar, graficamente, os zeros da funo ( ) = 0,05 3 0,4 2 + 3 ( ). Soluo Inicialmente, pode-se definir um intervalo amplo para ter uma viso do comportamento da funo. A Figura 3.8(a) apresenta um esboo para 20 20, obtido com o uso de funes grficas do Matlab. Um melhor detalhamento pode ser obtido usando 4 12 , o qual mostrado na Figura 3.8(b). Podem ser observadas seis razes no intervalo [-4 , 12] e cada uma destas razes estar isolada nos seguintes intervalos: [-4 , -2] , [-1 , 1] , [2 , 4] , [6 , 8] , [8 , 10] e [10 , 12].
OBS: O mtodo grfico tambm pode ser usado para isolar as razes de equaes algbricas. Conhecendo os limites e o nmero de razes reais pelo Teorema de Lagrange e pela Regara de Sinais de Descartes, o isolamento por grfico fica enormemente facilitado.
233
(a) 20 20
(b) 4 12
234
- Convergncia da Raiz Se uma raiz j estiver isolada em um dado intervalo [a , b], ento a prxima etapa consiste em gerar uma sequncia *0 , 1 , exata de ( ) = 0. Critrio de parada Antes de serem abordados os mtodos para produzirem uma sequncia convergente para a raiz, necessrio definir um critrio de parada, ou seja, quando se deve interromper a gerao da sequncia. A referncia para a demonstrao do teorema abaixo est indicada em Campos (2001). Teorema: Sejam uma raiz exata e uma raiz aproximada de ( ) = 0, sendo e , , - e | ()| > 0 para , com = min | ()|
2 ,
, ,
Exemplo 18 Avaliar o erro absoluto cometido ao considerar = 2,23 como aproximao da raiz positiva de ( ) = 2 5 = 0 no intervalo [2 , 3]. Soluo = min |2 | = 4
23
|2,23 |
( = 5 2,2361)
236
O Teorema visto de aplicao muito restrita, considerando que ele requer que seja avaliado o mnimo da derivada primeira da funo f(x). Na prtica, a sequncia interrompida quando seus valores satisfizerem pelo menos um dos critrios: 1) | 1 | ou
1
2) |
ou ainda 3) |( )|
237
Ordem de convergncia Uma questo fundamental definir a rapidez com que a sequncia gerada por um dado mtodo, *0 , 1 , 2 , , , + , converge para a raiz exata .
Para tal, seja o erro da k-sima iterao definido por: = ou seja, a diferena entre a raiz e a sua estimativa . Um critrio para avaliar a convergncia :
lim |+1 | = | |
onde K a constante de erro assinttico e a ordem de convergncia do mtodo gerador da sequncia. Por causa disso, quanto maior for o valor de , mais rpida a sequncia convergir para a raiz da equao.
238
3.2 Mtodos iterativos para obteno de zeros reais de funes. 3.2.1. Mtodo da bisseo. Seja f(x) uma funo contnua no intervalo [a, b] , sendo a nica raiz de ( ) = 0 neste intervalo. O mtodo da bisseo consiste em subdividir o intervalo ao meio a cada iterao e manter o subintervalo que contenha a raiz, ou seja, aquele em que f(x) tenha sinais opostos nos extremos. Dividindo o intervalo [a, b] ao meio, obtm-se x0, havendo dois subintervalos, [a , x0] e [x0 , b] a serem considerados. Se f(x0) = 0, ento = 0 ; Caso contrrio, a raiz estar no subintervalo onde a funo tem sinais opostos nos pontos extremos, ou seja, se () (0 ) < 0, ento ( , 0 ); seno () (0 ) > 0 e (0 , ). O novo intervalo [a1, b1] que contm dividido ao meio e obtm-se o ponto x1. O processo se repete at que se obtenha uma aproximao para a raiz exata com a tolerncia desejada.
239
240
Convergncia Em alguma etapa do processo tem-se ou a raiz exata ou uma sequncia infinita de intervalos encaixados [a1 , b1] , [a2 , b2] , ..., [ak , bk] , ... , tal que ( ) ( ) < 0 , = 0 , 1 , 2 , , Como a cada iterao o intervalo [a, b] dividido ao meio, na k-sima iterao o comprimento do intervalo ser: = 2 ( ) 2 na equao acima:
ou substituindo = | 1 | = 2+1
Desde que | 1 |
241
ou seja, para um dado intervalo [a , b] so necessrias, no mnimo, k iteraes para se calcular a raiz com a tolerncia .
Obs.: Na prtica, o mtodo da bisseo deve ser usado apenas para diminuir o intervalo que contm a raiz para posterior aplicao de outro mtodo, pois o esforo computacional cresce demasiadamente quando se aumenta a exatido com que se quer a raiz.
242
- Algoritmo Bissecao O algoritmo mostrado a seguir calcula, pelo mtodo da bisseo, a raiz de uma equao ( ) = 0 contida no intervalo [a , b], com tolerncia usando os critrios (1) e (3).
Os parmetros de entrada so o limite inferior a e o superior b do intervalo que contm a raiz, a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax.
A funo f(x) deve ser especificada de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas.
243
Algoritmo Bissecao { Objetivo: Calcular a raiz de uma equao pelo mtodo da bisseo } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada a , b , Toler , IterMax { limite inferior, limite superior, tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz, nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo desejada nos pontos a e b } Fa f(A) Fb f(B) se Fa x Fb > 0 ento escreva Funcao no muda de sinal nos extremos do intervalo informado abandone fim se
244
DeltaX ABS(B - A) / 2 Iter 0 escreva A, B, Toler, IterMax { Clculo necessrios } { Avaliar a funo em x } X (A + B) / 2 Fx f(X) escreva Iter, A, Fa, B, Fb, X, Fx, DeltaX enquanto (( > ) ou (() > )) e ( < ) faa se Fa * Fx > 0 ento AX Fa Fx seno BX fim se DeltaX DeltaX / 2 Iter Iter + 1 X (A + B) / 2 Fx f(X) escreva Iter, A, Fa, B, Fb, X, Fx, DeltaX
245
fim enquanto { Sada de dados } Raiz X { teste de convergncia } se e () ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
246
Exemplo 1 Determinar a maior raiz de ( ) = 0,05 3 0,4 2 + 3 ( ) com 0,005, usando o algoritmo Bissecao com Itermax = 100. Soluo Pela Figura 3.8(b) , temos que a raiz procurada est no intervalo: ,10 , 12- conforme mostrado na Figura 3.10.
- Usando o algoritmo Bissecao, temos: % Os parmetros de entrada a = 10 b = 12 Toler = 0.0050 IterMax = 100
% produzem os resultados Calculo de raiz de equacao pelo metodo da bissecao Iter 0 1 2 3 4 a 10.00000 Fa -6.32063 b 12.00000 Fb 9.48337 9.48337 9.48337 0.20128 0.20128 x 11.00000 Fx -1.4850e+01 DeltaX 1.00000 0.50000 0.25000 0.12500 0.06250
248
11.00000 -14.84968 12.00000 11.50000 11.50000 11.62500 -7.05935 -7.05935 -3.69752 12.00000 11.75000 11.75000
5 6 7 8 9 10 11 12
Raiz = 11.7439 Iter = 12 CondErro = 0 A raiz da equao 12 = 11,74390 Apesar de sua robustez, o mtodo da bisseo no eficiente devido sua convergncia lenta. Isso ocorre por que somente o sinal de (1 ) usado para o clculo do prximo , sem levar em considerao o seu valor.
249
Exemplo 2 Calcular a raiz positiva da equao ( ) = 2 3 com 0,01. Soluo Utilizando um programa grfico, obtemos a Figura 3.11.
250
Analisando o grfico, conseguimos isolar a raiz positiva no intervalo ,1 , 2- . Nos extremos do intervalo temos: () = (1) = 2 < 0 () = (2) = 1 > 0 Logo, o nmero de iteraes a ser gasto ser: log 2 . Assim k 0 1 2 3 4 5 6 1,00000 1,50000 1,50000 1,62500 1,68750 1,71875 1,71875 2,00000 2,00000 1,75000 1,75000 1,75000 1,75000 1,73437 1,50000 1,75000 1,62500 1,68750 1,71875 1,73437 1,72656 ( ) -0,75000 0,06250 -0,35938 -0,15234 -0,04590 0,00806 -0,01898 0,25000 0,12500 0,06250 0,03125 0,01563 0,00781
/
1 log 2 .0,01/ 1
21
21 ln .0,01 /
ln 2
16
A raiz = 6 1,72656 Onde o erro foi calculado e comparado com a preciso desejada por | 1 | .
251
Exemplo 3 Calcular a raiz da equao ( ) = 2 + ln com 0,01. Soluo Utilizando um programa grfico, obtemos a Figura 3.11.
Analisando o grfico, conseguimos isolar a raiz no intervalo ,0,5 , 1- . Nos extremos do intervalo temos: () = (0,5) = 0,44315 < 0 () = (1) = 1,00000 > 0 Logo, o nmero de iteraes a ser gasto ser: ln .10,5 / 0,01 ln 2 15 1,00000 0,75000 0,75000 0,68750 0,65625 0,65625 0,75000 0,62500 0,68750 0,65625 0,64063 0,64844 ( ) 0,27482 -0,07938 0,09796 0,00945 -0,03491 -0,01272 0,12500 0,06250 0,03125 0,01563 0,00781
A raiz = 5 0,64844 Onde o erro foi calculado e comparado com a preciso desejada por | 1 | .
253
3.2.2
A velocidade de convergncia da sequncia * + para a raiz de uma equao ( ) = 0 pode ser aumentada usando-se um esquema diferente da bisseo. Um esquema consiste em aproximar ( ) por um polinmio linear no intervalo de interesse ,0 , 1 -. Se o intervalo for pequeno, essa aproximao vlida para a maioria das funes. Deste modo, uma estimativa da raiz tomada como o valor onde a reta cruza o eixo das abscissas. A equao do polinmio de grau 1 que passa pelos pontos de coordenadas ,0 , (0 )- e ,1 , (1 )- dada por: = (1 ) + (1 ) (0 ) ( 1 ) (1 0 )
Ento, o valor da abscissa 2 , para o qual = 0, tomado como uma aproximao da raiz: (1 ) (1 0 ) 2 = 1 (1 ) (0 )
254
Na prxima iterao, um dos pontos extremos do intervalo ,0 , 1 - ser substitudo por 2 , que uma melhor estimativa da raiz . O processo se repete, gerando, desta forma, uma sequncia * + at que o critrio de parada seja satisfeito. Existe uma famlia de mtodos baseados nesta aproximao linear, dentre os quais o mtodo da secante, o da regula falsi (posio falsa) e o Pgaso.
255
- Mtodo da Secante O mtodo da secante usa os pontos obtidos nas duas ltimas iteraes como pontos-base por onde passar o polinmio linear, conforme mostra a Figura 3.13(a).
- Algoritmo Secante O algoritmo mostrado a seguir calcula, pelo mtodo da secante, a raiz de uma equao ( ) = 0 contida no intervalo [a , b], com tolerncia usando os critrios (1) e (3). Os parmetros de entrada so o limite inferior a e o superior b do intervalo que isola a raiz, a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax. A funo f(x) deve ser especificada de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas. Durante as iteraes, o ponto ( , ) substitudo por ( , ) e ( , ) trocado pelo recm calculado ( , ). Por essa razo, antes das iteraes, verificado se || < || de modo a ser abandonado, na primeira iterao, o ponto mais distante da raiz.
257
Algoritmo Secante { Objetivo: Calcular a raiz de uma equao pelo mtodo da secante } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada a , b , Toler , IterMax { limite inferior, limite superior, tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz, nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo desejada nos pontos a e b } Fa f(A) Fb f(B) se ABS(Fa) < ABS(Fb) ento Ta AB BT
258
T Fa Fa Fb Fb T fim se Iter 0 XB Fx Fb escreva A, B, Toler, IterMax { Clculo necessrios } { Avaliar a funo em x } repita DeltaX -Fx *(B - A) / (Fb - Fa) X X + DeltaX Fx f(x) { Avaliar a funo em x } escreva Iter, A, Fa, B, Fb, X, Fx, DeltaX se ((() ) e (() )) ou ( ) ento interrompa fim se AB Fa Fb
259
BX Fb Fx Iter Iter + 1 fim repita { Sada de dados } Raiz X { teste de convergncia } se e () ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
260
Exemplo 4 Determinar a maior raiz de ( ) = 2 3 cos( + 1) 3 = 0 com 0,01, usando o algoritmo Secante com Itermax = 100, sabendo-se que ,1 , 2-. Soluo - Utilizando um programa grfico, obtemos a Figura 3.11.
- Utilizando o algoritmo Secante, temos: % Os parmetros de entrada a = -1 b=2 Toler = 0.0100 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo da secante Iter 0 1 2 3 4 5 a 2.00000 -1.00000 -0.09955 1.27313 0.82210 1.03883 Fa 13.98999 -6.00000 -3.62323 1.77312 -1.64011 -0.30676 b -1.00000 -0.09955 1.27313 0.82210 1.03883 1.08869 Fb -6.00000 -3.62323 1.77312 -1.64011 -0.30676 0.07576 x -0.09955 1.27313 0.82210 1.03883 1.08869 1.07881 Fx -3.623e+00 1.773e+00 -1.640e+00 -3.068e-01 7.576e-02 -2.438e-03 DeltaX 9.005e-01 1.373e+00 -4.510e-01 2.167e-01 4.986e-02 -9.875e-03
262
Raiz = 1.07881 Iter = 5 CondErro = 0 A raiz da equao 5 = 1,07881 O mtodo da secante pode apresentar alguns problemas. Se a funo no for, aproximadamente, linear no intervalo que contm a raiz, uma aproximao sucessiva pode sair deste intervalo como mostrado na Figura 3. 13(a).
263
- Mtodo da regula falsi O mtodo da regula falsi retm o ponto no qual o valor da funo tem sinal oposto ao valor da funo no ponto mais recente, garantindo, desta forma, que a raiz continue isolada entre dois pontos, como mostrado na Figura 3.13(b). O algoritmo mostrado a seguir calcula, pelo mtodo da regula falsi, a raiz de uma equao ( ) = 0 contida no intervalo [a , b], com tolerncia usando os critrios (1) e (3). Os parmetros de entrada so o limite inferior a e o superior b do intervalo que isola a raiz, a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax. A funo f(x) deve ser especificada de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas.
264
Algoritmo Regula falsi { Objetivo: Calcular a raiz de uma equao pelo mtodo da regula falsi } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada a , b , Toler , IterMax { limite inferior, limite superior, tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz, nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo desejada nos pontos a e b } Fa f(A) Fb f(B) se Fa x Fb > 0 ento escreva funo no muda de sinal nos extremos do interval dado abandone fim se se Fa > 0 ento
265
Ta A B BT T Fa Fa Fb Fb T fim se Iter 0 XB Fx Fb escreva A, B, Toler, IterMax { Clculo necessrios } repita DeltaX -Fx *(B - A) / (Fb - Fa) X X + DeltaX Fx f(x) { Avaliar a funo em x } escreva Iter, A, Fa, B, Fb, X, Fx, DeltaX se ((() ) e (() )) ou ( ) ento interrompa fim se se Fx < 0 ento
266
A X Fa Fx seno BX Fb Fx fim se Iter Iter + 1 fim repita { Sada de dados } Raiz X { teste de convergncia } se e () ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
267
Exemplo 5 Determinar a maior raiz de ( ) = 2 3 cos( + 1) 3 = 0 com 0,01, usando o algoritmo Regula falsi com Itermax = 100, sabendo-se que ,1 , 2-. Soluo - Utilizando um programa grfico, obtemos a Figura 3.11.
- Utilizando o algoritmo Regula falsi, temos: % Os parmetros de entrada a = -1 b=2 Toler = 0.0100 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo da regula falsi Iter 0 1 2 3 4 5 a -1.00000 -0.09955 0.33235 0.63985 0.83952 0.95534 Fa -6.00000 -3.62323 -3.16277 -2.40710 -1.55114 -0.88102 b 2.00000 2.00000 2.00000 2.00000 2.00000 2.00000 Fb x Fx -3.623e+00 -3163e+00 -2.407e+00 -1.551e+00 -8.810e-01 -4.631e-01 DeltaX -2.100e+00 4.319e-01 3.075e-01 1.997e-01 1.158e-01 6.189e-02
269
13.98999 -0.09955 13.98999 13.98999 13.98999 13.98999 13.98999 0.33235 0.63985 0.83952 0.95534 1.01723
6 7 8 9 10 11
Raiz = 1.07831 Iter = 11 CondErro = 0 A raiz da equao 11 = 1,07831 A convergncia para a raiz s se fez de um lado do intervalo, tornando este mtodo mais lento que o da secante, embora mais robusto. Quanto mais longe o ponto fixo for da raiz, mais lenta ser a convergncia.
270
- Mtodo Pgaso De modo similar aos outros mtodos baseados em aproximao linear, no mtodo pgaso, a sequncia * + obtida pela equao de recorrncia: +1 ( ) ( 1 ) , = ( ) (1 ) = 1 , 2 , 3 ,
Os pontos ,1 , (1 )- e , , ( )- pelos quais ser traada a reta para obter +1 so escolhidos de modo que (1 ) e ( ) tenham sempre sinais opostos, garantindo assim que ,1 , -. Alm do mais, o valor de (1 ) reduzido por um fator igual a reteno de um ponto, como ocorre na regual falsi. Deste modo, a reta pode ser traada por um ponto no pertencente curva de ().
( ) ( )+(+1 )
de modo a evitar a
271
Figura 3.16 Interpretao grfica do mtodo pgaso. Deve ser observado que a estimativa 4 da raiz obtida usando os pontos de coordenadas [3 , (3 )] e ,1 , - , sendo = (1 ) (
(2 )
2 )+(3 )
Observa-se que 4 uma melhor aproximao da raiz do que 4 que seria obtida pelo mtodo da regula falsi (linha tracejada).
272
O algoritmo mostrado a seguir calcula, pelo mtodo pgaso, a raiz de uma equao ( ) = 0 contida no intervalo [a , b], com tolerncia usando os critrios (1) e (3).
Os parmetros de entrada so o limite inferior a e o superior b do intervalo que isola a raiz, a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax.
A funo f(x) deve ser especificada de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas.
273
Algoritmo Pegaso { Objetivo: Calcular a raiz de uma equao pelo mtodo da regula falsi } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada a , b , Toler , IterMax { limite inferior, limite superior, tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz, nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo desejada nos pontos a e b } Fa f(A) Fb f(B) XB Fx Fb Iter 0 escreva A, B, Toler, IterMax { Clculo necessrios }
274
repita DeltaX -Fx *(B - A) / (Fb - Fa) X X + DeltaX Fx f(x) { Avaliar a funo em x } escreva Iter, A, Fa, B, Fb, X, Fx, DeltaX se ((() ) e (() )) ou ( ) ento interrompa fim se se Fx x Fb < 0 ento A B Fa Fb seno Fa Fa x Fb / (Fb + Fx) fim se BX Fb Fx Iter Iter + 1 fim repita { Sada de dados } Raiz X { teste de convergncia }
275
276
Exemplo 6 Determinar a raiz de ( ) = 2 3 cos( + 1) 3 = 0 com 0,01, usando o algoritmo pgaso com Itermax = 100, sabendo-se que ,1 , 2-. Soluo - Utilizando um programa grfico, obtemos a Figura 3.11.
- Utilizando o algoritmo Pegaso, temos: % Os parmetros de entrada a = -1 b=2 Toler = 0.0100 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo pegaso Iter 0 1 2 3 4 5 a -1.00000 2.00000 2.00000 2.00000 0.82842 1.11563 Fa -6.00000 13.98999 7.46964 4.95180 -1.60817 0.29537 b 2.00000 -0.09955 0.33235 0.82842 1.11563 1.07106 Fb x Fx -3.623e+00 -3.163e+00 -1.608e+00 2.954e-01 -6.294e-02 -1.807e-03 DeltaX -2.100e+00 4.319e-01 4.961e-01 2.872e-01 -4.457e-02 7.828e-03
278
13.98999 -0.09955 -3.62323 -3.16277 -1.60817 0.29537 -0.06294 0.33235 0.82842 1.11563 1.07106 1.07889
279
Exemplo 7 Achar o ponto de mximo do polinmio ( ) = 4 + 2 3 13 2 14 + 24 pelo mtodo Pgaso, com 105 , sabendo-se que ,1 , 1-, de acordo com a Figura 3.3(b). Soluo - A condio de mximo de uma funo que a derivada primeira se anule e que a derivada segunda seja negativa no ponto. Assim, o problema equivalente a calcular uma raiz de ( ) = 0. ( ) = 4 3 + 6 2 26 14 = 0 e ( ) = 12 2 + 12 26
- Utilizando o algoritmo Pegaso, temos: % Os parmetros de entrada a = -1 b=1 Toler = 1.0000e-05 IterMax = 100
280
% produzem os resultados Calculo de raiz de equacao pelo metodo pegaso Iter 0 1 2 3 4 a -1.00000 -1.00000 -0.36364 -0.51746 -0.49996 Fa 14.00000 12.37317 -3.94440 0.50640 -0.00114 b 1.00000 -0.36364 -0.51746 -0.49996 -0.50000 Fb x Fx -3.944e+00 5.064e-01 -1.135e-03 4.764e-08 0.000e+00 DeltaX -1.364e+00 -1.538e-01 1.750e-02 -3.914e-05 1.643e-09
-30.00000 -0.36364 -3.94440 0.50640 -0.00114 0.00000 -0.51746 -0.49996 -0.50000 -0.50000
Raiz = -0.50000 Iter = 4 CondErro = 0 Como ( ) = 12 2 + 12 26, ento (0,5) = 29 < 0 , confirmando que 4 = 0,5 um ponto de mximo.
281
3.2.3 Mtodos baseados em aproximao quadrtica. A estimativa de uma raiz para ( ) = 0 pode ser ainda melhor se ao invs de utilizar um polinmio interpolador de grau 1 for utilizado um polinmio de grau 2.
- Mtodo de Muller O mtodo de Muller consiste em aproximar a funo ( ), na vizinhana da raiz ,0 , 2 - , por um polinmio quadrtico. Este polinmio construdo de modo a passar pelos trs pontos de coordenadas ,0 , (0 )- , ,1 , (1 )- e ,2 , (2 )-. Deste modo, o zero do polinmio usado como uma estimativa da raiz de ( ) = 0. O processo , ento, repetido usando sempre os trs pontos mais prximos da raiz.
282
Um polinmio de segundo grau que passa pelos trs pontos de coordenadas ,2 , (2 )- , ,1 , (1 )- e , , ( )- na forma: 2 () = 2 + + onde = 1 pode ser construdo de acordo com a Figura 3.18. (1)
Para cada um dos trs pontos, tem-se que: 2 (2 ) = (2 ) (2 1 )2 + (2 1 ) + = (2 ) , 2 (1 ) = (1 ) (0)2 + (0) + = (1 ) = (1 ) 2 ( ) = ( ) ( 1 )2 + ( 1 ) + = ( ) , Definindo: 1 = 1 2 = 1 2 Considerando a equao (2), obtm-se o seguinte sistema linear em termos das incgnitas a e b:
2 2 { 2 1
(2)
2 1
= (2 ) = ( )
(1 ) (1 )
Cuja soluo : =
1
1 (1 +2 ) 1 ( ( ) ( + 1) (1 ) + (2 )) , sendo = e 2
(3)
284
(4)
Os dois zeros do polinmio de grau 2 em v (eq. 1) so: 2 4 = 2 Para obter a raiz mais prxima de 1 , o sinal na expresso acima deve ser escolhido de modo a tornar o numerador o menor possvel. Assim, em vista da transformao = 1 , a prxima estimativa da raiz de ( ) = 0 : +1 + ()2 4 = 1 + 2
onde a , b e c so dados por (3) , (4) e (2) , respectivamente. Na prxima iterao, devem ser utilizados os trs pontos mais prximos de .
285
O algoritmo mostrado a seguir determina, pelo mtodo de Muller, uma raiz de uma equao ( ) = 0 contida no intervalo [a , c], com tolerncia usando os critrios (1) e (3).
Os parmetros de entrada so o limite inferior a e o superior c do intervalo que contm a raiz, a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax.
A funo f(x) deve ser especificada de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas.
286
Algoritmo Muller { Objetivo: Calcular a raiz de uma equao pelo mtodo de Muller } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada a , c , Toler , IterMax { limite inferior, limite superior, tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz, nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo desejada nos pontos a , c e b } Fa f(A) Fc f(C) B (A + C) / 2 Fb f(B) XB Fx Fb DeltaX C - A
287
Iter 0 escreva A, B, Toler, IterMax { Clculo necessrios } repita H1 C B H2 B A R H1 / H2 TX A (Fc (R + 1) x Fb + R x Fa) / (H1 x (H1 + H2)) B (Fc Fb) / H1 - A x H1 C Fb Z (-B + SINAL(B) x RAIZ(B2 4 x A x C)) / (2 x A) XB+Z DeltaX X - T Fx f(x) { Avaliar a funo em x } escreva Iter, A, B, C, X, Fx, DeltaX se ((() ) e (() )) ou ( ) ento interrompa fim se se X > B ento A B
288
Fa Fb seno CB Fc Fb fim se BX Fb Fx Iter Iter + 1 fim repita { Sada de dados } Raiz X { teste de convergncia } se e () ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
289
Exemplo 1 Calcular, com 102 , a raiz de ( ) = 2 3 cos( + 1) 3 = 0 pelo mtodo de Muller, sabendo-se que ,1 , 2-. Soluo - Utilizando o algoritmo Muller, temos: % Os parmetros de entrada a = -1 b=2 Toler = 0.0100 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo de Muller Iter 0 1 a -1.00000 0.50000 b 0.50000 0.86331 c 2.00000 2.00000 x 0.86331 1.05488 Fx -1.42476e+00 -1.86933e-01 DeltaX 3.63315e-01 1.91564e-01
290
2 3
0.86331 1.05488
1.05488 1.07803
2.00000 2.00000
1.07803 1.07912
-8.58214e-03 -4.55606e-05
2.31508e-02 1.08694e-03
291
Exemplo 2 Achar a raiz de ( ) = 0,05 3 0,4 2 + 3 sen( ) = 0 , com 1010 , que se encontra no intervalo ,10 , 12-, usando o mtodo de Muller. Soluo - Utilizando o algoritmo Muller, temos: % Os parmetros de entrada a = 10 b = 12 Toler = 1.0000e-10 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo de Muller Iter 0 1 a b c x Fx -1.25090e-01 1.54925e-03 DeltaX 7.40141e-01 3.83681e-03
292
2 3 4
293
- Mtodo de van Wijngaarden-Dekker-Brent Este mtodo o resultado da combinao da interpolao inversa quadrtica e da bisseo implementados de forma a garantir que a raiz continue sempre isolada. Ele foi proposto inicialmente por van Wijngaarden, Dekker e outros e melhorado posteriormente por Brent. Na interpolao quadrtica, a forma analtica de um polinmio 2 ( ) ( ) = determinada a partir de trs pontos de coordenadas ,2 , (2 )- , ,1 , (1 )- e , , ( )-. Assim, para obter um valor aproximado de (), basta avaliar 2 ( ). Por outro lado, na interpolao inversa quadrtica, o polinmio interpolador de grau 2 2 () 1 () = construdo a partir dos pontos de coordenadas ,(2 ) , 2 - , , (1 ) , 1 - e. ,( ) , - . Neste caso, para ter um valor aproximado de 1 () necessrio avaliar 2 () .
294
Como = ( ) = 1 () , ento uma aproximao da raiz de ( ) = 0 o ponto de abscissa correspondente 1 (0) . Considerando que 2 () 1 () = , esta aproximao dada por = 2 (0).
295
O algoritmo mostrado a seguir determina, pelo mtodo de van Wijngaarden-Dekker-Brent (WDB), uma raiz de uma equao ( ) = 0 contida no intervalo [a , b], com tolerncia usando os critrios (1) e (3).
Os parmetros de entrada so o limite inferior a e o superior b do intervalo que contm a raiz, a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax.
A funo f(x) deve ser especificada de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas.
296
Algoritmo WDB { Objetivo: Calcular a raiz de uma equao pelo mtodo de WDB } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada a , b , Toler , IterMax { limite inferior, limite superior, tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz, nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo desejada nos pontos a e b } Fa f(A) Fb f(B) se Fa x Fb > 0 ento escreva a funo no muda de sinal nos extremos do intervalo dado abandone fim se CB
297
Fc Fb Iter 0 escreva A, B, Toler, IterMax { Clculo necessrios } repita { altera a , b e c para que b seja a melhor estimativa da raiz } se Fb x Fc > 0 ento CA Fc Fa D B A ED fim se se ABS(Fc) < ABS(Fb) ento A B BC CA Fa Fb Fb Fc Fc Fa fim se
298
Tol 2 x Toler x MAX(ABS(B) , 1) Z (C B) / 2 escreva Iter, A, C, B, Fb, Z se ABS(Z) Tol ou Fb = 0 ou Iter IterMax ento interrompa fim se { escolha entre interpolao e bisseo } se ABS(E) Tol e ABS(Fa) > ABS(Fb) ento S Fb / Fa se A = C ento P2xZxS Q1-S seno { interpolao inversa quadrtica } Q Fa / Fc R Fb / Fc P S x (2 x Z x Q x (Q R) (B A) x (R 1)) Q (Q 1) x (R 1) x (S 1) fim se se P > 0 ento Q -Q seno
299
P -P fim se se 2 x P < MIN(3 x Z x Q ABS(Tol x Q) , ABS(E x Q)) ento { aceita interpolao } ED DP/Q seno { usa bisseo devido falha na interpolao } DZ EZ fim se seno { bisseo } DZ EZ fim se A B Fa Fb se ABS(D) > Tol ento BB+D seno B B + SINAL(Z) x Tol fim se Iter Iter + 1
300
Fb f(B) { avaliar a funo em B } fim repita { Sada de dados } Raiz B { teste de convergncia } se () ou = 0 ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
301
Exemplo 3 Achar a menor raiz de ( ) = 4 + 2 3 13 2 14 + 24 = 0 , com 1010 , que se encontra no intervalo ,5 , 3-, usando o mtodo de van Wijngaarden-Dekker-Brent. Soluo - Utilizando um programa grfico, obtemos a Figura 3.19.
- Utilizando o algoritmo van WDB, temos: % Os parmetros de entrada a = -5 b = -3 Toler = 1.0000e-10 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo de van Wijngaarden-Dekker-Brent Iter 0 1 2 3 4 5 a -5.00000 -3.00000 -3.28571 -4.14286 -3.87500 -3.98516 c -5.00000 -5.00000 -3.28571 -4.14286 -4.14286 -3.98516 b -3.00000 -3.28571 -4.14286 -3.87500 -3.98516 -4.00032 Fb -2.40000e+01 -2.47397e+01 1.12453e+01 -7.85522e+00 -1.02599e+00 2.26777e-02 z -1.00000e+00 -8.57143e-01 4.28571e-01 -1.33929e-01 -7.88495e-02 7.58292e-03
303
6 7 8
304
Exemplo 4 Achar a raiz de ( ) = 0,05 3 0,4 2 + 3 sen( ) = 0 , com 1010 , que se encontra no intervalo ,10 , 12-, usando o mtodo de van Wijngaarden-Dekker-Brent. Soluo - Utilizando um programa grfico, obtemos a Figura 3.20.
- Utilizando o algoritmo van WDB, temos: % Os parmetros de entrada a = 10 b = 12 Toler = 1.0000e-10 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo de van Wijngaarden-Dekker-Brent Iter 0 1 2 3 4 5 a c b Fb -6.32063e+00 9.48337e+00 -5.94963e+00 -7.96853e-01 2.34449e-02 -2.86520e-04 z 1.00000e+00 -6.00061e-01 2.28208e-01 1.40231e-01 -1.25507e-02 3.58711e-04
306
12.00000 12.00000 10.00000 10.79988 10.79988 12.00000 12.00000 12.00000 11.54358 11.54358 12.00000 11.71954 11.71954 11.74464 11.71954 11.74464 11.74464 11.74392
6 7
11.74392 11.74393
11.74464 11.74393
11.74393 11.74393
-1.00128e-07 1.42109e-14
3.54380e-04 -1.51400e-09
Raiz = 11.74393 Iter = 7 CondErro = 0 Assim, a raiz da equao 7 = 11,74393 . Segundo Brent (apud de Campos Filho), a convergncia pelo mtodo garantida desde que haja uma raiz no intervalo. A combinao da certeza de convergncia do mtodo da bisseo com a rapidez de um mtodo de ordem de convergncia maior, como o da interpolao inversa quadrtica, resulta em um esquema robusto e eficiente. O mtodo de WDB recomendado como sendo o mais adequado para o clculo do zero de uma funo de uma varivel quando a sua derivada no estiver disponvel.
307
3.2.4
- Mtodo de Newton Geometricamente, o mtodo de Newton equivalente a aproximar um arco da curva por uma reta tangente traada a partir de um ponto da curva, o que faz com que ele seja conhecido tambm como o mtodo das tangentes. Sejam a nica raiz de ( ) = 0 no intervalo , , - e uma aproximao desta raiz, sendo 0 , , -. Alm disso, as derivadas ( ) e ( ) devem existir, serem contnuas e com sinal constante neste intervalo. Considere a Figura 3.21, na qual: tan() = e (1 ) tan() = = (1 ) 1 2 (1 ) 2 = 1 (1 ) (0 ) = (0 ) 0 1 1 = 0 (0 ) (0 )
308
Pela Figura 3.21, a sequncia produzida pela equao de Newton convergir para a raiz se o valor inicial for 0 = .
No entanto, para aquela figura, o processo pode no convergir se 0 = , pois teremos 1 , , -.
A questo da escolha do valor inicial de modo a garantir a convergncia para a raiz resolvida pelo teorema, a seguir:
Teorema Se ()() < 0, e ( ) e ( ) forem no nulas e preservarem o sinal em , , -, ento partindo-se da aproximao inicial 0 , , - tal que (0 ) (0 ) > 0 possvel construir, pelo mtodo de Newton, uma sequncia * + que convirja para a raiz de ( ) = 0. Por este teorema, o valor inicial 0 deve ser um ponto no qual a funo tenha o mesmo sinal de sua derivada segunda, isto , se (0 ) > 0, ento 0 tal que (0 ) > 0, e por outro lado, se (0 ) < 0, ento (0 ) < 0.
310
Um algoritmo do mtodo de Newton mostrado a seguir, no qual a raiz de uma equao ( ) = 0 calculada com tolerncia , contida no intervalo [a , b], usando os critrios (1) e (3). Os parmetros de entrada so o valor inicial 0 , a tolerncia Toler para o clculo da raiz e o nmero mximo de iteraes IterMax. A funo f(x) e sua derivada ( ) devem ser especificadas de acordo com a linguagem de programao utilizada. Os parmetros de sada so a raiz da equao ( ) = 0, Raiz, o nmero de iteraes gastas Iter e a condio de erro CondErro. Se CondErro = 0 significa que a raiz foi encontrada e CondErro = 1 indica que a raiz no foi encontrada com a tolerncia e o nmero mximo de iteraes fornecidas.
311
Algoritmo Newton { Objetivo: Calcular a raiz de uma equao pelo mtodo de Newton } { A funo desejada ser informada em um arquivo como uma Funo } parmetros de entrada x0 , Toler , IterMax { valor inicial , tolerncia e nmero mximo de iteraes } parmetros de sada Raiz , Iter , CondErro { raiz , nmero de iteraes gastas e condio de erro, sendo } { CondErro = 0 se raiz foi encontrada e CondErro = 1 em caso contrrio } { Declarar variveis } {} { Entrada de dados } {} { Iniciar variveis } { Avaliar a funo e sua derivada em x0 } Fx f(X0) DFx Df(X0) X X0 Iter 0 escreva Iter, X, DFx, Fx { Clculo necessrios } repita DeltaX -Fx / DFx
312
X X + DeltaX { Avaliar a funo e sua derivada em X } Fx f(X) DFx Df(X) Iter Iter + 1 escreva Iter, X, DFx, Fx, DeltaX { escolha entre interpolao e bisseo } se (ABS(DeltaX) Toler e ABS(Fx) Toler) ou DFx = 0 ou Iter IterMax ento interrompa fim se fim repita { Sada de dados } Raiz X { teste de convergncia } se () e () ento CondErro 0 seno CondErro 1 fim se {} Fim algoritmo
313
Exemplo 5 Determinar a maior raiz de ( ) = 4 + 2 3 13 2 14 + 24 = 0 , com 105 , utilizando o mtodo de Newton. Soluo - Analisando o grfico de P(x), sabe-se que ,2 , 4-, (2) < 0 e (4) > 0. - As derivadas so ( ) = 4 3 + 6 2 26 14 e ( ) = 12 2 + 12 26 > 0 , 2 4. - Assim, 0 = 4, pois (4) (4) > 0.
Exemplo 6
Calcular o ponto de inflexo i da funo ( ) = 2 3 + 3 2 + 3 , com 105 , pelo mtodo de Newton , usando o algoritmo Newton. Soluo - A condio de ponto de inflexo de uma funo que a derivada segunda se anule. Deste modo, deve-se achar uma raiz de ( ) = 0. - Teremos: ( ) = ( ) = 12 + 6 = 0. - Pelo grfico na Figura 3.23 verifica-se que ,2 , 1-. - As derivadas de () so ( ) = 12 e ( ) = < 0 . - Como (2) 1,1353 < 0 e (1) 5,2817 > 0, ento 0 = 2 por que (2) (2) > 0.
- Utilizando o algoritmo Newton, temos: % Os parmetros de entrada x0 = -2 Toler = 1.0000e-5 IterMax = 100 % produzem os resultados
Calculo de raiz de equacao pelo metodo de Newton Iter 0 1 2 3 4 x -2.00000 -0.47148 -0.44671 -0.44669 -0.44669 DFx 1.18647e+01 1.13759e+01 1.13603e+01 1.13603e+01 1.13603e+01 Fx -1.81353e+01 -2.81878e-01 -1.93175e-04 -9.24905e-11 0.00000e+00 1.52852e+00 2.47785e-02 1.70045e-05 8.14158e-12 DeltaX
- Mtodo de Schrder O mtodo de Newton apresenta uma convergncia linear quando uma raiz tem multiplicidade > 1. Isto por que medida que ( ) 0, o denominador ( ) 0. Uma modificao simples proposta por Schrder permite o clculo de uma raiz de multiplicidade m, mantendo a convergncia quadrtica, utilizando a equao de recorrncia: +1 = ( ) , = 0 , 1 , 2 , ( )
O algoritmo do mtodo de Schrder basicamente igual ao de Newton, mas acrescido do parmetro extra m para definir a multiplicidade, que usada no comando: expresso substituta de
318
Exemplo 7 Calcular a raiz de ( ) = 4 + 2 3 12 2 + 14 5 = 0 de multiplicidade = 3, com tolerncia 105 , pelo mtodo de Schrder. Soluo - Analisando o grfico de P(x), sabe-se que ,0,5 , 1,5-. - As derivadas so ( ) = 4 3 + 6 2 24 + 14 e ( ) = 12 2 + 12 24 > 0 > 1 . - Assim, 0 = 1,5, pois (1,5) (1,5) > 0.
DeltaX
-4.87500e-01 -1.24913e-02 -1.18526e-05 -0.00000e+00
3.3 Comparao entre os mtodos. Um estudo comparativo do desempenho de mtodos utilizando uma srie de equaes est longe de ser perfeito, justamente, pela dependncia do resultado na escolha dessas equaes. Mesmo assim, interessante verificar o desempenho dos mtodos estudados nesta unidade. Para tal foram escolhidas cinco equaes, das quais duas com raiz de multiplicidade > 1, e o intervalo que isola a raiz desejada. 1 ( ) = 2 4 + 4 3 + 3 2 10 15 = 0 , 3 ( ) = 5 3 + 2 12 + cos( ) + 20 = 0 , 4 ( ) = ( ) + 4 = 0 , 5 ( ) = ( 3)5 log ( ) = 0 , ,1 , 5 ,2 , 5- , = 5 ,0 , 3 ,0 , 5- , ,5 , 5 = 3 2 ( ) = 5 2 4 9 3 + 22 2 + 4 24 = 0 ,
Para todos os mtodos foram utilizados o mesmo nmero mximo de iteraes (500), tolerncia 1010 e critrio de parada, com exceo do mtodo WDB que usa um critrio ligeiramente diferente. Para o mtodo de Newton, 0 foi escolhido como o ponto mdio do intervalo dado, sem considerar o Teorema dado na respectiva teoria do mtodo.
321
Os resultados esto apresentados nas Tabelas 3.1 a 3.5, nas quais Iter o nmero de iteraes gastas, Erro a condio e erro (se CondErro = 1 ou Raiz est fora do intervalo dado, ento Erro sim) e trel o tempo relativo ao tempo gasto pelo mtodo da bisseo. Tabela 3.1- Comparao de mtodos usando 1 ( ) = 2 4 + 4 3 + 3 2 10 15 = 0 , ,0 , 3Mtodo Bisseo Secante Regula falsi Pgaso Muller W-D-Brent Newton Raiz 1,49288 -1,30038 1,49288 1,49288 1,49288 1,49288 1,49288 Iter 37 8 77 10 4 9 4 sim Erro 1,00 0,28 2,06 0,35 0,25 0,63 0,20
O mtodo da bisseo mostrou sua robustez, pois no falhou apesar de no ser o mais eficiente.
322
A secante, embora seja rpida, encontrou uma raiz fora do intervalo dado (Tabela 3.1). A regula falsi apresentou uma convergncia muito lenta e falhou trs vezes. O Pgaso, alm de ser robusto, foi competitivo com relao ao mtodo de van W-D-Brent. Tabela 3.2- Comparao de mtodos usando 2 ( ) = 5 2 4 9 3 + 22 2 + 4 24 = 0 , ,0 , 5- , = 3 Mtodo Raiz Iter Erro Bisseo Secante Regula falsi Pgaso Muller W-D-Brent Newton Schrder 1,99999 2,00000 1,82374 1,99999 2,00001 2,00001 2,00001 2,00000 35 47 500 60 500 57 37 4 sim sim sim 1,00 1,36 13,42 1,76 17,85 3,59 1,55 0,23
323
O mtodo de Muller no foi robusto, embora eficiente, pois falhou nos casos onde a raiz possui multiplicidade (Tabelas 3.2 e 3.5). O mtodo de van W-D-Brent foi robusto, mas tambm foi menos eficiente na presena de multiplicidade. Tabela 3.3- Comparao de mtodos usando 3 ( ) = 5 3 + 2 12 + cos( ) + 20 = 0 , ,5 , 5Mtodo Bisseo Secante Regula falsi Pgaso Muller W-D-Brent Newton Raiz -0,92956 -0,92956 0,69661 -0,92956 -0,92956 -0,92956 -0,92956 Iter 41 21 500 19 32 8 11 sim Erro 1,00 0,56 12,33 0,57 1,16 0,51 0,48
324
O mtodo de Schrder uma efetiva modificao do mtodo de Newton para evitar problemas com razes de multiplicidade, conforme mostram os resultados das Tabelas 3.2 3 3.5, pelas quais ele foi, sem dvidas, o mais eficiente. Tabela 3.4- Comparao de mtodos usando 4 ( ) = ( ) + 4 = 0 , ,1 , 5Mtodo Bisseo Secante Regula falsi Pgaso Muller W-D-Brent Newton Raiz 4,32324 4,32324 4,32324 4,32324 4,32324 4,32324 4,32324 Iter 36 7 9 7 6 7 6 Erro 1,00 0,27 0,32 0,28 0,35 0,57 0,30
325
Tabela 3.5- Comparao de mtodos usando 5 ( ) = ( 3)5 log ( ) = 0 , ,2 , 5- , = 5 Mtodo Bisseo Secante Regula falsi Pgaso Muller W-D-Brent Newton Schrder Raiz 3,00000 3,00000 2,67570 3,00000 3,01289 3,00000 3,00000 3,00000 Iter 34 137 500 187 500 80 95 4 sim sim Erro 1,00 3,90 13,89 5,47 18,82 5,45 4,45 0,26
326
Exemplo 8 Determinar o comprimento de um cabo suspenso entre dois pontos distantes 50 m que esto no mesmo nvel e fazendo uma flecha de 2 m, conforme Figura 3.23(a).
Modelagem matemtica - O comprimento L dado pela equao: = 2 .2 / onde d a distncia entre os dois pontos e a raiz da equao: ( ) = . .2 / 1/ = 0 onde f a flecha.
327
- Observando a Figura 3.23(b), nota-se que a raiz est isolada no intervalo ,140 , 160-. Utilizando o mtodo Pgaso, obtm-se:
328
% Os parmetros de entrada a = 140 b = 160 Toler = 1.0000e-05 IterMax = 100 % produzem os resultados Calculo de raiz de equacao pelo metodo pegaso Iter 0 1 2 3 a 140.00000 140.00000 140.00000 Fa 0.23808 0.21474 0.21228 b Fb x Fx -4.662e-03 -5.405e-05 1.055e-07 -2.828e-12 DeltaX -3.053e+00 -3.601e-01 -4.222e-03 8.224e-06
160.00000 -0.04290 156.94652 156.94652 -0.00466 156.58642 156.58642 -0.00005 156.58219 0.00000 156.58220
Sendo = 156,58220, ento o comprimento do cabo : = 2 .2 / = 2 156,58220 .2156,58220/ = 50,21270 - O comprimento do cabo suspenso entre dois pontos no mesmo nvel distantes 50 m e fazendo uma flecha de 2 m igual a 50,21 m.
50
330
REFERNCIAS Contedo deste captulo foi compilado de: CAMPOS FILHO, F. F., Algoritmos Numricos, 2 ed Editora LTC, Rio de Janeiro RJ, 2007.
SPERANDIO D., MENDES, J.T., SILVA, L.H.M., Clculo Numrico: Caractersticas Matemticas e Computacionais dos Mtodos Numricos, Prentice Hall, So Paulo, 2003.
RUGGIERO, M.A.G. E LOPES, V.L.R., Clculo Numrico - Aspectos Tericos e Computacionais, Makron 3. BARROSO, L.C., ET AL., Clculo Numrico (com aplicaes), 2a ed., So Paulo, Editora Harbra, 1987.
331