6

Click here to load reader

bisseccao

Embed Size (px)

Citation preview

Page 1: bisseccao

U N E S P / F E G / D M A - C o m p u t a ç ã o e C á l c u l o N u m é r i c o – 2 o S e m e s t r e 2 0 0 7 – P r o f . A n í b a l – L A B 2

Dizem que o tempo modifica as coisas, mas é você quem tem que mudá-las. Andy Warhol.

SOLUÇÃO DE EQUAÇÕES NÃO-LINEARES Para resolver o problema de encontrar a raiz α de uma função f(x), ou seja, encontrar f(α) = 0 pode ser empregado um método iterativo. Os métodos iterativos podem ser classificados em 3 tipos: • Métodos de Quebra: consistem em considerar um intervalo inicial [a,b], onde f(a)*f(b) < 0. Depois um ponto x divide o intervalo em dois subintervalos ([a,x] e [x,b]) e é escolhido aquele que contém a raiz (se f(a)*f(x) < 0, então, b = x). Este processo pode ser aplicado tantas vezes quanto for necessário. • Métodos de Ponto Fixo: consideram que o problema de achar a solução de f(x) = 0 pode ser transformado no problema equivalente de achar o ponto fixo x* de uma função ϕ dada por:

ϕ (x) = x + θf(x), θ ≠ 0

tal que, para k→ ∞, a seqüência {x

(1)

k} converge para x* e f(xk) converge para 0, obtendo-se ϕ (x*) = x*. • Métodos de Passos Múltiplos: é uma generalização dos Métodos de Ponto Fixo, pois a função de iteração usa vários pontos anteriores (x , x , ...).

Os métodos iterativos possuem em comum 3 características:

i i-1

• Uma estimativa inicial para a raiz. • Uma fórmula de recorrência. • Um critério de parada que pode ser um ou mais dos seguintes:

ε<−+

i

ii

