Click here to load reader
Upload
amarildo-alberto-come
View
169
Download
1
Embed Size (px)
Citation preview
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)
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.
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.
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
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.
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.