Cálculo Numérico Resolução Numérica de Equações Métodos Parte II Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br MATERIAL ADAPTADO DOS SLIDES DA DISCIPLINA CÁLCULO NUMÉRICO DA UFCG - www.dsc.ufcg.edu.br/~cnum/
Métodos Iterativos para a Obtenção de Zeros Reais de Funções Bissecção Falsa Posição Falsa Posição Modificado Ponto Fixo Newton-Raphson Secante
Método da Bissecção Dada uma função f(x contínua no intervalo [a,b] onde existe uma raiz única, é possível determinar tal raiz subdividindo sucessivas vezes o intervalo que a contém pelo ponto médio de a e b. 3
Definição do Intervalo Inicial Atribui-se [a,b] como intervalo inicial a = a b = b Condições de Aplicação f(a*f(b < Sinal da derivada constante 4
Análise Gráfica f(x x = (a + x / f(x a = a ξ x x = b x x = (a + b/ a = a ξ x b = b x f(x x 3 = (x + x / x =a ξ Repete-se o processo até que o valor de x atenda às condições de parada. x 3 x =b x 5
Definição de Novos Intervalos Determina-se qual o subintervalo [a, x ] ou [x, b] que contém a raiz Calcula-se o produto f(a*f(x Verifica-se se f(a*f(x < Se verdadeiro (Logo a = a e b = x ξ (a, x Caso contrario ξ (x, b (Logo a = x e b = b Repete-se o processo até que o valor de x atenda às condições de parada. 6
7... 3 3 b,b x,a,b (x,f(x,f(b ;f(a b a x x,b x,b,a (x,f(x,f(b ;f(a b a x x,b a,a,x (a,f(x,f(b ;f(a b a x = = < > < + = = = < > < + = = = > > < + = ξ ξ ξ Cálculo Numérico Bissec Bissecção ão Definição de Novos Intervalos
Tolerância (ε Aproximação de zero, dependente do equipamento utilizado e da precisão necessária para a solução do problema A tolerância é uma estimativa para o erro absoluto desta aproximação. 8
Condições de Parada Se os valores fossem exatos f(x = (x k x k+ /x k = Uma vez que são aproximados f(x f(x tolerância (x k x k+ /x k tolerância 9
Algoritmo k := ; a := a; b := b; x := a; x k+ := (a k + b k /; while critério de parada não satisfeito and k L if f(a k f(x k+ < then /* raiz em [a k, x k+ ] */ a k+ := a k ; b k+ := x k+ ; else /* raiz em [x k+, b k ] */ a k+ := x k+ ; b k+ := b k ; endif k := k +; x k+ := (a k + b k /; endwhile if k > L parada falhou endif
Generalização Após n iterações, a raiz estará contida no intervalo: [b k a k ] = b k a k b k a k = b a k
Estimativa do número de iterações Deve-se obter o valor de K, tal que b k a k < ε, ou seja, b a k k.log( < ε > log(b k > a b ε a log( ε k > log(b a log( log( ε
Estimativa do número de iterações Ex.: Considerando um intervalo [,3]e ε= -, calcular o número mínimo de iterações para que tenhamos b-a< ε (Critério de Parada. k > log(b a log( log( ε k > log(3 log( log( k > log( + log( log( =.3 6.64 k = 7 3
Vantagens: Facilidade de implementação; Estabilidade e convergência para a solução procurada; Desempenho regular e previsível. O número de interações é dependente da tolerância considerada 4
Desvantagens: Lentidão do processo de convergência (requer o cálculo de f(x em um elevado número de iterações; Necessidade de conhecimento prévio da região na qual se encontra a raiz de interesse (o que nem sempre é possível; Complexidade da extensão do método para problemas multivariáveis. 5
Exemplo 6: Resgatando o Exemplo 5, f(x = xlogx - y h(x ξ 3 g(x ξ 3 4 5 6 x Verificou-se que ξ [, 3] 6
Exemplo 6: f(x = xlogx - Considerando o método da bissecção com tol =, e adotando [a,b ] = [, 3] como intervalo inicial, tem-se: Cálculo da ª aproximação x = (a + b / = (, + 3,/ x =,5 f(x = f(,5 = -,5 f(a = f(, = -,39794 Teste de Parada f(x = -,5 =,5 >, 7
Exemplo 6: f(x = xlogx - Cálculo da ª aproximação Novo Intervalo f(a.f(x = (-,39794.(-,5 > logo: a = x =,5 e b = b = 3, x = (,5 + 3,/ = x =,75 f(,5 = -,5 < f(3, =,434 > f(,75 =,8 > ξ [,5 ;,75] a = a =,5 e b = x =,75 8
Exemplo 6: x 3 = (,5 +,75/ =,65 f(,5 = -,5 < f(,75 =,8 > f(,65 =, > x 4 = (,5 +,65/ =,565 f(,5 = -,5 < f(,65 =, > f(,565 =,47 > ξ [,5,,65] a 3 = a =,5 b 3 = x 3 =,65 ξ [,5,,565] a 3 = a =,5 b 3 = x 4 =,565 9
Exemplo 6: f(x = xlogx - k a k b k f(a k f(b k x k+ f(x k+, 3, -,39794,4336,5 -,5,5 3, -,55,4336,75,8,5,75 -,55,86,65, 3,5,65 -,55,,565,47 4,5,565 -,55,47,535,9 5,5,535 -,55,94,5563,79 6,5,5563 -,55,787,578,4 ε =,
Exemplo 7: Seja f(x = x 3 x Intervalo inicial atribuído: [, ] Considerando-se ε =, f(a = - y 4 3 f(b = 5 f (x = 3x f(a * f(b = -55 < -4-3 - - - 3 4 5 x Sinal da derivada constante (f (a = e f (b = - -3-4
Exemplo 7: f(x = x 3 x Cálculo da ª aproximação x = (a +b / = (,+,/ = x =,5 f(x =,5 3,5 =,875 Teste de Parada f(x =,875 =,875 >, Escolha do Novo Intervalo f(a.f(x = (-.,875 = -,875 logo: a =a =, e b =x =,5
Exemplo 7: f(x = x 3 x k a k b k f(a k f(b k x k+ f(x k+,, -, 5,,5,875,,5 -,,875,5 -,96875,5,5 -,96875,875,375,469 3,5,375 -,96875,469,35 -,554 4,35,375 -,554,469,34375,86 5,35,34375 -,554,86,385,4576 6,35,385 -,554,4576,335 -,87 7,335,385 -,87,4576,34875 -,8 ε =, 3
Cálculo Numérico Falsa Posição Método da Bissecção Calcula a média aritmética tica dos limites do intervalo que contém a raiz ([a, b] Método da Falsa Posição Calcula a média ponderada dos limites do intervalo que contém a raiz ([a, b] 4
Método da Falsa Posição f(x Cálculo Numérico Falsa Posição Calcula a média ponderada dos limites do intervalo que contém a raiz ([a, b] f(b X = af (b f(b bf (a f(a a ξ X b x X = a f(b f(b + b f(a f(a f(a f(a e f(b têm sinais opostos 5
Cálculo Numérico Falsa Posição Definição do Intervalo Inicial Atribui-se [a,b] como intervalo inicial a = a b = b Condições de Aplicação f(a*f(b < Sinal da derivada constante 6
Cálculo Numérico Falsa Posição Definição dos Subintervalos Subdivide-se o intervalo pelo ponto de intersecção da reta que liga f(a a f(b e o eixo das abscissas Verifica-se se, através do teste de parada, se x é uma aproximação da raiz da equação (ξ Se verdadeiro x é a raiz procurada Caso contrário rio define-se um novo intervalo 7
Cálculo Numérico Falsa Posição Definição do Novo Intervalo Determina-se qual subintervalo - [a, x ] ou [x, b ] - contém a raiz ξ Calcula-se o produto f(a*f(x Verifica-se se f(a*f(x < Se verdadeiro ξ (a, x Logo: a = a e b = x Caso contrario ξ (x, b Logo a = x e b = b Repete-se o processo até que o valor de x atenda às condições de parada. 8
Cálculo Numérico Falsa Posição Análise Gráfica f(x X af(b = f(b bf(a f(a f(x X = af(b f(b bf(a f(a a = a x ξ x = b x a = a ξ x b = b x f(x X 3 = af(b f(b bf(a f(a Repete-se o processo até que o valor de x atenda às condições de parada. ξ x = a x 3 x = b x 9
Cálculo Numérico Falsa Posição Condições de Parada Se os valores fossem exatos f(x = (x k x k+ /x k = Não o sendo f(x f(x tolerância (x k x k+ /x k tolerância 3
Cálculo Numérico Falsa Posição Algoritmo k := ; a := a; b := b; x := a; F := f(a ; G := f(b ; x k+ := a k - F k (b k a k /(G k F k ; ou x k+ := (a k G k - b k F k /(G k F k ; while critério de convergência não satisfeito and k L if f(a k f(x k+ then /* raiz em [a k, x k+ ] */ a k+ := a k ; b k+ := x k+ ; else /* raiz em [x k+, b k ] */ a k+ := x k+ ; b k+ := b k ; endif k := k +; x k+ := a k - F k (b k a k /(G k F k ; endwhile if k>l convergência falhou endif 3
Cálculo Numérico Falsa Posição Exemplo 8: Considerando f(x = xlogx - Intervalo inicial atribuído: [, 3] Considerando-se ε =, f(a = -,3979 f(b =,434 y h(x g(x f (x = logx + /xln f(a * f(b = -,765< Sinal da derivada constante (f (a =,5 e f (b =,6 ξ 3 4 5 6 x 3
Cálculo Numérico Falsa Posição Exemplo 8: Cálculo da ª aproximação: a = b = 3 f(a = -,3979 < f(b =,434 > x = [.,434 3.(-,3979] =,4798 [,434 (-,3979] Teste de Parada f(x = -,9 =,9 > tolerância Escolha do Novo Intervalo f(a.f(x = (-,3979.(-,9 > logo: a = x =,4798 e b = b = 3 33
Cálculo Numérico Falsa Posição Exemplo 8: Cálculo da ª aproximação: a =,4798 b =3 f(a = -,9 < f(b =,434 > x = [,4798.,434 3.(-,9] =,549 Teste de Parada [,434 (-,9] f(x = -, =, < tolerância Escolha do Novo Intervalo f(a.f(x = (-,9.(-, > logo: a = x =,549 e b = b = 3 34
Cálculo Numérico Falsa Posição Exemplo 8: Cálculo da 3ª aproximação a =,549 b = 3 f(a = -, < f(b =,434 > x 3 = [,549.,434 3.(-,] =,56 Teste de Parada [,434 (-,] f(x 3 = - 7,8. -5 = 7,8. -5 < tol (valor aceitável de raiz 35
Cálculo Numérico Falsa Posição Exemplo 8: f(x = xlogx - k a k b k f(a k f(b k x k+ f(x k+, 3, -,3979,434,4798 -,9,4798 3, -,9,434,549 -,,549 3, -,,434,56 -,7 ε =, 36
Cálculo Numérico Falsa Posição Exemplo 9: Seja a função do Exemplo 7, f(x = x 3 x Intervalo inicial atribuído: [, ] tol =, f(a = - f(b = 5 y 4 3 f (x = 3x f(a *f(b = -5 < Sinal da derivada constante (f (a = e f (b = -4-3 - - - - -3-4 3 4 5 x 37
Cálculo Numérico Falsa Posição Exemplo 9: Cálculo da ª aproximação a = b = f(a = - < f(b = 5 > x = [.5.(- ] =,6667 [5 (- ] Teste de Parada f(x = -,578737 =,578737 > tol Escolha do Novo Intervalo f(a.f(x = (-.(-,578737 > logo: a = x =,6667 e b = b = 38
Cálculo Numérico Falsa Posição Exemplo 9: f(x = x 3 x k a k b k f(a k f(b k x k+ f(x k+,, -, 5,,666667 -,57874,66667, -,578737 5,,53 -,85363,53, -,85363 5,,934374 -,954 3,93437, -,954 5,,38 -,56588 4,38, -,565885 5,,389885 -,434 5,38988, -,4337 5,,387 -,36 6,383, -,368 5,,336843 -,444 7,33684, -,4439 5,,34795 -,869 ε =, 39
Cálculo Numérico Falsa Posição Vantagens: Estabilidade e convergência para a solução procurada; Desempenho regular e previsível; Cálculos mais simples que o método de Newton. 4