xxx 1 , ε<−+ ii xx 1 , ε<)( ixf

e i > L (L = número máximo de iterações). Observe que a utilização de apenas um critério de parada pode não ser adequado: Caso 1: ε<)( ixf , mas ε>>−+ ii xx 1 :

Figura 1: Representação do Caso 1.

Caso 2: ε<−+ ii xx 1 , mas ε>>)( ixf :

Figura 2: Representação do Caso 2.

MÉTODO DA BISSECÇÃO Este método considera um intervalo inicial [a, b] tal que f(a)*f(b) < 0. O intervalo inicial é sucessivamente dividido ao meio, mantendo-se o subintervalo que contém a raiz. Seu algoritmo é dado por:

ALGORITMO 1 1. ler(a,b) 2. repita 3. m ← (a+b)/2; 4. se f(a) x f(m) < 0, então, b← m; senão a ← m; 5. até |a - b|< ε; 6. x*←(a+b)/2; 7. exibir(x*);

Uma ilustração da aplicação do Algoritmo 1 é dada na Figura 3:

Figura 3: Utilização da bissecção em [a,b].

Observe que os sucessivos intervalos obtidos na Figura 3 são: [a,b]; [m1,b]; [m1,m2]. Dado um intervalo inicial [a, b] e uma precisão ε, o número de iterações necessárias para que ε<− ba seja satisfeito pelo método da bissecção é dado por:

⎟⎟⎠

⎞⎜⎜⎝

⎛ −>

ε

bak 2log

(2)

Page 2: bisseccao

U N E S P / F E G / D M A - C o m p u t a ç ã o e C á l c u l o N u m é r i c o – 1 o S e m e s t r e 2 0 0 7 – P r o f . A n í b a l – L A B 2

MÉTODO DA POSIÇÃO FALSA

2

Utiliza as mesmas condições do método da bissecção. Sua única diferença fica por conta da obtenção do ponto m:

)()()()(

bfafbafabfm

−−

= (3)

A interpretação geométrica da equação (3) é dada na Figura 4:

Figura 4: Método da falsa posição em ação. Observe que de acordo com a Figura 4, o ponto m é a intersecção da reta r, formada pelos pontos extremos do intervalo (a,f(a)) e (b,f(b)), com o eixo x (a prova desta afirmação é um bom exercício). Os sucessivos intervalos gerados pelo método na Figura 4 são: [a,b]; [a,m1]; [a,m2]. MÉTODO DO PONTO FIXO Consiste em transformar o problema de achar a solução α da equação f(x)= 0 no problema equivalente de achar α tal que ϕ (x) = x. A forma geral das funções de iteração ϕ (x) é dada pela equação (1). Com (1) é obtida uma seqüência {x0, x1, ...} gerada por: xi+1=ϕ (xi), i = 0,1,.2,....

Um possível MPF é o método iterativo linear que consiste em encontrar o valor x = x* tal que ocorre a intersecção da função y = x com a função y = ϕ (x). Graficamente:

Figura 5: Convergência do MPF.

O algoritmo do MPF é dado por:

ALGORITMO 2 1. ler(x0) 2. se |f(x0)| < ε1, x*=x0 e FIM. 3. senão 4. repita até i < L 5. x1 ←ϕ (x0);

6. se |f(x1)|< ε1 e |x1 -x0|/|x1|< ε2, x*=x1 e FIM; 7. senão x0← x1 e i←i+1; 8. exibir(x*);

Eventualmente o MIL pode não convergir para o ponto de intersecção x*:

Figura 6: Divergência do MPF.

Figura 7: Divergência do MPF.

As condições para que um MPF (incluso o MIL) convirja são dadas no Teorema 1. TEOREMA 1: Seja ϕ (x) uma função de iteração para a equação f(x) = 0 tal que possui uma raiz x* no intervalo [a,b]. O MPF irá convergir se: (i) ϕ (x) e ϕ ’(x) são contínuas no intervalo [a,b]. (ii) |ϕ ’(x)| ≤ M < 1, ∀ x ∈ [a,b]. (iii) x0 ∈ [a,b]. Portanto, é imprescindível que ao construir uma função de iteração seja observado o valor de sua derivada no intervalo [a,b]. Exemplo E1: Encontrar uma das raízes de f(x) = x2+ x– 6 (x*1 = -3 e x*2 = 2) usando o MIL. Caso 1: Usando x0 = 1.5 e ϕ 1(x) = 6-x2, resultará em um gráfico semelhante ao da Figura 7 e na seguinte seqüência de valores: {x0 = 1.5; x1=ϕ (x0)= 6 - 1.52 = 3.75; x2=ϕ (x1)=-8.06; x3=-59.00; x4=-3475,...}. Neste caso, a seqüência não converge para 2.

Page 3: bisseccao

U N E S P / F E G / D M A - C o m p u t a ç ã o e C á l c u l o N u m é r i c o – 1 o S e m e s t r e 2 0 0 7 – P r o f . A n í b a l – L A B 2

Caso 2: Usando x0 = 1.5 e ϕ 2(x) = x−6 , será gerada a seguinte seqüência: {x0 = 1.5; x1=ϕ (x0)= (6 - 1.5)1/2 = 2.12; x2=ϕ (x1)=1.96; x3=2.00763;...}. E pode ser visto que a seqüência converge para 2.

3

De fato, no Caso 1, |ϕ 1‘(x)| = |-2x| e |ϕ 1‘(x0)| = |ϕ 1‘(1.5)|= |-3| > 1, ou seja, a condição (ii) do Teorema 1 falha. Já para o Caso 2, |ϕ 2‘(x)| = |-1/2(6-x) -1/2| e |ϕ 2‘(x0)| = |ϕ 2‘(1.5)|= |-0.2357|< 1 e a condição (ii) é cumprida não só para x0, mas para todos os pontos xi posteriores. MÉTODO DE NEWTON-RAPHSON Nos métodos de ponto fixo quanto menor for o valor de |ϕ ‘(x*)|, mais rápida será a convergência do método. De fato, pode-se mostrar que:

**lim 1

xxxx

i

i

k −−+

∞→ =

ϕ ‘(x*)

a seqüência que conve

(4)

conveniente lembrar da seguinte definição: É

DEFINIÇÃO 1: Seja {xi} um rge para um número x* e seja *xxe ki −= o erro da iteração i. Se existir um número β>1 e uma onstante α≠0, tais que: c

αβ =+

∞→ || ik e

Onde: β é chamada de ordem de convergência da seqüência {x

||lim 1ie

(5)

i} e α é a

constante assintótica de erro. Uma vez obtida a ordem de convergência do rocesso, de (5) obtém-se a relação: p

βα |||| 1 ii ee ≈+

A equação (6) indica que o erro da aproximação cometido na iteração i é reduzido por uma taxa α na iteração i+1. Comparando este resultado com a equação (4) é possível verificar que nos métodos de ponto fixo a redução esta relacionada com o valor de

para k→∞ (6)

ϕ ‘(x*). O método de Newton-Raphson, portanto, procura utilizar ϕ ‘(x*) = 0. Assim: ϕ (x) = x + θf(x) → ϕ ’(x*) = 1 + θ’f(x*) + θf(x*)’ → ϕ ’(x*) = 0 = 1 + θf(x*)’ → θ =-1/ f(x*)’ Generalizando o uso de θ para qualquer x, a função de iteração do método de Newton é:

x = x - f(x ) / f(x )’k+1 k k k (7) Graficamente:

Figura 8: Método de Newton-Raphson.

Observe que x1 é a interseção entre a reta tangente ao ponto (x0,f(x0)) e o eixo x. A obtenção de x2 também é realizada por meio do cálculo da reta tangente à função no ponto (x1,f(x1)) e sua intersecção com o eixo x. Ou seja, o método de Newton corresponde a obtenção da raiz das sucessivas aproximações da função f(x). Essas aproximações são retas tangentes à função f(x) no ponto xi. O algoritmo para implementar o Método de Newton é dado por:

ALGORITMO 3 1. ler(x0) 2. se |f(x0)| < ε1, x*=x0 e FIM. 3. senão 4. repita até i < L 5. x ← x - f(x ) / f(x )’; 1 0 0 0

6. se |f(x )|< 1 ε1 e |x1 x1|< ε2, -x0|/| x*=x e FIM; 1

7. senão x0← x1 e i←i+1; 8. exibir(x*);

Este método, porém, pode oferecer problemas de convergência para algumas funções (vide Figura 9) ou quando f’(x) é muito próximo de zero.

Figura 9: Divergência de Newton.

Page 4: bisseccao

U N E S P / F E G / D M A - C o m p u t a ç ã o e C á l c u l o N u m é r i c o – 1 o S e m e s t r e 2 0 0 7 – P r o f . A n í b a l – L A B 2

Em geral, afirma-se que o método de Newton converge desde que x0 seja scolhido suficientemente próximo da raiz.

4

e MÉTODO DA SECANTE A dificuldade da obtenção da expressão de f’(x) e o seu cálculo podem ser contornados com a substituição da derivada pelo uociente das diferenças: q

f’(x ) k1−− kk xx

nde: x e x são aproximações para a raiz.

1 )()( −−≈ kk xfxf

k k-1

k+1 k k

(8)

O Neste caso, a função de iteração é dada por:

x = x - f(x ))()(

)( 1−

−− kk

xfxfxx

1−kk

(9)

Graficamente:

Figura 10: Método da Secante.

O Método da Secante é dado por:

ALGORITMO 4 1. ler(x0,x1) 2. repita até i < L 3. x - f(x )*(x )/(f(x x )); 2 ← x1 1 1-x0 1)- f( 0

4. se |f(x2)|< ε1 e |x2 – x1|/| x2|<ε2, x*=x2 e FIM; 5. senão 6. x x , x ← x , i←i+1; 0← 1 1 2

7. x*← x2; 8. exibir(x*);

Observe que o funcionamento do método da Secante é parecido com o funcionamento do método da Falsa Posição, mas o método da Secante não exige que haja troca de sinal da função f(x) no intervalo [x , x ] como no método da Falsa Posição.

k-1 k

CONVERGÊNCIA DOS MÉTODOS O número de iterações do método da bissecção é fornecido pela equação (2). A ordem de convergência de um método pode er obtida a partir da equação (6): s

βα |||| 1 ii ee ≈+ , βα |||| 1−≈ ii ee .

Dividindo uma equação pela outra:

β

⎟⎟⎠

⎞⎜⎜⎝

⎛≈

+

1

1

i

i

i

i

ee

ee

.

Uma aproximação para o valor de β pode ser obtida aplicando-se logaritmo em ambos s membros da expressão anterior: o

⎟⎟⎠⎝⎠⎝ −1ii ee

Esse valor corresponde à ordem de convergência de um método e indica o quão rápido o erro é reduzido entre duas iterações ucessivas. É interessante verificar a

⎞⎜⎜⎛

⎟⎟⎞

⎜⎜⎛

≈ +1 log/log ii eeβ

ordem de convergênc ns méto os:

sia de algu d

Método β Iterativo Linear 1.000Newton-Raphson 2.000Secante 1.618Falsa Posição 1.618

Tabela 1: Convergência dos métodos. A vantagem do Método de Newton é a sua convergência quadrática, pois isto implica que a quantidade de dígitos significativos corretos duplica à medida que os valores da seqüência se aproximam de x*. Note que essa correção não acontece em relação às primeiras iterações realizadas. A desvantagem do método de Newton está no fato de ser necessário calcular a derivada da função, e em cada iteração, calcular o seu valor numérico o que pode ser caro computacionamente. Além disso, a função ode não ser p diferenciável em alguns pontos

do domínio. EXEMPLOS NUMÉRICOS Exemplo E1: Determinar, usando o método de Newton, a menor raiz positiva da quação: 4 coe s(x) – exp(x) = 0, com erro

inferior a 10-2. Para isolar a raiz, a função pode ser dividida em outras duas equações mais simples: f1 = 4cos(x) e f2 = ex. Um gráfico das 2 funções é apresentado na Figura 11, mostrando o ponto de intersecção das duas curvas é a

Page 5: bisseccao

U N E S P / F E G / D M A - C o m p u t a ç ã o e C á l c u l o N u m é r i c o – 1 o S e m e s t r e 2 0 0 7 – P r o f . A n í b a l – L A B 2

5

solução procurada e que o valor x0 = 1.0 é uma boa aproximação inicial.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-2

-1

0

1

2

3

4

5

6

7

8

f1 = 4cos(x)

f2 = exp(x)

, os cálculos devem ser realizados com

0

08 = -6.084

1= 0.908

0-2. Portanto, uma nova

(x1) = f’(0.908) = -4sen(0.908) – e0.908

.631

2

Figura 11: Intersecção de f1 e f2. Para efetuar os cálculos observe se sua calculadora está em radianos, pois a função dada envolve operações trigonométricas. Como o resultado final deve ter erro inferior 10-2a

3 casas decimais. Assim: (x ) = f(1.0) = 4cos(1.0)-e1.0 f

=4(0.540) – 2.718 = -0.557 ’(x ) = f’(1.0) =– 4sen(1.0)-e1.0 f

= -4(0.841) – 2.71 Usando a equação (7):

= 1.0 – f(1.0)/f’(1.0) x = 1.0 – (-0.557)/(-6.048) Calculando o erro relativo: |x1-x0|/|x1| = 0.101 é maior do que 1e

iteração é realizada: f(x1) = f(0.908) = 4cos(0.908)-e0.908 = 4(0.615) – 2.479 = -0.019,

f’ = -4(0.788) – 2.479 = -5

= 0.908 - f(0.908)/f’(0.908) x = 0.908 – (-0.019)/(-5.631) = 0.905 Exemplo E2: Determinar, usando o método da Secante, a menor raiz positiva da equação: x - 5e-x = 0, com erro inferior a 0-2 e x1

Fi0 = 1.4. Isolando as raízes através da

gura 12:

0 0.5 1 1.5 2 2.5 30

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

f1 = sqrt(x)

f2 = 5exp(-x)

Figura 12: Intersecção de f =1 x e f2=5e-x.

f(x ) = f(1.4) = 0 4.1 - 5e-1.4 = 1.183 - 5( 47) = -0.00.2 52

1f(x ) = f(1.5) = 5.1 - 5e-1.5

= 1.225 -5(0.223) = 0.110

0.110)((0.1)/(0.110+0.052))

