Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cálculo Numérico - 2 unidade

Raquel Oliveira
May 30, 2017
21

Cálculo Numérico - 2 unidade

Métodos para determinação de raízes e resolução de sistemas não lineares

Raquel Oliveira

May 30, 2017
Tweet

Transcript

  1. MÉTODOS PARA DETERMINAÇÃO DE RAÍZES E RESOLUÇÃO DE SISTEMAS NÃO

    LINEARES RAQUEL LOPES DE OLIVEIRA VINÍCIUS CAMPOS TINHOSO RIBEIRO VITOR RODRIGUES GREATI
  2. INTERVALO PARA RAIZES POSITIVAS COTAS DE LAGRANGE f ( x

    ) = a0 + a1x + a2x 2 + · · · + anx n , L ( f ) = n k r b an . f1 x ( x ) = x n a0 + a1 ✓ 1 x ◆ + a2 ✓ 1 x ◆2 + · · · + an ✓ 1 x ◆n ! .
  3. INTERVALO PARA RAIZES NEGATIVAS COTAS DE LAGRANGE f x (

    x ) = a0 + a1( x ) + a2( x )2 + · · · + an ( x )n L ( f x ) = n k r b an . f 1 x ( x ) = xn a0 + a1 ✓ 1 x ◆ + a2 ✓ 1 x ◆2 + · · · + an ✓ 1 x ◆ n ! ,
  4. TROCA DE SINAL MÉTODO DE ISOLAMENTO Input : f :

    D(f) ✓ R ! R , p 2 R , x0 2 D(f), N0 2 N Output : Um intervalo I ✓ D(f) com possivelmente uma raiz de f. begin x x0 i 1 while i  N0 and f(x + p) · f(x) > 0 do x x + p i i + 1 end return [x, x + p] end Algorithm 1: Algoritmo da troca de sinal.
  5. BISSEÇÃO MÉTODO DE REFINAMENTO Input : f : D (

    f ) ✓ R ! R , I = [ a0, b0] ✓ D ( f ), N0 2 N , ✏ 2 R . Output : Uma aproxima¸ c˜ ao r para uma raiz de f com f ( r ) < ✏ . begin i 0 while i  N0 do pi ai 1 + bi 1 ai 1 2 if |f ( pi) | < ✏ then return pi end if f ( ai 1) · f ( pi) < 0 then ai ai 1 bi pi end else ai pi bi bi 1 end i i + 1 end return “N´ umero m´ aximo de itera¸ c˜ oes alcan¸ cado.” end Algorithm 1: Algoritmo da bisse¸ c˜ ao.
  6. MÉTODO DE REFINAMENTO BISSEÇÃO • a= -1 • b =

    2 • p = 0.5 2 1 1 2 2 1 1 2 3 4 a b p
  7. MÉTODO DE REFINAMENTO BISSEÇÃO • a= 0.5 • b =

    2 • p = 1.25 2 1 1 2 2 1 1 2 3 4 a b p
  8. MÉTODO DE REFINAMENTO BISSEÇÃO • a= 1.25 • b =

    2 • p = 1.625 2 1 1 2 2 1 1 2 3 4 a b p
  9. MÉTODO DE REFINAMENTO BISSEÇÃO • a= 1.25 • b =

    1.625 • p = 1.4375 2 1 1 2 2 1 1 2 3 4 a b p
  10. CORDA MÉTODO DE REFINAMENTO Input : f : D (

    f ) ✓ R ! R , I = [ a0, b0] ✓ D ( f ), N0 2 N , ✏ 2 R . Output : Uma aproxima¸ c˜ ao r para uma raiz de f com f ( r ) < ✏ . begin i 0 while i  N0 do pi a b a f(b) f(a) f ( a ) if |f ( pi) | < ✏ then return pi end if f ( ai 1) · f ( pi) < 0 then ai ai 1 bi pi end else ai pi bi bi 1 end i i + 1 end return “N´ umero m´ aximo de itera¸ c˜ oes alcan¸ cado.” end Algorithm 1: Algoritmo do m´ etodo das cordas.
  11. MÉTODO DE REFINAMENTO CORDA • a = -1 • b

    = 2 • p = 0 2 1 1 2 2 1 1 2 3 4 a b p
  12. MÉTODO DE REFINAMENTO CORDA • a = 0 • b

    = 2 • p = 1 2 1 1 2 2 1 1 2 3 4 a b p
  13. MÉTODO DE REFINAMENTO CORDA • a = 1 • b

    = 2 • p = 1.33333 2 1 1 2 2 1 1 2 3 4 a b p
  14. PONTO-FIXO MÉTODO DE REFINAMENTO Este m´ etodo consiste em se

    buscar uma fun¸ c˜ ao g tal que uma raiz r de f ´ e um ponto fixo em g, e vice-versa. A escolha da fun¸ c˜ ao g, entretanto, n˜ ao ´ e um passo trivial. Para garantir que a sequˆ encia { xi }1 i=0 gerada pelo algoritmo convirja para o ponto fixo de g, para qualquer ponto inicial x0 no intervalo, s˜ ao necess´ arias duas condi¸ c˜ oes: 1. g(x) 2 [a, b], para todo x 2 [a, b]; e 2. | g 0 (x) |  k, para todo x 2 [a, b] e algum k < 1.
  15. MÉTODO DE REFINAMENTO NEWTON-RAPHSON f ( y ) = 0

    f ( y ) + f 0( y ) . ( x y ) = 0 f 0( y ) . ( x y ) = f ( y ) ( x y ) = f ( y ) f 0( y ) PROBLEMA DIFÍCIL 
 => PROBLEMA FÁCIL
  16. MÉTODO DE REFINAMENTO NEWTON-RAPHSON • x0 = -1 • f(x0)

    = -1 • f’(x0) = -2 • p = -1.5 2 1 1 2 2 1 1 2 3 4 x0
  17. MÉTODO DE REFINAMENTO NEWTON-RAPHSON • x0 = -1.5 • f(x0)

    = 0.25 • f’(x0) = -3 • p = -1.41667 2 1 1 2 2 1 1 2 3 4
  18. MÉTODO DE REFINAMENTO NEWTON-RAPHSON • x0 = -1.41667 • f(x0)

    = 0.00694444 • f’(x0) = -2.83333 • p = -1.41442 1 2 3
  19. BASIN OF ATTRACTION Cria¸ c˜ ao de fractais utilizando os

    chamados basin of attraction de ra´ ızes com- plexas. Para entendˆ e-la, parte-se da fun¸ c˜ ao f : C ! C na forma f ( z ) = zn 1 , onde n 2 N e z 2 C . As n ra´ ızes de f s˜ ao conhecidas como roots of unity. Seja Z = {zi }1in a fam´ ılia das ra´ ızes de f . Chama-se basin of attraction de cada raiz zi o conjunto Bi = {z0 2 C | z0 converge para zi por Newton-Raphson }.
  20. BASIN OF ATTRACTION Considere, agora, o retˆ angulo R =

    { 0, . . . , 1000 }2 . Para cada p = (x, y) 2 R , toma-se o seu correspondente p 0 = (x 0 , y 0 ) no quadrado [0, 1] 2 atrav´ es das f´ ormulas x 0 = 2x 1000 1 y 0 = 2y 1000 1. Chame de R0 o conjunto de todos os p 0 obtidos dessa forma. Um p 0 2 R0 pode ser visto como um n´ umero complexo x 0 + y 0 i e, portanto, candidato a ser uma aproxima¸ c˜ ao inicial do m´ etodo de Newton-Raphson. Uma vez executado com p 0 como valor inicial, o m´ etodo produz uma sequˆ encia que se aproxima de uma das ra´ ızes em Z . Seja NR : R0 ! Z [ { } a fun¸ c˜ ao que retorna essa raiz para p 0 2 R0 quando o m´ etodo converge, e , quando n˜ ao converge.
  21. BASIN OF ATTRACTION Considere, agora, uma imagem I : R

    ! R3 no espa¸ co RGB, na qual cada pixel (x, y) 2 R tem intensidade definida por I (x, y) = c(NR(x 0 , y 0 )), onde c : Z[{ } ! R3 ´ e um mapa que atribui a cada raiz de f uma cor no espa¸ co RGB. A imagem I , assim formada, representa um fractal, sendo diferente para cada n. As imagens abaixo demonstram a gera¸ c˜ ao de fractais dessa forma para n = 3, . . . , 8.
  22. NEWTON Algorithm 0.1: M´ etodo de Newton. Input : F

    : D ( F ) ✓ Rn ! Rn , N0 2 N , ✏ 2 R , x0 2 D ( F ). Output : Uma aproxima¸ c˜ ao r para um vetor x tal que F ( x ) = 0 . begin i 0 while i  N0 do if ||F ( xi) || < ✏ then return xi i i + 1 Resolver J ( xi 1) y = F ( xi 1) xi xi 1 + y return “N´ umero m´ aximo de itera¸ c˜ oes alcan¸ cado.”
  23. BROYDEN Aproxima¸ c˜ ao para a derivada de uma fun¸

    c˜ ao escalar: f 0 (x1) ⇡ f(x1) f(x0) x1 x0 . A1 pode substituir J(x1) da seguinte forma, na regra de Newton: A1(x1 x0) = F(x1) F(x0). Definir x2 como x2 = x1 A 1 1 F(x1). Generaliza¸ c˜ ao de Broyden da seguinte forma: xi = xi 1 A 1 i 1F(xi 1), e Ai = Ai 1 + yi Ai 1si || si ||2 2 s t i , onde yi = F(xi) F(xi 1) e si = xi xi 1.
  24. BROYDEN A regra de atualiza¸ c˜ ao demanda o c´

    alculo da inversa de Ai, o qual, se feito da maneira tradicional, representaria uma consider´ avel perda de eficiˆ encia do m´ etodo. Por essa raz˜ ao, utiliza-se a f´ ormula de Sherman-Morrison, dada por: ( A + xy t ) 1 = A 1 A 1 xy tA 1 1 + y tA 1 x , da qual se deriva a seguinte regra de atualiza¸ c˜ ao de A 1 i : A 1 i = A 1 i 1 + (si A 1 i 1yi)s t i A 1 i 1 s t i A 1 i 1yi .
  25. NEWTON BROYDEN • Produz uma sequencia pela regra 
 


    • • Convergência local • Controle de erros de arredondamento • Regra semelhante a de Newton, porem utiliza uma matriz A semelhante a Jacobiana, tal que • • Convergencia superlinear • Não garante controle de erros de arredondamento A x = F xi = xi 1 J 1( xi 1) F ( x ).
  26. TESTE SISTEMAS NÃO LINEARES Table 1: Resultados para o primeiro

    sistema. Newton Broyden x0 Itera¸ c˜ oes Tempo (ms) Itera¸ c˜ oes Tempo (ms) (10 4 , 10 4 , 10 4 ) 4 0.190 19 0.800 (0.1,0.1,-0.1) 4 0.164 24 0.830 (0.5,0.5,-0.5) 6 0.140 14 0.372 (1,1,1) 7 0.360 - - (5,5,-5) 45 1.168 - - (40,40,40) 1684 28.30 - - (50,50,50) - - - - F (x, y, z) = 0 @ 3x cos xy 1 2 x 2 81(y + 0.1) 2 + sin z + 1.06 e xy + 20z + 10 ⇡ 3 3 1 A
  27. TESTE SISTEMAS NÃO LINEARES F( x, y ) = ✓

    x 2 + y 2 1 x + y 1 ◆ Table 1: Resultados para o segundo sistema. Newton Broyden x0 Itera¸ c˜ oes Tempo (ms) Itera¸ c˜ oes Tempo (ms) (0,0) - - 10 0.228 (1,1) - - 8 0.180 (1,2) 6 0.281 18 0.267 (3,4) 9 0.138 12 0.216 (100,100) 14 0.159 22 0.463 (1000,1500) 17 0.115 26 0.340 (-15000,-10000) 21 0.307 28 0.773