Newton Rapshon 1 variavel PDF

Title Newton Rapshon 1 variavel
Author Welberta De Sousa Gomes
Course Metodos Numericos E Programacao
Institution Universidade Luterana do Brasil
Pages 4
File Size 251.8 KB
File Type PDF
Total Downloads 45
Total Views 136

Summary

Newton Raphson 1 VARIAVEIS, Python, Linguagem C e Excel...


Description

5. RAIZ DE UMA FUNÇÃO – MÉTODO DE NEWTON-RAPHSON João Daniel de Oliveira Klein

O método de Newton-Raphson apresenta uma forma alternativa ao método da Dicotomia para determinação da raiz de uma função qualquer. Esse método apresenta as seguintes características: • Não é necessário informar um intervalo de valor que contenha a (e uma única) raiz e sim apenas um ponto próximo à raiz desejada; • O método só identifica uma raiz por vez, geralmente (mas nem sempre) a mais próxima ao ponto inicial adotado (); • Para a maioria das funções, esse método resulta em melhor precisão com menor número de iterações quando comparado ao método da Dicotomia, sendo, portanto, mais rápido; • Como desvantagem, dependendo a função () e ponto inicial  adotado, o método pode divergir, ou seja, é possível que se chegue a uma solução. Nesses casos, pode ser necessário adotar outro ponto . O método consiste em definir como a melhor aproximação para a raiz da função o zero da equação da reta tangente à curva () no ponto inicialmente calculado. No gráfico abaixo,  () é a reta tangente à () no ponto . O valor de  é a primeira aproximação para a raiz de (), sendo a própria raiz de (). Já a próxima aproximação  é obtida a partir da reta tangente  () no ponto , e assim sucessivamente.

Para o primeiro ponto, a reta tangente à () é definida por:  () =  +   Sendo que a inclinação da reta é dada pela derivada de ( ):   =   ( ) Ainda tem-se que no ponto  as funções () e () são iguais: ( ) = ( ) Assim, no ponto : () =   () +   = ( ) −   ()  A próxima aproximação para o valor de , que será  , é obtida a partir da raiz da função ():   +  = 0   = − 

17

 = −

() −   ( )   ( )

Simplificando:  =  −

( )  ()

Ou, de forma genérica:   =   −

( )  (  )

5.1. Exemplo: 5.1.1. Determine a raiz positiva da função () =  − 2 − 10:

Solução: Incialmente verificou-se que existe uma raiz positiva próxima a 3,0, que será o valor inicia de . Para aplicar o método, ainda é necessário calcular a derivada da função:   () = 2 − 2 Na quarta iteração, a precisão obtida já é menor que 0,01, ou seja, podemos que o último valor de   ( = 4,3166) é a melhor aproximação para a raiz da função (), com duas casas decimais (neste caso específico, já se obteve uma precisão de quatro casas decimais!). 



( )

′( )



 !"#ã%

0

3,0000

-7,0000

4,0000

4,7500

1

4,7500

3,0625

7,5000

4,3417

1,7500

2

4,3417

0,1667

6,6833

4,3167

0,4083

3

4,3167

0,0006

6,6334

4,3166

0,0249

4

4,3166

0,0000

6,6332

4,3166

0,0001

As equações a serem digitadas no MS Excel, para se obter a solução do problema e a tabela acima, são apresentas a seguir:

5.1.2. Implementação em linguagem C:

#include #include #include float f (float x){ float y; y = pow(x,2.0) - 2*x - 10; return y; }

18

float df (float x){ float y; y = 2*x - 2; return y; } int main(int argc, char *argv[]) { float x, anterior; float precisao = 0.001; printf("Digite o valor inicial para x (x0):"); scanf("%f",&x); anterior = x + 2*precisao;

while(fabs(x-anterior)>precisao){ anterior = x; x = anterior - f(x)/df(x); printf(" = %f\t",x); printf("delta = %f\n",fabs(x-anterior)); } printf("A raiz da função é %f.", x); return 0; }

5.1.3. Implementação em Python precisao = 0.001 def f (x): y = x**2 - 2*x - 10 return y def df (x): y = 2*x - 2 return y x = float(input("Digite o valor inicial de (x0): ")) anterior = x + 2*precisao while(abs(x-anterior)>precisao): anterior = x x = anterior - f(x)/df(x) print("x = ",x); print("delta = ",abs(x-anterior)); print("A raiz da função é ", x)

5.2. Deve-se observar que nem sempre a derivada analítica de uma função é simples de ser obtida. Em alguns casos, isso pode nem ser possível. Nesses casos, pode-se utilizar a derivada numérica da função, que é baseada no seu conceito matemático em si: ( + Δ) − () Δ )*→

 () = lim

19

O gráfico a seguir ilustra esse conceito, no qual o incremento Δ de ser um valor suficientemente pequeno.

5.2.1. Exemplo: Determine a raiz positiva da função () =  − 2 − 10:

Solução: Resolvendo o mesmo exemplo anterior, porém utilizando a derivada numérica, onde foi adotado Δ = 0,001, tem-se: 



()

(  + - )

′( )



0

3,0000

-7,0000

-6,9960

4,0010

4,7496

1

4,7496

3,0592

3,0667

7,5001

4,3417

1,7496

2

4,3417

0,1668

0,1735

6,6843

4,3167

0,4079

3

4,3167

0,0006

0,0073

6,6344

4,3166

0,0250

4

4,3166

0,0000

0,0066

6,6342

4,3166

0,0001

 !"#ã%

As equações a serem digitadas no MS Excel, para se obter a solução do problema e a tabela acima, são apresentas a seguir:

20...


Similar Free PDFs