é maior do que 10-2. Portanto, uma nova r a:

2

Usando a equação (9):

(1.5) ((0.1)/(f(1.5)-f(1.4))) x2 = 1.5 – f = 1.5 – ( = 1.432 Calculando o erro relativo: |x2-x1|/|x2| = 0.047

eite ação é realizad f(x ) = f(1.432) = 432.1 - 5 e-1.432

) = 0.002.

– (0.002)(( -0.068)/(0.002-0.110))

precisão 10-2 a raiz da função é x* = .431.

PROGRAMAS BÁSICOS

= 1.197 – 5(0.239 Usando a equação (9):

f(1.432) ((-0.068)/(f(1.432)-f(1.5))) x2=1.432– =1.432 =1.431 Calculando o erro relativo: |x3-x2|/|x3| = 0.0007 < 10-2

E com1

PB1: Escreva um programa que implemente o Algoritmo 1 e aplique o método da Bissecção às funções dos Exemplos E1 e E2. Quantas iterações foram necessárias? PB2: Modifique o programa desenvolvido no PB1 para utilizar o método da Falsa Posição. Quantas iterações foram necessárias? PB3: Implemente o método de Newton, utilizando o Algoritmo 3, e compare seu desempenho com os demais métodos. PB4: Compare o desempenho dos métodos anteriores para uma precisão10-4.

Page 6: bisseccao

U N E S P / F E G / D M A - C o m p u t a ç ã o e C á l c u l o N u m é r i c o – 1 o S e m e s t r e 2 0 0 7 – P r o f . A n í b a l – L A B 2

EXERCÍCIOS BÁSICOS EB1: Aplique os métodos da bissecção e Posição Falsa para calcular a raiz positiva de x2 – 7 = 0, com ε < 10-2, partindo do intervalo inicial [2.0, 3.0]. Qual o número de iterações de cada método? O número de iterações do método da bissecção corresponde

6

a estimativa fornecida pela equação (2)?

o método da bissecção para

) por

k+1 = ψ(xk) ência quando:

ados, com sucesso, para

k+1 = (1-5x )/x

EB2: Aplique resolver: (A) ex-3x = 0, (B) x3 + cos x = 0, btendo em cada caso, a e b (iniciaiso

meio de verificação do sinal da função. EB3: O problema resolva f(x) = x + ln(x) = 0 pode ser transformado em um problema equivalente da forma x = ψ(x). Para o processo iterativo definido por xanalisar a converg(A) ψ(x) = -ln x, (B) ψ(x) = e-x, no intervalo [0.5, 0.6]. EB4: A equação x2 + 5x + 1 tem uma raiz em (0, 0.5). Verifique quais dos processos abaixo podem ser usobtê-la: (A) x = (1-xk2)/5, (B) xk+1 , k k

(C) xk+1 = kx51− .

EB5: Para os problemas e os dados da Tabela 2, indique o número de iterações para cada método: (a) f(x) = ; x*∈(1,2); ε = 10)cos(

2

xe x −− -4 e

. xexx x +−= − 2

)cos()(ϕ (b) f(x) = x3 – x - 1; x*∈(1,2); ε = 10-6 e

3/1)1()( += xxϕ .

Tabela 2: Informações dos métodos. Método Dados

(A) Dados

(B) Bissecção [1,2] [1,2] Falsa Posição [1,2] [1,2] MIL

x0 = 1.5 x0 = 1

Newton x0 = 1.5 x0 = 0 Secante x0=1; x1=2 x0=0; x1=0.5

Dica: observe as condições do Teorema 1.

PROGRAMAS APLICADOS PA1: A equação:

α

ααθ2

2 cos

cos2 −

=⎟⎠⎞

⎜⎝⎛

vgRsentg

permite calcular o ângulo de inclinação, α, em que o lançamento do míssil deve ser feito para atingir determinado alvo. Na equação anterior: • α - ângulo de inclinação com a superfície da Terra com o qual é feito o lançamento do míssil, • g - aceleração da gravidade ≅ 9.81 m/s2, • R - raio da Terra ≅ 6371000 m, • v – velocidade de lançamento do míssil, m/s,

• θ - ângulo (medido do centro da Terra) entre o ponto de lançamento e o ponto de impacto desejado. Use um método numérico à sua escolha, resolva o problema considerado:

θ = 80º e v tal que 25.12

=gRv , ou seja,

aproximadamente 8.840 m/s. PA2: Na engenharia química, reatores do tipo PFR são frequentemente usados para converter reagentes em produtos. Sabe-se que a eficiência de conversão às vezes pode ser melhorada reciclando uma fração do produto como mostrado na Figura 13:

Figura 13: Funcionamento do PFR.

A taxa de reciclo é: R = Re/(P+Re). Supondo que um reagente A gere um produto B de acordo com a expressão autocatalítica: A+B→B+B, mostra-se que R ótima satisfaz a equação:

)]1(1[1

)1()1(1

lnaa

a

xRRR

xRxR

−++

=⎥⎦

⎤⎢⎣

⎡−−+

,

onde xa é a fração de reagente A convertido no produto B. A taxa ótima de reciclo R corresponde ao reator de menor tamanho possível para se atingir o nível de conversão desejado. Determinar as razões de reciclo necessárias para minimizar o tamanho do reator, resolvendo a equação para os seguintes valores de xa: 0.99, 0.995 e 0.999.